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)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla42
Tracking Status
firefox42 --- fixed

People

(Reporter: ehsan.akhgari, Assigned: ehsan.akhgari)

References

Details

Attachments

(1 file)

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...
Blocks: 486262
Attached patch Patch (v1)Splinter Review
Attachment #8629547 - Flags: review?(amarchesini)
Attachment #8629547 - Flags: review?(amarchesini) → review+
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?
(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)
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla42
> 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)
Filed bug 1180940 as a follow-up.
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: