Now using the event's start time when checking against VPS margin

This commit is contained in:
Klaus Schmidinger 2006-05-07 09:01:59 +02:00
parent 452eec70a7
commit 93d0120c3f
3 changed files with 14 additions and 8 deletions

View File

@ -4688,7 +4688,7 @@ Video Disk Recorder Revision History
- Updated the Italian OSD texts (thanks to Nino Gerbino and Antonio Ospite).
- Updated the Estonian OSD texts (thanks to Arthur Konovalov).
2006-05-05: Version 1.4.0-1
2006-05-06: Version 1.4.0-1
- Updated 'S110W' in 'sources.conf'.
- Adjusted the 'runvdr' script so that the user can fill in the functions to
@ -4702,3 +4702,6 @@ Video Disk Recorder Revision History
(thanks to Udo Richter).
- Fixed the character 'r' in fontosd and fontsml for iso8859-2 (thanks to Vladimír
Bárta).
- When checking whether a VPS timer has entered the "VPS margin", the event's start
time is now used instead of the timer's start time, because otherwise events that
start way off of their VPS time wouldn't be recorded correctly.

View File

@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: config.h 1.255 2006/04/29 09:24:07 kls Exp $
* $Id: config.h 1.256 2006/05/07 09:01:49 kls Exp $
*/
#ifndef __CONFIG_H
@ -21,7 +21,7 @@
// VDR's own version number:
#define VDRVERSION "1.4.0"
#define VDRVERSION "1.4.0-1"
#define VDRVERSNUM 10400 // Version * 10000 + Major * 100 + Minor
// The plugin API's version number:

View File

@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: timers.c 1.58 2006/04/21 15:12:49 kls Exp $
* $Id: timers.c 1.59 2006/05/07 09:01:00 kls Exp $
*/
#include "timers.h"
@ -365,10 +365,13 @@ bool cTimer::Matches(time_t t, bool Directly, int Margin) const
}
if (HasFlags(tfActive)) {
if (HasFlags(tfVps) && !Directly && event && event->Vps() && event->Schedule() && event->Schedule()->PresentSeenWithin(30)) {
startTime = event->StartTime();
stopTime = event->EndTime();
return event->IsRunning(true);
if (HasFlags(tfVps) && event && event->Vps()) {
if (Margin || !Directly) {
startTime = event->StartTime();
stopTime = event->EndTime();
if (!Margin)
return event->IsRunning(true);
}
}
return startTime <= t + Margin && t < stopTime; // must stop *before* stopTime to allow adjacent timers
}