diff --git a/src/neutrino_menue.cpp b/src/neutrino_menue.cpp index a89e04c1a..6b6091c8a 100644 --- a/src/neutrino_menue.cpp +++ b/src/neutrino_menue.cpp @@ -965,6 +965,12 @@ int CTPSelectHandler::exec(CMenuTarget* parent, const std::string &actionkey) tmplist.insert(std::pair (i, tI->second)); i++; } + if(i == 0) { + char text[255]; + sprintf(text, "No transponders found for %s\n", CNeutrinoApp::getInstance()->getScanSettings().satNameNoDiseqc); + ShowHintUTF(LOCALE_MESSAGEBOX_ERROR, text, 450, 2); + return menu_return::RETURN_REPAINT; + } int retval = menu->exec(NULL, ""); delete menu; delete selector; @@ -1031,6 +1037,7 @@ void CNeutrinoApp::InitScanSettings(CMenuWidget &settings) CMenuWidget* satOnOff = NULL; sat_iterator_t sit; + t_satellite_position currentSatellitePosition = frontend->getCurrentSatellitePosition(); if(g_info.delivery_system == DVB_S) { satSelect = new CMenuOptionStringChooser(LOCALE_SATSETUP_SATELLITE, scanSettings.satNameNoDiseqc, true, NULL, CRCInput::RC_red, NEUTRINO_ICON_BUTTON_RED, true); satOnOff = new CMenuWidget(LOCALE_SATSETUP_SATELLITE, NEUTRINO_ICON_SETTINGS); @@ -1038,8 +1045,6 @@ void CNeutrinoApp::InitScanSettings(CMenuWidget &settings) satOnOff->addItem(GenericMenuBack); satOnOff->addItem(GenericMenuSeparatorLine); - t_satellite_position currentSatellitePosition = frontend->getCurrentSatellitePosition(); - for(sit = satellitePositions.begin(); sit != satellitePositions.end(); sit++) { printf("Adding sat menu for %s position %d\n", sit->second.name.c_str(), sit->first); @@ -1087,8 +1092,12 @@ void CNeutrinoApp::InitScanSettings(CMenuWidget &settings) } else if (g_info.delivery_system == DVB_C) { satSelect = new CMenuOptionStringChooser(LOCALE_CABLESETUP_PROVIDER, (char*)scanSettings.satNameNoDiseqc, true); for(sit = satellitePositions.begin(); sit != satellitePositions.end(); sit++) { + printf("Adding cable menu for %s position %d\n", sit->second.name.c_str(), sit->first); satSelect->addOption(sit->second.name.c_str()); -printf("Adding cable menu for %s position %d\n", sit->second.name.c_str(), sit->first); + if(currentSatellitePosition == sit->first) { + strcpy(scanSettings.satNameNoDiseqc, sit->second.name.c_str()); + sfound = 1; + } dprintf(DEBUG_DEBUG, "got scanprovider (cable): %s\n", sit->second.name.c_str()); } } @@ -1542,8 +1551,8 @@ void CNeutrinoApp::InitMiscSettings(CMenuWidget &miscSettings) miscSettings.addItem(new CMenuOptionNumberChooser(LOCALE_FAN_SPEED, &g_settings.fan_speed, true, 1, 14, funNotifier, 0, 0, LOCALE_OPTIONS_OFF) ); funNotifier->changeNotify(NONEXISTANT_LOCALE, (void*) &g_settings.fan_speed); - CCpuFreqNotifier * cpuNotifier = new CCpuFreqNotifier(); #if 0 + CCpuFreqNotifier * cpuNotifier = new CCpuFreqNotifier(); miscSettings.addItem(new CMenuOptionChooser(LOCALE_CPU_FREQ_NORMAL, &g_settings.cpufreq, CPU_FREQ_OPTIONS, CPU_FREQ_OPTION_COUNT, true, cpuNotifier)); miscSettings.addItem(new CMenuOptionChooser(LOCALE_CPU_FREQ_STANDBY, &g_settings.standby_cpufreq, CPU_FREQ_OPTIONS, CPU_FREQ_OPTION_COUNT, true)); #endif diff --git a/src/zapit/src/getservices.cpp b/src/zapit/src/getservices.cpp index 12be5ca37..f58c490d7 100644 --- a/src/zapit/src/getservices.cpp +++ b/src/zapit/src/getservices.cpp @@ -254,7 +254,8 @@ void ParseSatTransponders(fe_type_t frontendType, xmlNodePtr search, t_satellite feparams.frequency=feparams.frequency/1000; //transponderlist was read from tuxbox feparams.frequency = (int) 1000 * (int) round ((double) feparams.frequency / (double) 1000); } - else feparams.frequency = (int) 1000 * (int) round ((double) feparams.frequency / (double) 1000); + else + feparams.frequency = (int) 1000 * (int) round ((double) feparams.frequency / (double) 1000); feparams.inversion = INVERSION_AUTO; @@ -408,9 +409,9 @@ int LoadServices(fe_type_t frontendType, diseqc_t diseqcType, bool only_current) init_sat(position); } satellitePositions[position].name = name; - position++; } ParseSatTransponders(frontendType, search, position); + position++; search = search->xmlNextNode; } } @@ -555,7 +556,7 @@ void SaveServices(bool tocopy) spos_it->second.name.c_str(), spos_it->first, spos_it->second.diseqc, spos_it->second.uncommited); break; case FE_QAM: /* cable */ - fprintf(fd, "\t\n", spos_it->second.name.c_str()); + fprintf(fd, "\t\n", spos_it->second.name.c_str(), spos_it->first); break; case FE_OFDM: default: