| Index: third_party/WebKit/Source/core/html/parser/HTMLPreloadScanner.cpp
|
| diff --git a/third_party/WebKit/Source/core/html/parser/HTMLPreloadScanner.cpp b/third_party/WebKit/Source/core/html/parser/HTMLPreloadScanner.cpp
|
| index 7ded95e1400779818deb81fb441b6a3392c05e8a..4ac883c41fd3ee1eeee02a38d90ea82b66b15b64 100644
|
| --- a/third_party/WebKit/Source/core/html/parser/HTMLPreloadScanner.cpp
|
| +++ b/third_party/WebKit/Source/core/html/parser/HTMLPreloadScanner.cpp
|
| @@ -36,6 +36,7 @@
|
| #include "core/css/parser/SizesAttributeParser.h"
|
| #include "core/dom/Document.h"
|
| #include "core/frame/Settings.h"
|
| +#include "core/html/CrossOriginAttribute.h"
|
| #include "core/html/HTMLImageElement.h"
|
| #include "core/html/HTMLMetaElement.h"
|
| #include "core/html/LinkRelAttribute.h"
|
| @@ -119,9 +120,8 @@ public:
|
| , m_inputIsImage(false)
|
| , m_sourceSize(0)
|
| , m_sourceSizeSet(false)
|
| - , m_isCORSEnabled(false)
|
| , m_defer(FetchRequest::NoDefer)
|
| - , m_allowCredentials(DoNotAllowStoredCredentials)
|
| + , m_crossOrigin(CrossOriginAttributeNotSet)
|
| , m_mediaValues(mediaValues)
|
| , m_referrerPolicySet(false)
|
| , m_referrerPolicy(ReferrerPolicyDefault)
|
| @@ -200,8 +200,7 @@ public:
|
| // The element's 'referrerpolicy' attribute (if present) takes precedence over the document's referrer policy.
|
| ReferrerPolicy referrerPolicy = (m_referrerPolicy != ReferrerPolicyDefault && RuntimeEnabledFeatures::referrerPolicyAttributeEnabled()) ? m_referrerPolicy : documentReferrerPolicy;
|
| OwnPtr<PreloadRequest> request = PreloadRequest::create(initiatorFor(m_tagImpl), position, m_urlToLoad, predictedBaseURL, resourceType(), referrerPolicy, resourceWidth, clientHintsPreferences, requestType);
|
| - if (isCORSEnabled())
|
| - request->setCrossOriginEnabled(allowStoredCredentials());
|
| + request->setCrossOrigin(m_crossOrigin);
|
| request->setCharset(charset());
|
| request->setDefer(m_defer);
|
| return request.release();
|
| @@ -215,7 +214,7 @@ private:
|
| if (match(attributeName, srcAttr))
|
| setUrlToLoad(attributeValue, DisallowURLReplacement);
|
| else if (match(attributeName, crossoriginAttr))
|
| - setCrossOriginAllowed(attributeValue);
|
| + setCrossOrigin(attributeValue);
|
| else if (match(attributeName, asyncAttr))
|
| setDefer(FetchRequest::LazyLoad);
|
| else if (match(attributeName, deferAttr))
|
| @@ -229,7 +228,7 @@ private:
|
| m_imgSrcUrl = attributeValue;
|
| setUrlToLoad(bestFitSourceForImageAttributes(m_mediaValues->devicePixelRatio(), m_sourceSize, attributeValue, m_srcsetImageCandidate), AllowURLReplacement);
|
| } else if (match(attributeName, crossoriginAttr)) {
|
| - setCrossOriginAllowed(attributeValue);
|
| + setCrossOrigin(attributeValue);
|
| } else if (match(attributeName, srcsetAttr) && m_srcsetImageCandidate.isEmpty()) {
|
| m_srcsetAttributeValue = attributeValue;
|
| m_srcsetImageCandidate = bestFitSourceForSrcsetAttribute(m_mediaValues->devicePixelRatio(), m_sourceSize, attributeValue);
|
| @@ -261,7 +260,7 @@ private:
|
| } else if (match(attributeName, mediaAttr)) {
|
| m_matchedMediaAttribute = mediaAttributeMatches(*m_mediaValues, attributeValue);
|
| } else if (match(attributeName, crossoriginAttr)) {
|
| - setCrossOriginAllowed(attributeValue);
|
| + setCrossOrigin(attributeValue);
|
| }
|
| }
|
|
|
| @@ -371,24 +370,9 @@ private:
|
| return false;
|
| return true;
|
| }
|
| -
|
| - bool isCORSEnabled() const
|
| - {
|
| - return m_isCORSEnabled;
|
| - }
|
| -
|
| - StoredCredentials allowStoredCredentials() const
|
| - {
|
| - return m_allowCredentials;
|
| - }
|
| -
|
| - void setCrossOriginAllowed(const String& corsSetting)
|
| + void setCrossOrigin(const String& corsSetting)
|
| {
|
| - m_isCORSEnabled = true;
|
| - if (!corsSetting.isNull() && equalIgnoringCase(stripLeadingAndTrailingHTMLSpaces(corsSetting), "use-credentials"))
|
| - m_allowCredentials = AllowStoredCredentials;
|
| - else
|
| - m_allowCredentials = DoNotAllowStoredCredentials;
|
| + m_crossOrigin = crossOriginAttributeValue(corsSetting);
|
| }
|
|
|
| void setDefer(FetchRequest::DeferOption defer)
|
| @@ -414,9 +398,8 @@ private:
|
| String m_srcsetAttributeValue;
|
| float m_sourceSize;
|
| bool m_sourceSizeSet;
|
| - bool m_isCORSEnabled;
|
| FetchRequest::DeferOption m_defer;
|
| - StoredCredentials m_allowCredentials;
|
| + CrossOriginAttributeValue m_crossOrigin;
|
| RefPtrWillBeMember<MediaValues> m_mediaValues;
|
| bool m_referrerPolicySet;
|
| ReferrerPolicy m_referrerPolicy;
|
|
|