| Index: talk/app/webrtc/webrtcsession.cc
|
| diff --git a/talk/app/webrtc/webrtcsession.cc b/talk/app/webrtc/webrtcsession.cc
|
| index 5c8b2df754fe8d69dd5928e2a0477e3f2e8e50ab..0138513dcf184f26104c83ea3796ec63d7f7e4c1 100644
|
| --- a/talk/app/webrtc/webrtcsession.cc
|
| +++ b/talk/app/webrtc/webrtcsession.cc
|
| @@ -489,6 +489,7 @@ WebRtcSession::WebRtcSession(
|
| mediastream_signaling_(mediastream_signaling),
|
| ice_observer_(NULL),
|
| ice_connection_state_(PeerConnectionInterface::kIceConnectionNew),
|
| + ice_flaky_(false),
|
| older_version_remote_peer_(false),
|
| dtls_enabled_(false),
|
| data_channel_type_(cricket::DCT_NONE),
|
| @@ -1401,6 +1402,23 @@ void WebRtcSession::OnTransportFailed(cricket::Transport* transport) {
|
| SetIceConnectionState(PeerConnectionInterface::kIceConnectionFailed);
|
| }
|
|
|
| +void WebRtcSession::OnTransportFlaky(cricket::Transport* transport) {
|
| + ASSERT(signaling_thread()->IsCurrent());
|
| + if (transport->HasChannels()) {
|
| + SetIceFlaky(transport->all_channels_flaky());
|
| + }
|
| +}
|
| +
|
| +void WebRtcSession::SetIceFlaky(bool flaky) {
|
| + if (ice_flaky_ == flaky) {
|
| + return;
|
| + }
|
| + ice_flaky_ = flaky;
|
| + if (ice_observer_) {
|
| + ice_observer_->OnIceFlakinessChange(flaky);
|
| + }
|
| +}
|
| +
|
| void WebRtcSession::OnTransportProxyCandidatesReady(
|
| cricket::TransportProxy* proxy, const cricket::Candidates& candidates) {
|
| ASSERT(signaling_thread()->IsCurrent());
|
|
|