Index: content/browser/loader/resource_loader.cc |
diff --git a/content/browser/loader/resource_loader.cc b/content/browser/loader/resource_loader.cc |
index 0339cf11c0d5ade2f2f4ebe14a64cd3da4289c3b..babc48f8d7bb3f818f65b83b6a67bdba82f6b06f 100644 |
--- a/content/browser/loader/resource_loader.cc |
+++ b/content/browser/loader/resource_loader.cc |
@@ -280,6 +280,15 @@ void ResourceLoader::OnReceivedRedirect(net::URLRequest* unused, |
return; |
} |
+ if (info->fetch_redirect_mode() == FETCH_REDIRECT_MODE_ERROR) { |
+ Cancel(); |
+ return; |
+ } else if (info->fetch_redirect_mode() == FETCH_REDIRECT_MODE_MANUAL) { |
+ CompleteResponseStarted(); |
+ ResponseCompleted(); |
+ return; |
+ } |
+ |
delegate_->DidReceiveRedirect(this, redirect_info.new_url); |
if (delegate_->HandleExternalProtocol(this, redirect_info.new_url)) { |