diff options
| author | ghost <andreas.monzner@multimedia-labs.de> | 2008-11-03 21:05:52 +0100 |
|---|---|---|
| committer | Andreas Oberritter <obi@saftware.de> | 2008-11-06 01:52:05 +0100 |
| commit | f3078c3363b29cdb8ccf05cbb251392966137977 (patch) | |
| tree | 123614e799e3280d9df05eca4ac47f3fbedfcab6 /lib/dvb/pmt.cpp | |
| parent | ae6c45c7c6ae6c03fd535e40ddb5ce63ffa8e1f8 (diff) | |
| download | enigma2-f3078c3363b29cdb8ccf05cbb251392966137977.tar.gz enigma2-f3078c3363b29cdb8ccf05cbb251392966137977.zip | |
dont do SDT update when tuned to wrong transponder
Diffstat (limited to 'lib/dvb/pmt.cpp')
| -rw-r--r-- | lib/dvb/pmt.cpp | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/lib/dvb/pmt.cpp b/lib/dvb/pmt.cpp index 6082bf4a..692428d7 100644 --- a/lib/dvb/pmt.cpp +++ b/lib/dvb/pmt.cpp @@ -524,8 +524,15 @@ void eDVBServicePMTHandler::SDTScanEvent(int event) eDebug("no channel list"); else { - m_dvb_scan->insertInto(db, true); - eDebug("sdt update done!"); + eDVBChannelID chid; + m_reference.getChannelID(chid); + if (chid == m_dvb_scan->getCurrentChannelID()) + { + m_dvb_scan->insertInto(db, true); + eDebug("sdt update done!"); + } + else + eDebug("ignore sdt update data.... incorrect transponder tuned!!!"); } break; } @@ -605,6 +612,7 @@ int eDVBServicePMTHandler::tune(eServiceReferenceDVB &ref, int use_decode_demux, if (ref.path.empty()) { + m_dvb_scan = 0; m_dvb_scan = new eDVBScan(m_channel, true, false); m_dvb_scan->connectEvent(slot(*this, &eDVBServicePMTHandler::SDTScanEvent), m_scan_event_connection); } |
