| Index: net/quic/quic_session.cc
|
| diff --git a/net/quic/quic_session.cc b/net/quic/quic_session.cc
|
| index 0eba20fe96901177675db3c9ff84d4d7f0741430..3505f44e57bc0154346b204de4c4e6d72615f849 100644
|
| --- a/net/quic/quic_session.cc
|
| +++ b/net/quic/quic_session.cc
|
| @@ -263,7 +263,7 @@ void QuicSession::OnCanWrite() {
|
| }
|
| ReliableQuicStream* stream = GetStream(stream_id);
|
| if (stream != nullptr && !stream->flow_controller()->IsBlocked()) {
|
| - // If the stream can't write all bytes, it'll re-add itself to the blocked
|
| + // If the stream can't write all bytes it'll re-add itself to the blocked
|
| // list.
|
| stream->OnCanWrite();
|
| }
|
| @@ -295,8 +295,11 @@ QuicConsumedData QuicSession::WritevData(
|
| bool fin,
|
| FecProtection fec_protection,
|
| QuicAckListenerInterface* ack_notifier_delegate) {
|
| - return connection_->SendStreamData(id, iov, offset, fin, fec_protection,
|
| - ack_notifier_delegate);
|
| + QuicConsumedData data =
|
| + connection_->SendStreamData(id, iov, offset, fin, fec_protection,
|
| + ack_notifier_delegate);
|
| + write_blocked_streams_.UpdateBytesForStream(id, data.bytes_consumed);
|
| + return data;
|
| }
|
|
|
| void QuicSession::SendRstStream(QuicStreamId id,
|
| @@ -752,7 +755,7 @@ void QuicSession::MarkConnectionLevelWriteBlocked(QuicStreamId id,
|
| // kHighestPriority.
|
| priority = kHighestPriority;
|
| }
|
| - write_blocked_streams_.PushBack(id, priority);
|
| + write_blocked_streams_.AddStream(id, priority);
|
| }
|
|
|
| bool QuicSession::HasDataToWrite() const {
|
|
|