Remove the previous headers_stream_ and Change unowned_headers_stream_ to header_stream_.
The unique_ptr headers_stream is now only used as a temporary variable to pass into stream_map. No need to have it as a member variable anymore.
gfe-relnote: No behavior change. Not protected.
PiperOrigin-RevId: 258403361
Change-Id: Idefbab511707878e6904c58f0aaef7c4f205f710
diff --git a/quic/core/http/quic_spdy_session.cc b/quic/core/http/quic_spdy_session.cc
index 3fe1f5c..367a99b 100644
--- a/quic/core/http/quic_spdy_session.cc
+++ b/quic/core/http/quic_spdy_session.cc
@@ -375,12 +375,12 @@
kDefaultQpackMaxDynamicTableCapacity);
}
- headers_stream_ = QuicMakeUnique<QuicHeadersStream>((this));
+ auto headers_stream = QuicMakeUnique<QuicHeadersStream>((this));
DCHECK_EQ(QuicUtils::GetHeadersStreamId(connection()->transport_version()),
- headers_stream_->id());
+ headers_stream->id());
- unowned_headers_stream_ = headers_stream_.get();
- RegisterStaticStream(std::move(headers_stream_),
+ headers_stream_ = headers_stream.get();
+ RegisterStaticStream(std::move(headers_stream),
/*stream_already_counted = */ false);
if (VersionHasStreamType(connection()->transport_version())) {
diff --git a/quic/core/http/quic_spdy_session.h b/quic/core/http/quic_spdy_session.h
index 0a009bf..1acdbd5 100644
--- a/quic/core/http/quic_spdy_session.h
+++ b/quic/core/http/quic_spdy_session.h
@@ -147,11 +147,9 @@
QpackEncoder* qpack_encoder();
QpackDecoder* qpack_decoder();
- QuicHeadersStream* headers_stream() { return unowned_headers_stream_; }
+ QuicHeadersStream* headers_stream() { return headers_stream_; }
- const QuicHeadersStream* headers_stream() const {
- return unowned_headers_stream_;
- }
+ const QuicHeadersStream* headers_stream() const { return headers_stream_; }
bool server_push_enabled() const { return server_push_enabled_; }
@@ -285,15 +283,8 @@
std::unique_ptr<QpackEncoder> qpack_encoder_;
std::unique_ptr<QpackDecoder> qpack_decoder_;
- // TODO(123528590): Remove this member.
- std::unique_ptr<QuicHeadersStream> headers_stream_;
-
- // Unowned headers stream pointer that points to the stream
- // in dynamic_stream_map.
- // TODO(renjietang): Merge this with headers_stream_ and clean up other
- // static_stream_map logic when flag eliminate_static_stream_map
- // is deprecated.
- QuicHeadersStream* unowned_headers_stream_;
+ // Pointer to the header stream in stream_map_.
+ QuicHeadersStream* headers_stream_;
// HTTP/3 control streams. They are owned by QuicSession inside dynamic
// stream map, and can be accessed by those unowned pointers below.
diff --git a/quic/core/http/quic_spdy_session_test.cc b/quic/core/http/quic_spdy_session_test.cc
index 4b450e9..d76b846 100644
--- a/quic/core/http/quic_spdy_session_test.cc
+++ b/quic/core/http/quic_spdy_session_test.cc
@@ -928,9 +928,9 @@
}
TestHeadersStream* headers_stream;
- QuicSpdySessionPeer::SetUnownedHeadersStream(&session_, nullptr);
+ QuicSpdySessionPeer::SetHeadersStream(&session_, nullptr);
headers_stream = new TestHeadersStream(&session_);
- QuicSpdySessionPeer::SetUnownedHeadersStream(&session_, headers_stream);
+ QuicSpdySessionPeer::SetHeadersStream(&session_, headers_stream);
session_.MarkConnectionLevelWriteBlocked(
QuicUtils::GetHeadersStreamId(connection_->transport_version()));
EXPECT_CALL(*headers_stream, OnCanWrite());
@@ -1741,9 +1741,9 @@
TEST_P(QuicSpdySessionTestClient, WritePriority) {
TestHeadersStream* headers_stream;
- QuicSpdySessionPeer::SetUnownedHeadersStream(&session_, nullptr);
+ QuicSpdySessionPeer::SetHeadersStream(&session_, nullptr);
headers_stream = new TestHeadersStream(&session_);
- QuicSpdySessionPeer::SetUnownedHeadersStream(&session_, headers_stream);
+ QuicSpdySessionPeer::SetHeadersStream(&session_, headers_stream);
// Make packet writer blocked so |headers_stream| will buffer its write data.
MockPacketWriter* writer = static_cast<MockPacketWriter*>(
diff --git a/quic/test_tools/quic_spdy_session_peer.cc b/quic/test_tools/quic_spdy_session_peer.cc
index be0849b..68552a8 100644
--- a/quic/test_tools/quic_spdy_session_peer.cc
+++ b/quic/test_tools/quic_spdy_session_peer.cc
@@ -16,15 +16,13 @@
return session->headers_stream();
}
-void QuicSpdySessionPeer::SetUnownedHeadersStream(
- QuicSpdySession* session,
- QuicHeadersStream* headers_stream) {
+void QuicSpdySessionPeer::SetHeadersStream(QuicSpdySession* session,
+ QuicHeadersStream* headers_stream) {
for (auto& it : session->stream_map()) {
if (it.first == QuicUtils::GetHeadersStreamId(
session->connection()->transport_version())) {
it.second.reset(headers_stream);
- session->unowned_headers_stream_ =
- static_cast<QuicHeadersStream*>(it.second.get());
+ session->headers_stream_ = static_cast<QuicHeadersStream*>(it.second.get());
break;
}
}
diff --git a/quic/test_tools/quic_spdy_session_peer.h b/quic/test_tools/quic_spdy_session_peer.h
index f97b264..aacf712 100644
--- a/quic/test_tools/quic_spdy_session_peer.h
+++ b/quic/test_tools/quic_spdy_session_peer.h
@@ -24,8 +24,8 @@
QuicSpdySessionPeer() = delete;
static QuicHeadersStream* GetHeadersStream(QuicSpdySession* session);
- static void SetUnownedHeadersStream(QuicSpdySession* session,
- QuicHeadersStream* headers_stream);
+ static void SetHeadersStream(QuicSpdySession* session,
+ QuicHeadersStream* headers_stream);
static const spdy::SpdyFramer& GetSpdyFramer(QuicSpdySession* session);
static void SetHpackEncoderDebugVisitor(
QuicSpdySession* session,