| Index: net/http/http_stream_factory_impl_request.cc
|
| diff --git a/net/http/http_stream_factory_impl_request.cc b/net/http/http_stream_factory_impl_request.cc
|
| index 5f129ac2673e6baca20a51c290129db841e7ddb1..ff66f1475ce4cdfb49f8665af92d1fcb5cac589f 100644
|
| --- a/net/http/http_stream_factory_impl_request.cc
|
| +++ b/net/http/http_stream_factory_impl_request.cc
|
| @@ -291,15 +291,10 @@
|
|
|
| void HttpStreamFactoryImpl::Request::OnNewSpdySessionReady(
|
| Job* job,
|
| - scoped_ptr<HttpStream> stream,
|
| const base::WeakPtr<SpdySession>& spdy_session,
|
| bool direct) {
|
| DCHECK(job);
|
| DCHECK(job->using_spdy());
|
| -
|
| - // Note: |spdy_session| may be NULL. In that case, |delegate_| should still
|
| - // receive |stream| so the error propogates up correctly, however there is no
|
| - // point in broadcasting |spdy_session| to other requests.
|
|
|
| // The first case is the usual case.
|
| if (!bound_job_.get()) {
|
| @@ -327,20 +322,21 @@
|
| // implemented.
|
| NOTREACHED();
|
| } else {
|
| - delegate_->OnStreamReady(job->server_ssl_config(), job->proxy_info(),
|
| - stream.release());
|
| + bool use_relative_url = direct || url().SchemeIs("https");
|
| + delegate_->OnStreamReady(
|
| + job->server_ssl_config(),
|
| + job->proxy_info(),
|
| + new SpdyHttpStream(spdy_session, use_relative_url));
|
| }
|
| // |this| may be deleted after this point.
|
| - if (spdy_session) {
|
| - factory->OnNewSpdySessionReady(spdy_session,
|
| - direct,
|
| - used_ssl_config,
|
| - used_proxy_info,
|
| - was_npn_negotiated,
|
| - protocol_negotiated,
|
| - using_spdy,
|
| - net_log);
|
| - }
|
| + factory->OnNewSpdySessionReady(spdy_session,
|
| + direct,
|
| + used_ssl_config,
|
| + used_proxy_info,
|
| + was_npn_negotiated,
|
| + protocol_negotiated,
|
| + using_spdy,
|
| + net_log);
|
| }
|
|
|
| void HttpStreamFactoryImpl::Request::OrphanJobsExcept(Job* job) {
|
|
|