Closed
Bug 1180355
Opened 10 years ago
Closed 10 years ago
Crash when creating an AudioContext with the AudioChannelService turned on on desktop
Categories
(Core :: Web Audio, defect)
Core
Web Audio
Tracking
()
RESOLVED
FIXED
mozilla42
| Tracking | Status | |
|---|---|---|
| firefox42 | --- | fixed |
People
(Reporter: ehsan.akhgari, Assigned: ehsan.akhgari)
References
Details
Attachments
(1 file)
|
2.96 KB,
patch
|
baku
:
review+
|
Details | Diff | Splinter Review |
With the audio channel service turned on on desktop, I get the following crash:
(lldb) bt
* thread #1: tid = 0x12f3ea, 0x00000001025abca0 XUL`mozilla::MediaStream::SetTrackEnabled(int, bool) [inlined] mozilla::MediaStream::GraphImpl(this=0x5a5a5a5a5a5a5a5a) at MediaStreamGraph.cpp:1979, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=EXC_I386_GPFLT)
frame #0: 0x00000001025abca0 XUL`mozilla::MediaStream::SetTrackEnabled(int, bool) [inlined] mozilla::MediaStream::GraphImpl(this=0x5a5a5a5a5a5a5a5a) at MediaStreamGraph.cpp:1979
frame #1: 0x00000001025abca0 XUL`mozilla::MediaStream::SetTrackEnabled(this=0x5a5a5a5a5a5a5a5a, aTrackID=1, aEnabled=true) + 16 at MediaStreamGraph.cpp:2391
* frame #2: 0x000000010263e01f XUL`mozilla::dom::AudioDestinationNode::CanPlayChanged(int) [inlined] mozilla::dom::AudioDestinationNode::SetCanPlay(this=0x0000000129379f00) + 63 at AudioDestinationNode.cpp:517
frame #3: 0x000000010263e00e XUL`mozilla::dom::AudioDestinationNode::CanPlayChanged(this=0x0000000129379f00, aCanPlay=0) + 46 at AudioDestinationNode.cpp:549
frame #4: 0x000000010263ac3d XUL`mozilla::dom::AudioDestinationNode::CreateAudioChannelAgent() [inlined] mozilla::dom::AudioDestinationNode::InputMuted(this=<unavailable>, aMuted=false) + 653 at AudioDestinationNode.cpp:774
frame #5: 0x000000010263ac0d XUL`mozilla::dom::AudioDestinationNode::CreateAudioChannelAgent(this=<unavailable>) + 605 at AudioDestinationNode.cpp:682
frame #6: 0x000000010263a989 XUL`mozilla::dom::AudioContext::AudioContext(this=0x00000001390f1b80, aWindow=<unavailable>, aIsOffline=<unavailable>, aChannel=<unavailable>, aNumberOfChannels=<unavailable>, aLength=<unavailable>, aSampleRate=<unavailable>) + 521 at AudioContext.cpp:111
frame #7: 0x000000010263b19e XUL`mozilla::dom::AudioContext::Constructor(mozilla::dom::GlobalObject const&, mozilla::ErrorResult&) [inlined] mozilla::dom::AudioContext::AudioContext(this=0x00000001390f1b80, aWindow=0x000000012a0c7020, aIsOffline=false, aChannel=<unavailable>, aNumberOfChannels=0, aLength=0, aSampleRate=0) + 110 at AudioContext.cpp:113
frame #8: 0x000000010263b191 XUL`mozilla::dom::AudioContext::Constructor(aGlobal=<unavailable>, aRv=<unavailable>) + 97 at AudioContext.cpp:145
frame #9: 0x0000000101c41f77 XUL`mozilla::dom::AudioContextBinding::_constructor(cx=0x0000000121dc5d20, argc=<unavailable>, vp=0x000000010e9d30b8) + 631 at AudioContextBinding.cpp:1756
frame #10: 0x0000000103aba297 XUL`js::InvokeConstructor(JSContext*, JS::CallArgs) [inlined] js::CallJSNative(native=0x0000000101c41d00)(JSContext*, unsigned int, JS::Value*), JS::CallArgs const&) + 52 at jscntxtinlines.h:235
frame #11: 0x0000000103aba263 XUL`js::InvokeConstructor(JSContext*, JS::CallArgs) at jscntxtinlines.h:268
frame #12: 0x0000000103aba263 XUL`js::InvokeConstructor(cx=0x0000000121dc5d20, args=<unavailable>) + 99 at Interpreter.cpp:809
frame #13: 0x0000000103ab4c4b XUL`Interpret(cx=0x0000000121dc5d20, state=<unavailable>) + 43019 at Interpreter.cpp:2956
frame #14: 0x0000000103aaa40b XUL`js::RunScript(cx=0x0000000121dc5d20, state=0x00007fff5fbfc620) + 363 at Interpreter.cpp:655
I think I have a fix...
| Assignee | ||
Comment 1•10 years ago
|
||
Attachment #8629547 -
Flags: review?(amarchesini)
Updated•10 years ago
|
Attachment #8629547 -
Flags: review?(amarchesini) → review+
Comment 3•10 years ago
|
||
Comment on attachment 8629547 [details] [diff] [review]
Patch (v1)
Review of attachment 8629547 [details] [diff] [review]:
-----------------------------------------------------------------
Would be nice to propagate the errors from CreateAudioChannelAgent. But maybe it can be a follow up?
| Assignee | ||
Comment 4•10 years ago
|
||
(In reply to Andrea Marchesini (:baku) from comment #3)
> Would be nice to propagate the errors from CreateAudioChannelAgent. But
> maybe it can be a follow up?
Can CreateAudioChannelAgent() fail?
Flags: needinfo?(amarchesini)
Comment 5•10 years ago
|
||
Status: NEW → RESOLVED
Closed: 10 years ago
status-firefox42:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla42
Comment 6•10 years ago
|
||
> Can CreateAudioChannelAgent() fail?
in theory a lot of methods can return errors. The reason why we are ignoring them is because we are in the CTOR.
Flags: needinfo?(amarchesini)
| Assignee | ||
Comment 7•10 years ago
|
||
Filed bug 1180940 as a follow-up.
You need to log in
before you can comment on or make changes to this bug.
Description
•