Chromium Code Reviews| Index: net/quic/chromium/quic_chromium_client_session.cc |
| diff --git a/net/quic/chromium/quic_chromium_client_session.cc b/net/quic/chromium/quic_chromium_client_session.cc |
| index f58bd05a213a2e794e2b29629d4ccc00ced7a2d2..76a7343d35743723d4ead9c6fc43b0f9409d81b8 100644 |
| --- a/net/quic/chromium/quic_chromium_client_session.cc |
| +++ b/net/quic/chromium/quic_chromium_client_session.cc |
| @@ -962,10 +962,6 @@ void QuicChromiumClientSession::OnConnectionClosed( |
| UMA_HISTOGRAM_COUNTS( |
| "Net.QuicSession.ConnectionClose.NumOpenStreams.TimedOut", |
| GetNumOpenOutgoingStreams()); |
| - // Notify the factory the connection timed out with open streams. |
| - if (GetNumOpenOutgoingStreams() > 0 && stream_factory_) { |
| - stream_factory_->OnTimeoutWithOpenStreams(); |
| - } |
| if (IsCryptoHandshakeConfirmed()) { |
| if (GetNumOpenOutgoingStreams() > 0) { |
| UMA_HISTOGRAM_BOOLEAN( |
| @@ -991,7 +987,13 @@ void QuicChromiumClientSession::OnConnectionClosed( |
| } |
| } |
| - if (!IsCryptoHandshakeConfirmed()) { |
| + if (IsCryptoHandshakeConfirmed()) { |
| + if (stream_factory_ && |
| + (error == QUIC_TOO_MANY_RTOS || (error == QUIC_NETWORK_IDLE_TIMEOUT && |
| + GetNumOpenOutgoingStreams() > 0))) { |
| + stream_factory_->OnBlackholeAfterHandshakeConfirmed(this); |
| + } |
| + } else { |
|
Jana
2017/04/07 21:59:29
Nice. I like the way you refactored code to get th
Ryan Hamilton
2017/04/07 22:37:20
Yay! Thanks. It took *way* too long for me to figu
|
| if (error == QUIC_PUBLIC_RESET) { |
| RecordHandshakeFailureReason(HANDSHAKE_FAILURE_PUBLIC_RESET); |
| } else if (connection()->GetStats().packets_received == 0) { |