Commit a5166942 authored by hiroshige's avatar hiroshige Committed by Commit bot

Remove FetchRequest::mutableResourceRequest() where removing is trivial

This CL removes FetchRequest::mutableResourceRequest() calls that are
used to modify ResourceRequest created just before, i.e. replaces:
  FetchRequest request(ResourceRequest(foo), bar);
  request.mutableResourceRequest().baz();
with:
  ResourceRequest resourceRequest(foo);
  resourceRequest.baz();
  FetchRequest request(resourceRequest, bar);
To clarify what kind of modifications to ResourceRequest via
mutableResourceRequest() is needed (https://crbug.com/632580#c8).

BUG=632580

Review-Url: https://codereview.chromium.org/2740253002
Cr-Commit-Position: refs/heads/master@{#456169}
parent c5f3fd4c
...@@ -89,16 +89,15 @@ static void setCrossOriginAccessControl(FetchRequest& request, ...@@ -89,16 +89,15 @@ static void setCrossOriginAccessControl(FetchRequest& request,
FontResource* CSSFontFaceSrcValue::fetch(Document* document) const { FontResource* CSSFontFaceSrcValue::fetch(Document* document) const {
if (!m_fetched) { if (!m_fetched) {
FetchRequest request(ResourceRequest(m_absoluteResource), ResourceRequest resourceRequest(m_absoluteResource);
FetchInitiatorTypeNames::css); resourceRequest.setHTTPReferrer(SecurityPolicy::generateReferrer(
m_referrer.referrerPolicy, resourceRequest.url(), m_referrer.referrer));
FetchRequest request(resourceRequest, FetchInitiatorTypeNames::css);
if (RuntimeEnabledFeatures::webFontsCacheAwareTimeoutAdaptationEnabled()) if (RuntimeEnabledFeatures::webFontsCacheAwareTimeoutAdaptationEnabled())
request.setCacheAwareLoadingEnabled(IsCacheAwareLoadingEnabled); request.setCacheAwareLoadingEnabled(IsCacheAwareLoadingEnabled);
request.setContentSecurityCheck(m_shouldCheckContentSecurityPolicy); request.setContentSecurityCheck(m_shouldCheckContentSecurityPolicy);
SecurityOrigin* securityOrigin = document->getSecurityOrigin(); SecurityOrigin* securityOrigin = document->getSecurityOrigin();
setCrossOriginAccessControl(request, securityOrigin); setCrossOriginAccessControl(request, securityOrigin);
request.mutableResourceRequest().setHTTPReferrer(
SecurityPolicy::generateReferrer(m_referrer.referrerPolicy,
request.url(), m_referrer.referrer));
FontResource* resource = FontResource::fetch(request, document->fetcher()); FontResource* resource = FontResource::fetch(request, document->fetcher());
if (!resource) if (!resource)
return nullptr; return nullptr;
......
...@@ -110,9 +110,9 @@ StyleImage* CSSImageSetValue::cacheImage( ...@@ -110,9 +110,9 @@ StyleImage* CSSImageSetValue::cacheImage(
// Page::pageScaleFactor(), LocalFrame::pageZoomFactor(), and any CSS // Page::pageScaleFactor(), LocalFrame::pageZoomFactor(), and any CSS
// transforms. https://bugs.webkit.org/show_bug.cgi?id=81698 // transforms. https://bugs.webkit.org/show_bug.cgi?id=81698
ImageWithScale image = bestImageForScaleFactor(deviceScaleFactor); ImageWithScale image = bestImageForScaleFactor(deviceScaleFactor);
FetchRequest request(ResourceRequest(document.completeURL(image.imageURL)), ResourceRequest resourceRequest(document.completeURL(image.imageURL));
FetchInitiatorTypeNames::css); resourceRequest.setHTTPReferrer(image.referrer);
request.mutableResourceRequest().setHTTPReferrer(image.referrer); FetchRequest request(resourceRequest, FetchInitiatorTypeNames::css);
if (crossOrigin != CrossOriginAttributeNotSet) if (crossOrigin != CrossOriginAttributeNotSet)
request.setCrossOriginAccessControl(document.getSecurityOrigin(), request.setCrossOriginAccessControl(document.getSecurityOrigin(),
......
...@@ -55,13 +55,12 @@ StyleImage* CSSImageValue::cacheImage(const Document& document, ...@@ -55,13 +55,12 @@ StyleImage* CSSImageValue::cacheImage(const Document& document,
if (!m_cachedImage) { if (!m_cachedImage) {
if (m_absoluteURL.isEmpty()) if (m_absoluteURL.isEmpty())
reResolveURL(document); reResolveURL(document);
FetchRequest request(ResourceRequest(m_absoluteURL), ResourceRequest resourceRequest(m_absoluteURL);
m_initiatorName.isEmpty() resourceRequest.setHTTPReferrer(SecurityPolicy::generateReferrer(
? FetchInitiatorTypeNames::css m_referrer.referrerPolicy, resourceRequest.url(), m_referrer.referrer));
: m_initiatorName); FetchRequest request(resourceRequest, m_initiatorName.isEmpty()
request.mutableResourceRequest().setHTTPReferrer( ? FetchInitiatorTypeNames::css
SecurityPolicy::generateReferrer(m_referrer.referrerPolicy, : m_initiatorName);
request.url(), m_referrer.referrer));
if (crossOrigin != CrossOriginAttributeNotSet) if (crossOrigin != CrossOriginAttributeNotSet)
request.setCrossOriginAccessControl(document.getSecurityOrigin(), request.setCrossOriginAccessControl(document.getSecurityOrigin(),
......
...@@ -523,9 +523,17 @@ bool ScriptLoader::fetchScript(const String& sourceUrl, ...@@ -523,9 +523,17 @@ bool ScriptLoader::fetchScript(const String& sourceUrl,
// 21. "If the element has a src content attribute, run these substeps:" // 21. "If the element has a src content attribute, run these substeps:"
if (!stripLeadingAndTrailingHTMLSpaces(sourceUrl).isEmpty()) { if (!stripLeadingAndTrailingHTMLSpaces(sourceUrl).isEmpty()) {
// 21.4. "Parse src relative to the element's node document." // 21.4. "Parse src relative to the element's node document."
FetchRequest request( ResourceRequest resourceRequest(elementDocument->completeURL(sourceUrl));
ResourceRequest(elementDocument->completeURL(sourceUrl)),
m_element->localName()); // [Intervention]
if (m_documentWriteIntervention ==
DocumentWriteIntervention::FetchDocWrittenScriptDeferIdle) {
resourceRequest.setHTTPHeaderField(
"Intervention",
"<https://www.chromestatus.com/feature/5718547946799104>");
}
FetchRequest request(resourceRequest, m_element->localName());
// 15. "Let CORS setting be the current state of the element's // 15. "Let CORS setting be the current state of the element's
// crossorigin content attribute." // crossorigin content attribute."
...@@ -570,14 +578,6 @@ bool ScriptLoader::fetchScript(const String& sourceUrl, ...@@ -570,14 +578,6 @@ bool ScriptLoader::fetchScript(const String& sourceUrl,
request.setIntegrityMetadata(metadataSet); request.setIntegrityMetadata(metadataSet);
} }
// [Intervention]
if (m_documentWriteIntervention ==
DocumentWriteIntervention::FetchDocWrittenScriptDeferIdle) {
request.mutableResourceRequest().setHTTPHeaderField(
"Intervention",
"<https://www.chromestatus.com/feature/5718547946799104>");
}
// 21.6. "Switch on the script's type:" // 21.6. "Switch on the script's type:"
// - "classic": // - "classic":
......
...@@ -141,10 +141,9 @@ void InspectorResourceContentLoader::start() { ...@@ -141,10 +141,9 @@ void InspectorResourceContentLoader::start() {
if (url.isEmpty() || urlsToFetch.contains(url)) if (url.isEmpty() || urlsToFetch.contains(url))
continue; continue;
urlsToFetch.insert(url); urlsToFetch.insert(url);
FetchRequest request(ResourceRequest(url), ResourceRequest resourceRequest(url);
FetchInitiatorTypeNames::internal); resourceRequest.setRequestContext(WebURLRequest::RequestContextInternal);
request.mutableResourceRequest().setRequestContext( FetchRequest request(resourceRequest, FetchInitiatorTypeNames::internal);
WebURLRequest::RequestContextInternal);
Resource* resource = Resource* resource =
CSSStyleSheetResource::fetch(request, document->fetcher()); CSSStyleSheetResource::fetch(request, document->fetcher());
if (!resource) if (!resource)
......
...@@ -354,13 +354,13 @@ static Resource* prefetchIfNeeded(Document& document, ...@@ -354,13 +354,13 @@ static Resource* prefetchIfNeeded(Document& document,
if (relAttribute.isLinkPrefetch() && href.isValid() && document.frame()) { if (relAttribute.isLinkPrefetch() && href.isValid() && document.frame()) {
UseCounter::count(document, UseCounter::LinkRelPrefetch); UseCounter::count(document, UseCounter::LinkRelPrefetch);
FetchRequest linkRequest(ResourceRequest(document.completeURL(href)), ResourceRequest resourceRequest(document.completeURL(href));
FetchInitiatorTypeNames::link);
if (referrerPolicy != ReferrerPolicyDefault) { if (referrerPolicy != ReferrerPolicyDefault) {
linkRequest.mutableResourceRequest().setHTTPReferrer( resourceRequest.setHTTPReferrer(SecurityPolicy::generateReferrer(
SecurityPolicy::generateReferrer(referrerPolicy, href, referrerPolicy, href, document.outgoingReferrer()));
document.outgoingReferrer()));
} }
FetchRequest linkRequest(resourceRequest, FetchInitiatorTypeNames::link);
if (crossOrigin != CrossOriginAttributeNotSet) { if (crossOrigin != CrossOriginAttributeNotSet) {
linkRequest.setCrossOriginAccessControl(document.getSecurityOrigin(), linkRequest.setCrossOriginAccessControl(document.getSecurityOrigin(),
crossOrigin); crossOrigin);
......
...@@ -267,9 +267,9 @@ class RequestSameResourceOnComplete ...@@ -267,9 +267,9 @@ class RequestSameResourceOnComplete
MockFetchContext* context = MockFetchContext* context =
MockFetchContext::create(MockFetchContext::kShouldLoadNewResource); MockFetchContext::create(MockFetchContext::kShouldLoadNewResource);
ResourceFetcher* fetcher2 = ResourceFetcher::create(context); ResourceFetcher* fetcher2 = ResourceFetcher::create(context);
FetchRequest fetchRequest2(m_resource->url(), FetchInitiatorInfo()); ResourceRequest resourceRequest2(m_resource->url());
fetchRequest2.mutableResourceRequest().setCachePolicy( resourceRequest2.setCachePolicy(WebCachePolicy::ValidatingCacheData);
WebCachePolicy::ValidatingCacheData); FetchRequest fetchRequest2(resourceRequest2, FetchInitiatorInfo());
Resource* resource2 = MockResource::fetch(fetchRequest2, fetcher2); Resource* resource2 = MockResource::fetch(fetchRequest2, fetcher2);
EXPECT_EQ(m_resource, resource2); EXPECT_EQ(m_resource, resource2);
m_notifyFinishedCalled = true; m_notifyFinishedCalled = true;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment