NEW 215422
Safari 13.1.2 onicecandidate event is raised before iceGatheringState transitions to "gathering" state
https://bugs.webkit.org/show_bug.cgi?id=215422
Summary Safari 13.1.2 onicecandidate event is raised before iceGatheringState transit...
Charlie
Reported 2020-08-12 12:26:42 PDT
During the ICE gathering phase, RTCPeerConnection.onicecandidate event is raised before RTCPeerConnection.iceGatheringState transitions to "gathering". This only happens on Safari 13.1.2. Prior versions of Safari and other browser works as expected. Here's what's happening on Safari 13.1.2 1. ICE Gathering starts 2. A local ICE Candidate is gathered 3. RTCPeerConnection.onicecandidate event is raised 4. RTCPeerConnection.iceGatheringState changes to "gathering" 5. RTCPeerConnection.iceGatheringState changes to "complete" The issue is on steps 3 and 4. The expected should be 1. ICE Gathering starts 2. A local ICE Candidate is gathered 3. RTCPeerConnection.iceGatheringState changes to "gathering" 4. RTCPeerConnection.onicecandidate event is raised 5. RTCPeerConnection.iceGatheringState changes to "complete" Steps to reproduce: The issue is rarely reproducible if you setup 2 peer connections on a single machine, but it still happens. But we can consistently reproduce when we are connected to our media server. Try loading this page https://networktest.twilio.com, and wait for the "Voice: Test call using PCMU" section to execute. The test will fail because onicecandidate was triggering before iceGatheringState changes to "gathering". I can provide pcaps and/or SDPs if they are needed. Please let me know if you need more information.
Attachments
Radar WebKit Bug Importer
Comment 1 2020-08-19 12:27:16 PDT
Note You need to log in before you can comment on or make changes to this bug.