Summary: | enumerateDevices() doesn't return correct list of devices after device was changed by user in a system preferences | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | olsviate <olsviate> | ||||||
Component: | WebRTC | Assignee: | Eric Carlson <eric.carlson> | ||||||
Status: | RESOLVED FIXED | ||||||||
Severity: | Normal | CC: | commit-queue, eric.carlson, ews-watchlist, glenn, hta, jer.noble, philipj, sergio, tommyw, webkit-bug-importer, youennf | ||||||
Priority: | P2 | Keywords: | InRadar | ||||||
Version: | Safari 13 | ||||||||
Hardware: | Mac | ||||||||
OS: | macOS 10.15 | ||||||||
Attachments: |
|
Description
olsviate
2019-10-25 05:16:20 PDT
I can repro the bug. On page reload, the default device is the correct one. There is apparently no device change event being fired, which means we either do not receive the notification or we do not detect any change in the device setup while we should. Created attachment 382738 [details]
Patch
Comment on attachment 382738 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=382738&action=review > Source/WebCore/platform/mediastream/mac/CoreAudioCaptureDeviceManager.cpp:131 > + callOnMainThread([] { We probably do not need callOnMainThread since we ask the listener to be called on dispatch_get_main_queue. Created attachment 382740 [details]
Patch for landing.
Comment on attachment 382740 [details] Patch for landing. Clearing flags on attachment: 382740 Committed r251992: <https://trac.webkit.org/changeset/251992> All reviewed patches have been landed. Closing bug. |