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

Unified Diff: Source/core/loader/FrameLoader.cpp

Issue 559503002: CSP: Move policy parsing out of Document. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Reworking. Created 6 years, 3 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
« no previous file with comments | « Source/core/frame/csp/ContentSecurityPolicy.cpp ('k') | Source/core/workers/WorkerGlobalScope.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/core/loader/FrameLoader.cpp
diff --git a/Source/core/loader/FrameLoader.cpp b/Source/core/loader/FrameLoader.cpp
index f079d040b25872e1cbbc989bfa23f5bc7c052b2e..05796949ff95a2d8ab539c521fa8b89b6a4a001f 100644
--- a/Source/core/loader/FrameLoader.cpp
+++ b/Source/core/loader/FrameLoader.cpp
@@ -380,7 +380,11 @@ void FrameLoader::didBeginDocument(bool dispatch)
if (dispatch)
dispatchDidClearDocumentOfWindowObject();
- m_frame->document()->initContentSecurityPolicy(m_documentLoader ? ContentSecurityPolicyResponseHeaders(m_documentLoader->response()) : ContentSecurityPolicyResponseHeaders());
+ // FIXME: Move this to DocumentLoader::responseReceived, next to the X-Frame-Options checks.
+ RefPtr<ContentSecurityPolicy> csp = ContentSecurityPolicy::create();
+ if (m_documentLoader)
+ csp->didReceiveHeaders(ContentSecurityPolicyResponseHeaders(m_documentLoader->response()));
+ m_frame->document()->initContentSecurityPolicy(csp);
if (!m_frame->document()->contentSecurityPolicy()->allowAncestors(m_frame)) {
didFailContentSecurityPolicyCheck(this);
« no previous file with comments | « Source/core/frame/csp/ContentSecurityPolicy.cpp ('k') | Source/core/workers/WorkerGlobalScope.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698