From: Andreas Monzner Date: Mon, 22 May 2006 13:19:24 +0000 (+0000) Subject: do not ask to scan on tuner 0 when not needed X-Git-Tag: 2.6.0~3403 X-Git-Url: https://git.cweiske.de/enigma2.git/commitdiff_plain/961fcb6cec16091f610dec1f019d43b6096e7390 do not ask to scan on tuner 0 when not needed --- diff --git a/lib/components/scan.cpp b/lib/components/scan.cpp index c21e8f4b..5355208f 100644 --- a/lib/components/scan.cpp +++ b/lib/components/scan.cpp @@ -8,7 +8,7 @@ DEFINE_REF(eComponentScan); void eComponentScan::scanEvent(int evt) { - eDebug("scan event %d!", evt); +// eDebug("scan event %d!", evt); if (evt == eDVBScan::evtFinish) { @@ -107,7 +107,7 @@ int eComponentScan::start(int feid, int flags) std::list > list; - m_scan = new eDVBScan(channel); + m_scan = new eDVBScan(channel, true); m_scan->connectEvent(slot(*this, &eComponentScan::scanEvent), m_scan_event_connection); m_scan->start(m_initial, flags); diff --git a/lib/dvb/sec.cpp b/lib/dvb/sec.cpp index 2a35ba14..f91824dc 100644 --- a/lib/dvb/sec.cpp +++ b/lib/dvb/sec.cpp @@ -1113,6 +1113,7 @@ PyObject *eDVBSatelliteEquipmentControl::get_exclusive_satellites(int tu1, int t else if (cnt == tu2) p2 = *it; } + if (p1 && p2) { // check for linked tuners @@ -1145,10 +1146,12 @@ PyObject *eDVBSatelliteEquipmentControl::get_exclusive_satellites(int tu1, int t int tmp2=-1; // check for rotor dependency p1->m_frontend->getData(eDVBFrontend::SATPOS_DEPENDS_PTR, tmp1); + if (tmp1 != -1) + p1 = (void*)tmp1; p2->m_frontend->getData(eDVBFrontend::SATPOS_DEPENDS_PTR, tmp2); - if (tmp1 != -1 && (void*)tmp1 != p2 - && tmp2 != -1 && (void*)tmp2 != p1 - && tmp1 != tmp2 ) + if (tmp2 != -1) + p2 = (void*)tmp2; + if (p1 != p2) { int tu1_mask = 1 << p1->m_frontend->getID(), tu2_mask = 1 << p2->m_frontend->getID(); diff --git a/lib/python/Screens/ScanSetup.py b/lib/python/Screens/ScanSetup.py index ff76d020..4983f768 100644 --- a/lib/python/Screens/ScanSetup.py +++ b/lib/python/Screens/ScanSetup.py @@ -601,11 +601,15 @@ class ScanSimple(Screen): nimcount = nimmanager.getNimSocketCount() if nimcount > 0: + scan_possible=True config.scan = ConfigSubsection() config.scan.clearallservices = configElement_nonSave("config.scan.clearallservices", configSelection, 0, (("no", _("no")), ("yes", _("yes")), ("yes_hold_feeds", _("yes (hold feeds)")))) self.list.append(getConfigListEntry(_("Clear before scan"), config.scan.clearallservices)) nim = configElement_nonSave(0, configSelection, 0, (("yes", _("yes")), ("no", _("no")))) - self.list.append(getConfigListEntry(_("Scan NIM") + " 0 (" + nimmanager.getNimTypeName(0) + ")", nim)) + if nimmanager.getNimType(0) == nimmanager.nimType["DVB-S"] and not len(nimmanager.getSatListForNim(0)): + scan_possible=False + if scan_possible: + self.list.append(getConfigListEntry(_("Scan NIM") + " 0 (" + nimmanager.getNimTypeName(0) + ")", nim)) if nimcount > 1 and self.ScanNimTwoNeeded(): nim = configElement_nonSave(1, configSelection, 0, (("yes", _("yes")), ("no", _("no")))) self.list.append(getConfigListEntry(_("Scan NIM") + " 1 (" + nimmanager.getNimTypeName(1) + ")", nim))