Chromium Code Reviews| Index: webrtc/p2p/base/dtlstransportchannel.cc |
| diff --git a/webrtc/p2p/base/dtlstransportchannel.cc b/webrtc/p2p/base/dtlstransportchannel.cc |
| index e73cf688bda12420e9745d034bec53e586eecfa6..7d2f496d42285e08a00ba7b61b529cad2bdde201 100644 |
| --- a/webrtc/p2p/base/dtlstransportchannel.cc |
| +++ b/webrtc/p2p/base/dtlstransportchannel.cc |
| @@ -118,6 +118,8 @@ DtlsTransportChannelWrapper::DtlsTransportChannelWrapper( |
| &DtlsTransportChannelWrapper::OnRouteChange); |
| channel_->SignalConnectionRemoved.connect(this, |
| &DtlsTransportChannelWrapper::OnConnectionRemoved); |
| + channel_->SignalFlakyState.connect(this, |
| + &DtlsTransportChannelWrapper::OnFlakyState); |
| } |
| DtlsTransportChannelWrapper::~DtlsTransportChannelWrapper() { |
| @@ -456,6 +458,18 @@ void DtlsTransportChannelWrapper::OnWritableState(TransportChannel* channel) { |
| } |
| } |
| +void DtlsTransportChannelWrapper::OnFlakyState(TransportChannel* channel) { |
| + ASSERT(rtc::Thread::Current() == worker_thread_); |
| + ASSERT(channel == channel_); |
| + LOG_J(LS_VERBOSE, this) |
| + << "DTLSTransportChannelWrapper: channel flaky state changed to " |
| + << channel_->flaky(); |
| + if (dtls_state_ == STATE_NONE || dtls_state_ == STATE_OPEN) { |
|
pthatcher1
2015/06/24 23:42:52
Why not just always set it, regardless of state?
honghaiz3
2015/08/05 23:56:56
For both set_readable and set_writable, they only
|
| + // Note: SignalFlakyState fired by set_flaky. |
| + set_flaky(channel_->flaky()); |
| + } |
| +} |
| + |
| void DtlsTransportChannelWrapper::OnReadPacket( |
| TransportChannel* channel, const char* data, size_t size, |
| const rtc::PacketTime& packet_time, int flags) { |