summaryrefslogtreecommitdiff
path: root/eit.c
diff options
context:
space:
mode:
authorKlaus Schmidinger <kls (at) cadsoft (dot) de>2002-04-07 18:00:00 +0200
committerKlaus Schmidinger <kls (at) cadsoft (dot) de>2002-04-07 18:00:00 +0200
commitc9a5d8ea5328e4a8bcb0c3423b825c02cb0c3b27 (patch)
tree5c60d0e45adc0cb556840fd48fa182a877184802 /eit.c
parent262327908d329a8c292d8ae71fe9d135390a3cde (diff)
downloadvdr-patch-lnbsharing-c9a5d8ea5328e4a8bcb0c3423b825c02cb0c3b27.tar.gz
vdr-patch-lnbsharing-c9a5d8ea5328e4a8bcb0c3423b825c02cb0c3b27.tar.bz2
Version 1.0.0vdr-1.0.0
- Fixed a problem with wrong EPG data in the Schedules menu (thanks to Tobias Kerner, problem was initially reported by Michel Moster, but somehow I had misplaced his message...). - Added Spanish language texts (thanks to Ruben Nunez Francisco). - Fixed resetting the "First day" timer parameter once the timer actually starts recording. - Fixed the still picture workaround in case the progress display is active (thanks to Gerald Raaf). - Fixed a problem with accessing the epg.data file before it is fully written (thanks to Thilo Wunderlich for reporting this one). - Now the EPG scan skips channels that have their 'Ca' parameter explicitly set to an other DVB card (suggested by Sergei Haller). - Fixed a possible hangup when reading a broken epg.data file (thanks to Henning Holtschneider for pointing this one out). - Fixed a bug in the editing process in case a previously edited file with the same name was manually deleted on a system with more than one video directory (thanks to Dirk Wiebel for reporting this one).
Diffstat (limited to 'eit.c')
-rw-r--r--eit.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/eit.c b/eit.c
index 4fc749b..b27fbc7 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.42 2002/04/01 12:58:20 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;
}
}
}
@@ -1090,10 +1090,10 @@ void cSIProcessor::Action()
if (epgDataFileName && now - lastDump > 600)
{
cMutexLock MutexLock(&schedulesMutex);
- FILE *f = fopen(GetEpgDataFileName(), "w");
- if (f) {
+ cSafeFile f(GetEpgDataFileName());
+ if (f.Open()) {
schedules->Dump(f);
- fclose(f);
+ f.Close();
}
else
LOG_ERROR;