aboutsummaryrefslogtreecommitdiff
path: root/lib/dvb_ci
diff options
context:
space:
mode:
authorghost <andreas.monzner@multimedia-labs.de>2010-12-13 13:24:59 +0100
committerghost <andreas.monzner@multimedia-labs.de>2010-12-13 13:24:59 +0100
commit0b019e9dd85ac88917984e90a9e27ae4cb496b0b (patch)
tree900b3d046bd3e274e3a4fafa893ffcff993287dd /lib/dvb_ci
parent36b4f5eccf81cc7a650d3bbfcc975d42b3d905c4 (diff)
parent26e11cd67e0bbfebd41b860a008f240d3d1b3052 (diff)
downloadenigma2-0b019e9dd85ac88917984e90a9e27ae4cb496b0b.tar.gz
enigma2-0b019e9dd85ac88917984e90a9e27ae4cb496b0b.zip
Merge branch 'bug_621_caid_info'
Diffstat (limited to 'lib/dvb_ci')
-rw-r--r--lib/dvb_ci/dvbci.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/dvb_ci/dvbci.cpp b/lib/dvb_ci/dvbci.cpp
index 883fb5a4..8a43e5b1 100644
--- a/lib/dvb_ci/dvbci.cpp
+++ b/lib/dvb_ci/dvbci.cpp
@@ -297,8 +297,9 @@ void eDVBCIInterfaces::recheckPMTHandlers()
if (!pmthandler->getProgramInfo(p))
{
int cnt=0;
- for (caidSet::reverse_iterator x(p.caids.rbegin()); x != p.caids.rend(); ++x, ++cnt)
- caids.push_front(*x);
+ std::set<eDVBServicePMTHandler::program::capid_pair> set(p.caids.begin(), p.caids.end());
+ for (std::set<eDVBServicePMTHandler::program::capid_pair>::reverse_iterator x(set.rbegin()); x != set.rend(); ++x, ++cnt)
+ caids.push_front(x->caid);
if (service && cnt)
service->m_ca = caids;
}