diff options
| author | Andreas Monzner <andreas.monzner@multimedia-labs.de> | 2008-08-04 10:50:15 +0000 |
|---|---|---|
| committer | Andreas Monzner <andreas.monzner@multimedia-labs.de> | 2008-08-04 10:50:15 +0000 |
| commit | d58968e5ca43995658257b6e89f092c7572cde0a (patch) | |
| tree | 4aef791be3ba82ab2f621f12fae30799bf39cb4c /lib/dvb/frontend.cpp | |
| parent | 62d86f1ac67bfd0391922d766fa62a1849f5ddb4 (diff) | |
| download | enigma2-d58968e5ca43995658257b6e89f092c7572cde0a.tar.gz enigma2-d58968e5ca43995658257b6e89f092c7572cde0a.zip | |
fix tune failed problems on fast zap when a diseqc swicth is in use
Diffstat (limited to 'lib/dvb/frontend.cpp')
| -rw-r--r-- | lib/dvb/frontend.cpp | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/lib/dvb/frontend.cpp b/lib/dvb/frontend.cpp index 02297243..255efd08 100644 --- a/lib/dvb/frontend.cpp +++ b/lib/dvb/frontend.cpp @@ -559,7 +559,6 @@ int eDVBFrontend::closeFrontend(bool force) m_fd=-1; else eWarning("couldnt close frontend %d", m_dvbid); - m_data[CSW] = m_data[UCSW] = m_data[TONEBURST] = -1; } #if HAVE_DVB_API_VERSION < 3 if (m_secfd >= 0) @@ -1519,6 +1518,20 @@ void eDVBFrontend::tuneLoop() // called by m_tuneTimer else ++m_sec_sequence.current(); break; + case eSecCommand::INVALIDATE_CURRENT_SWITCHPARMS: + eDebug("[SEC] invalidate current switch params"); + sec_fe_data[CSW] = -1; + sec_fe_data[UCSW] = -1; + sec_fe_data[TONEBURST] = -1; + ++m_sec_sequence.current(); + break; + case eSecCommand::UPDATE_CURRENT_SWITCHPARMS: + sec_fe_data[CSW] = sec_fe_data[NEW_CSW]; + sec_fe_data[UCSW] = sec_fe_data[NEW_UCSW]; + sec_fe_data[TONEBURST] = sec_fe_data[NEW_TONEBURST]; + eDebug("[SEC] update current switch params"); + ++m_sec_sequence.current(); + break; case eSecCommand::INVALIDATE_CURRENT_ROTORPARMS: eDebug("[SEC] invalidate current rotorparams"); sec_fe_data[ROTOR_CMD] = -1; |
