diff options
-rw-r--r-- | Makefile | 1 | ||||
-rw-r--r-- | conflictcheck_thread.c | 1 | ||||
-rw-r--r-- | epgsearchext.c | 6 | ||||
-rw-r--r-- | menu_commands.c | 2 | ||||
-rw-r--r-- | menu_main.c | 2 | ||||
-rw-r--r-- | menu_myedittimer.c | 107 | ||||
-rw-r--r-- | menu_myedittimer.h | 2 | ||||
-rw-r--r-- | menu_searchresults.c | 2 | ||||
-rw-r--r-- | menu_whatson.c | 2 | ||||
-rw-r--r-- | po/ca_ES.po | 5 | ||||
-rw-r--r-- | po/cs_CZ.po | 5 | ||||
-rw-r--r-- | po/da_DK.po | 5 | ||||
-rw-r--r-- | po/de_DE.po | 13 | ||||
-rw-r--r-- | po/el_GR.po | 5 | ||||
-rw-r--r-- | po/es_ES.po | 5 | ||||
-rw-r--r-- | po/et_EE.po | 5 | ||||
-rw-r--r-- | po/fi_FI.po | 7 | ||||
-rw-r--r-- | po/fr_FR.po | 5 | ||||
-rw-r--r-- | po/hr_HR.po | 5 | ||||
-rw-r--r-- | po/hu_HU.po | 5 | ||||
-rw-r--r-- | po/it_IT.po | 7 | ||||
-rw-r--r-- | po/lt_LT.po | 5 | ||||
-rw-r--r-- | po/nl_NL.po | 5 | ||||
-rw-r--r-- | po/nn_NO.po | 14 | ||||
-rw-r--r-- | po/pl_PL.po | 14 | ||||
-rw-r--r-- | po/pt_PT.po | 14 | ||||
-rw-r--r-- | po/ro_RO.po | 14 | ||||
-rw-r--r-- | po/ru_RU.po | 14 | ||||
-rw-r--r-- | po/sk_SK.po | 14 | ||||
-rw-r--r-- | po/sl_SI.po | 14 | ||||
-rw-r--r-- | po/sv_SE.po | 14 | ||||
-rw-r--r-- | po/tr_TR.po | 14 | ||||
-rw-r--r-- | searchtimer_thread.c | 19 | ||||
-rw-r--r-- | timer_thread.c | 7 |
34 files changed, 168 insertions, 191 deletions
@@ -338,4 +338,5 @@ clean: @-rm -f $(OBJS) $(OBJS2) $(OBJS3) $(OBJS4) $(DEPFILE) *.so *.tgz core* createcats createcats.o pod2*.tmp @-find . \( -name "*~" -o -name "#*#" \) -print0 | xargs -0r rm -f @-rm -rf doc html man + @-rm -f MANUAL README README.DE @-rm -f $(DEPFILE_stmp) $(DEPFILE_DOC) diff --git a/conflictcheck_thread.c b/conflictcheck_thread.c index 4e2e3fe..8c58a22 100644 --- a/conflictcheck_thread.c +++ b/conflictcheck_thread.c @@ -104,6 +104,7 @@ void cConflictCheckThread::Action(void) m_forceUpdate = false; { LOCK_TIMERS_WRITE; + Timers->SetExplicitModify(); } LogFile.iSysLog("timer conflict check started"); diff --git a/epgsearchext.c b/epgsearchext.c index 4a5f7e6..b516c9c 100644 --- a/epgsearchext.c +++ b/epgsearchext.c @@ -1017,10 +1017,6 @@ cSearchResults* cSearchExt::Run(int PayTVMode, bool inspectTimerMargin, int eval LOCK_CHANNELS_READ; // Channels must be locked first LOCK_SCHEDULES_READ; - if(!Schedules) { - LogFile.Log(1,"schedules are currently locked! try again later."); - return NULL; - } bool noPayTV = false; if (PayTVMode == -1) // use search's setting @@ -1029,11 +1025,11 @@ cSearchResults* cSearchExt::Run(int PayTVMode, bool inspectTimerMargin, int eval noPayTV = (PayTVMode == 1); time_t tNow=time(NULL); - const cSchedule *Schedule = Schedules->First(); cSearchResults* pSearchResults = pPrevResults; cSearchResults* pBlacklistResults = GetBlacklistEvents(inspectTimerMargin?MarginStop:0); int counter = 0; + const cSchedule *Schedule = Schedules->First(); while (Schedule) { const cChannel* channel = Channels->GetByChannelID(Schedule->ChannelID(),true,true); if (!channel) diff --git a/menu_commands.c b/menu_commands.c index 0ceb1af..ef20c11 100644 --- a/menu_commands.c +++ b/menu_commands.c @@ -171,7 +171,7 @@ eOSState cMenuSearchCommands::Record(void) #endif SetAux(timer, fullaux); - if (*Setup.SVDRPDefaultHost) + if (Setup.SVDRPPeering && *Setup.SVDRPDefaultHost) timer->SetRemote(Setup.SVDRPDefaultHost); Timers->Add(timer); timer->Matches(); diff --git a/menu_main.c b/menu_main.c index 5cb5079..2800114 100644 --- a/menu_main.c +++ b/menu_main.c @@ -234,7 +234,7 @@ eOSState cMenuSearchMain::Record(void) #endif SetAux(timer, fullaux); - if (*Setup.SVDRPDefaultHost) + if (Setup.SVDRPPeering && *Setup.SVDRPDefaultHost) timer->SetRemote(Setup.SVDRPDefaultHost); LOCK_TIMERS_WRITE; Timers->Add(timer); // implicit SetModified diff --git a/menu_myedittimer.c b/menu_myedittimer.c index 30c540d..238c3b1 100644 --- a/menu_myedittimer.c +++ b/menu_myedittimer.c @@ -53,7 +53,7 @@ cMenuMyEditTimer::cMenuMyEditTimer(cTimer *Timer, bool New, const cEvent* Event, if (Timer) { timer = Timer; - oldtimer = *timer; + newtimer = *timer; event = Event; flags = Timer->Flags(); day = Timer->Day(); @@ -242,29 +242,34 @@ eOSState cMenuMyEditTimer::DeleteTimer() { // Check if this timer is active: LOCK_TIMERS_WRITE; - if (!Timers) { - ERROR(tr("Epgsearch: Recursive LOCK DeleteTimer failed")); - return osContinue; - } Timers->SetExplicitModify(); if (timer && !addIfConfirmed) { if (Interface->Confirm(trVDR("Delete timer?"))) { if (timer->Recording()) { if (Interface->Confirm(trVDR("Timer still recording - really delete?"))) { - timer->Skip(); - cRecordControls::Process(Timers, time(NULL)); + if (!timer->Remote()) { + timer->Skip(); + cRecordControls::Process(Timers, time(NULL)); + } } else - return osContinue; + timer = NULL; } - LogFile.iSysLog("deleting timer %s", *timer->ToDescr()); - Timers->Del(timer); + if (timer) { + if (!HandleRemoteTimerModifications(NULL, timer)) + { + LogFile.Log(2,"HandleRemoteTimerModifications failed"); + return osContinue; + } + LogFile.iSysLog("deleting timer %s", *timer->ToDescr()); + Timers->Del(timer); - gl_timerStatusMonitor->SetConflictCheckAdvised(); - Timers->SetModified(); - return osBack; + gl_timerStatusMonitor->SetConflictCheckAdvised(); + Timers->SetModified(); + return osBack; } } + } return osContinue; } @@ -339,17 +344,6 @@ eOSState cMenuMyEditTimer::ProcessKey(eKeys Key) { case kOk: { - const cChannel *ch; - { - LOCK_CHANNELS_READ; - ch = Channels->GetByNumber(channel); - } - if (!ch) - { - ERROR(tr("*** Invalid Channel ***")); - break; - } - string fullaux = ""; string aux = ""; if (timer && timer->Aux()) @@ -374,6 +368,14 @@ eOSState cMenuMyEditTimer::ProcessKey(eKeys Key) aux = epgsearchaux; free(epgsearchaux); } + LOCK_CHANNELS_READ; + const cChannel *ch = Channels->GetByNumber(channel); + if (!ch) + { + ERROR(tr("*** Invalid Channel ***")); + break; + } + aux = UpdateAuxValue(aux, "channel", NumToString(ch->Number()) + " - " + CHANNELNAME(ch)); aux = UpdateAuxValue(aux, "update", checkmode); aux = UpdateAuxValue(aux, "eventid", event->EventID()); @@ -397,18 +399,36 @@ eOSState cMenuMyEditTimer::ProcessKey(eKeys Key) strreplace(tmpFile, ':', '|'); char* tmpDir = strdup(directory); strreplace(tmpDir, ':', '|'); - if (strlen(tmpFile) == 0) - { - free(tmpFile); - tmpFile = strdup(CHANNELNAME(ch)); - } if (timer) { + LOCK_TIMERS_WRITE; + if (!addIfConfirmed && !Timers->Contains(timer)) + { + if (cTimer *t = Timers->GetById(timer->Id(), timer->Remote())) + timer = t; + else + { + ERROR(tr("Timer has been deleted")); + break; + } + } + LOCK_CHANNELS_READ; + const cChannel *ch = Channels->GetByNumber(channel); + if (!ch) + { + ERROR(tr("*** Invalid Channel ***")); + break; + } + if (strlen(tmpFile) == 0) + { + free(tmpFile); + tmpFile = strdup(CHANNELNAME(ch)); + } cString cmdbuf; cmdbuf = cString::sprintf("%d:%d:%s:%04d:%04d:%d:%d:%s%s%s:%s", flags, - ch->Number(), + channel, PRINTDAY(day, weekdays, true), start, stop, @@ -419,36 +439,29 @@ eOSState cMenuMyEditTimer::ProcessKey(eKeys Key) tmpFile, fullaux.c_str()); - timer->Parse(cmdbuf); + newtimer.Parse(cmdbuf); free(tmpFile); free(tmpDir); - { - LOCK_TIMERS_WRITE; - if (!Timers) { - ERROR(tr("Epgsearch: recursive TIMERS LOCK")); - return osBack; - } - Timers->SetExplicitModify(); - timer->SetRemote(*remote ? remote : NULL); + newtimer.SetRemote(*remote ? remote : NULL); if (addIfConfirmed) { + *timer = newtimer; Timers->Add(timer); - Timers->SetModified(); - if (!HandleRemoteTimerModifications(timer, &oldtimer)) { + if (!HandleRemoteTimerModifications(timer)) { Timers->Del(timer); ERROR(tr("Epgsearch: RemoteTimerModifications failed")); - return osBack; + return osContinue; } } else { - if (!HandleRemoteTimerModifications(timer, &oldtimer)) + if (!HandleRemoteTimerModifications(&newtimer, timer)) { return osContinue; - if (oldtimer.Local() && oldtimer.Recording() && timer->Remote()) - cRecordControls::Stop(&oldtimer); - oldtimer = timer; + } + if (timer->Local() && timer->Recording() && newtimer.Remote()) + cRecordControls::Stop(timer); + *timer = newtimer; } - } LOCK_SCHEDULES_READ; timer->SetEventFromSchedule(Schedules); timer->Matches(); diff --git a/menu_myedittimer.h b/menu_myedittimer.h index 125f39a..ce39270 100644 --- a/menu_myedittimer.h +++ b/menu_myedittimer.h @@ -32,7 +32,7 @@ The project's page is at http://winni.vdr-developer.org/epgsearch class cMenuMyEditTimer : public cOsdMenu { private: cTimer *timer; - cTimer oldtimer; + cTimer newtimer; const cEvent* event; int channel; bool addIfConfirmed; diff --git a/menu_searchresults.c b/menu_searchresults.c index 4d647d4..5c2019b 100644 --- a/menu_searchresults.c +++ b/menu_searchresults.c @@ -287,7 +287,7 @@ eOSState cMenuSearchResults::Record(void) #endif SetAux(timer, fullaux); - if (*Setup.SVDRPDefaultHost) + if (Setup.SVDRPPeering && *Setup.SVDRPDefaultHost) timer->SetRemote(Setup.SVDRPDefaultHost); Timers->Add(timer); gl_timerStatusMonitor->SetConflictCheckAdvised(); diff --git a/menu_whatson.c b/menu_whatson.c index 253251d..442c944 100644 --- a/menu_whatson.c +++ b/menu_whatson.c @@ -625,7 +625,7 @@ eOSState cMenuWhatsOnSearch::Record(void) fullaux = UpdateAuxValue(fullaux, "pin-plugin", aux); #endif SetAux(timer, fullaux); - if (*Setup.SVDRPDefaultHost) + if (Setup.SVDRPPeering && *Setup.SVDRPDefaultHost) timer->SetRemote(Setup.SVDRPDefaultHost); Timers->Add(timer); if (!HandleRemoteTimerModifications(timer)) { diff --git a/po/ca_ES.po b/po/ca_ES.po index 03db5e2..3aef54b 100644 --- a/po/ca_ES.po +++ b/po/ca_ES.po @@ -829,10 +829,7 @@ msgstr "" msgid "Button$Without subtitle" msgstr "" -msgid "Epgsearch: Recursive LOCK DeleteTimer failed" -msgstr "" - -msgid "Epgsearch: recursive TIMERS LOCK" +msgid "Timer has been deleted" msgstr "" msgid "Button$Extended" diff --git a/po/cs_CZ.po b/po/cs_CZ.po index 18234ed..242884e 100644 --- a/po/cs_CZ.po +++ b/po/cs_CZ.po @@ -826,10 +826,7 @@ msgstr "S Názvem dílu" msgid "Button$Without subtitle" msgstr "Bez Názvu dílu" -msgid "Epgsearch: Recursive LOCK DeleteTimer failed" -msgstr "" - -msgid "Epgsearch: recursive TIMERS LOCK" +msgid "Timer has been deleted" msgstr "" msgid "Button$Extended" diff --git a/po/da_DK.po b/po/da_DK.po index c5ee74d..f2237ae 100644 --- a/po/da_DK.po +++ b/po/da_DK.po @@ -827,10 +827,7 @@ msgstr "" msgid "Button$Without subtitle" msgstr "" -msgid "Epgsearch: Recursive LOCK DeleteTimer failed" -msgstr "" - -msgid "Epgsearch: recursive TIMERS LOCK" +msgid "Timer has been deleted" msgstr "" msgid "Button$Extended" diff --git a/po/de_DE.po b/po/de_DE.po index 61ebfe4..703f665 100644 --- a/po/de_DE.po +++ b/po/de_DE.po @@ -865,11 +865,8 @@ msgstr "Mit Untertitel" msgid "Button$Without subtitle" msgstr "Ohne Untertitel" -msgid "Epgsearch: Recursive LOCK DeleteTimer failed" -msgstr "Epgsearch: Rekursiver LOCK Problem beim Löschen eines Timers" - -msgid "Epgsearch: recursive TIMERS LOCK" -msgstr "Epgsearch: Rekursiver TIMER Lock" +msgid "Timer has been deleted" +msgstr "Timer wurde gelöscht!" msgid "Button$Extended" msgstr "Erweitert" @@ -1295,6 +1292,12 @@ msgstr "Umschalten zu (%d) '%s'?" msgid "Programming timer failed!" msgstr "Timer-Programmierung fehlschlagen!" +#~ msgid "Epgsearch: recursive TIMERS LOCK" +#~ msgstr "Epgsearch: Rekursiver TIMER Lock" + +#~ msgid "Epgsearch: Recursive LOCK DeleteTimer failed" +#~ msgstr "Epgsearch: Rekursiver LOCK Problem beim Löschen eines Timers" + #~ msgid "in %02ldd" #~ msgstr "in %02ldd" diff --git a/po/el_GR.po b/po/el_GR.po index c002265..2befab5 100644 --- a/po/el_GR.po +++ b/po/el_GR.po @@ -827,10 +827,7 @@ msgstr "" msgid "Button$Without subtitle" msgstr "" -msgid "Epgsearch: Recursive LOCK DeleteTimer failed" -msgstr "" - -msgid "Epgsearch: recursive TIMERS LOCK" +msgid "Timer has been deleted" msgstr "" msgid "Button$Extended" diff --git a/po/es_ES.po b/po/es_ES.po index a8f1552..e77a5eb 100644 --- a/po/es_ES.po +++ b/po/es_ES.po @@ -868,10 +868,7 @@ msgstr "Con subtítulo" msgid "Button$Without subtitle" msgstr "Sin subtítulo" -msgid "Epgsearch: Recursive LOCK DeleteTimer failed" -msgstr "" - -msgid "Epgsearch: recursive TIMERS LOCK" +msgid "Timer has been deleted" msgstr "" msgid "Button$Extended" diff --git a/po/et_EE.po b/po/et_EE.po index 4d4cbbd..c5f5e7e 100644 --- a/po/et_EE.po +++ b/po/et_EE.po @@ -827,10 +827,7 @@ msgstr "" msgid "Button$Without subtitle" msgstr "" -msgid "Epgsearch: Recursive LOCK DeleteTimer failed" -msgstr "" - -msgid "Epgsearch: recursive TIMERS LOCK" +msgid "Timer has been deleted" msgstr "" msgid "Button$Extended" diff --git a/po/fi_FI.po b/po/fi_FI.po index 631966a..24c7e59 100644 --- a/po/fi_FI.po +++ b/po/fi_FI.po @@ -869,11 +869,8 @@ msgstr "Kuvaus" msgid "Button$Without subtitle" msgstr "Ei kuvausta" -msgid "Epgsearch: Recursive LOCK DeleteTimer failed" -msgstr "" - -msgid "Epgsearch: recursive TIMERS LOCK" -msgstr "" +msgid "Timer has been deleted" +msgstr "Ajastin on poistettu!" msgid "Button$Extended" msgstr "Laaja" diff --git a/po/fr_FR.po b/po/fr_FR.po index e795721..8928dbc 100644 --- a/po/fr_FR.po +++ b/po/fr_FR.po @@ -868,10 +868,7 @@ msgstr "Avec les sous-titres" msgid "Button$Without subtitle" msgstr "Sans sous-titres" -msgid "Epgsearch: Recursive LOCK DeleteTimer failed" -msgstr "" - -msgid "Epgsearch: recursive TIMERS LOCK" +msgid "Timer has been deleted" msgstr "" msgid "Button$Extended" diff --git a/po/hr_HR.po b/po/hr_HR.po index 2397cd8..fed7b39 100644 --- a/po/hr_HR.po +++ b/po/hr_HR.po @@ -828,10 +828,7 @@ msgstr "" msgid "Button$Without subtitle" msgstr "" -msgid "Epgsearch: Recursive LOCK DeleteTimer failed" -msgstr "" - -msgid "Epgsearch: recursive TIMERS LOCK" +msgid "Timer has been deleted" msgstr "" msgid "Button$Extended" diff --git a/po/hu_HU.po b/po/hu_HU.po index 3545db8..b3bac82 100644 --- a/po/hu_HU.po +++ b/po/hu_HU.po @@ -827,10 +827,7 @@ msgstr "" msgid "Button$Without subtitle" msgstr "" -msgid "Epgsearch: Recursive LOCK DeleteTimer failed" -msgstr "" - -msgid "Epgsearch: recursive TIMERS LOCK" +msgid "Timer has been deleted" msgstr "" msgid "Button$Extended" diff --git a/po/it_IT.po b/po/it_IT.po index fcc854c..ebfb1b8 100644 --- a/po/it_IT.po +++ b/po/it_IT.po @@ -871,11 +871,8 @@ msgstr "Con sottotitoli" msgid "Button$Without subtitle" msgstr "Senza sottotitoli" -msgid "Epgsearch: Recursive LOCK DeleteTimer failed" -msgstr "" - -msgid "Epgsearch: recursive TIMERS LOCK" -msgstr "" +msgid "Timer has been deleted" +msgstr "Il timer è stata eliminato!" msgid "Button$Extended" msgstr "Esteso" diff --git a/po/lt_LT.po b/po/lt_LT.po index 20837db..4ce7a98 100644 --- a/po/lt_LT.po +++ b/po/lt_LT.po @@ -873,10 +873,7 @@ msgstr "Su subtitrais" msgid "Button$Without subtitle" msgstr "Be subtitrų" -msgid "Epgsearch: Recursive LOCK DeleteTimer failed" -msgstr "" - -msgid "Epgsearch: recursive TIMERS LOCK" +msgid "Timer has been deleted" msgstr "" msgid "Button$Extended" diff --git a/po/nl_NL.po b/po/nl_NL.po index 0353259..142c6ba 100644 --- a/po/nl_NL.po +++ b/po/nl_NL.po @@ -867,10 +867,7 @@ msgstr "Met ondertitel" msgid "Button$Without subtitle" msgstr "Zonder ondertitel" -msgid "Epgsearch: Recursive LOCK DeleteTimer failed" -msgstr "" - -msgid "Epgsearch: recursive TIMERS LOCK" +msgid "Timer has been deleted" msgstr "" msgid "Button$Extended" diff --git a/po/nn_NO.po b/po/nn_NO.po index 4b95723..286e41f 100644 --- a/po/nn_NO.po +++ b/po/nn_NO.po @@ -740,6 +740,9 @@ msgstr "" msgid "EPG Commands" msgstr "" +msgid "Epgsearch: RemoteTimerModifications failed" +msgstr "" + msgid "Already running!" msgstr "" @@ -809,6 +812,9 @@ msgstr "" msgid "Childlock" msgstr "" +msgid "Record on" +msgstr "" + msgid "Timer check" msgstr "" @@ -821,13 +827,7 @@ msgstr "" msgid "Button$Without subtitle" msgstr "" -msgid "Epgsearch: Recursive LOCK DeleteTimer failed" -msgstr "" - -msgid "Epgsearch: recursive TIMERS LOCK" -msgstr "" - -msgid "Epgsearch: RemoteTimerModifications failed" +msgid "Timer has been deleted" msgstr "" msgid "Button$Extended" diff --git a/po/pl_PL.po b/po/pl_PL.po index 6cad7a9..b91d576 100644 --- a/po/pl_PL.po +++ b/po/pl_PL.po @@ -740,6 +740,9 @@ msgstr "" msgid "EPG Commands" msgstr "" +msgid "Epgsearch: RemoteTimerModifications failed" +msgstr "" + msgid "Already running!" msgstr "" @@ -809,6 +812,9 @@ msgstr "" msgid "Childlock" msgstr "" +msgid "Record on" +msgstr "" + msgid "Timer check" msgstr "" @@ -821,13 +827,7 @@ msgstr "" msgid "Button$Without subtitle" msgstr "" -msgid "Epgsearch: Recursive LOCK DeleteTimer failed" -msgstr "" - -msgid "Epgsearch: recursive TIMERS LOCK" -msgstr "" - -msgid "Epgsearch: RemoteTimerModifications failed" +msgid "Timer has been deleted" msgstr "" msgid "Button$Extended" diff --git a/po/pt_PT.po b/po/pt_PT.po index 1cdf4e9..47bc02a 100644 --- a/po/pt_PT.po +++ b/po/pt_PT.po @@ -739,6 +739,9 @@ msgstr "" msgid "EPG Commands" msgstr "" +msgid "Epgsearch: RemoteTimerModifications failed" +msgstr "" + msgid "Already running!" msgstr "" @@ -808,6 +811,9 @@ msgstr "" msgid "Childlock" msgstr "" +msgid "Record on" +msgstr "" + msgid "Timer check" msgstr "" @@ -820,13 +826,7 @@ msgstr "" msgid "Button$Without subtitle" msgstr "" -msgid "Epgsearch: Recursive LOCK DeleteTimer failed" -msgstr "" - -msgid "Epgsearch: recursive TIMERS LOCK" -msgstr "" - -msgid "Epgsearch: RemoteTimerModifications failed" +msgid "Timer has been deleted" msgstr "" msgid "Button$Extended" diff --git a/po/ro_RO.po b/po/ro_RO.po index ec04176..20683e6 100644 --- a/po/ro_RO.po +++ b/po/ro_RO.po @@ -740,6 +740,9 @@ msgstr "" msgid "EPG Commands" msgstr "" +msgid "Epgsearch: RemoteTimerModifications failed" +msgstr "" + msgid "Already running!" msgstr "" @@ -809,6 +812,9 @@ msgstr "" msgid "Childlock" msgstr "" +msgid "Record on" +msgstr "" + msgid "Timer check" msgstr "" @@ -821,13 +827,7 @@ msgstr "" msgid "Button$Without subtitle" msgstr "" -msgid "Epgsearch: Recursive LOCK DeleteTimer failed" -msgstr "" - -msgid "Epgsearch: recursive TIMERS LOCK" -msgstr "" - -msgid "Epgsearch: RemoteTimerModifications failed" +msgid "Timer has been deleted" msgstr "" msgid "Button$Extended" diff --git a/po/ru_RU.po b/po/ru_RU.po index f7bb078..188430d 100644 --- a/po/ru_RU.po +++ b/po/ru_RU.po @@ -739,6 +739,9 @@ msgstr "" msgid "EPG Commands" msgstr "" +msgid "Epgsearch: RemoteTimerModifications failed" +msgstr "" + msgid "Already running!" msgstr "" @@ -808,6 +811,9 @@ msgstr "" msgid "Childlock" msgstr "" +msgid "Record on" +msgstr "" + msgid "Timer check" msgstr "" @@ -820,13 +826,7 @@ msgstr "" msgid "Button$Without subtitle" msgstr "" -msgid "Epgsearch: Recursive LOCK DeleteTimer failed" -msgstr "" - -msgid "Epgsearch: recursive TIMERS LOCK" -msgstr "" - -msgid "Epgsearch: RemoteTimerModifications failed" +msgid "Timer has been deleted" msgstr "" msgid "Button$Extended" diff --git a/po/sk_SK.po b/po/sk_SK.po index f5580cd..10e771e 100644 --- a/po/sk_SK.po +++ b/po/sk_SK.po @@ -781,6 +781,9 @@ msgstr "Vytvoriť čiernu listinu" msgid "EPG Commands" msgstr "EPG príkazy" +msgid "Epgsearch: RemoteTimerModifications failed" +msgstr "" + msgid "Already running!" msgstr "Práve spustené!" @@ -850,6 +853,9 @@ msgstr "Kanál" msgid "Childlock" msgstr "Detský zámok" +msgid "Record on" +msgstr "" + msgid "Timer check" msgstr "Kontrola plánu" @@ -862,13 +868,7 @@ msgstr "S titulkami" msgid "Button$Without subtitle" msgstr "Bez titulkov" -msgid "Epgsearch: Recursive LOCK DeleteTimer failed" -msgstr "" - -msgid "Epgsearch: recursive TIMERS LOCK" -msgstr "" - -msgid "Epgsearch: RemoteTimerModifications failed" +msgid "Timer has been deleted" msgstr "" msgid "Button$Extended" diff --git a/po/sl_SI.po b/po/sl_SI.po index 930d7ed..631d5ba 100644 --- a/po/sl_SI.po +++ b/po/sl_SI.po @@ -741,6 +741,9 @@ msgstr "" msgid "EPG Commands" msgstr "" +msgid "Epgsearch: RemoteTimerModifications failed" +msgstr "" + msgid "Already running!" msgstr "" @@ -810,6 +813,9 @@ msgstr "" msgid "Childlock" msgstr "" +msgid "Record on" +msgstr "" + msgid "Timer check" msgstr "" @@ -822,13 +828,7 @@ msgstr "" msgid "Button$Without subtitle" msgstr "" -msgid "Epgsearch: Recursive LOCK DeleteTimer failed" -msgstr "" - -msgid "Epgsearch: recursive TIMERS LOCK" -msgstr "" - -msgid "Epgsearch: RemoteTimerModifications failed" +msgid "Timer has been deleted" msgstr "" msgid "Button$Extended" diff --git a/po/sv_SE.po b/po/sv_SE.po index dcb3f1b..dfcd6f8 100644 --- a/po/sv_SE.po +++ b/po/sv_SE.po @@ -740,6 +740,9 @@ msgstr "" msgid "EPG Commands" msgstr "" +msgid "Epgsearch: RemoteTimerModifications failed" +msgstr "" + msgid "Already running!" msgstr "" @@ -809,6 +812,9 @@ msgstr "" msgid "Childlock" msgstr "" +msgid "Record on" +msgstr "" + msgid "Timer check" msgstr "" @@ -821,13 +827,7 @@ msgstr "" msgid "Button$Without subtitle" msgstr "" -msgid "Epgsearch: Recursive LOCK DeleteTimer failed" -msgstr "" - -msgid "Epgsearch: recursive TIMERS LOCK" -msgstr "" - -msgid "Epgsearch: RemoteTimerModifications failed" +msgid "Timer has been deleted" msgstr "" msgid "Button$Extended" diff --git a/po/tr_TR.po b/po/tr_TR.po index 8180e0c..3e8305c 100644 --- a/po/tr_TR.po +++ b/po/tr_TR.po @@ -739,6 +739,9 @@ msgstr "" msgid "EPG Commands" msgstr "" +msgid "Epgsearch: RemoteTimerModifications failed" +msgstr "" + msgid "Already running!" msgstr "" @@ -808,6 +811,9 @@ msgstr "" msgid "Childlock" msgstr "" +msgid "Record on" +msgstr "" + msgid "Timer check" msgstr "" @@ -820,13 +826,7 @@ msgstr "" msgid "Button$Without subtitle" msgstr "" -msgid "Epgsearch: Recursive LOCK DeleteTimer failed" -msgstr "" - -msgid "Epgsearch: recursive TIMERS LOCK" -msgstr "" - -msgid "Epgsearch: RemoteTimerModifications failed" +msgid "Timer has been deleted" msgstr "" msgid "Button$Extended" diff --git a/searchtimer_thread.c b/searchtimer_thread.c index 7d7ddaa..f50ab05 100644 --- a/searchtimer_thread.c +++ b/searchtimer_thread.c @@ -233,6 +233,7 @@ void cSearchTimerThread::Action(void) // wait if TimersWriteLock is set or waited for { LOCK_TIMERS_WRITE; + Timers->SetExplicitModify(); } LogFile.iSysLog("search timer update started"); @@ -391,7 +392,7 @@ void cSearchTimerThread::Action(void) if (timerMod & tmAuxEventID) LogFile.Log(3,"timer for '%s~%s' (%s - %s, channel %d) : aux info for event id has changed", pEvent->Title()?pEvent->Title():"no title", pEvent->ShortText()?pEvent->ShortText():"no subtitle", GETDATESTRING(pEvent), GETTIMESTRING(pEvent), ChannelNrFromEvent(pEvent)); } - index = t->Index()+1; + index = t->Id(); Priority = t->Priority(); Lifetime = t->Lifetime(); } @@ -706,7 +707,7 @@ bool cSearchTimerThread::AddModTimer(cTimer* Timer, int index, cSearchExt* searc } else tmpSummary = SummaryExtended(searchExt, Timer, pEvent); - if (*Setup.SVDRPDefaultHost) + if (Setup.SVDRPPeering && *Setup.SVDRPDefaultHost) Timer->SetRemote(Setup.SVDRPDefaultHost); else { if (index==0) @@ -775,7 +776,7 @@ void cSearchTimerThread::RemoveTimer(const cTimer* t, const cEvent* e) TimersDone.Save(); } } - DelTimer(t->Index()+1); + DelTimer(t->Id()); } void cSearchTimerThread::DelRecording(int index) @@ -857,7 +858,7 @@ void cSearchTimerThread::CheckExpiredRecs() void cSearchTimerThread::ModifyManualTimer(const cEvent* event, const cTimer* timer, int bstart, int bstop) { - LogFile.Log(1,"modified manual timer %d for '%s~%s' (%s - %s)", timer->Index()+1, event->Title(), event->ShortText()?event->ShortText():"", GETDATESTRING(event), GETTIMESTRING(event)); + LogFile.Log(1,"modified manual timer %d for '%s~%s' (%s - %s)", timer->Id(), event->Title(), event->ShortText()?event->ShortText():"", GETDATESTRING(event), GETTIMESTRING(event)); time_t start = event->StartTime() - bstart; time_t stop = event->EndTime() + bstop; @@ -874,7 +875,7 @@ void cSearchTimerThread::ModifyManualTimer(const cEvent* event, const cTimer* ti char* cmdbuf = NULL; msprintf(&cmdbuf, "MODT %d %d:%d:%s:%s:%s:%d:%d:%s:%s", - timer->Index()+1, + timer->Id(), timer->Flags(), timer->Channel()->Number(), daybuffer, @@ -929,7 +930,7 @@ void cSearchTimerThread::CheckManualTimers(void) char* szEventID = GetAuxValue(ti, "eventid"); if (szEventID) eventID = atol(szEventID); - LogFile.Log(3,"checking manual timer %d by event ID %u", ti->Index()+1, eventID); + LogFile.Log(3,"checking manual timer %d by event ID %u", ti->Id(), eventID); const cEvent* event = schedule->GetEvent(eventID); if (event) { @@ -937,7 +938,7 @@ void cSearchTimerThread::CheckManualTimers(void) ModifyManualTimer(event, ti, bstart, bstop); } else - LogFile.Log(1,"ooops - no event found with id %u for manual timer %d", eventID, ti->Index()+1); + LogFile.Log(1,"ooops - no event found with id %u for manual timer %d", eventID, ti->Id()); if (szEventID) free(szEventID); } @@ -955,7 +956,7 @@ void cSearchTimerThread::CheckManualTimers(void) if (testevent->StartTime() < ti->StopTime() && testevent->EndTime() > ti->StartTime()) eventlist.Add(new cSearchResult(testevent, (const cSearchExt*)NULL)); } - LogFile.Log(3,"checking manual timer %d by channel and time, found %d candidates", ti->Index()+1, eventlist.Count()); + LogFile.Log(3,"checking manual timer %d by channel and time, found %d candidates", ti->Id(), eventlist.Count()); if (eventlist.Count() > 0) { // choose the event with the best match by duration @@ -982,7 +983,7 @@ void cSearchTimerThread::CheckManualTimers(void) LogFile.Log(3,"selected candidate is too bad"); } else - LogFile.Log(1,"ooops - no events found touching manual timer %d", ti->Index()+1); + LogFile.Log(1,"ooops - no events found touching manual timer %d", ti->Id()); } if (updateMethod) free(updateMethod); } diff --git a/timer_thread.c b/timer_thread.c index ec82977..feef7b3 100644 --- a/timer_thread.c +++ b/timer_thread.c @@ -89,9 +89,10 @@ void cTimerThread::Action(void) m_Active=false; break; } - { - LOCK_TIMERS_WRITE; - } + { + LOCK_TIMERS_WRITE; + Timers->SetExplicitModify(); + } bool bSuccess = SendViaSVDRP(m_cmd); if (!bSuccess) { |