summaryrefslogtreecommitdiff
path: root/menu.c
diff options
context:
space:
mode:
authorKlaus Schmidinger <vdr@tvdr.de>2004-11-20 11:00:26 +0100
committerKlaus Schmidinger <vdr@tvdr.de>2004-11-20 11:00:26 +0100
commitb04f71562dc26ca4e98b12ae835c7e3291c2792f (patch)
treeab78cd0c3d38d13a69fe96c804556aac957869fd /menu.c
parent2eda0c4113a4755ed0239b4ecdddafc16965b9f4 (diff)
downloadvdr-b04f71562dc26ca4e98b12ae835c7e3291c2792f.tar.gz
vdr-b04f71562dc26ca4e98b12ae835c7e3291c2792f.tar.bz2
Fixed a possible crash when pausing live video and the recording was unable to start
Diffstat (limited to 'menu.c')
-rw-r--r--menu.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/menu.c b/menu.c
index f5c3c611..f482ad17 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 1.319 2004/11/01 13:49:40 kls Exp $
+ * $Id: menu.c 1.320 2004/11/20 10:49:17 kls Exp $
*/
#include "menu.h"
@@ -2833,10 +2833,16 @@ cRecordControl::cRecordControl(cDevice *Device, cTimer *Timer, bool Pause)
if (!Timer && !cReplayControl::LastReplayed()) // an instant recording, maybe from cRecordControls::PauseLiveVideo()
cReplayControl::SetRecording(fileName, Recording.Name());
Recordings.AddByName(fileName);
+ return;
}
else
DELETENULL(recorder);
}
+ if (!Timer) {
+ Timers.Del(timer);
+ Timers.SetModified();
+ timer = NULL;
+ }
}
cRecordControl::~cRecordControl()
@@ -2928,7 +2934,7 @@ bool cRecordControls::Start(cTimer *Timer, bool Pause)
for (int i = 0; i < MAXRECORDCONTROLS; i++) {
if (!RecordControls[i]) {
RecordControls[i] = new cRecordControl(device, Timer, Pause);
- return true;
+ return RecordControls[i]->Process(time(NULL));
}
}
}