Opened 13 years ago

Closed 10 years ago

#3409 closed defect (wontfix)

Bug in multiple PES packets per TS packet support

Reported by: danielk Owned by: danielk
Priority: trivial Milestone: unknown
Component: MythTV - DVB Version: head
Severity: low Keywords:
Cc: Ticket locked: no

Description

In mpegstreamdata.cpp around line 259 we create a new PESPacket using a TSPacket which doesn't contain a payload start packet. This is not supported by the PESPacket class.

I will attach a patch that disables this code, but I'm not sure if it is safe to do this. Obviously, this isn't triggered by many real world streams, since this code was added by the patch in #438, two years ago.

Attachments (1)

3409-tmp-fix.patch (1019 bytes) - added by danielk 13 years ago.
Temporary fix

Download all attachments as: .zip

Change History (7)

Changed 13 years ago by danielk

Attachment: 3409-tmp-fix.patch added

Temporary fix

comment:1 Changed 13 years ago by danielk

Owner: changed from Isaac Richards to danielk

comment:2 Changed 12 years ago by danielk

(In [14053]) Refs #3409. This fixes a rare SEGFAULT.

This is triggered by the Ohio News Network stream because they do not properly clear the trailing portions of their TS packets. But the code this changeset disables would have caused a SEGFAULT even if it has ever been triggered correctly. No one reported this SEGFAULT in years so I presume the corner case the code is designed to handle is very rare.

I'm not closing the ticket itself because this just avoids the SEGFAULT, a theoretical MPEG stream that properly triggers this branch might not play with this changeset applied (but it also won't cause a SEGFAULT like before).

comment:3 Changed 12 years ago by danielk

Milestone: 0.21unknown
Priority: minortrivial
Severity: mediumlow

comment:4 Changed 11 years ago by Dibblah

Status: newassigned

comment:5 Changed 10 years ago by stuartm

Component: mythtvMythTV - DVB
Status: assignedinfoneeded

This ticket last saw activity two years ago, is this still a problem?

comment:6 Changed 10 years ago by danielk

Resolution: wontfix
Status: infoneededclosed

As noted in earlier comments, there is a gap in our handling of tiny psip tables. However in the three years since this was initially discovered only two actual examples have been found, both of which were worked around. So I'm marking this as a wontfix, if someone finds another example that triggers this code path I'll re-open the ticket and look at it.

Note: See TracTickets for help on using tickets.