| Index: Source/core/fetch/ResourceLoader.cpp
|
| diff --git a/Source/core/fetch/ResourceLoader.cpp b/Source/core/fetch/ResourceLoader.cpp
|
| index 9f786aade6f3c23943270388acf8d6dcc69a34aa..ecf930a1c9fa0c8f4f6d37a6f43cce3ea6f05681 100644
|
| --- a/Source/core/fetch/ResourceLoader.cpp
|
| +++ b/Source/core/fetch/ResourceLoader.cpp
|
| @@ -121,7 +121,7 @@ void ResourceLoader::init(const ResourceRequest& passedRequest)
|
| request.setReportLoadTiming(true);
|
| ASSERT(m_state != Terminated);
|
| ASSERT(!request.isNull());
|
| - m_originalRequest = m_request = request;
|
| + m_originalRequest = m_request = applyOptions(request);
|
| m_resource->updateRequest(request);
|
| m_host->didInitializeResourceLoader(this);
|
| }
|
| @@ -153,7 +153,6 @@ void ResourceLoader::start()
|
| m_loader = adoptPtr(blink::Platform::current()->createURLLoader());
|
| ASSERT(m_loader);
|
| blink::WrappedResourceRequest wrappedRequest(m_request);
|
| - wrappedRequest.setAllowStoredCredentials(m_options.allowCredentials == AllowStoredCredentials);
|
| m_loader->loadAsynchronously(wrappedRequest, this);
|
| }
|
|
|
| @@ -174,7 +173,7 @@ void ResourceLoader::setDefersLoading(bool defers)
|
| if (m_loader)
|
| m_loader->setDefersLoading(defers);
|
| if (!defers && !m_deferredRequest.isNull()) {
|
| - m_request = m_deferredRequest;
|
| + m_request = applyOptions(m_deferredRequest);
|
| m_deferredRequest = ResourceRequest();
|
| start();
|
| }
|
| @@ -263,7 +262,7 @@ void ResourceLoader::willSendRequest(blink::WebURLLoader*, blink::WebURLRequest&
|
| {
|
| RefPtr<ResourceLoader> protect(this);
|
|
|
| - ResourceRequest& request(passedRequest.toMutableResourceRequest());
|
| + ResourceRequest& request(applyOptions(passedRequest.toMutableResourceRequest()));
|
| ASSERT(!request.isNull());
|
| const ResourceResponse& redirectResponse(passedRedirectResponse.toResourceResponse());
|
| ASSERT(!redirectResponse.isNull());
|
| @@ -272,6 +271,7 @@ void ResourceLoader::willSendRequest(blink::WebURLLoader*, blink::WebURLRequest&
|
| return;
|
| }
|
|
|
| + applyOptions(request); // canAccessRedirect() can modify m_options so we should re-apply it.
|
| m_host->redirectReceived(m_resource, redirectResponse);
|
| m_resource->willSendRequest(request, redirectResponse);
|
| if (request.isNull() || m_state == Terminated)
|
| @@ -456,7 +456,6 @@ void ResourceLoader::requestSynchronously()
|
| m_connectionState = ConnectionStateStarted;
|
|
|
| blink::WrappedResourceRequest requestIn(m_request);
|
| - requestIn.setAllowStoredCredentials(m_options.allowCredentials == AllowStoredCredentials);
|
| blink::WebURLResponse responseOut;
|
| responseOut.initialize();
|
| blink::WebURLError errorOut;
|
| @@ -476,4 +475,10 @@ void ResourceLoader::requestSynchronously()
|
| didFinishLoading(0, monotonicallyIncreasingTime(), encodedDataLength);
|
| }
|
|
|
| +ResourceRequest& ResourceLoader::applyOptions(ResourceRequest& request) const
|
| +{
|
| + request.setAllowStoredCredentials(m_options.allowCredentials == AllowStoredCredentials);
|
| + return request;
|
| +}
|
| +
|
| }
|
|
|