Closed
Bug 1339930
Opened 8 years ago
Closed 8 years ago
Crash in mozilla::dom::AudioChannelService::GetOrCreateWindowData
Categories
(Core :: DOM: Core & HTML, defect)
Tracking
()
RESOLVED
FIXED
mozilla54
| Tracking | Status | |
|---|---|---|
| firefox52 | --- | unaffected |
| firefox53 | + | fixed |
| firefox54 | + | fixed |
People
(Reporter: marcia, Assigned: ehsan.akhgari)
References
Details
(4 keywords)
Crash Data
Attachments
(3 files)
|
943 bytes,
patch
|
baku
:
review+
|
Details | Diff | Splinter Review |
|
303 bytes,
text/html
|
Details | |
|
5.23 KB,
patch
|
baku
:
review+
lizzard
:
approval-mozilla-aurora+
|
Details | Diff | Splinter Review |
This bug was filed from the Socorro interface and is
report bp-fa77d7ba-bc84-4da8-9273-16e0a2170212.
=============================================================
Seen while looking at nightly crash stats - crashes started with 20170211030205: http://bit.ly/2lMefM4
Possible regression range: https://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=25a94c1047e793ef096d8556fa3c26dd72bd37d7&tochange=855e6b2f6199189f37cea093cbdd1735e297e8aa
Bug 1336484 I think touched code in this area. ni on ehsan.
Flags: needinfo?(ehsan)
| Assignee | ||
Comment 1•8 years ago
|
||
Yeah certainly my fault.
[Tracking Requested - why for this release]: crash
Assignee: nobody → ehsan
Blocks: 1336484
tracking-firefox54:
--- → ?
Flags: needinfo?(ehsan)
Keywords: regression
| Assignee | ||
Comment 2•8 years ago
|
||
0xc8 is almost the offset of mWindowID in nsPIDOMWindowOuter, so our window pointer is somehow null here.
| Assignee | ||
Comment 3•8 years ago
|
||
Attachment #8837822 -
Flags: review?(amarchesini)
Updated•8 years ago
|
Attachment #8837822 -
Flags: review?(amarchesini) → review+
Pushed by eakhgari@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/30a1b3847bf4
Don't crash in nsPIDOMWindowInner::IsPlayingAudio() if we've been unlinked; r=baku
Comment 6•8 years ago
|
||
Testcase found by fuzzing.
Updated•8 years ago
|
Keywords: csectype-nullptr
| Assignee | ||
Comment 7•8 years ago
|
||
Thanks, the test case was really helpful. Unfortunately the patch doesn't fix the crash. What's happening is that our mOuterWindow is non-null in this case, but GetScriptableTop() returns null because the iframe has been removed from the tree.
| Assignee | ||
Comment 8•8 years ago
|
||
(I still think the patch that I landed is necessary since it's hard to know for sure that we'll always have an outer window here.
| Assignee | ||
Comment 9•8 years ago
|
||
It seems that AudioChannelService has this bug all over the place.
Keywords: leave-open
| Assignee | ||
Comment 10•8 years ago
|
||
Attachment #8838100 -
Flags: review?(amarchesini)
| Assignee | ||
Updated•8 years ago
|
Crash Signature: [@ mozilla::dom::AudioChannelService::GetOrCreateWindowData] → [@ mozilla::dom::AudioChannelService::GetOrCreateWindowData]
[@ mozilla::dom::AudioChannelService::IsWindowActive]
Comment 11•8 years ago
|
||
Comment on attachment 8838100 [details] [diff] [review]
Don't crash in AudioChannelService when dealing with Windows without a parent
Review of attachment 8838100 [details] [diff] [review]:
-----------------------------------------------------------------
::: dom/audiochannel/AudioChannelService.cpp
@@ +827,5 @@
> {
> MOZ_ASSERT(NS_IsMainThread());
>
> auto* window = nsPIDOMWindowOuter::From(aWindow)->GetScriptableTop();
> + if (!window) {
*aVolume = 0;
@@ +887,5 @@
> {
> MOZ_ASSERT(NS_IsMainThread());
>
> auto* window = nsPIDOMWindowOuter::From(aWindow)->GetScriptableTop();
> + if (!window) {
*aMuted = 0;
Attachment #8838100 -
Flags: review?(amarchesini) → review+
| Assignee | ||
Updated•8 years ago
|
Keywords: leave-open
Comment 12•8 years ago
|
||
Pushed by eakhgari@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/1b03953d2cca
Don't crash in AudioChannelService when dealing with Windows without a parent; r=baku
Comment 13•8 years ago
|
||
| bugherder | ||
https://hg.mozilla.org/mozilla-central/rev/30a1b3847bf4
https://hg.mozilla.org/mozilla-central/rev/1b03953d2cca
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla54
Comment 14•8 years ago
|
||
Please request Aurora approval on this when you get a chance.
status-firefox52:
--- → unaffected
status-firefox53:
--- → affected
tracking-firefox53:
--- → ?
Flags: needinfo?(ehsan)
| Assignee | ||
Comment 15•8 years ago
|
||
Comment on attachment 8838100 [details] [diff] [review]
Don't crash in AudioChannelService when dealing with Windows without a parent
Approval Request Comment
[Feature/Bug causing the regression]: Bug 1336484.
[User impact if declined]: Crash.
[Is this code covered by automated tests?]: Yes.
[Has the fix been verified in Nightly?]: Yes.
[Needs manual test from QE? If yes, steps to reproduce]: No.
[List of other uplifts needed for the feature/fix]: None.
[Is the change risky?]: No.
[Why is the change risky/not risky?]: Because it's adding some null checks.
[String changes made/needed]: None.
Flags: needinfo?(ehsan)
Attachment #8838100 -
Flags: approval-mozilla-aurora?
Comment 16•8 years ago
|
||
Comment on attachment 8838100 [details] [diff] [review]
Don't crash in AudioChannelService when dealing with Windows without a parent
Add some null checks to prevent crashes. Regression from 53.
Attachment #8838100 -
Flags: approval-mozilla-aurora? → approval-mozilla-aurora+
Comment 17•8 years ago
|
||
| bugherder uplift | ||
https://hg.mozilla.org/releases/mozilla-aurora/rev/4dce664e6046
https://hg.mozilla.org/releases/mozilla-aurora/rev/391c8637750f
Flags: in-testsuite? → in-testsuite+
| Reporter | ||
Updated•8 years ago
|
Updated•6 years ago
|
Component: DOM → DOM: Core & HTML
You need to log in
before you can comment on or make changes to this bug.
Description
•