summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CONTRIBUTORS2
-rw-r--r--HISTORY4
-rw-r--r--epg.c9
3 files changed, 12 insertions, 3 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index 72837314..0926d4c0 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -2941,6 +2941,8 @@ Manuel Reimer <Manuel.Reimer@gmx.de>
for suggesting to make the SVDRP command DELC accept a channel id
for reporting a crash in the SVDRP command CLRE in case a non-existing channel
number is given
+ for reporting that LSTE doesn't work after PUTE in case a channel didn't already
+ have EPG data
Rene van den Braken <rene@vandenbraken.name>
for reporting a bug in writing the PCR pid into the PMT in
diff --git a/HISTORY b/HISTORY
index ce832373..ea592942 100644
--- a/HISTORY
+++ b/HISTORY
@@ -9578,7 +9578,7 @@ Video Disk Recorder Revision History
given (reported by Manuel Reimer).
- Fixed handling $(PKG_CONFIG) in newplugin (thanks to Winfried Köhler).
-2021-01-02:
+2021-01-04:
- Fixed strreplace() to handle NULL strings (reported by Jürgen Schneider).
- Somewhere down the road the 'x' bit of Doxyfile.filter got lost, so the
@@ -9587,3 +9587,5 @@ Video Disk Recorder Revision History
- Fixed a crash in the SVDRP command CLRE in case a non-existing channel number is
given (reported by Manuel Reimer).
- Fixed handling $(PKG_CONFIG) in newplugin (thanks to Winfried Köhler).
+- Fixed initializing the cChannel::schedule pointer after reading EPG data with PUTE
+ (reported by Manuel Reimer).
diff --git a/epg.c b/epg.c
index 5d2980c9..c4080478 100644
--- a/epg.c
+++ b/epg.c
@@ -7,7 +7,7 @@
* Original version (as used in VDR before 1.3.0) written by
* Robert Schneider <Robert.Schneider@web.de> and Rolf Hakenes <hakenes@hippomi.de>.
*
- * $Id: epg.c 4.9 2019/05/20 09:55:22 kls Exp $
+ * $Id: epg.c 5.1 2021/01/04 09:05:26 kls Exp $
*/
#include "epg.h"
@@ -1311,8 +1311,13 @@ bool cSchedules::Read(FILE *f)
fclose(f);
if (result) {
// Initialize the channels' schedule pointers, so that the first WhatsOn menu will come up faster:
- for (cChannel *Channel = Channels->First(); Channel; Channel = Channels->Next(Channel))
+ for (cChannel *Channel = Channels->First(); Channel; Channel = Channels->Next(Channel)) {
+ if (const cSchedule *Schedule = Channel->schedule) {
+ if (!Schedule->ChannelID().Valid()) // this is the DummySchedule
+ Channel->schedule = NULL;
+ }
Schedules->GetSchedule(Channel);
+ }
}
return result;
}