Index: content/browser/child_process_security_policy_impl.cc |
diff --git a/content/browser/child_process_security_policy_impl.cc b/content/browser/child_process_security_policy_impl.cc |
index f1aa1c74d71df72530020a7be37b54ab32fee7f7..a0ee91ac9440d5ff174fe2c1f69f04768faf8304 100644 |
--- a/content/browser/child_process_security_policy_impl.cc |
+++ b/content/browser/child_process_security_policy_impl.cc |
@@ -626,8 +626,8 @@ bool ChildProcessSecurityPolicyImpl::CanRequestURL( |
return false; // Can't request invalid URLs. |
if (IsPseudoScheme(url.scheme())) { |
- // Every child process can request <about:blank>. |
- if (base::LowerCaseEqualsASCII(url.spec(), url::kAboutBlankURL)) |
+ // Every child process can request <about:blank> and <about:srcdoc> |
+ if (url == url::kAboutBlankURL || url == content::kAboutSrcDocURL) |
return true; |
// URLs like <about:version>, <about:crash>, <view-source:...> shouldn't be |
// requestable by any child process. Also, this case covers |
@@ -666,7 +666,7 @@ bool ChildProcessSecurityPolicyImpl::CanCommitURL(int child_id, |
// Of all the pseudo schemes, only about:blank is allowed to commit. |
if (IsPseudoScheme(url.scheme())) |
- return base::LowerCaseEqualsASCII(url.spec(), url::kAboutBlankURL); |
+ return url == url::kAboutBlankURL; |
// Blob and filesystem URLs require special treatment; validate the inner |
// origin they embed. |