Closed
Bug 1692957
Opened 4 years ago
Closed 4 years ago
Crash in [@ mozilla::RDDProcessManager::EnsureRDDProcessAndCreateBridge::<T>::operator()::<T>::operator()]
Categories
(Core :: Audio/Video: Playback, defect, P3)
Tracking
()
RESOLVED
FIXED
88 Branch
Tracking | Status | |
---|---|---|
firefox-esr78 | --- | unaffected |
firefox86 | --- | wontfix |
firefox87 | --- | wontfix |
firefox88 | --- | fixed |
People
(Reporter: mattwoodrow, Assigned: alwu)
References
(Blocks 1 open bug)
Details
(Keywords: crash)
Crash Data
Attachments
(1 file)
Crash report: https://crash-stats.mozilla.org/report/index/65f12e00-a2fa-4b13-8f8c-b94810210216
Reason: EXCEPTION_ACCESS_VIOLATION_READ
Top 10 frames of crashing thread:
0 xul.dll mozilla::RDDProcessManager::EnsureRDDProcessAndCreateBridge::<unnamed-tag>::operator const dom/media/ipc/RDDProcessManager.cpp:153
1 xul.dll mozilla::MozPromise<bool, nsresult, 0>::ThenValue<`lambda at /builds/worker/checkouts/gecko/dom/media/ipc/RDDProcessManager.cpp:152:13', `lambda at /builds/worker/checkouts/gecko/dom/media/ipc/RDDProcessManager.cpp:179:13'>::DoResolveOrRejectInternal xpcom/threads/MozPromise.h:835
2 xul.dll mozilla::MozPromise<bool, mozilla::ipc::ResponseRejectReason, 1>::ThenValueBase::ResolveOrRejectRunnable::Run xpcom/threads/MozPromise.h:476
3 xul.dll mozilla::TaskController::DoExecuteNextTaskOnlyMainThreadInternal xpcom/threads/TaskController.cpp:739
4 xul.dll nsThread::ProcessNextEvent xpcom/threads/nsThread.cpp:1200
5 xul.dll NS_ProcessPendingEvents xpcom/threads/nsThreadUtils.cpp:496
6 xul.dll mozilla::ShutdownXPCOM xpcom/build/XPCOMInit.cpp:628
7 xul.dll ScopedXPCOMStartup::~ScopedXPCOMStartup toolkit/xre/nsAppRunner.cpp:1649
8 xul.dll XREMain::XRE_main toolkit/xre/nsAppRunner.cpp:5318
9 xul.dll XRE_main toolkit/xre/nsAppRunner.cpp:5360
Looks like there's a race condition here where mProcess could be cleared before the promise callback runs (if the RDD process crashed during startup).
Assignee | ||
Updated•4 years ago
|
Assignee | ||
Comment 1•4 years ago
|
||
This could happen if RDD crashed right after it created, then RDDProcessManager
would clean mProcess
and mRDDChild
before running the lambda.
Depends on D106827
Pushed by alwu@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/33aeef90f53f
reject promise if RDD has been destroyed. r=mattwoodrow
Comment 3•4 years ago
|
||
bugherder |
Status: NEW → RESOLVED
Closed: 4 years ago
status-firefox88:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → 88 Branch
Updated•4 years ago
|
status-firefox86:
--- → wontfix
status-firefox87:
--- → wontfix
status-firefox-esr78:
--- → unaffected
You need to log in
before you can comment on or make changes to this bug.
Description
•