gfe-relnote: In QUIC, do not send STOP_WAITING if no_stop_waiting_frame_ is true. Protected by gfe2_reloadable_flag_quic_simplify_stop_waiting.

This change is from cl/214914333.

PiperOrigin-RevId: 249558708
Change-Id: I48d5045185980ecc0264ad6a9dff1e47f69a6d20
diff --git a/quic/core/quic_connection.cc b/quic/core/quic_connection.cc
index 73959f0..2260766 100644
--- a/quic/core/quic_connection.cc
+++ b/quic/core/quic_connection.cc
@@ -1205,7 +1205,13 @@
   // If the incoming ack's packets set expresses received packets: peer is still
   // acking packets which we never care about.
   // Send an ack to raise the high water mark.
-  PostProcessAfterAckFrame(GetLeastUnacked() > start,
+  bool send_stop_waiting = GetLeastUnacked() > start;
+  if (GetQuicReloadableFlag(quic_simplify_stop_waiting) &&
+      no_stop_waiting_frames_) {
+    QUIC_RELOADABLE_FLAG_COUNT(quic_simplify_stop_waiting);
+    send_stop_waiting = false;
+  }
+  PostProcessAfterAckFrame(send_stop_waiting,
                            ack_result == PACKETS_NEWLY_ACKED);
   processing_ack_frame_ = false;
 
@@ -3910,8 +3916,6 @@
   SetRetransmissionAlarm();
   MaybeSetPathDegradingAlarm(acked_new_packet);
 
-  // TODO(ianswett): Only increment stop_waiting_count_ if StopWaiting frames
-  // are sent.
   if (send_stop_waiting) {
     ++stop_waiting_count_;
   } else {