| Index: net/http/http_stream_factory_impl_job.cc
|
| diff --git a/net/http/http_stream_factory_impl_job.cc b/net/http/http_stream_factory_impl_job.cc
|
| index 408c75e718070fbcaf72ae9c5a4176c69703c39d..28532ddc038ea2c9f12901295a172258009c6e49 100644
|
| --- a/net/http/http_stream_factory_impl_job.cc
|
| +++ b/net/http/http_stream_factory_impl_job.cc
|
| @@ -902,7 +902,6 @@ int HttpStreamFactoryImpl::Job::DoCreateStream() {
|
| if (!using_spdy_) {
|
| bool using_proxy = (proxy_info_.is_http() || proxy_info_.is_https()) &&
|
| request_info_.url.SchemeIs("http");
|
| - // TODO(simonjam): Support proxies.
|
| if (stream_factory_->http_pipelined_host_pool_.
|
| IsExistingPipelineAvailableForKey(*http_pipelining_key_.get())) {
|
| stream_.reset(stream_factory_->http_pipelined_host_pool_.
|
| @@ -910,6 +909,7 @@ int HttpStreamFactoryImpl::Job::DoCreateStream() {
|
| *http_pipelining_key_.get()));
|
| CHECK(stream_.get());
|
| } else if (!using_proxy && IsRequestEligibleForPipelining()) {
|
| + // TODO(simonjam): Support proxies.
|
| stream_.reset(
|
| stream_factory_->http_pipelined_host_pool_.CreateStreamOnNewPipeline(
|
| *http_pipelining_key_.get(),
|
| @@ -1246,6 +1246,12 @@ bool HttpStreamFactoryImpl::Job::IsRequestEligibleForPipelining() {
|
| if (request_info_.method != "GET" && request_info_.method != "HEAD") {
|
| return false;
|
| }
|
| + if (request_info_.load_flags &
|
| + (net::LOAD_MAIN_FRAME | net::LOAD_SUB_FRAME | net::LOAD_PREFETCH |
|
| + net::LOAD_IS_DOWNLOAD)) {
|
| + // Avoid pipelining resources that may be streamed for a long time.
|
| + return false;
|
| + }
|
| return stream_factory_->http_pipelined_host_pool_.IsKeyEligibleForPipelining(
|
| *http_pipelining_key_.get());
|
| }
|
|
|