summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CONTRIBUTORS4
-rw-r--r--HISTORY3
-rw-r--r--epg.c11
3 files changed, 16 insertions, 2 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index b381411a..3dcf6745 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -2801,3 +2801,7 @@ Chris Mayo <aklhfex@gmail.com>
Dominic Evans <oldmanuk@gmail.com>
for making the SVDRP command LSTC accepts channel IDs
for adding cap_net_raw to the capabilities that are not dropped
+
+Torsten Lang <info@torstenlang.de>
+ for reporting a problem with newline characters in stream component descriptions
+ of EPG data from BSkyB's "MTV MUSIC"
diff --git a/HISTORY b/HISTORY
index 2108f02d..353662cd 100644
--- a/HISTORY
+++ b/HISTORY
@@ -6803,3 +6803,6 @@ Video Disk Recorder Revision History
- Updated the Hungarian language texts (thanks to István Füley).
- cDvbTuner::ExecuteDiseqc() now makes sure only one tuner sends SCR commands
at any given time (reported by Frank Neumann).
+- cEvent::FixEpgBugs() now replaces any newline characters in stream component
+ descriptions with blanks (thanks to Torsten Lang for reporting a problem with
+ EPG data from BSkyB's "MTV MUSIC", S28.2E-2-2010-7012).
diff --git a/epg.c b/epg.c
index c2d1783d..e1e317d5 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 2.7 2011/02/25 15:16:05 kls Exp $
+ * $Id: epg.c 2.8 2012/01/08 14:59:38 kls Exp $
*/
#include "epg.h"
@@ -828,10 +828,17 @@ void cEvent::FixEpgBugs(void)
Final:
- // VDR can't usefully handle newline characters in the title and shortText of EPG
+ // VDR can't usefully handle newline characters in the title, shortText or component description of EPG
// data, so let's always convert them to blanks (independent of the setting of EPGBugfixLevel):
strreplace(title, '\n', ' ');
strreplace(shortText, '\n', ' ');
+ if (components) {
+ for (int i = 0; i < components->NumComponents(); i++) {
+ tComponent *p = components->Component(i);
+ if (p->description)
+ strreplace(p->description, '\n', ' ');
+ }
+ }
/* TODO adapt to UTF-8
// Same for control characters:
strreplace(title, '\x86', ' ');