summaryrefslogtreecommitdiffstats
path: root/WebKit/android/WebCoreSupport/WebRequest.cpp
diff options
context:
space:
mode:
authorIain Merrick <husky@google.com>2010-11-24 10:38:33 +0000
committerIain Merrick <husky@google.com>2010-11-25 10:26:26 +0000
commit664dabb9afbb1d233a9b16a8f80f944cc01d4e7f (patch)
treea6e923797950a06e130d513de20e4d4dc08ff71c /WebKit/android/WebCoreSupport/WebRequest.cpp
parentfaae91c5ffddc81234758e14185d89b064fdb991 (diff)
downloadexternal_webkit-664dabb9afbb1d233a9b16a8f80f944cc01d4e7f.zip
external_webkit-664dabb9afbb1d233a9b16a8f80f944cc01d4e7f.tar.gz
external_webkit-664dabb9afbb1d233a9b16a8f80f944cc01d4e7f.tar.bz2
Set useCachedCredentials to true on first auth request.
This flag previously defaulted to false, but the Android CTS specifies that a "sufficient" implementation should return true on the first authentication request. (The second and subsequent auth requests aren't tested.) This CL sets the flag to true on the first authentication request for a given WebRequest, but false for subsequent requests (i.e., if the first attempt to authenticate failed). Using a counter rather than a flag in WebRequest for readability. "isFirstAuthRequest" would be a bit ambiguous as a member variable, but "authRequestCount" seems pretty clear. Change-Id: Id9baae4c30111f743e079f90940078b07498b168
Diffstat (limited to 'WebKit/android/WebCoreSupport/WebRequest.cpp')
-rw-r--r--WebKit/android/WebCoreSupport/WebRequest.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/WebKit/android/WebCoreSupport/WebRequest.cpp b/WebKit/android/WebCoreSupport/WebRequest.cpp
index a165b8a..366c3c9 100644
--- a/WebKit/android/WebCoreSupport/WebRequest.cpp
+++ b/WebKit/android/WebCoreSupport/WebRequest.cpp
@@ -66,6 +66,7 @@ WebRequest::WebRequest(WebUrlLoaderClient* loader, const WebResourceRequest& web
, m_url(webResourceRequest.url())
, m_userAgent(webResourceRequest.userAgent())
, m_loadState(Created)
+ , m_authRequestCount(0)
{
GURL gurl(m_url);
@@ -86,6 +87,7 @@ WebRequest::WebRequest(WebUrlLoaderClient* loader, const WebResourceRequest& web
, m_url(webResourceRequest.url())
, m_userAgent(webResourceRequest.userAgent())
, m_loadState(Created)
+ , m_authRequestCount(0)
{
}
@@ -310,8 +312,11 @@ void WebRequest::OnAuthRequired(URLRequest* request, net::AuthChallengeInfo* aut
ASSERT(m_loadState == Started, "OnAuthRequired called on a WebRequest not in STARTED state (state=%d)", m_loadState);
scoped_refptr<net::AuthChallengeInfo> authInfoPtr(authInfo);
+ bool firstTime = (m_authRequestCount == 0);
+ ++m_authRequestCount;
+
m_urlLoader->maybeCallOnMainThread(NewRunnableMethod(
- m_urlLoader.get(), &WebUrlLoaderClient::authRequired, authInfoPtr));
+ m_urlLoader.get(), &WebUrlLoaderClient::authRequired, authInfoPtr, firstTime));
}
// After calling Start(), the delegate will receive an OnResponseStarted