Bug 209580

Summary: enumerateDevices returns different value by calling more than twice
Product: WebKit Reporter: Yuji Sugiura <y.sugiura.0316>
Component: WebRTCAssignee: Nobody <webkit-unassigned>
Status: RESOLVED DUPLICATE    
Severity: Normal CC: graouts, jer.noble, simon.fraser, webkit-bug-importer, youennf, ysuzuki
Priority: P2 Keywords: InRadar
Version: Safari 13   
Hardware: Mac   
OS: Unspecified   

Description Yuji Sugiura 2020-03-25 19:44:38 PDT
`navigator.mediaDevices.enumerateDevices()` seems not to return same value for the first time calling and after another.

# How to reproduce

- open web page(no matter which page is) and DevTools(Console)
- call `await navigator.mediaDevices.enumerateDevices()`
  - check the result has `audioinput` and `videoinput` devices
- call `await navigator.mediaDevices.enumerateDevices()` again
  - expect the same result, but it returns `audioinput` and `audioinput`(no `videoinput`)

If you got permission by calling `getUserMedia()` first, it works as expected.
Comment 1 Radar WebKit Bug Importer 2020-03-25 19:56:43 PDT
<rdar://problem/60901421>
Comment 2 youenn fablet 2020-03-26 00:13:34 PDT
Thanks for the report Yuji, this is now fixed in WebKit ToT.

*** This bug has been marked as a duplicate of bug 209417 ***