summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKlaus Schmidinger <vdr@tvdr.de>2004-03-07 09:40:51 +0100
committerKlaus Schmidinger <vdr@tvdr.de>2004-03-07 09:40:51 +0100
commite070d5462cf3d790f7230e872d517d35b67c9a6d (patch)
tree9e1544c470e5a5631bb5e30c628d8c9e921d896b
parent12c0b0dd1507ccb6aa4d83ebc43f248816ff30f4 (diff)
downloadvdr-e070d5462cf3d790f7230e872d517d35b67c9a6d.tar.gz
vdr-e070d5462cf3d790f7230e872d517d35b67c9a6d.tar.bz2
Fixed handling timers in VPS margin if the EPG scan is turned on
-rw-r--r--HISTORY5
-rw-r--r--menu.c3
-rw-r--r--vdr.c5
3 files changed, 9 insertions, 4 deletions
diff --git a/HISTORY b/HISTORY
index 3bc8d072..08214822 100644
--- a/HISTORY
+++ b/HISTORY
@@ -2714,7 +2714,7 @@ Video Disk Recorder Revision History
whether an event is currently running (see MANUAL under "The "Schedule" Menu"
for details).
-2004-03-05: Version 1.3.6
+2004-03-07: Version 1.3.6
- Completed the Finnish OSD texts (thanks to Rolf Ahrenberg).
- Fixed some descriptor handling in 'libsi' (thanks to Stéphane Esté-Gracias).
@@ -2722,3 +2722,6 @@ Video Disk Recorder Revision History
- Fixed assigning events to timers (they no longer get "stuck").
- Added log entries whenever the running status of an event changes (currently
only logging the first 30 channels).
+- Fixed handling timers in VPS margin if the EPG scan is turned on (the EPG scan
+ switched the device away from the channel, so it wouldn't see the change of
+ the running status).
diff --git a/menu.c b/menu.c
index e29bde7f..494440c8 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.294 2004/03/06 10:13:15 kls Exp $
+ * $Id: menu.c 1.295 2004/03/07 09:40:34 kls Exp $
*/
#include "menu.h"
@@ -3195,6 +3195,7 @@ bool cRecordControls::Start(cTimer *Timer, bool Pause)
if (device == cTransferControl::ReceiverDevice())
cControl::Shutdown(); // in case this device was used for Transfer Mode
}
+ dsyslog("switching device %d to channel %d", device->DeviceNumber() + 1, channel->Number());
if (!device->SwitchChannel(channel, false)) {
cThread::EmergencyExit(true);
return false;
diff --git a/vdr.c b/vdr.c
index 2da8349c..ec03c21a 100644
--- a/vdr.c
+++ b/vdr.c
@@ -22,7 +22,7 @@
*
* The project's page is at http://www.cadsoft.de/vdr
*
- * $Id: vdr.c 1.178 2004/02/29 14:21:22 kls Exp $
+ * $Id: vdr.c 1.179 2004/03/07 09:39:54 kls Exp $
*/
#include <getopt.h>
@@ -571,7 +571,6 @@ int main(int argc, char *argv[])
if (Timer->HasFlags(tfActive | tfVps) && !Timer->Recording() && !Timer->Pending() && Timer->Matches(Now + Setup.VpsMargin, true)) {
if (!Timer->InVpsMargin()) {
Timer->SetInVpsMargin(true);
- TimerInVpsMargin = true;
//XXX if not primary device has TP???
LastTimerChannel = Timer->Channel()->Number();
cRecordControls::Start(Timer); // will only switch the device
@@ -579,6 +578,8 @@ int main(int argc, char *argv[])
}
else
Timer->SetInVpsMargin(false);
+ if (Timer->InVpsMargin())
+ TimerInVpsMargin = true;
}
}
// CAM control: