NEW 172794
Crash when calling getUserMedia on a machine with no audio output devices
https://bugs.webkit.org/show_bug.cgi?id=172794
Summary Crash when calling getUserMedia on a machine with no audio output devices
Adam
Reported 2017-05-31 20:42:12 PDT
Created attachment 311677 [details] crash dump from webkit On a machine that has no audio output devices (eg. in this case on a Travis build) I'm getting a crash every time I call getUserMedia. To work around this I installed Soundflower to add virtual audio output devices and then I no longer get the crash. I have attached the crash dump. https://output.jsbin.com/qofomup is the page that I used to reproduce the crash.
Attachments
crash dump from webkit (92.06 KB, text/plain)
2017-05-31 20:42 PDT, Adam
no flags
Radar WebKit Bug Importer
Comment 1 2017-05-31 21:11:59 PDT
Jon Lee
Comment 2 2017-06-04 16:04:42 PDT
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread 0 com.apple.JavaScriptCore 0x0000000106228ed9 WTF::MediaTime::operator+(WTF::MediaTime const&) const + 505 1 com.apple.WebCore 0x000000010219b38a WebCore::AudioSampleDataSource::pushSamplesInternal(AudioBufferList const&, WTF::MediaTime const&, unsigned long) + 266 2 com.apple.WebCore 0x00000001021a0c78 WebCore::AudioTrackPrivateMediaStreamCocoa::audioSamplesAvailable(WTF::MediaTime const&, WebCore::PlatformAudioData const&, WebCore::AudioStreamDescription const&, unsigned long) + 920 3 com.apple.WebCore 0x0000000102de0176 WebCore::RealtimeMediaSource::audioSamplesAvailable(WTF::MediaTime const&, WebCore::PlatformAudioData const&, WebCore::AudioStreamDescription const&, unsigned long) + 70 4 com.apple.WebCore 0x0000000102d2a715 WebCore::MockRealtimeAudioSourceMac::emitSampleBuffers(unsigned int) + 117 5 com.apple.WebCore 0x0000000102d2abd1 WebCore::MockRealtimeAudioSourceMac::render(double) + 769 6 com.apple.JavaScriptCore 0x0000000106232f93 WTF::RunLoop::TimerBase::timerFired(__CFRunLoopTimer*, void*) + 35 7 com.apple.CoreFoundation 0x00007fffce598de4 __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 20 8 com.apple.CoreFoundation 0x00007fffce598a73 __CFRunLoopDoTimer + 1075 9 com.apple.CoreFoundation 0x00007fffce5985ca __CFRunLoopDoTimers + 298 10 com.apple.CoreFoundation 0x00007fffce58ffa1 __CFRunLoopRun + 2081 11 com.apple.CoreFoundation 0x00007fffce58f524 CFRunLoopRunSpecific + 420 12 com.apple.HIToolbox 0x00007fffcdaefebc RunCurrentEventLoopInMode + 240 13 com.apple.HIToolbox 0x00007fffcdaefcf1 ReceiveNextEventCommon + 432 14 com.apple.HIToolbox 0x00007fffcdaefb26 _BlockUntilNextEventMatchingListInModeWithFilter + 71 15 com.apple.AppKit 0x00007fffcc08ae24 _DPSNextEvent + 1120 16 com.apple.AppKit 0x00007fffcc80685e -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 2796 17 com.apple.AppKit 0x00007fffcc07f7ab -[NSApplication run] + 926 18 com.apple.AppKit 0x00007fffcc04a1de NSApplicationMain + 1237 19 libxpc.dylib 0x00007fffe438f8c7 _xpc_objc_main + 775 20 libxpc.dylib 0x00007fffe438e2e4 xpc_main + 494 21 com.apple.WebKit.WebContent 0x0000000100fce69a main + 490 22 libdyld.dylib 0x00007fffe4136235 start + 1
youenn fablet
Comment 3 2018-11-15 15:57:28 PST
Divide by zero in operator+, probably m_timeScale is null. Which might come from: MediaTime toMediaTime().
Note You need to log in before you can comment on or make changes to this bug.