Commit 83345b6c authored by Renjie Tang's avatar Renjie Tang Committed by Commit Bot

Fix QuicStream data logging upon closure.

CloseStream() and SendRstStream() both only partially cover stream closure code paths. So they are not recording all the streams' states upon their closure.

QuicSession::OnStreamClosed() is called however when the stream is closed. It makes more sense to do the logging here.

Bug: 1101516
Change-Id: I8bfb7b927eef862497587907998f772e290d76fe
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2288316Reviewed-by: default avatarDavid Schinazi <dschinazi@chromium.org>
Commit-Queue: Renjie Tang <renjietang@chromium.org>
Cr-Commit-Position: refs/heads/master@{#786553}
parent 8d7da5a7
......@@ -1507,7 +1507,7 @@ QuicChromiumClientSession::CreateIncomingReliableStreamImpl(
return stream;
}
void QuicChromiumClientSession::CloseStream(quic::QuicStreamId stream_id) {
void QuicChromiumClientSession::OnStreamClosed(quic::QuicStreamId stream_id) {
most_recent_stream_close_time_ = tick_clock_->NowTicks();
auto it = stream_map().find(stream_id);
if (it != stream_map().end()) {
......@@ -1519,22 +1519,7 @@ void QuicChromiumClientSession::CloseStream(quic::QuicStreamId stream_id) {
bytes_pushed_count_ += it->second->stream_bytes_read();
}
}
quic::QuicSpdySession::CloseStream(stream_id);
}
void QuicChromiumClientSession::SendRstStream(
quic::QuicStreamId id,
quic::QuicRstStreamErrorCode error,
quic::QuicStreamOffset bytes_written) {
if (quic::QuicUtils::IsServerInitiatedStreamId(
connection()->transport_version(), id)) {
auto it = stream_map().find(id);
if (it != stream_map().end()) {
bytes_pushed_count_ += it->second->stream_bytes_read();
}
}
quic::QuicSpdySession::SendRstStream(id, error, bytes_written);
quic::QuicSpdyClientSessionBase::OnStreamClosed(stream_id);
}
void QuicChromiumClientSession::OnCanCreateNewOutgoingStream(
......
......@@ -522,10 +522,6 @@ class NET_EXPORT_PRIVATE QuicChromiumClientSession
QuicChromiumClientStream* CreateOutgoingUnidirectionalStream() override;
const quic::QuicCryptoClientStream* GetCryptoStream() const override;
quic::QuicCryptoClientStream* GetMutableCryptoStream() override;
void CloseStream(quic::QuicStreamId stream_id) override;
void SendRstStream(quic::QuicStreamId id,
quic::QuicRstStreamErrorCode error,
quic::QuicStreamOffset bytes_written) override;
void SetDefaultEncryptionLevel(quic::EncryptionLevel level) override;
void OnOneRttKeysAvailable() override;
void OnCryptoHandshakeMessageSent(
......@@ -539,7 +535,7 @@ class NET_EXPORT_PRIVATE QuicChromiumClientSession
const quic::QuicSocketAddress& self_address,
const quic::QuicSocketAddress& peer_address) override;
// QuicClientSessionBase methods:
// QuicSpdyClientSessionBase methods:
void OnConfigNegotiated() override;
void OnProofValid(
const quic::QuicCryptoClientConfig::CachedState& cached) override;
......@@ -562,6 +558,7 @@ class NET_EXPORT_PRIVATE QuicChromiumClientSession
bool OnPacket(const quic::QuicReceivedPacket& packet,
const quic::QuicSocketAddress& local_address,
const quic::QuicSocketAddress& peer_address) override;
void OnStreamClosed(quic::QuicStreamId stream_id) override;
// MultiplexedSession methods:
bool GetRemoteEndpoint(IPEndPoint* endpoint) override;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment