Crash in [@ mozilla::AudioSink::PopFrames]  
    Categories
(Core :: Audio/Video: Playback, defect, P3)
Tracking
()
| Tracking | Status | |
|---|---|---|
| firefox69 | --- | wontfix | 
| firefox70 | --- | fix-optional | 
| firefox71 | --- | affected | 
People
(Reporter: jcristau, Unassigned)
Details
(Keywords: crash)
Crash Data
This bug is for crash report bp-a41b8276-ffe3-4167-a336-1feb60190908. For some reason there were quite a few crash reports with that signature yesterday, mostly from youtube URLs.
Top 10 frames of crashing thread:
0  @0xbf110b56 
1 xul.dll class mozilla::UniquePtr<mozilla::AudioStream::Chunk, mozilla::DefaultDelete<mozilla::AudioStream::Chunk> > mozilla::AudioSink::PopFrames dom/media/mediasink/AudioSink.cpp:287
2 xul.dll void mozilla::AudioStream::GetUnprocessed dom/media/AudioStream.cpp:484
3 xul.dll long mozilla::AudioStream::DataCallback dom/media/AudioStream.cpp:571
4 xul.dll static long mozilla::AudioStream::DataCallback_S dom/media/AudioStream.h:281
5 xul.dll long cubeb_resampler_speex<float, cubeb_resampler_speex_one_way<float>, cubeb_resampler_speex_one_way<float> >::fill_internal_output media/libcubeb/src/cubeb_resampler.cpp:160
6 xul.dll static long `anonymous namespace'::refill media/libcubeb/src/cubeb_wasapi.cpp:739
7 xul.dll static bool `anonymous namespace'::refill_callback_output media/libcubeb/src/cubeb_wasapi.cpp:1071
8 xul.dll static unsigned int `anonymous namespace'::wasapi_stream_render_loop media/libcubeb/src/cubeb_wasapi.cpp
9 ucrtbase.dll _o____lc_collate_cp_func 
| Comment 1•6 years ago
           | ||
NI myself for further investigation.
|   | ||
| Updated•6 years ago
           | 
| Comment 2•6 years ago
           | ||
From [1], if wasabi could call data callback after we stop cubeb, it's possible to run AudioStream::DataCallback() after we released AudioStream.
In addition, as we unlock the moniter in Shutdown() [2], it allows DataCallback() to be called before changing mState to SHUTDOWN. Is it any way to unregister callback function when we shutdown the audio stream?
[1] https://searchfox.org/mozilla-central/rev/250f5cc9fb8bdcbb6b23d2a06acfd48addb2f99b/dom/media/AudioStream.cpp#400-401
[2] https://searchfox.org/mozilla-central/rev/250f5cc9fb8bdcbb6b23d2a06acfd48addb2f99b/dom/media/AudioStream.cpp#397
| Comment 3•6 years ago
           | ||
(In reply to Alastor Wu [:alwu] from comment #2)
From [1], if wasabi could call data callback after we stop cubeb, it's possible to run
AudioStream::DataCallback()after we releasedAudioStream.In addition, as we unlock the moniter in
Shutdown()[2], it allowsDataCallback()to be called before changingmStatetoSHUTDOWN. Is it any way to unregister callback function when we shutdown the audio stream?[1] https://searchfox.org/mozilla-central/rev/250f5cc9fb8bdcbb6b23d2a06acfd48addb2f99b/dom/media/AudioStream.cpp#400-401
[2] https://searchfox.org/mozilla-central/rev/250f5cc9fb8bdcbb6b23d2a06acfd48addb2f99b/dom/media/AudioStream.cpp#397
When cubeb_stream_stop or cubeb_stream_destroy has returned, there is the guarantee that the DataCallback is not going to be called anymore. Are we sure it's being called?
| Comment 4•3 years ago
           | ||
Since the crash volume is low (less than 5 per week), the severity is downgraded to S3. Feel free to change it back if you think the bug is still critical.
For more information, please visit auto_nag documentation.
| Comment 5•2 years ago
           | ||
Change its priority due to low crash volume.
| Comment 6•9 months ago
           | ||
Closing because no crashes reported for 12 weeks.
Description
•