aboutsummaryrefslogtreecommitdiff
path: root/lib/dvb_ci/dvbci.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lib/dvb_ci/dvbci.cpp')
-rw-r--r--lib/dvb_ci/dvbci.cpp16
1 files changed, 8 insertions, 8 deletions
diff --git a/lib/dvb_ci/dvbci.cpp b/lib/dvb_ci/dvbci.cpp
index c24ddd25..9c4e0ac2 100644
--- a/lib/dvb_ci/dvbci.cpp
+++ b/lib/dvb_ci/dvbci.cpp
@@ -250,9 +250,6 @@ void eDVBCIInterfaces::recheckPMTHandlers()
{
for (eSmartPtrList<eDVBCISlot>::iterator ci_it(m_slots.begin()); ci_it != m_slots.end(); ++ci_it)
{
- if (ci_it->getState() == eDVBCISlot::stateInvalid)
- ci_it->reset();
-
bool useThis=false;
eDVBCICAManagerSession *ca_manager = ci_it->getCAManager();
if (ca_manager)
@@ -358,12 +355,15 @@ void eDVBCIInterfaces::removePMTHandler(eDVBServicePMTHandler *pmthandler)
bool sameServiceExist=false;
for (PMTHandlerList::iterator i=m_pmt_handlers.begin(); i != m_pmt_handlers.end(); ++i)
{
- eServiceReferenceDVB ref;
- i->pmthandler->getServiceReference(ref);
- if ( ref == service_to_remove )
+ if (i->cislot)
{
- sameServiceExist=true;
- break;
+ eServiceReferenceDVB ref;
+ i->pmthandler->getServiceReference(ref);
+ if ( ref == service_to_remove )
+ {
+ sameServiceExist=true;
+ break;
+ }
}
}