Index: net/quic/core/quic_session.cc |
diff --git a/net/quic/core/quic_session.cc b/net/quic/core/quic_session.cc |
index 9508fe39524d94d1f6603cf49a52a2503eccc917..9cda039a97ec7484052838b7ddbecdbcbf005c48 100644 |
--- a/net/quic/core/quic_session.cc |
+++ b/net/quic/core/quic_session.cc |
@@ -77,7 +77,7 @@ void QuicSession::OnStreamFrame(const QuicStreamFrame& frame) { |
// us this offset. |
if (frame.fin) { |
QuicStreamOffset final_byte_offset = frame.offset + frame.data_length; |
- UpdateFlowControlOnFinalReceivedByteOffset(stream_id, final_byte_offset); |
+ OnFinalByteOffsetReceived(stream_id, final_byte_offset); |
} |
return; |
} |
@@ -394,7 +394,7 @@ void QuicSession::CloseStreamInner(QuicStreamId stream_id, bool locally_reset) { |
connection_->SetNumOpenStreams(dynamic_stream_map_.size()); |
} |
-void QuicSession::UpdateFlowControlOnFinalReceivedByteOffset( |
+void QuicSession::OnFinalByteOffsetReceived( |
QuicStreamId stream_id, |
QuicStreamOffset final_byte_offset) { |
std::map<QuicStreamId, QuicStreamOffset>::iterator it = |
@@ -533,8 +533,7 @@ void QuicSession::HandleRstOnValidNonexistentStream( |
if (IsClosedStream(frame.stream_id)) { |
// The RST frame contains the final byte offset for the stream: we can now |
// update the connection level flow controller if needed. |
- UpdateFlowControlOnFinalReceivedByteOffset(frame.stream_id, |
- frame.byte_offset); |
+ OnFinalByteOffsetReceived(frame.stream_id, frame.byte_offset); |
} |
} |
@@ -820,6 +819,10 @@ void QuicSession::PostProcessAfterData() { |
closed_streams_.clear(); |
} |
+void QuicSession::OnAckNeedsRetransmittableFrame() { |
+ flow_controller_.SendWindowUpdate(); |
+} |
+ |
size_t QuicSession::GetNumDynamicOutgoingStreams() const { |
DCHECK_GE(dynamic_stream_map_.size(), num_dynamic_incoming_streams_); |
return dynamic_stream_map_.size() - num_dynamic_incoming_streams_; |