In QuicConnection class, move stats_ to be above uber_received_packet_manager_, because the later is initialized from the former. In other words, if uber_received_packet_manager_'s constructor reads anything inside stats_ it might read garbage.
PiperOrigin-RevId: 337567677
Change-Id: Ib9914edc7338b585c48479a21476ebfb8f7f3e04
diff --git a/quic/core/quic_connection.h b/quic/core/quic_connection.h
index afcbe13..9531581 100644
--- a/quic/core/quic_connection.h
+++ b/quic/core/quic_connection.h
@@ -1605,6 +1605,9 @@
// When > 0, close the QUIC connection after this number of RTOs.
size_t num_rtos_for_blackhole_detection_;
+ // Statistics for this session.
+ QuicConnectionStats stats_;
+
UberReceivedPacketManager uber_received_packet_manager_;
// Indicates how many consecutive times an ack has arrived which indicates
@@ -1655,9 +1658,6 @@
QuicPacketCreator packet_creator_;
- // Statistics for this session.
- QuicConnectionStats stats_;
-
// The time that a packet is received for this connection. Initialized to
// connection creation time.
// This does not indicate the packet was processed.