| 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 38bc03c6bfb917d2b8407576f61a2617cbf6e3ec..b4618926a05c761bd8c715c987c6f373b6b9766f 100644
|
| --- a/net/http/http_stream_factory_impl_request.cc
|
| +++ b/net/http/http_stream_factory_impl_request.cc
|
| @@ -292,6 +292,13 @@ HttpStreamFactoryImpl::Request::RemoveRequestFromHttpPipeliningRequestMap() {
|
| }
|
| }
|
|
|
| +// TODO(jgraettinger): Currently, HttpStreamFactoryImpl::Job notifies a
|
| +// Request that the session is ready, which in turn notifies it's delegate,
|
| +// and then it notifies HttpStreamFactoryImpl so that /other/ requests may
|
| +// be woken, but only if the spdy_session is still okay. This is tough to grok.
|
| +// Instead, see if Job can notify HttpStreamFactoryImpl only, and have one
|
| +// path for notifying any requests waiting for the session (including the
|
| +// request which spawned it).
|
| void HttpStreamFactoryImpl::Request::OnNewSpdySessionReady(
|
| Job* job,
|
| scoped_ptr<HttpStream> stream,
|
| @@ -334,7 +341,7 @@ void HttpStreamFactoryImpl::Request::OnNewSpdySessionReady(
|
| stream.release());
|
| }
|
| // |this| may be deleted after this point.
|
| - if (spdy_session) {
|
| + if (spdy_session && spdy_session->IsAvailable()) {
|
| factory->OnNewSpdySessionReady(spdy_session,
|
| direct,
|
| used_ssl_config,
|
|
|