From 425daa4ca5d2df5eb803fe52b1e94e6490edbd4e Mon Sep 17 00:00:00 2001 From: Klaus Schmidinger Date: Thu, 26 May 2005 10:27:06 +0200 Subject: [PATCH] Now dropping EPG events that have a zero start time or duration --- CONTRIBUTORS | 1 + HISTORY | 2 ++ eit.c | 5 ++++- 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/CONTRIBUTORS b/CONTRIBUTORS index d9ffd84b..c9025c72 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -564,6 +564,7 @@ Oliver Endriss for reporting a problem with the name of the remote control for which the keys are being learned overwriting the date/time in the 'classic' skin for making cDvbOsd check available OSD memory at runtime + for making cEIT::cEIT() drop EPG events that have a zero start time or duration Reinhard Walter Buchner for adding some satellites to 'sources.conf' diff --git a/HISTORY b/HISTORY index c4c98ad6..68db5baa 100644 --- a/HISTORY +++ b/HISTORY @@ -3557,3 +3557,5 @@ Video Disk Recorder Revision History written to by a timer (thanks to Sascha Volkenandt for pointing out this one). - Pressing the "Play" key in live viewing mode now resumes a previous replay session (thanks to Mirko Dölle). +- Now dropping EPG events that have a zero start time or duration (thanks to + Oliver Endriss). diff --git a/eit.c b/eit.c index 9875f99b..2426234a 100644 --- a/eit.c +++ b/eit.c @@ -8,7 +8,7 @@ * Robert Schneider and Rolf Hakenes . * Adapted to 'libsi' for VDR 1.3.0 by Marcel Wiesweg . * - * $Id: eit.c 1.104 2005/05/15 10:36:04 kls Exp $ + * $Id: eit.c 1.105 2005/05/26 10:25:41 kls Exp $ */ #include "eit.h" @@ -48,6 +48,9 @@ cEIT::cEIT(cSchedules *Schedules, int Source, u_char Tid, const u_char *Data) SI::EIT::Event SiEitEvent; for (SI::Loop::Iterator it; eventLoop.getNext(SiEitEvent, it); ) { + // Drop bogus events. + if (SiEitEvent.getStartTime() == 0 || SiEitEvent.getDuration() == 0) + continue; Empty = false; cEvent *pEvent = (cEvent *)pSchedule->GetEvent(SiEitEvent.getEventId(), SiEitEvent.getStartTime()); if (!pEvent) {