Klaus Schmidinger wrote:
Rolf Ahrenberg wrote:
On Sat, 21 Jan 2006, Klaus Schmidinger wrote:
Since cEvent::FixEpgBugs() is called for all events that are broadcast, it now makes sure every event actually has a non-NULL title. The only loophole left is SVDRP's PUTE command, but the
I'm not using any external EPG data and as I said in my earlier mail, the modification of FixEpgBugs() isn't enough and VDR 1.3.40 is crashing like before.
Fortunately my patch mentioned in the first message of this thread works quite nicely also with VDR 1.3.40, so finnish users can also enjoy the EPG search feature.
I'm afraid I don't see why it would still crash. You patched those places in menu.c where an event tile was dereferenced. Now the code
if (!title) { // we don't want any "(null)" titles title = strcpyrealloc(title, tr("No title")); EpgBugFixStat(12, ChannelID()); }
in cEvent::FixEpgBugs() makes sure that every event has a non-NULL title. So where exactly does it crash?
I think I know now why it still crashed on you: it's probably because of old entries in your epg.data file.
The attached patch should fix this - and also makes sure that any events added via PUTE have a title.
Klaus
--- epg.c 2006/01/20 14:09:48 1.51 +++ epg.c 2006/01/23 07:29:53 @@ -312,8 +312,10 @@ Event->SetVersion(Version); Event->SetStartTime(StartTime); Event->SetDuration(Duration); - if (newEvent) + if (newEvent) { + Event->SetTitle(tr("No title")); Schedule->AddEvent(newEvent); + } } } }