From fb3e5ca4ee9590219e9e2c4d0cf5ea232a78bab1 Mon Sep 17 00:00:00 2001 From: Klaus Schmidinger Date: Wed, 25 Apr 2012 11:14:12 +0200 Subject: The Timers list is now marked as modified whenever a recording starts or ends --- HISTORY | 1 + menu.c | 8 ++++---- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/HISTORY b/HISTORY index 37351bed..dd96da11 100644 --- a/HISTORY +++ b/HISTORY @@ -7084,3 +7084,4 @@ Video Disk Recorder Revision History - OSD and skin are now reinitialized after a plugin setup page has been confirmed, to have them react immediately in case any change to a plugin's setup parameter has an effect on the OSD. +- The Timers list is now marked as modified whenever a recording starts or ends. diff --git a/menu.c b/menu.c index 21c59381..97dbef49 100644 --- a/menu.c +++ b/menu.c @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: menu.c 2.51 2012/04/24 09:17:45 kls Exp $ + * $Id: menu.c 2.52 2012/04/25 09:42:54 kls Exp $ */ #include "menu.h" @@ -4094,6 +4094,8 @@ eOSState cDisplaySubtitleTracks::ProcessKey(eKeys Key) cRecordControl::cRecordControl(cDevice *Device, cTimer *Timer, bool Pause) { + // Whatever happens here, the timers will be modified in some way... + Timers.SetModified(); // We're going to manipulate an event here, so we need to prevent // others from modifying any EPG data: cSchedulesLock SchedulesLock; @@ -4108,7 +4110,6 @@ cRecordControl::cRecordControl(cDevice *Device, cTimer *Timer, bool Pause) if (!timer) { timer = new cTimer(true, Pause); Timers.Add(timer); - Timers.SetModified(); instantId = cString::sprintf(cDevice::NumDevices() > 1 ? "%s - %d" : "%s", timer->Channel()->Name(), device->CardIndex() + 1); } timer->SetPending(true); @@ -4130,7 +4131,6 @@ cRecordControl::cRecordControl(cDevice *Device, cTimer *Timer, bool Pause) } else { Timers.Del(timer); - Timers.SetModified(); if (!cReplayControl::LastReplayed()) // an instant recording, maybe from cRecordControls::PauseLiveVideo() cReplayControl::SetRecording(fileName, Recording.Name()); } @@ -4158,7 +4158,6 @@ cRecordControl::cRecordControl(cDevice *Device, cTimer *Timer, bool Pause) timer->SetDeferred(DEFERTIMER); if (!Timer) { Timers.Del(timer); - Timers.SetModified(); timer = NULL; } } @@ -4208,6 +4207,7 @@ void cRecordControl::Stop(bool ExecuteUserCommand) cStatus::MsgRecording(device, NULL, fileName, false); if (ExecuteUserCommand) cRecordingUserCommand::InvokeCommand(RUC_AFTERRECORDING, fileName); + Timers.SetModified(); } } -- cgit v1.2.3