Account for static streams when QuicSession constructs v99_streamid_manager.
gfe-relnote: protected by gfe2_reloadable_flag_quic_enable_version_draft_25_v3
PiperOrigin-RevId: 303176537
Change-Id: Ida9fd5ae14807d0c454c57a634dc42c9a4c3e71a
diff --git a/quic/core/quic_session.cc b/quic/core/quic_session.cc
index 07130de..d925fea 100644
--- a/quic/core/quic_session.cc
+++ b/quic/core/quic_session.cc
@@ -89,7 +89,8 @@
0,
num_expected_unidirectional_static_streams,
config_.GetMaxBidirectionalStreamsToSend(),
- config_.GetMaxUnidirectionalStreamsToSend()),
+ config_.GetMaxUnidirectionalStreamsToSend() +
+ num_expected_unidirectional_static_streams),
num_dynamic_incoming_streams_(0),
num_draining_incoming_streams_(0),
num_outgoing_static_streams_(0),
diff --git a/quic/core/quic_stream_id_manager.cc b/quic/core/quic_stream_id_manager.cc
index fc05be0..ec0cda9 100644
--- a/quic/core/quic_stream_id_manager.cc
+++ b/quic/core/quic_stream_id_manager.cc
@@ -113,6 +113,11 @@
QUIC_MAX_STREAMS_ERROR, "Stream limit less than existing stream count");
return;
}
+ QUIC_LOG_IF(WARNING, incoming_initial_max_open_streams_ != max_open_streams)
+ << quiche::QuicheStrCat(
+ unidirectional_ ? "unidirectional " : "bidirectional: ",
+ "incoming stream limit changed from ",
+ incoming_initial_max_open_streams_, " to ", max_open_streams);
incoming_actual_max_streams_ = max_open_streams;
incoming_advertised_max_streams_ = max_open_streams;
incoming_initial_max_open_streams_ = max_open_streams;