1
0
mirror of https://github.com/VDR4Arch/vdr.git synced 2023-10-10 13:36:52 +02:00

Fixed handling one-shot timers that were already recording and had their start time changed into the future

This commit is contained in:
Klaus Schmidinger 2002-08-25 10:59:49 +02:00
parent 2d487365a1
commit 9239d3e6df
3 changed files with 7 additions and 4 deletions

View File

@ -55,6 +55,8 @@ Matthias Schniedermeyer <ms@citd.de>
for his "master-timer" tool for his "master-timer" tool
for helping to debug the "move to last position in list" bug for helping to debug the "move to last position in list" bug
for suggesting the SVDRP command CLRE for suggesting the SVDRP command CLRE
for reporting a bug in handling one-shot timers that were already recording
and had their start time changed into the future
Miha Setina <mihasetina@softhome.net> Miha Setina <mihasetina@softhome.net>
for translating OSD texts to the Slovenian language for translating OSD texts to the Slovenian language

View File

@ -1427,3 +1427,6 @@ Video Disk Recorder Revision History
a cPalette (see osdbase.h). a cPalette (see osdbase.h).
- The new SVDRP command CLRE can be used to clear the entire EPG data (suggested - The new SVDRP command CLRE can be used to clear the entire EPG data (suggested
by Matthias Schniedermeyer). by Matthias Schniedermeyer).
- Fixed handling one-shot timers that were already recording and had their start
time changed into the future (thanks to Matthias Schniedermeyer for reporting
this one).

6
menu.c
View File

@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and * See the main source file 'vdr.c' for copyright information and
* how to reach the author. * how to reach the author.
* *
* $Id: menu.c 1.205 2002/08/15 11:28:08 kls Exp $ * $Id: menu.c 1.206 2002/08/25 10:56:09 kls Exp $
*/ */
#include "menu.h" #include "menu.h"
@ -2490,9 +2490,7 @@ void cRecordControl::Stop(bool KeepInstant)
cStatus::MsgRecording(device, NULL); cStatus::MsgRecording(device, NULL);
DELETENULL(recorder); DELETENULL(recorder);
timer->SetRecording(false); timer->SetRecording(false);
if ((IsInstant() && !KeepInstant) || (timer->IsSingleEvent() && !timer->Matches())) { if ((IsInstant() && !KeepInstant) || (timer->IsSingleEvent() && timer->StopTime() <= time(NULL))) {
// checking timer->Matches() to make sure we don't delete the timer
// if the program was cancelled before the timer's stop time!
isyslog("deleting timer %d", timer->Index() + 1); isyslog("deleting timer %d", timer->Index() + 1);
Timers.Del(timer); Timers.Del(timer);
Timers.Save(); Timers.Save();