git.cweiske.de
/
enigma2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
add audioselection, removed democode
[enigma2.git]
/
lib
/
dvb
/
pmt.cpp
diff --git
a/lib/dvb/pmt.cpp
b/lib/dvb/pmt.cpp
index 538264db698b1ba54998867044e98ff20e87132d..e743d2661509194175ca93fdf464ac3914928865 100644
(file)
--- a/
lib/dvb/pmt.cpp
+++ b/
lib/dvb/pmt.cpp
@@
-44,6
+44,11
@@
void eDVBServicePMTHandler::channelStateChanged(iDVBChannel *channel)
if ( m_service && !m_service->cacheEmpty() )
serviceEvent(eventNewProgramInfo);
}
if ( m_service && !m_service->cacheEmpty() )
serviceEvent(eventNewProgramInfo);
}
+ } else if ((m_last_channel_state != iDVBChannel::state_failed) &&
+ (state == iDVBChannel::state_failed))
+ {
+ eDebug("tune failed.");
+ serviceEvent(eventTuneFailed);
}
}
}
}
@@
-90,7
+95,6
@@
void eDVBServicePMTHandler::PATready(int)
int eDVBServicePMTHandler::getProgramInfo(struct program &program)
{
int eDVBServicePMTHandler::getProgramInfo(struct program &program)
{
- eDebug("got PMT");
ePtr<eTable<ProgramMapSection> > ptr;
program.videoStreams.clear();
ePtr<eTable<ProgramMapSection> > ptr;
program.videoStreams.clear();
@@
-206,6
+210,7
@@
int eDVBServicePMTHandler::tune(eServiceReferenceDVB &ref)
eDVBChannelID chid;
ref.getChannelID(chid);
res = m_resourceManager->allocateChannel(chid, m_channel);
eDVBChannelID chid;
ref.getChannelID(chid);
res = m_resourceManager->allocateChannel(chid, m_channel);
+ eDebug("allocate Channel: res %d", res);
} else
{
eDVBMetaParser parser;
} else
{
eDVBMetaParser parser;
@@
-230,6
+235,10
@@
int eDVBServicePMTHandler::tune(eServiceReferenceDVB &ref)
m_channelStateChanged_connection);
m_last_channel_state = -1;
channelStateChanged(m_channel);
m_channelStateChanged_connection);
m_last_channel_state = -1;
channelStateChanged(m_channel);
+ } else
+ {
+ serviceEvent(eventTuneFailed);
+ return res;
}
if (m_pvr_channel)
}
if (m_pvr_channel)
@@
-269,7
+278,7
@@
void eDVBCAService::buildCAPMT()
while( i != ptr->getSections().end() )
{
while( i != ptr->getSections().end() )
{
-
eDebug("append");
+
//
eDebug("append");
capmt.append(*i++);
}
capmt.append(*i++);
}
@@
-352,11
+361,11
@@
void eDVBCAService::sendCAPMT()
case 0xFFFFFFFF:
++m_sendstate;
m_retryTimer.start(0,true);
case 0xFFFFFFFF:
++m_sendstate;
m_retryTimer.start(0,true);
-
eDebug("[eDVBCAHandler] send failed .. immediate retry");
+
//
eDebug("[eDVBCAHandler] send failed .. immediate retry");
break;
default:
m_retryTimer.start(5000,true);
break;
default:
m_retryTimer.start(5000,true);
-
eDebug("[eDVBCAHandler] send failed .. retry in 5 sec");
+
//
eDebug("[eDVBCAHandler] send failed .. retry in 5 sec");
break;
}
++m_sendstate;
break;
}
++m_sendstate;