From 367b3f8c7d128f6e7f48d2304440f08577ab0024 Mon Sep 17 00:00:00 2001 From: Klaus Schmidinger Date: Sat, 6 Apr 2002 14:02:41 +0200 Subject: Fixed a possible hangup when reading a broken epg.data file --- eit.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'eit.c') diff --git a/eit.c b/eit.c index af4d3394..b27fbc7a 100644 --- a/eit.c +++ b/eit.c @@ -16,7 +16,7 @@ * the Free Software Foundation; either version 2 of the License, or * * (at your option) any later version. * * * - * $Id: eit.c 1.43 2002/04/06 11:42:47 kls Exp $ + * $Id: eit.c 1.44 2002/04/06 13:58:59 kls Exp $ ***************************************************************************/ #include "eit.h" @@ -390,12 +390,12 @@ bool cEventInfo::Read(FILE *f, cSchedule *Schedule) case 'e': pEvent = NULL; break; case 'c': // to keep things simple we react on 'c' here - return false; + return true; default: esyslog(LOG_ERR, "ERROR: unexpected tag while reading EPG data: %s", s); return false; } } - return true; + esyslog(LOG_ERR, "ERROR: unexpected end of file while reading EPG data"); } return false; } @@ -754,8 +754,8 @@ bool cSchedule::Read(FILE *f, cSchedules *Schedules) if (1 == sscanf(s + 1, "%u", &uServiceID)) { cSchedule *p = (cSchedule *)Schedules->SetCurrentServiceID(uServiceID); if (p) { - while (cEventInfo::Read(f, p)) - ; // loop stops after having read the closing 'c' + if (!cEventInfo::Read(f, p)) + return false; } } } -- cgit v1.2.3