| Index: Source/core/frame/csp/ContentSecurityPolicy.cpp
|
| diff --git a/Source/core/frame/csp/ContentSecurityPolicy.cpp b/Source/core/frame/csp/ContentSecurityPolicy.cpp
|
| index a80f8ad21d7e8edfa3e22cae750b74f792e26854..275d4b577799dd03db25b631b4afd53ac45c7060 100644
|
| --- a/Source/core/frame/csp/ContentSecurityPolicy.cpp
|
| +++ b/Source/core/frame/csp/ContentSecurityPolicy.cpp
|
| @@ -155,7 +155,8 @@ void ContentSecurityPolicy::applyPolicySideEffectsToExecutionContext()
|
| {
|
| ASSERT(m_executionContext);
|
| // Ensure that 'self' processes correctly.
|
| - m_selfSource = adoptPtr(new CSPSource(this, securityOrigin()->protocol(), securityOrigin()->host(), securityOrigin()->port(), String(), CSPSource::NoWildcard, CSPSource::NoWildcard));
|
| + m_selfProtocol = securityOrigin()->protocol();
|
| + m_selfSource = adoptPtr(new CSPSource(this, m_selfProtocol, securityOrigin()->host(), securityOrigin()->port(), String(), CSPSource::NoWildcard, CSPSource::NoWildcard));
|
|
|
| // If we're in a Document, set the referrer policy and sandbox flags, then dump all the
|
| // parsing error messages, then poke at histograms.
|
| @@ -266,7 +267,8 @@ void ContentSecurityPolicy::setOverrideURLForSelf(const KURL& url)
|
| // an execution context (for 'frame-ancestor' resolution, for example). This CSPSource will
|
| // be overwritten when we bind this object to an execution context.
|
| RefPtr<SecurityOrigin> origin = SecurityOrigin::create(url);
|
| - m_selfSource = adoptPtr(new CSPSource(this, origin->protocol(), origin->host(), origin->port(), String(), CSPSource::NoWildcard, CSPSource::NoWildcard));
|
| + m_selfProtocol = origin->protocol();
|
| + m_selfSource = adoptPtr(new CSPSource(this, m_selfProtocol, origin->host(), origin->port(), String(), CSPSource::NoWildcard, CSPSource::NoWildcard));
|
| }
|
|
|
| const String& ContentSecurityPolicy::deprecatedHeader() const
|
| @@ -852,10 +854,9 @@ bool ContentSecurityPolicy::urlMatchesSelf(const KURL& url) const
|
|
|
| bool ContentSecurityPolicy::protocolMatchesSelf(const KURL& url) const
|
| {
|
| - String protectedResourceScheme(securityOrigin()->protocol());
|
| - if (equalIgnoringCase("http", protectedResourceScheme))
|
| + if (equalIgnoringCase("http", m_selfProtocol))
|
| return url.protocolIsInHTTPFamily();
|
| - return equalIgnoringCase(url.protocol(), protectedResourceScheme);
|
| + return equalIgnoringCase(url.protocol(), m_selfProtocol);
|
| }
|
|
|
| bool ContentSecurityPolicy::shouldBypassMainWorld(ExecutionContext* context)
|
|
|