Chromium Code Reviews| Index: content/browser/loader/mime_type_resource_handler.cc |
| diff --git a/content/browser/loader/mime_type_resource_handler.cc b/content/browser/loader/mime_type_resource_handler.cc |
| index 59c2b5310660487b1a0ccdc7f9591da7ebcc14bc..be40d9f96de5d35a3c563bba4ca6dc76cee8037e 100644 |
| --- a/content/browser/loader/mime_type_resource_handler.cc |
| +++ b/content/browser/loader/mime_type_resource_handler.cc |
| @@ -7,6 +7,7 @@ |
| #include <vector> |
| #include "base/bind.h" |
| +#include "base/command_line.h" |
| #include "base/location.h" |
| #include "base/logging.h" |
| #include "base/metrics/histogram.h" |
| @@ -27,6 +28,7 @@ |
| #include "content/public/browser/plugin_service.h" |
| #include "content/public/browser/resource_context.h" |
| #include "content/public/browser/resource_dispatcher_host_delegate.h" |
| +#include "content/public/common/content_switches.h" |
| #include "content/public/common/resource_response.h" |
| #include "content/public/common/webplugininfo.h" |
| #include "net/base/io_buffer.h" |
| @@ -417,7 +419,11 @@ bool MimeTypeResourceHandler::UseAlternateNextHandler( |
| // which does so is CrossSiteResourceHandler. Cross-site transitions should |
| // not trigger when switching handlers. |
| DCHECK(!defer_ignored); |
| - if (payload_for_old_handler.empty()) { |
| + ResourceRequestInfoImpl* info = GetRequestInfo(); |
| + if (payload_for_old_handler.empty() || |
| + (base::CommandLine::ForCurrentProcess()->HasSwitch( |
| + switches::kEnableBrowserSideNavigation) && |
| + (info->IsDownload() || info->is_stream()))) { |
|
davidben
2015/09/01 18:22:56
I was actually thinking we should do:
if (!plz_na
|
| net::URLRequestStatus status(net::URLRequestStatus::CANCELED, |
| net::ERR_ABORTED); |
| next_handler_->OnResponseCompleted(status, std::string(), &defer_ignored); |