Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(688)

Unified Diff: third_party/WebKit/Source/core/loader/DocumentLoader.cpp

Issue 1757633005: Don't duplicate ResourceRequests and ResourceLoaderOptions on ResourceLoader (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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)

Powered by Google App Engine
This is Rietveld 408576698