Index: net/quic/chromium/quic_chromium_client_session.cc |
diff --git a/net/quic/chromium/quic_chromium_client_session.cc b/net/quic/chromium/quic_chromium_client_session.cc |
index 6d46a328b9b570d5c18509b00c948e12264835ec..4c70e143387ff4fe0681128b4877d521f9fea755 100644 |
--- a/net/quic/chromium/quic_chromium_client_session.cc |
+++ b/net/quic/chromium/quic_chromium_client_session.cc |
@@ -301,13 +301,14 @@ int QuicChromiumClientSession::Handle::RequestStream( |
return stream_request_->StartRequest(callback); |
} |
-QuicChromiumClientStream* QuicChromiumClientSession::Handle::ReleaseStream( |
+std::unique_ptr<QuicChromiumClientStream::Handle> |
+QuicChromiumClientSession::Handle::ReleaseStream( |
QuicChromiumClientStream::Delegate* delegate) { |
DCHECK(stream_request_); |
- auto* stream = stream_request_->ReleaseStream(delegate); |
+ auto handle = stream_request_->ReleaseStream(delegate); |
stream_request_.reset(); |
- return stream; |
+ return handle; |
} |
int QuicChromiumClientSession::Handle::WaitForHandshakeConfirmation( |
@@ -376,14 +377,13 @@ int QuicChromiumClientSession::StreamRequest::StartRequest( |
return rv; |
} |
-QuicChromiumClientStream* |
+std::unique_ptr<QuicChromiumClientStream::Handle> |
QuicChromiumClientSession::StreamRequest::ReleaseStream( |
QuicChromiumClientStream::Delegate* delegate) { |
DCHECK(stream_); |
QuicChromiumClientStream* stream = stream_; |
stream_ = nullptr; |
- stream->SetDelegate(delegate); |
- return stream; |
+ return stream->CreateHandle(delegate); |
} |
void QuicChromiumClientSession::StreamRequest::OnRequestCompleteSuccess( |