Summary: | iOS 13 Beta 7, multiple gUM() requests can result in unexpected failures in certain circumstances | ||
---|---|---|---|
Product: | WebKit | Reporter: | Chad Phillips <webkit> |
Component: | WebRTC | Assignee: | Nobody <webkit-unassigned> |
Status: | NEW --- | ||
Severity: | Normal | CC: | webkit-bug-importer, youennf |
Priority: | P2 | Keywords: | InRadar |
Version: | WebKit Nightly Build | ||
Hardware: | iPhone / iPad | ||
OS: | Unspecified |
Description
Chad Phillips
2019-08-20 17:08:55 PDT
I wonder whether this is not related to some race conditions we still do not handle well when stopping a track and quickly starting a new capture. We may in fact revoke the sandbox extension too aggressively. One way to confirm this would be to update the test page and stop the tracks at the end of the video checks. Or add a delay between stopping the tracks and restarting a capture. This issue still occurs on iOS 13.1.1 on an iPhone 7, and iPadOS 13.1.1 on an iPad Mini. I'm already stopping the tracks at the end of each gUM() request. I wrapped my subsequent calls to resolution tests in setTimeout([test func], 0), and this fixed the error condition. However, this seems like a pretty ugly hack for a hopefully fixable bug. |