[vdr] vdr-1.5.6 crashing (workaround)

Klaus Schmidinger Klaus.Schmidinger at cadsoft.de
Sat Jul 28 15:20:13 CEST 2007


On 07/24/07 13:09, Malte Schröder wrote:
> On Mon, 23 Jul 2007 16:20:23 +0200
> Malte Schröder <maltesch at gmx.de> wrote:
> 
>> Hello,
>> when I switch for example to sunshine live 1.5.6 crashes. Plugins loaded
>> are remote, skinenigmang and epgsearch.
> 
> This prevents vdr from crashing. But I don't understand how channel
> can be a null-pointer in that code-path. It is only set at the start of
> the method and then checked if it is a null-pointer. Okay, it is
> being re-set a few lines before, but that is in the true part of the
> condition.
> 
> --- vdr-1.5.6/eit.c     2007-07-21 16:58:04.000000000 +0200
> +++ vdr-1.5.6.prod/eit.c        2007-07-24 12:06:46.000000000 +0200
> @@ -209,7 +209,7 @@
>                               LinkChannels->Add(new cLinkChannel(link));
>                               }
>                            }
> -                       else
> +                       else if(channel)
>                            channel->SetPortalName(linkName);
>                         }
>                      }
> @@ -256,7 +256,7 @@
> 
>        if (!HasExternalData)
>           pEvent->FixEpgBugs();
> -      if (LinkChannels)
> +      if (LinkChannels && channel)
>           channel->SetLinkChannels(LinkChannels);
>        Modified = true;
>        }

I believe the actual problem was introduced by myself.
I wanted to simplify the original patch to have only a single
call to Channels.NewChannel(), and in doing so wrote
channel = ... instead of transponder = ...

Please try the attached patch.

Klaus
-------------- next part --------------
A non-text attachment was scrubbed...
Name: vdr-1.5.6-premierenvod.diff
Type: text/x-patch
Size: 713 bytes
Desc: not available
Url : http://www.linuxtv.org/pipermail/vdr/attachments/20070728/141d0730/attachment.bin 


More information about the vdr mailing list