Index: net/quic/quic_received_packet_manager.cc |
diff --git a/net/quic/quic_received_packet_manager.cc b/net/quic/quic_received_packet_manager.cc |
index 255ce4dc10a7a4287ab497615d61471a4a74e29a..944376cd94481a33a6c256bcdd08e5b24a0e8668 100644 |
--- a/net/quic/quic_received_packet_manager.cc |
+++ b/net/quic/quic_received_packet_manager.cc |
@@ -229,14 +229,11 @@ void QuicReceivedPacketManager::UpdateReceivedPacketInfo( |
return; |
} |
- if (approximate_now < time_largest_observed_) { |
- // Approximate now may well be "in the past". |
- ack_frame->delta_time_largest_observed = QuicTime::Delta::Zero(); |
- return; |
- } |
- |
+ // Ensure the delta is zero if approximate now is "in the past". |
ack_frame->delta_time_largest_observed = |
- approximate_now.Subtract(time_largest_observed_); |
+ approximate_now < time_largest_observed_ ? |
+ QuicTime::Delta::Zero() : |
+ approximate_now.Subtract(time_largest_observed_); |
// Remove all packets that are too far from largest_observed to express. |
received_packet_times_.remove_if(isTooLarge(ack_frame_.largest_observed)); |