Make CreateIncomingStream() to take PendingStream* instead of PendingStream. PendingStream* will be passed to create QuicStream.
non const pointer is used because sequencer and flow controller need to be transferred to QuicStream.
This reduces uses of std::move().
gfe-relnote: refactor. No behavior change. Not flag protected.
PiperOrigin-RevId: 250575271
Change-Id: I8a2897d8a8d76a3da5096bc6d643afe704125433
diff --git a/quic/quartc/quartc_session.cc b/quic/quartc/quartc_session.cc
index 9615689..8b285d0 100644
--- a/quic/quartc/quartc_session.cc
+++ b/quic/quartc/quartc_session.cc
@@ -243,9 +243,9 @@
return ActivateDataStream(CreateDataStream(id, QuicStream::kDefaultPriority));
}
-QuicStream* QuartcSession::CreateIncomingStream(PendingStream pending) {
+QuicStream* QuartcSession::CreateIncomingStream(PendingStream* pending) {
return ActivateDataStream(
- CreateDataStream(std::move(pending), QuicStream::kDefaultPriority));
+ CreateDataStream(pending, QuicStream::kDefaultPriority));
}
std::unique_ptr<QuartcStream> QuartcSession::CreateDataStream(
@@ -260,10 +260,9 @@
}
std::unique_ptr<QuartcStream> QuartcSession::CreateDataStream(
- PendingStream pending,
+ PendingStream* pending,
spdy::SpdyPriority priority) {
- return InitializeDataStream(QuicMakeUnique<QuartcStream>(std::move(pending)),
- priority);
+ return InitializeDataStream(QuicMakeUnique<QuartcStream>(pending), priority);
}
std::unique_ptr<QuartcStream> QuartcSession::InitializeDataStream(
diff --git a/quic/quartc/quartc_session.h b/quic/quartc/quartc_session.h
index 840f69d..fd1743b 100644
--- a/quic/quartc/quartc_session.h
+++ b/quic/quartc/quartc_session.h
@@ -179,11 +179,11 @@
protected:
// QuicSession override.
QuicStream* CreateIncomingStream(QuicStreamId id) override;
- QuicStream* CreateIncomingStream(PendingStream pending) override;
+ QuicStream* CreateIncomingStream(PendingStream* pending) override;
std::unique_ptr<QuartcStream> CreateDataStream(QuicStreamId id,
spdy::SpdyPriority priority);
- std::unique_ptr<QuartcStream> CreateDataStream(PendingStream pending,
+ std::unique_ptr<QuartcStream> CreateDataStream(PendingStream* pending,
spdy::SpdyPriority priority);
// Activates a QuartcStream. The session takes ownership of the stream, but
// returns an unowned pointer to the stream for convenience.
diff --git a/quic/quartc/quartc_stream.cc b/quic/quartc/quartc_stream.cc
index 5fc1074..80bc3fc 100644
--- a/quic/quartc/quartc_stream.cc
+++ b/quic/quartc/quartc_stream.cc
@@ -24,8 +24,8 @@
sequencer()->set_level_triggered(true);
}
-QuartcStream::QuartcStream(PendingStream pending)
- : QuicStream(std::move(pending), BIDIRECTIONAL, /*is_static=*/false) {
+QuartcStream::QuartcStream(PendingStream* pending)
+ : QuicStream(pending, BIDIRECTIONAL, /*is_static=*/false) {
sequencer()->set_level_triggered(true);
}
diff --git a/quic/quartc/quartc_stream.h b/quic/quartc/quartc_stream.h
index bf15a68..9c4450d 100644
--- a/quic/quartc/quartc_stream.h
+++ b/quic/quartc/quartc_stream.h
@@ -26,7 +26,7 @@
class QuartcStream : public QuicStream {
public:
QuartcStream(QuicStreamId id, QuicSession* session);
- explicit QuartcStream(PendingStream pending);
+ explicit QuartcStream(PendingStream* pending);
~QuartcStream() override;
diff --git a/quic/quartc/quartc_stream_test.cc b/quic/quartc/quartc_stream_test.cc
index d7599e8..5ee2d6f 100644
--- a/quic/quartc/quartc_stream_test.cc
+++ b/quic/quartc/quartc_stream_test.cc
@@ -86,7 +86,7 @@
return nullptr;
}
- QuartcStream* CreateIncomingStream(PendingStream pending) override {
+ QuartcStream* CreateIncomingStream(PendingStream* pending) override {
return nullptr;
}