diff options
Diffstat (limited to 'chromium/third_party/blink/renderer/modules/peerconnection/rtc_peer_connection.cc')
-rw-r--r-- | chromium/third_party/blink/renderer/modules/peerconnection/rtc_peer_connection.cc | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/chromium/third_party/blink/renderer/modules/peerconnection/rtc_peer_connection.cc b/chromium/third_party/blink/renderer/modules/peerconnection/rtc_peer_connection.cc index a84a1980eaa..9f3885137c6 100644 --- a/chromium/third_party/blink/renderer/modules/peerconnection/rtc_peer_connection.cc +++ b/chromium/third_party/blink/renderer/modules/peerconnection/rtc_peer_connection.cc @@ -2883,6 +2883,15 @@ void RTCPeerConnection::DidModifyTransceivers( transceiver->receiver()->track()->Component()->Source()->SetReadyState( MediaStreamSource::kReadyStateLive); } + + // Transceiver modifications can cause changes in the set of ICE + // transports, which may affect ICE transport state. + // Note - this must be done every time the set of ICE transports happens. + // At the moment this only happens in SLD/SRD, and this function is called + // whenever these functions complete. + if (sdp_semantics_ == webrtc::SdpSemantics::kUnifiedPlan) { + UpdateIceConnectionState(); + } } void RTCPeerConnection::SetAssociatedMediaStreams( |