| Index: net/quic/core/quic_stream_sequencer_buffer.cc
|
| diff --git a/net/quic/core/quic_stream_sequencer_buffer.cc b/net/quic/core/quic_stream_sequencer_buffer.cc
|
| index 05d1da1fe117070e854709f7ddb827025d055dbc..99cf5940394eac413c0f4fc61c0f65cc11867b01 100644
|
| --- a/net/quic/core/quic_stream_sequencer_buffer.cc
|
| +++ b/net/quic/core/quic_stream_sequencer_buffer.cc
|
| @@ -7,6 +7,7 @@
|
| #include "base/logging.h"
|
| #include "base/strings/string_number_conversions.h"
|
| #include "net/quic/core/quic_bug_tracker.h"
|
| +#include "net/quic/core/quic_flags.h"
|
|
|
| using std::min;
|
| using std::string;
|
| @@ -431,10 +432,12 @@ void QuicStreamSequencerBuffer::RetireBlockIfEmpty(size_t block_index) {
|
| // Check where the next piece data is.
|
| // Not empty if next piece of data is still in this chunk.
|
| bool gap_extends_to_infinity =
|
| - (first_gap.end_offset != std::numeric_limits<QuicStreamOffset>::max());
|
| + (first_gap.end_offset == std::numeric_limits<QuicStreamOffset>::max());
|
| bool gap_ends_in_this_block =
|
| (GetBlockIndex(first_gap.end_offset) == block_index);
|
| - if (gap_extends_to_infinity || gap_ends_in_this_block) {
|
| + if ((!FLAGS_quic_sequencer_buffer_retire_block_in_time &&
|
| + !gap_extends_to_infinity) ||
|
| + gap_ends_in_this_block) {
|
| return;
|
| }
|
| }
|
|
|