Index: third_party/WebKit/Source/core/loader/DocumentLoader.cpp |
diff --git a/third_party/WebKit/Source/core/loader/DocumentLoader.cpp b/third_party/WebKit/Source/core/loader/DocumentLoader.cpp |
index ec8cd6882c0c83da042ec409d5949b54893553fd..2b577284b149fdc564d18d51a28a9b121aba7c2a 100644 |
--- a/third_party/WebKit/Source/core/loader/DocumentLoader.cpp |
+++ b/third_party/WebKit/Source/core/loader/DocumentLoader.cpp |
@@ -326,12 +326,6 @@ void DocumentLoader::finishedLoading(double finishTime) |
clearMainResourceHandle(); |
} |
-void DocumentLoader::updateRequest(Resource* resource, const ResourceRequest& request) |
-{ |
- ASSERT_UNUSED(resource, resource == m_mainResource); |
- m_request = request; |
-} |
- |
void DocumentLoader::redirectReceived(Resource* resource, ResourceRequest& request, const ResourceResponse& redirectResponse) |
{ |
ASSERT_UNUSED(resource, resource == m_mainResource); |
@@ -691,11 +685,10 @@ void DocumentLoader::startLoadingMainResource() |
m_applicationCacheHost->willStartLoadingMainResource(m_request); |
- ResourceRequest request(m_request); |
DEFINE_STATIC_LOCAL(ResourceLoaderOptions, mainResourceLoadOptions, |
(DoNotBufferData, AllowStoredCredentials, ClientRequestedCredentials, CheckContentSecurityPolicy, DocumentContext)); |
- FetchRequest cachedResourceRequest(request, FetchInitiatorTypeNames::document, mainResourceLoadOptions); |
- m_mainResource = RawResource::fetchMainResource(cachedResourceRequest, fetcher(), m_substituteData); |
+ FetchRequest fetchRequest(m_request, FetchInitiatorTypeNames::document, mainResourceLoadOptions); |
+ m_mainResource = RawResource::fetchMainResource(fetchRequest, fetcher(), m_substituteData); |
if (!m_mainResource) { |
m_request = ResourceRequest(); |
// If the load was aborted by clearing m_request, it's possible the ApplicationCacheHost |
@@ -708,15 +701,15 @@ void DocumentLoader::startLoadingMainResource() |
return; |
} |
m_mainResource->addClient(this); |
+ if (!m_mainResource) |
+ return; |
// A bunch of headers are set when the underlying ResourceLoader is created, and m_request needs to include those. |
- if (mainResourceLoader()) |
- request = mainResourceLoader()->originalRequest(); |
+ m_request = m_mainResource->resourceRequest(); |
// If there was a fragment identifier on m_request, the cache will have stripped it. m_request should include |
// the fragment identifier, so add that back in. |
- if (equalIgnoringFragmentIdentifier(m_request.url(), request.url())) |
- request.setURL(m_request.url()); |
- m_request = request; |
+ if (equalIgnoringFragmentIdentifier(m_request.url(), fetchRequest.url())) |
+ m_request.setURL(fetchRequest.url()); |
} |
void DocumentLoader::cancelMainResourceLoad(const ResourceError& resourceError) |