Open Bug 1593572 Opened 5 years ago Updated 2 years ago

Assertion failure: false (MOZ_ASSERT_UNREACHABLE: A consumer was not explicitly removed) in MediaStreamTrack::AddConsumer()

Categories

(Core :: WebRTC: Audio/Video, defect, P3)

defect

Tracking

()

People

(Reporter: karlt, Unassigned)

References

Details

(Keywords: regression)

https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=274035049&repo=try&lineNumber=18918

Assertion failure: false (MOZ_ASSERT_UNREACHABLE: A consumer was not explicitly removed), at /builds/worker/workspace/build/src/dom/media/MediaStreamTrack.cpp:497
#01: mozilla::DOMMediaStream::NotifyTrackAdded(RefPtr<mozilla::dom::MediaStreamTrack> const&) [dom/media/DOMMediaStream.cpp:477]
#02: mozilla::DOMMediaStream::AddTrack(mozilla::dom::MediaStreamTrack&) [dom/media/DOMMediaStream.cpp:340]
#03: mozilla::DOMMediaStream::AddTrackInternal(mozilla::dom::MediaStreamTrack*) [dom/media/DOMMediaStream.cpp:396]
#04: mozilla::detail::RunnableMethodImpl<mozilla::DOMMediaStream*, void (mozilla::DOMMediaStream::*)(mozilla::dom::MediaStreamTrack*), true, (mozilla::RunnableKind)0, RefPtr<mozilla::dom::MediaStreamTrack> >::Run() [xpcom/threads/nsThreadUtils.h:1179]
#05: nsThread::ProcessNextEvent(bool, bool*) [xpcom/threads/nsThread.cpp:1225]
#06: NS_ProcessNextEvent(nsIThread*, bool) [xpcom/threads/nsThreadUtils.cpp:486]
#07: mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate*) [ipc/glue/MessagePump.cpp:88]
#08: MessageLoop::Run() [ipc/chromium/src/base/message_loop.cc:291]
#09: nsBaseAppShell::Run() [widget/nsBaseAppShell.cpp:139]
#10: XRE_RunAppShell() [toolkit/xre/nsEmbedFunctions.cpp:934]
#11: mozilla::ipc::MessagePumpForChildProcess::Run(base::MessagePump::Delegate*) [ipc/glue/MessagePump.cpp:238]
#12: MessageLoop::Run() [ipc/chromium/src/base/message_loop.cc:291]
#13: XRE_InitChildProcess(int, char**, XREChildData const*) [toolkit/xre/nsEmbedFunctions.cpp:769]
#14: content_process_main(mozilla::Bootstrap*, int, char**) [ipc/contentproc/plugin-container.cpp:57]
#15: main [browser/app/nsBrowserApp.cpp:272]
#16: libc.so.6 + 0x20830
#17: _start

https://searchfox.org/mozilla-central/rev/35873cfc312a6285f54aa5e4ec2d4ab911157522/dom/media/MediaStreamTrack.cpp#497

Andreas, can you triage this, please?

Flags: needinfo?(apehrson)

I'm guessing this is a MediaStream that was GCed while containing a live track, and then the live track was added to another MediaStream, which detected this.

Not a biggie now that we use WeakPtrs for the consumers (phew). Likely a regression from bug 1493613 as tracks don't strong-ref their "owning" stream anymore.

Assignee: nobody → apehrson
Status: NEW → ASSIGNED
Component: Audio/Video: MediaStreamGraph → WebRTC: Audio/Video
Flags: needinfo?(apehrson)
Priority: -- → P3

I won't be around to fix this for a while. Leaving it open.

Assignee: apehrson → nobody
Status: ASSIGNED → NEW

Bugbug thinks this bug is a regression, but please revert this change in case of error.

Keywords: regression
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.