summaryrefslogtreecommitdiff
path: root/chromium/third_party/blink/renderer/modules/peerconnection/rtc_peer_connection.cc
diff options
context:
space:
mode:
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.cc9
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(