mirror of
https://github.com/VDR4Arch/vdr.git
synced 2023-10-10 13:36:52 +02:00
Newlines in title and short text of an EPG event are now changed into blanks only after all other fixes
This commit is contained in:
parent
e9a90f7972
commit
5f0b2fbf2e
2
HISTORY
2
HISTORY
@ -4816,3 +4816,5 @@ Video Disk Recorder Revision History
|
|||||||
in case they are added after the current event.
|
in case they are added after the current event.
|
||||||
- cEIT::cEIT() now calls pSchedule->SetPresentSeen() even if OnlyRunningStatus is
|
- cEIT::cEIT() now calls pSchedule->SetPresentSeen() even if OnlyRunningStatus is
|
||||||
true.
|
true.
|
||||||
|
- Newlines in title and short text of an EPG event are now changed into blanks only
|
||||||
|
after all other fixes, because a short text might become a description.
|
||||||
|
34
epg.c
34
epg.c
@ -7,7 +7,7 @@
|
|||||||
* Original version (as used in VDR before 1.3.0) written by
|
* Original version (as used in VDR before 1.3.0) written by
|
||||||
* Robert Schneider <Robert.Schneider@web.de> and Rolf Hakenes <hakenes@hippomi.de>.
|
* Robert Schneider <Robert.Schneider@web.de> and Rolf Hakenes <hakenes@hippomi.de>.
|
||||||
*
|
*
|
||||||
* $Id: epg.c 1.76 2006/07/22 09:13:15 kls Exp $
|
* $Id: epg.c 1.77 2006/07/22 10:13:34 kls Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "epg.h"
|
#include "epg.h"
|
||||||
@ -435,18 +435,6 @@ void ReportEpgBugFixStats(bool Reset)
|
|||||||
|
|
||||||
void cEvent::FixEpgBugs(void)
|
void cEvent::FixEpgBugs(void)
|
||||||
{
|
{
|
||||||
// VDR can't usefully handle newline characters in the title and shortText of EPG
|
|
||||||
// data, so let's always convert them to blanks (independent of the setting of EPGBugfixLevel):
|
|
||||||
strreplace(title, '\n', ' ');
|
|
||||||
strreplace(shortText, '\n', ' ');
|
|
||||||
// Same for control characters:
|
|
||||||
strreplace(title, '\x86', ' ');
|
|
||||||
strreplace(title, '\x87', ' ');
|
|
||||||
strreplace(shortText, '\x86', ' ');
|
|
||||||
strreplace(shortText, '\x87', ' ');
|
|
||||||
strreplace(description, '\x86', ' ');
|
|
||||||
strreplace(description, '\x87', ' ');
|
|
||||||
|
|
||||||
if (isempty(title)) {
|
if (isempty(title)) {
|
||||||
// we don't want any "(null)" titles
|
// we don't want any "(null)" titles
|
||||||
title = strcpyrealloc(title, tr("No title"));
|
title = strcpyrealloc(title, tr("No title"));
|
||||||
@ -454,7 +442,7 @@ void cEvent::FixEpgBugs(void)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (Setup.EPGBugfixLevel == 0)
|
if (Setup.EPGBugfixLevel == 0)
|
||||||
return;
|
goto Final;
|
||||||
|
|
||||||
// Some TV stations apparently have their own idea about how to fill in the
|
// Some TV stations apparently have their own idea about how to fill in the
|
||||||
// EPG data. Let's fix their bugs as good as we can:
|
// EPG data. Let's fix their bugs as good as we can:
|
||||||
@ -528,7 +516,7 @@ void cEvent::FixEpgBugs(void)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (Setup.EPGBugfixLevel <= 1)
|
if (Setup.EPGBugfixLevel <= 1)
|
||||||
return;
|
goto Final;
|
||||||
|
|
||||||
// Some channels apparently try to do some formatting in the texts,
|
// Some channels apparently try to do some formatting in the texts,
|
||||||
// which is a bad idea because they have no way of knowing the width
|
// which is a bad idea because they have no way of knowing the width
|
||||||
@ -574,7 +562,7 @@ void cEvent::FixEpgBugs(void)
|
|||||||
strreplace(description, '`', '\'');
|
strreplace(description, '`', '\'');
|
||||||
|
|
||||||
if (Setup.EPGBugfixLevel <= 2)
|
if (Setup.EPGBugfixLevel <= 2)
|
||||||
return;
|
goto Final;
|
||||||
|
|
||||||
// The stream components have a "description" field which some channels
|
// The stream components have a "description" field which some channels
|
||||||
// apparently have no idea of how to set correctly:
|
// apparently have no idea of how to set correctly:
|
||||||
@ -638,6 +626,20 @@ void cEvent::FixEpgBugs(void)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Final:
|
||||||
|
|
||||||
|
// VDR can't usefully handle newline characters in the title and shortText of EPG
|
||||||
|
// data, so let's always convert them to blanks (independent of the setting of EPGBugfixLevel):
|
||||||
|
strreplace(title, '\n', ' ');
|
||||||
|
strreplace(shortText, '\n', ' ');
|
||||||
|
// Same for control characters:
|
||||||
|
strreplace(title, '\x86', ' ');
|
||||||
|
strreplace(title, '\x87', ' ');
|
||||||
|
strreplace(shortText, '\x86', ' ');
|
||||||
|
strreplace(shortText, '\x87', ' ');
|
||||||
|
strreplace(description, '\x86', ' ');
|
||||||
|
strreplace(description, '\x87', ' ');
|
||||||
}
|
}
|
||||||
|
|
||||||
// --- cSchedule -------------------------------------------------------------
|
// --- cSchedule -------------------------------------------------------------
|
||||||
|
Loading…
Reference in New Issue
Block a user