Opened 14 years ago

Closed 14 years ago

#7708 closed defect (fixed)

backend crash from QList<T>::operator[]: "index out of range"

Reported by: satz@… Owned by: stuartm
Priority: minor Milestone: 0.23
Component: MythTV - General Version: head
Severity: low Keywords:
Cc: Ticket locked: no

Description

Attempting to watch livetv from mythroku which supports an older protocol version causes a crash of the backend.

2009-12-06 09:40:36.142 MainServer::ANN Playback
2009-12-06 09:40:36.145 adding: roku-mbr.iranger.com as a client (events: 0)
2009-12-06 09:40:43.421 MainServer::HandleVersion - Client speaks protocol version 8 but we speak 50!
2009-12-06 09:40:43.423 MainServer, Warning: Unknown socket closing MythSocket(0x97430d8)
2009-12-06 09:40:43.427 MainServer::ANN Playback
2009-12-06 09:40:43.439 adding: roku-mbr.iranger.com as a client (events: 0)
ASSERT failure in QList<T>::operator[]: "index out of range", file /usr/include/qt4/QtCore/qlist.h, line 403
2009-12-06 09:40:43.866 mythbackend version: branches/release-0-22-fixes [22594] www.mythtv.org
2009-12-06 09:40:43.872 Using runtime prefix = /usr

Seems to be related to closed bugs http://svn.mythtv.org/trac/ticket/5114 and http://svn.mythtv.org/trac/changeset/17981.

Change History (6)

comment:1 Changed 14 years ago by stuartm

Milestone: unknown0.23
Owner: changed from Isaac Richards to stuartm
Priority: minorcritical
Status: newaccepted

comment:2 Changed 14 years ago by danielk

Status: acceptedinfoneeded

Satz, can you provide a backtrace as per the TicketHowTo ?

comment:3 Changed 14 years ago by Stuart Auchterlonie

Status: infoneededassigned

There's actually a decent backtrace on #7837 which is closed as a dup of this bug.

Stuart

comment:4 Changed 14 years ago by stuartm

Milestone: 0.23unknown
Priority: criticalminor
Severity: mediumlow
Status: assignedinfoneeded
Version: 0.22head

The backtrace in #7837 makes little sense e.g. pointer is null despite passing a null pointer check. Without a breakpoint on the QAssert there isn't much to go on. Considering that this only affects third party backends which don't have proper protocol support, something that we're proposing to address for 0.23, I'm reducing this to low priority and if we don't get a decent backtrace I'll close in 30 days.

comment:5 Changed 14 years ago by stuartm

(In [23247]) Potentially fix a segfault when a client pretends to speak a version of the protocol it doesn't support and feeds an incorrect number of arguments to HandleQueryRecorder?. Refs #7708

comment:6 Changed 14 years ago by paulh

Milestone: unknown0.23
Resolution: fixed
Status: infoneededclosed

Probably fixed by [23247]. Without a proper backtrace we may never know.

Note: See TracTickets for help on using tickets.