summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorboliu@chromium.org <boliu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-01-31 23:37:11 +0000
committerboliu@chromium.org <boliu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-01-31 23:37:11 +0000
commitdf504abd666b4f3cb29e595599da7b2eec9fc20c (patch)
treeebc4006c6667c984919bf9cb73a13166de614d73
parentcab1d10d46801c91bdb0340afa0781563e5c9b23 (diff)
downloadchromium_src-df504abd666b4f3cb29e595599da7b2eec9fc20c.zip
chromium_src-df504abd666b4f3cb29e595599da7b2eec9fc20c.tar.gz
chromium_src-df504abd666b4f3cb29e595599da7b2eec9fc20c.tar.bz2
Only trigger onReceivedLoginRequest on main frames
This matches WebViewClassic behavior. BUG= TBR=mkosiba@chromium.org Android only change. Ran through android try bots. NOTRY=true Review URL: https://chromiumcodereview.appspot.com/12130003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@180004 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--android_webview/browser/renderer_host/aw_resource_dispatcher_host_delegate.cc32
1 files changed, 16 insertions, 16 deletions
diff --git a/android_webview/browser/renderer_host/aw_resource_dispatcher_host_delegate.cc b/android_webview/browser/renderer_host/aw_resource_dispatcher_host_delegate.cc
index 4aa80b1..7ec9e847 100644
--- a/android_webview/browser/renderer_host/aw_resource_dispatcher_host_delegate.cc
+++ b/android_webview/browser/renderer_host/aw_resource_dispatcher_host_delegate.cc
@@ -295,15 +295,6 @@ void AwResourceDispatcherHostDelegate::OnResponseStarted(
content::ResourceContext* resource_context,
content::ResourceResponse* response,
IPC::Sender* sender) {
- // Check for x-auto-login header.
- components::auto_login::HeaderData header_data;
- if (!components::auto_login::ParserHeaderInResponse(
- request,
- components::auto_login::ALLOW_ANY_REALM,
- &header_data)) {
- return;
- }
-
const content::ResourceRequestInfo* request_info =
content::ResourceRequestInfo::ForRequest(request);
if (!request_info) {
@@ -312,13 +303,22 @@ void AwResourceDispatcherHostDelegate::OnResponseStarted(
return;
}
- scoped_ptr<AwContentsIoThreadClient> io_client =
- AwContentsIoThreadClient::FromID(
- request_info->GetChildID(),
- request_info->GetRouteID());
- io_client->NewLoginRequest(header_data.realm,
- header_data.account,
- header_data.args);
+ if (request_info->GetResourceType() == ResourceType::MAIN_FRAME) {
+ // Check for x-auto-login header.
+ components::auto_login::HeaderData header_data;
+ if (components::auto_login::ParserHeaderInResponse(
+ request,
+ components::auto_login::ALLOW_ANY_REALM,
+ &header_data)) {
+ scoped_ptr<AwContentsIoThreadClient> io_client =
+ AwContentsIoThreadClient::FromID(
+ request_info->GetChildID(),
+ request_info->GetRouteID());
+ io_client->NewLoginRequest(header_data.realm,
+ header_data.account,
+ header_data.args);
+ }
+ }
}
void AwResourceDispatcherHostDelegate::RemovePendingThrottleOnIoThread(