Closed Bug 1650181 Opened 5 years ago Closed 5 years ago

Assertion failure: mRawPtr != nullptr (You can't dereference a NULL RefPtr with operator->().), at /builds/worker/workspace/obj-build/dist/include/mozilla/RefPtr.h:315

Categories

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

defect

Tracking

()

VERIFIED FIXED
mozilla80
Tracking Status
firefox-esr68 --- unaffected
firefox-esr78 --- wontfix
firefox78 --- wontfix
firefox79 --- fixed
firefox80 --- verified

People

(Reporter: tsmith, Assigned: padenot)

References

(Blocks 1 open bug, Regression)

Details

(Keywords: assertion, regression, testcase, Whiteboard: [bugmon:bisected,confirmed])

Crash Data

Attachments

(2 files)

Attached file testcase.html

Assertion failure: mRawPtr != nullptr (You can't dereference a NULL RefPtr with operator->().), at /builds/worker/workspace/obj-build/dist/include/mozilla/RefPtr.h:315

29|0|libxul.so|RefPtr<AudioDeviceInfo>::operator->() const|hg:hg.mozilla.org/mozilla-central:mfbt/RefPtr.h:992822684324869697f7ed47b042aeef5aff7ab5|314|0x2f
29|1|libxul.so|mozilla::detail::RunnableFunction<RefPtr<mozilla::MozPromise<nsresult, bool, true> > mozilla::MediaManager::PostTask<mozilla::MozPromise<nsresult, bool, true>, mozilla::SourceListener::SetEnabledFor(mozilla::MediaTrack*, bool)::$_41::operator()()::{lambda(mozilla::MozPromiseHolder<mozilla::MozPromise<nsresult, bool, true> >&)#1}>(char const*, mozilla::SourceListener::SetEnabledFor(mozilla::MediaTrack*, bool)::$_41::operator()()::{lambda(mozilla::MozPromiseHolder<mozilla::MozPromise<nsresult, bool, true> >&)#1}&&)::{lambda()#1}>::Run()|hg:hg.mozilla.org/mozilla-central:xpcom/threads/nsThreadUtils.h:992822684324869697f7ed47b042aeef5aff7ab5|575|0x7a
29|2|libxul.so|nsThread::ProcessNextEvent(bool, bool*)|hg:hg.mozilla.org/mozilla-central:xpcom/threads/nsThread.cpp:992822684324869697f7ed47b042aeef5aff7ab5|1234|0xe
29|3|libxul.so|NS_ProcessNextEvent(nsIThread*, bool)|hg:hg.mozilla.org/mozilla-central:xpcom/threads/nsThreadUtils.cpp:992822684324869697f7ed47b042aeef5aff7ab5|501|0xc
29|4|libxul.so|mozilla::ipc::MessagePumpForNonMainThreads::Run(base::MessagePump::Delegate*)|hg:hg.mozilla.org/mozilla-central:ipc/glue/MessagePump.cpp:992822684324869697f7ed47b042aeef5aff7ab5|332|0x13
29|5|libxul.so|MessageLoop::RunInternal()|hg:hg.mozilla.org/mozilla-central:ipc/chromium/src/base/message_loop.cc:992822684324869697f7ed47b042aeef5aff7ab5|315|0x17
29|6|libxul.so|MessageLoop::Run()|hg:hg.mozilla.org/mozilla-central:ipc/chromium/src/base/message_loop.cc:992822684324869697f7ed47b042aeef5aff7ab5|290|0x8
29|7|libxul.so|base::Thread::ThreadMain()|hg:hg.mozilla.org/mozilla-central:ipc/chromium/src/base/thread.cc:992822684324869697f7ed47b042aeef5aff7ab5|192|0x8
29|8|libxul.so|ThreadFunc(void*)|hg:hg.mozilla.org/mozilla-central:ipc/chromium/src/base/platform_thread_posix.cc:992822684324869697f7ed47b042aeef5aff7ab5|40|0x6
29|9|libpthread.so.0||||0x76db
29|10|libc.so.6||||0x12188f
Flags: in-testsuite?

A Pernosco session is available here: https://pernos.co/debug/8rvBQGuLt5kmcgtCWGAN-Q/index.html

Whiteboard: [bugmon:bisected,confirmed]
Bugmon Analysis: Verified bug as reproducible on mozilla-central 20200702214948-f0ac79e1ed53. The bug appears to have been introduced in the following build range: > Start: f3a28fba69d401bb81f13b2d4e6f0988c448aca0 (20200327183806) > End: 29deade8f415c8fa2b4ce4fded0c32bf1bcb3473 (20200327184246) > Pushlog: https://hg.mozilla.org/integration/autoland/pushloghtml?fromchange=f3a28fba69d401bb81f13b2d4e6f0988c448aca0&tochange=29deade8f415c8fa2b4ce4fded0c32bf1bcb3473

Hi, paul,
It seems that this assertion is caused by bug 1624322, do you have a time to take it a look?
Thank you.

Severity: -- → S3
Flags: needinfo?(padenot)
Priority: -- → P3
Assignee: nobody → padenot
Status: NEW → ASSIGNED
Pushed by padenot@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/f8b5be61f5f8 Null-check when getting default output device info, because there can be no output device. r=achronop
Status: ASSIGNED → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla80
Flags: needinfo?(padenot)
Crash Signature: [@ mozilla::detail::nsTStringRepr<T>::Equals | mozilla::detail::RunnableFunction<T>::Run]
Has Regression Range: --- → yes

The patch landed in nightly and beta is affected.
:padenot, is this bug important enough to require an uplift?
If not please set status_beta to wontfix.

For more information, please visit auto_nag documentation.

Flags: needinfo?(padenot)
Status: RESOLVED → VERIFIED
Keywords: bugmon
Bugmon Analysis: Verified bug as fixed on rev mozilla-central 20200713095122-2c8bc998c107. Removing bugmon keyword as no further action possible. Please review the bug and re-add the keyword for further analysis.

Comment on attachment 9161919 [details]
Bug 1650181 - Null-check when getting default output device info, because there can be no output device. r?achronop

Beta/Release Uplift Approval Request

  • User impact if declined: nullptr crash in a rare case
  • Is this code covered by automated tests?: No
  • Has the fix been verified in Nightly?: Yes
  • Needs manual test from QE?: No
  • If yes, steps to reproduce:
  • List of other uplifts needed: None
  • Risk to taking this patch: Low
  • Why is the change risky/not risky? (and alternatives if risky): It's just a null check in a rare case (either no audio system on the machine or no audio device at all, included virtual devices).
  • String changes made/needed:
Flags: needinfo?(padenot)
Attachment #9161919 - Flags: approval-mozilla-beta?

Comment on attachment 9161919 [details]
Bug 1650181 - Null-check when getting default output device info, because there can be no output device. r?achronop

Approved for 79.0b9.

Attachment #9161919 - Flags: approval-mozilla-beta? → approval-mozilla-beta+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: