summaryrefslogtreecommitdiff
path: root/eit.c
diff options
context:
space:
mode:
authorKlaus Schmidinger <vdr@tvdr.de>2012-02-25 15:52:16 +0100
committerKlaus Schmidinger <vdr@tvdr.de>2012-02-25 15:52:16 +0100
commitaaca30f2ac1c9e7a78f05bd2c81d10a5514cba97 (patch)
treeeb4e481e1bdcd176b2631fcc081381730ab2f8e1 /eit.c
parentd0cd92a4559c06fa5801099ee094e3155bd9a3d8 (diff)
downloadvdr-aaca30f2ac1c9e7a78f05bd2c81d10a5514cba97.tar.gz
vdr-aaca30f2ac1c9e7a78f05bd2c81d10a5514cba97.tar.bz2
If the first event in a schedule has a table id of 0x00, any incoming EIT data for that schedule from the DVB stream will be completely ignored
Diffstat (limited to 'eit.c')
-rw-r--r--eit.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/eit.c b/eit.c
index ed16163f..cc10003d 100644
--- a/eit.c
+++ b/eit.c
@@ -8,7 +8,7 @@
* Robert Schneider <Robert.Schneider@web.de> and Rolf Hakenes <hakenes@hippomi.de>.
* Adapted to 'libsi' for VDR 1.3.0 by Marcel Wiesweg <marcel.wiesweg@gmx.de>.
*
- * $Id: eit.c 2.12 2010/05/14 14:08:35 kls Exp $
+ * $Id: eit.c 2.13 2012/02/25 15:25:51 kls Exp $
*/
#include "eit.h"
@@ -38,6 +38,14 @@ cEIT::cEIT(cSchedules *Schedules, int Source, u_char Tid, const u_char *Data, bo
return; // only collect data for known channels
cSchedule *pSchedule = (cSchedule *)Schedules->GetSchedule(channel, true);
+ if (pSchedule) {
+ if (cEvent *Event = pSchedule->Events()->First()) {
+ if (Event->TableID() == 0x00)
+ return; // never touch schedules with events from external sources
+ }
+ }
+ else
+ return;
bool Empty = true;
bool Modified = false;