summaryrefslogtreecommitdiff
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
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
-rw-r--r--CONTRIBUTORS4
-rw-r--r--HISTORY5
-rw-r--r--menu.c10
3 files changed, 16 insertions, 3 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index d6dfba1c..3ee94b44 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -1152,3 +1152,7 @@ Joachim Wilke <vdr@joachim-wilke.de>
Sascha Klek <sklek@gmx.de>
for reporting a problem with the '0' key in the "Day" item of the "Timers" menu
+
+Andreas Brugger <brougs78@gmx.net>
+ for reporting a possible crash when pausing live video and the recording was
+ unable to start, maybe because there was no lock on the device
diff --git a/HISTORY b/HISTORY
index 42f62cb0..5fe0e37c 100644
--- a/HISTORY
+++ b/HISTORY
@@ -3139,7 +3139,7 @@ Video Disk Recorder Revision History
days ('1' is monday). Thanks to Sascha Klek for reporting a problem with the
'0' key in the "Day" item of the "Timers" menu.
-2004-11-19: Version 1.3.17
+2004-11-20: Version 1.3.17
- Fixed cRemux::ScanVideoPacket() to make sure it doesn't access memory beyond
the end of the given buffer, which has caused some unjustified "unknown
@@ -3149,3 +3149,6 @@ Video Disk Recorder Revision History
If you want to use the old DVB driver just revert this line to what it was in
VDR version 1.3.16. The 'runvdr' script by default uses the "build-2.4"
driver. If you want to use "build-2.6" just edit that file as necessary.
+- Fixed a possible crash when pausing live video and the recording was unable
+ to start, maybe because there was no lock on the device (thanks to Andreas
+ Brugger for reporting this one).
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));
}
}
}