[mythtv-users] libmythbluray-related segfaults (with backtraces)

Robert McNamara robert.mcnamara at gmail.com
Wed Aug 18 21:04:01 UTC 2010


On Wed, Aug 18, 2010 at 2:01 PM, Noah K <bodhileok at gmail.com> wrote:

> On Wed, Aug 18, 2010 at 12:04 PM, Robert McNamara
> <robert.mcnamara at gmail.com> wrote:
> >
> >
> > On Wed, Aug 18, 2010 at 11:39 AM, Robert McNamara
> > <robert.mcnamara at gmail.com> wrote:
> >>
> >>
> >> On Wed, Aug 18, 2010 at 11:34 AM, Robert McNamara
> >> <robert.mcnamara at gmail.com> wrote:
> >>>
> >>>
> >>> On Wed, Aug 18, 2010 at 11:22 AM, Noah K <bodhileok at gmail.com> wrote:
> >>>>
> >>>> OK, the libbluray resync (r25723, thanks Robert!) fixed the second
> >>>> segfault (on exit for all BDMV), but not the first (on start for
> >>>> some).
> >>>> I'll dig a little more when I have time and maybe take to
> >>>> libbluray-devel.
> >>>
> >>> Looks like ii is ending up -1, which is likely invalid.  I've reported
> it
> >>> but if I don't hear anything by the time I get home, I'll conjure up a
> >>> patch.
> >>> Robert
> >>
> >> PS, If you want to try, you could see about adding something like
> >>     if (ii <= 0) {
> >>         return 0;
> >>     }
> >> right above like 441 in clpi_parse.c, which is:
> >>     spn = (entry->coarse[ii].spn_ep & ~0x1FFFF) +
> entry->fine[jj].spn_ep;
> >> Note that I haven't looked very close, so please forgive me if this does
> >> nothing at all ;)
> >> Robert
> >
> > if you could also try changing line 380:
> >     if (pts > timestamp) {
> > to
> >     if (pts > timestamp && ii) {
> > I would be much obliged.
> > Robert
> >
>
> Robert, that did the trick.
>
> Turns out, though, that only one of the five movies that were
> segfaulting was as a result of this problem (and I had assumed they
> were all the same problem). The others are segfaulting even on just
> the m2ts file. In case you're interested:
>
> Program received signal SIGSEGV, Segmentation fault.
> 0xb79e5fba in HandleStreamChange (data=0xaf27200) at
> avformatdecoder.cpp:846
> 846         int cnt = decoder->ic->nb_streams;
>
> But I will start a different thread for that, with the bt.
> Thanks for the fix!
> Noah
>
>
At least (or perhaps, unfortunately) that one is in our code.  We can figure
it out, though.

To verify, *only* the change to line 380 (the second change suggested) was
necessary, right?

Robert
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mythtv.org/pipermail/mythtv-users/attachments/20100818/30f5b423/attachment.htm>


More information about the mythtv-users mailing list