summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CONTRIBUTORS1
-rw-r--r--HISTORY2
-rw-r--r--epg.c4
3 files changed, 6 insertions, 1 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index 683dcdaa..2eeb9e3a 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -1287,6 +1287,7 @@ Olaf Titz <olaf@bigred.inka.de>
for fixing some typos in the Makefile's 'font' target
for reporting a problem and some advice in fixing a possible freeze in pause mode
in case a device's PlayPesPacket() function permanently returns 0
+ for reporting excess memory consumption due to duplicate components in EPG events
Darren Salt <linux@youmustbejoking.demon.co.uk>
for pointing out that the '-' and 'ö' characters need to be escaped in the man
diff --git a/HISTORY b/HISTORY
index 180b19de..43dfbe31 100644
--- a/HISTORY
+++ b/HISTORY
@@ -3646,3 +3646,5 @@ Video Disk Recorder Revision History
- Removed the fix for handling VPS timers, so that they only record if the event
they are assigned to actually has the given VPS time. This has caused repeating
VPS timers to stop recording prematurely.
+- Avoiding duplicate components in EPG events when reading epg.data or in the
+ PUTE SVDRP command (thanks to Olaf Titz for reporting this one).
diff --git a/epg.c b/epg.c
index 05c6d742..038f9c60 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 1.35 2005/06/05 12:17:15 kls Exp $
+ * $Id: epg.c 1.36 2005/07/30 14:44:54 kls Exp $
*/
#include "epg.h"
@@ -298,6 +298,8 @@ bool cEvent::Read(FILE *f, cSchedule *Schedule)
if (n == 3 || n == 4) {
Event = (cEvent *)Schedule->GetEvent(EventID, StartTime);
cEvent *newEvent = NULL;
+ if (Event)
+ DELETENULL(Event->components);
if (!Event)
Event = newEvent = new cEvent(EventID);
if (Event) {