From df504abd666b4f3cb29e595599da7b2eec9fc20c Mon Sep 17 00:00:00 2001 From: "boliu@chromium.org" Date: Thu, 31 Jan 2013 23:37:11 +0000 Subject: 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 --- .../aw_resource_dispatcher_host_delegate.cc | 32 +++++++++++----------- 1 file 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 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 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( -- cgit v1.1