osx opus crash

Bug #1541667 reported by RJ Skerry-Ryan
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mixxx
Fix Released
Critical
RJ Skerry-Ryan

Bug Description

reported on IRC. A faulty .opus file crashes 2.0.0. The file fails to load gracefully in master.

* thread #26: tid = 0x3bbca8, 0x0000000102e124d0 libopusfile.0.dylib`op_bitrate + 16, name = 'BrowseThread', stop reason = EXC_BAD_ACCESS (code=1, address=0x78)
    frame #0: 0x0000000102e124d0 libopusfile.0.dylib`op_bitrate + 16
libopusfile.0.dylib`op_bitrate:
-> 0x102e124d0 <+16>: cmpl $0x2, 0x78(%rbx)
    0x102e124d4 <+20>: jl 0x102e12510 ; <+80>
    0x102e124d6 <+22>: cmpl $0x0, 0x28(%rbx)
    0x102e124da <+26>: je 0x102e12510 ; <+80>
(lldb) bt
* thread #26: tid = 0x3bbca8, 0x0000000102e124d0 libopusfile.0.dylib`op_bitrate + 16, name = 'BrowseThread', stop reason = EXC_BAD_ACCESS (code=1, address=0x78)
  * frame #0: 0x0000000102e124d0 libopusfile.0.dylib`op_bitrate + 16
    frame #1: 0x000000010059a817 mixxx`SoundSourceOpus::parseHeader(this=0x000000011a5218a0) + 71 at soundsourceopus.cpp:199
    frame #2: 0x00000001005b8c66 mixxx`TrackInfoObject::parse(this=0x0000700000bd5a38, parseCoverArt=false) + 710 at trackinfoobject.cpp:173
    frame #3: 0x00000001005b6c9d mixxx`TrackInfoObject::initialize(this=<unavailable>, parseHeader=<unavailable>, parseCoverArt=<unavailable>) + 733 at trackinfoobject.cpp:135
    frame #4: 0x00000001005b65e9 mixxx`TrackInfoObject::TrackInfoObject(this=<unavailable>, file=<unavailable>, pToken=<unavailable>, parseHeader=<unavailable>, parseCoverArt=<unavailable>) + 441 at trackinfoobject.cpp:53
    frame #5: 0x00000001003bb10c mixxx`BrowseThread::populateModel(this=0x0000000117e98e50) + 636 at browsethread.cpp:126
    frame #6: 0x00000001003bae15 mixxx`BrowseThread::run(this=0x0000000117e98e50) + 181 at browsethread.cpp:87
    frame #7: 0x0000000100e82a62 QtCore`QThreadPrivate::start(void*) + 386
    frame #8: 0x00007fff8ec1ec13 libsystem_pthread.dylib`_pthread_body + 131
    frame #9: 0x00007fff8ec1eb90 libsystem_pthread.dylib`_pthread_start + 168
    frame #10: 0x00007fff8ec1c375 libsystem_pthread.dylib`thread_start + 13

Revision history for this message
RJ Skerry-Ryan (rryan) wrote :

Looks like a simple lack of check for NULL returned from op_open_file.

Changed in mixxx:
milestone: none → 2.0.1
importance: Undecided → Critical
status: New → Confirmed
Revision history for this message
RJ Skerry-Ryan (rryan) wrote :

Fixed in 3abf5efdee27a8df6dd868ffec3860b6b1bdd682

Changed in mixxx:
status: Confirmed → Fix Committed
assignee: nobody → RJ Ryan (rryan)
Be (be.ing)
Changed in mixxx:
milestone: 2.0.1 → 2.1.0
Changed in mixxx:
status: Fix Committed → Fix Released
Revision history for this message
Swiftb0y (swiftb0y) wrote :

Mixxx now uses GitHub for bug tracking. This bug has been migrated to:
https://github.com/mixxxdj/mixxx/issues/8463

lock status: Metadata changes locked and limited to project staff
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.