| Index: net/quic/quic_sent_packet_manager.cc
|
| diff --git a/net/quic/quic_sent_packet_manager.cc b/net/quic/quic_sent_packet_manager.cc
|
| index 8fb27170ef3f0af8af05520eb7eb8718cee88b7a..21a4fbcd84b6f16856a8ba4e21e8f2a851baee31 100644
|
| --- a/net/quic/quic_sent_packet_manager.cc
|
| +++ b/net/quic/quic_sent_packet_manager.cc
|
| @@ -78,7 +78,6 @@ QuicSentPacketManager::QuicSentPacketManager(
|
| congestion_control_type,
|
| stats)),
|
| loss_algorithm_(LossDetectionInterface::Create(loss_type)),
|
| - largest_observed_(0),
|
| least_packet_awaited_by_peer_(1),
|
| first_rto_transmission_(0),
|
| consecutive_rto_count_(0),
|
| @@ -189,10 +188,9 @@ void QuicSentPacketManager::OnIncomingAck(const QuicAckFrame& ack_frame,
|
| // We rely on delta_time_largest_observed to compute an RTT estimate, so
|
| // we only update rtt when the largest observed gets acked.
|
| bool largest_observed_acked = MaybeUpdateRTT(ack_frame, ack_receive_time);
|
| - if (largest_observed_ < ack_frame.largest_observed) {
|
| - largest_observed_ = ack_frame.largest_observed;
|
| - unacked_packets_.IncreaseLargestObserved(largest_observed_);
|
| - }
|
| + DCHECK_GE(ack_frame.largest_observed, unacked_packets_.largest_observed());
|
| + unacked_packets_.IncreaseLargestObserved(ack_frame.largest_observed);
|
| +
|
| HandleAckForSentPackets(ack_frame);
|
| InvokeLossDetection(ack_receive_time);
|
| MaybeInvokeCongestionEvent(largest_observed_acked, bytes_in_flight);
|
| @@ -224,7 +222,7 @@ void QuicSentPacketManager::OnIncomingAck(const QuicAckFrame& ack_frame,
|
| if (debug_delegate_ != NULL) {
|
| debug_delegate_->OnIncomingAck(ack_frame,
|
| ack_receive_time,
|
| - largest_observed_,
|
| + unacked_packets_.largest_observed(),
|
| largest_observed_acked,
|
| GetLeastUnackedSentPacket());
|
| }
|
| @@ -700,7 +698,7 @@ void QuicSentPacketManager::InvokeLossDetection(QuicTime time) {
|
| SequenceNumberSet lost_packets =
|
| loss_algorithm_->DetectLostPackets(unacked_packets_,
|
| time,
|
| - largest_observed_,
|
| + unacked_packets_.largest_observed(),
|
| rtt_stats_);
|
| for (SequenceNumberSet::const_iterator it = lost_packets.begin();
|
| it != lost_packets.end(); ++it) {
|
|
|