| Index: net/quic/core/quic_client_session_base.cc
|
| diff --git a/net/quic/core/quic_client_session_base.cc b/net/quic/core/quic_client_session_base.cc
|
| index 3fb43d14b14ba05e4a11b513c2ed3a325b76a44f..35438af5f0e15a61f0f7e899ac510162df9180b5 100644
|
| --- a/net/quic/core/quic_client_session_base.cc
|
| +++ b/net/quic/core/quic_client_session_base.cc
|
| @@ -188,6 +188,7 @@ void QuicClientSessionBase::DeletePromised(QuicClientPromisedInfo* promised) {
|
| // Since promised_by_id_ contains the unique_ptr, this will destroy
|
| // promised.
|
| promised_by_id_.erase(promised->id());
|
| + headers_stream()->MaybeReleaseSequencerBuffer();
|
| }
|
|
|
| void QuicClientSessionBase::OnPushStreamTimedOut(QuicStreamId stream_id) {}
|
| @@ -201,4 +202,14 @@ void QuicClientSessionBase::ResetPromised(QuicStreamId id,
|
| }
|
| }
|
|
|
| +void QuicClientSessionBase::CloseStreamInner(QuicStreamId stream_id,
|
| + bool locally_reset) {
|
| + QuicSpdySession::CloseStreamInner(stream_id, locally_reset);
|
| + headers_stream()->MaybeReleaseSequencerBuffer();
|
| +}
|
| +
|
| +bool QuicClientSessionBase::ShouldReleaseHeadersStreamSequencerBuffer() {
|
| + return num_active_requests() == 0 && promised_by_id_.empty();
|
| +}
|
| +
|
| } // namespace net
|
|
|