Closed Bug 1400155 Opened 9 years ago Closed 9 years ago

Crash in mozilla::MediaCacheStream::NotifyDataReceived

Categories

(Core :: Audio/Video: Playback, defect, P2)

57 Branch
Unspecified
All
defect

Tracking

()

RESOLVED FIXED
mozilla57
Tracking Status
firefox-esr52 --- unaffected
firefox55 --- unaffected
firefox56 --- unaffected
firefox57 --- fixed

People

(Reporter: philipp, Assigned: jwwang)

References

Details

(Keywords: crash, regression)

Crash Data

Attachments

(1 file)

This bug was filed from the Socorro interface and is report bp-0b3bfffe-7878-490e-90a7-82fd20170909. ============================================================= Crashing Thread (0) Frame Module Signature Source 0 XUL mozilla::MediaCacheStream::NotifyDataReceived(long long, char const*, nsIPrincipal*) dom/media/MediaCache.cpp:1883 1 XUL mozilla::ChannelMediaResource::CopySegmentToCache(nsIInputStream*, void*, char const*, unsigned int, unsigned int, unsigned int*) dom/media/MediaResource.cpp:459 2 XUL nsStringInputStream::ReadSegments(nsresult (*)(nsIInputStream*, void*, char const*, unsigned int, unsigned int, unsigned int*), void*, unsigned int, unsigned int*) xpcom/io/nsStringStream.cpp:256 3 XUL mozilla::ChannelMediaResource::OnDataAvailable(nsIRequest*, nsIInputStream*, unsigned int) dom/media/MediaResource.cpp:507 4 XUL mozilla::net::HttpChannelChild::OnTransportAndData(nsresult const&, nsresult const&, unsigned long long const&, unsigned int const&, nsTString<char> const&) netwerk/protocol/http/HttpChannelChild.cpp:957 5 XUL mozilla::net::ChannelEventQueue::FlushQueue() netwerk/ipc/ChannelEventQueue.cpp:93 6 XUL mozilla::net::ChannelEventQueue::ResumeInternal()::CompleteResumeRunnable::Run() netwerk/ipc/ChannelEventQueue.h:324 7 XUL mozilla::SchedulerGroup::Runnable::Run() xpcom/threads/SchedulerGroup.cpp:396 8 XUL nsThread::ProcessNextEvent(bool, bool*) xpcom/threads/nsThread.cpp:1039 9 XUL NS_ProcessNextEvent(nsIThread*, bool) xpcom/threads/nsThreadUtils.cpp:521 10 XUL mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate*) ipc/glue/MessagePump.cpp:97 11 XUL MessageLoop::Run() ipc/chromium/src/base/message_loop.cc:326 12 XUL nsBaseAppShell::Run() widget/nsBaseAppShell.cpp:158 13 XUL nsAppShell::Run() widget/cocoa/nsAppShell.mm:717 14 XUL XRE_RunAppShell() toolkit/xre/nsEmbedFunctions.cpp:866 15 XUL MessageLoop::Run() ipc/chromium/src/base/message_loop.cc:326 16 XUL XRE_InitChildProcess(int, char**, XREChildData const*) toolkit/xre/nsEmbedFunctions.cpp:691 17 plugin-container main ipc/contentproc/plugin-container.cpp:63 18 plugin-container start crash reports with this signature started showing up since 57.0a1 build 20170831220208 with MOZ_RELEASE_ASSERT(!mClosed) that got added in bug 1394724.
hm, i don't know of any way of gathering that from a crash report
Below is my theory about the crash: 1. The user was browsing the site in private browsing mode. 2. The user closed the private window. 3. CloseStreamsForPrivateBrowsing() [a] was called when the last PB window exited. 4. MediaCacheStream::Close() was called to set mClosed to true. 5. Somehow, a new nsIChannel was created to download data and MediaCacheStream::NotifyDataReceived() was called. 6. The assertion MOZ_DIAGNOSTIC_ASSERT(!mClosed) failed for mClosed was true. [a] http://searchfox.org/mozilla-central/rev/1c13d5cf85f904afb8976c02a80daa252b893fca/dom/media/MediaCache.cpp#676-684
Assignee: nobody → jwwang
Attachment #8909657 - Flags: review?(gsquelart)
Comment on attachment 8909657 [details] Bug 1400155 - early return from NotifyDataReceived() when the stream is already closed. https://reviewboard.mozilla.org/r/181170/#review186372 ::: commit-message-a93be:1 (Diff revision 1) > +Bug 1400155 - early return from NotifyDataReceived() is the stream is already closed. typo
Comment on attachment 8909657 [details] Bug 1400155 - early return from NotifyDataReceived() when the stream is already closed. https://reviewboard.mozilla.org/r/181170/#review186430
Attachment #8909657 - Flags: review?(gsquelart) → review+
Thanks!
Pushed by jwwang@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/84c535b614d5 early return from NotifyDataReceived() when the stream is already closed. r=gerald
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla57
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: