Compute RTCPeerConnection iceConnectionState based on RTCIceTransport states. #16385
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Previously both RTCPeerConnection::iceConnectionState and RTCIceTransport states
were calculated based on updates coming from webrtc layer to blink layer (from
signaling thread to main thread). Because there is no ordering between the two
updates, the peer connection iceConnectionState and ice transport states could
end up out of sync in blink layer. Fix state mismatch by updating the peer
connection iceConnectionState using blink layer ice transport states, on ice
transport state updates.
These changes only apply for unified plan because RTCIceTransport is not exposed
for plan B.
Bug: 953694,944036
Change-Id: I3b96189593a89715cc42a8113e97c2b31c7f0eb3
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1566334
Commit-Queue: Marina Ciocea <marinaciocea@chromium.org>
Reviewed-by: Henrik Boström <hbos@chromium.org>
Cr-Commit-Position: refs/heads/master@{#653116}