diff options
| author | Andreas Monzner <andreas.monzner@multimedia-labs.de> | 2007-07-15 21:23:12 +0000 |
|---|---|---|
| committer | Andreas Monzner <andreas.monzner@multimedia-labs.de> | 2007-07-15 21:23:12 +0000 |
| commit | e613232c4159b23b7160f474e5b09534d42f78ec (patch) | |
| tree | 633dc3caacce1674ab0378a74dfba4a25e93bf90 /lib/dvb/frontend.cpp | |
| parent | 8bfa53742165d0893dbd623d217bc855390a5663 (diff) | |
| download | enigma2-e613232c4159b23b7160f474e5b09534d42f78ec.tar.gz enigma2-e613232c4159b23b7160f474e5b09534d42f78ec.zip | |
dont try to open the sec device when no -S is detected
Diffstat (limited to 'lib/dvb/frontend.cpp')
| -rw-r--r-- | lib/dvb/frontend.cpp | 38 |
1 files changed, 15 insertions, 23 deletions
diff --git a/lib/dvb/frontend.cpp b/lib/dvb/frontend.cpp index 92507645..ae72401b 100644 --- a/lib/dvb/frontend.cpp +++ b/lib/dvb/frontend.cpp @@ -419,17 +419,6 @@ int eDVBFrontend::openFrontend() m_tuning=0; #if HAVE_DVB_API_VERSION < 3 - if (m_secfd < 0) - { - m_secfd = ::open(m_sec_filename, O_RDWR); - if (m_secfd < 0) - { - eWarning("failed! (%s) %m", m_sec_filename); - return -1; - } - } - else - eWarning("sec %d already opened", m_dvbid); FrontendInfo fe_info; #else dvb_frontend_info fe_info; @@ -441,10 +430,6 @@ int eDVBFrontend::openFrontend() if (m_fd < 0) { eWarning("failed! (%s) %m", m_filename); -#if HAVE_DVB_API_VERSION < 3 - ::close(m_secfd); - m_secfd=-1; -#endif return -1; } } @@ -457,10 +442,6 @@ int eDVBFrontend::openFrontend() eWarning("ioctl FE_GET_INFO failed"); ::close(m_fd); m_fd = -1; -#if HAVE_DVB_API_VERSION < 3 - ::close(m_secfd); - m_secfd=-1; -#endif return -1; } @@ -468,6 +449,21 @@ int eDVBFrontend::openFrontend() { case FE_QPSK: m_type = iDVBFrontend::feSatellite; +#if HAVE_DVB_API_VERSION < 3 + if (m_secfd < 0) + { + m_secfd = ::open(m_sec_filename, O_RDWR); + if (m_secfd < 0) + { + eWarning("failed! (%s) %m", m_sec_filename); + ::close(m_fd); + m_fd=-1; + return -1; + } + } + else + eWarning("sec %d already opened", m_dvbid); +#endif break; case FE_QAM: m_type = iDVBFrontend::feCable; @@ -479,10 +475,6 @@ int eDVBFrontend::openFrontend() eWarning("unknown frontend type."); ::close(m_fd); m_fd = -1; -#if HAVE_DVB_API_VERSION < 3 - ::close(m_secfd); - m_secfd=-1; -#endif return -1; } eDebug("detected %s frontend", "satellite\0cable\0 terrestrial"+fe_info.type*10); |
