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;
   }