Closed Bug 1059569 Opened 10 years ago Closed 10 years ago

Crash after playback ends, and firefox left idling for a while

Categories

(Core :: Audio/Video, defect)

x86
macOS
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla34

People

(Reporter: jya, Assigned: jya)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

This is likely a duplicate of another similar crash.
But just to keep record so the backtrace isn't lost.

In MP4Reader::NotifyDataArrived
GetTaskQueue() returned NULL.

(lldb) bt
* thread #1: tid = 0x2f6d0a, 0x000000010270e161 XUL`mozilla::BlockingResourceBase::CheckAcquire(this=0x0000000000000010) + 33 at BlockingResourceBase.cpp:287, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x20)
    frame #0: 0x000000010270e161 XUL`mozilla::BlockingResourceBase::CheckAcquire(this=0x0000000000000010) + 33 at BlockingResourceBase.cpp:287
    frame #1: 0x000000010270e62f XUL`mozilla::OffTheBooksMutex::Lock(this=0x0000000000000010) + 31 at BlockingResourceBase.cpp:397
    frame #2: 0x00000001026e0ec5 XUL`mozilla::Monitor::Lock(this=0x0000000000000010) + 21 at Monitor.h:35
    frame #3: 0x00000001026cfc53 XUL`MonitorAutoLock(this=0x00007fff5fbf0610, aMonitor=0x0000000000000010) + 35 at Monitor.h:78
    frame #4: 0x00000001026cf17d XUL`MonitorAutoLock(this=0x00007fff5fbf0610, aMonitor=0x0000000000000010) + 29 at Monitor.h:79
    frame #5: 0x00000001053bf8a1 XUL`mozilla::MediaTaskQueue::Dispatch(this=0x0000000000000000, aRunnable=TemporaryRef<nsIRunnable> at 0x00007fff5fbf0658) + 49 at MediaTaskQueue.cpp:33
  * frame #6: 0x00000001054fe8f5 XUL`mozilla::MP4Reader::NotifyDataArrived(this=0x00000001186ac9d0, aBuffer=0x0000000127d4e000, aLength=318009, aOffset=4382874) + 133 at MP4Reader.cpp:777
    frame #7: 0x000000010545c50c XUL`mozilla::SourceBufferDecoder::NotifyDataArrived(this=0x000000012920dde0, aBuffer=0x0000000127d4e000, aLength=318009, aOffset=4382874) + 124 at SourceBufferDecoder.cpp:205
    frame #8: 0x000000010545b07e XUL`mozilla::dom::SourceBuffer::AppendData(this=0x000000011743bf40, aData=0x0000000127d4e000, aLength=318009, aRv=0x00007fff5fbf0840) + 734 at SourceBuffer.cpp:505
    frame #9: 0x000000010545b292 XUL`mozilla::dom::SourceBuffer::AppendBuffer(this=0x000000011743bf40, aData=0x00007fff5fbf0898, aRv=0x00007fff5fbf0840)), &(js::GetArrayBufferViewLengthAndData(JSObject*, unsigned int*, unsigned char**))> const&, mozilla::ErrorResult&) + 210 at SourceBuffer.cpp:279
    frame #10: 0x00000001045f13e3 XUL`mozilla::dom::SourceBufferBinding::appendBuffer(cx=0x0000000117b7b590, obj=Handle<JSObject *> at 0x00007fff5fbf0968, self=0x000000011743bf40, args=0x00007fff5fbf09e0) + 899 at SourceBufferBinding.cpp:381
    frame #11: 0x0000000104805609 XUL`mozilla::dom::GenericBindingMethod(cx=0x0000000117b7b590, argc=1, vp=0x00000001120de138) + 665 at BindingUtils.cpp:2484
    frame #12: 0x0000000107c82f45 XUL`js::CallJSNative(cx=0x0000000117b7b590, native=0x0000000104805370, args=0x00007fff5fbf1070)(JSContext*, unsigned int, JS::Value*), JS::CallArgs const&) + 165 at jscntxtinlines.h:231
    frame #13: 0x0000000107c56f71 XUL`js::Invoke(cx=0x0000000117b7b590, args=<unavailable>, construct=NO_CONSTRUCT) + 1217 at Interpreter.cpp:481
    frame #14: 0x0000000107c4cbc1 XUL`Interpret(cx=0x0000000117b7b590, state=0x00007fff5fbf3f28) + 53009 at Interpreter.cpp:2563
    frame #15: 0x0000000107c3fb7b XUL`js::RunScript(cx=0x0000000117b7b590, state=0x00007fff5fbf3f28) + 667 at Interpreter.cpp:428
    frame #16: 0x0000000107c57091 XUL`js::Invoke(cx=0x0000000117b7b590, args=<unavailable>, construct=NO_CONSTRUCT) + 1505 at Interpreter.cpp:500
    frame #17: 0x0000000107c578c2 XUL`js::Invoke(cx=0x0000000117b7b590, thisv=0x00007fff5fbf43a0, fval=0x00007fff5fbf43d0, argc=3, argv=0x00007fff5fbf4528, rval=JS::MutableHandleValue at 0x00007fff5fbf4160) + 834 at Interpreter.cpp:537
    frame #18: 0x0000000107668e79 XUL`js::jit::DoCallFallback(cx=0x0000000117b7b590, frame=0x00007fff5fbf45c0, stub_=0x0000000117802a68, argc=3, vp=0x00007fff5fbf4518, res=JS::MutableHandleValue at 0x00007fff5fbf4460) + 2041 at BaselineIC.cpp:8428
    frame #19: 0x00000001000eec33
(lldb)
Bug 1059569, check for NULL. Shouldn't get to that point, but at least prevent it from crashing for now
Attachment #8480262 - Flags: review?(cpearce)
Assignee: nobody → jyavenard
Status: NEW → ASSIGNED
Comment on attachment 8480262 [details] [diff] [review]
Check that GetTaskQueue() doesn't return NULL

Review of attachment 8480262 [details] [diff] [review]:
-----------------------------------------------------------------

We could probably end up here if there was a task to run this event in the queue when we execute the shutdown tasks.
Attachment #8480262 - Flags: review?(cpearce) → review+
Keywords: checkin-needed
Blocks: MSE
https://hg.mozilla.org/mozilla-central/rev/a4aa926f8518
Status: ASSIGNED → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla34
You need to log in before you can comment on or make changes to this bug.