From e613232c4159b23b7160f474e5b09534d42f78ec Mon Sep 17 00:00:00 2001 From: Andreas Monzner Date: Sun, 15 Jul 2007 21:23:12 +0000 Subject: [PATCH] dont try to open the sec device when no -S is detected --- lib/dvb/frontend.cpp | 38 +++++++++++++++----------------------- 1 file 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); -- 2.30.2