Index: content/common/navigation_params.cc |
diff --git a/content/common/navigation_params.cc b/content/common/navigation_params.cc |
index b36b744ba17e28b3a3df92784dfe666e5a69f82d..de0838d8c89efba0c8465854fce9e600c2a07673 100644 |
--- a/content/common/navigation_params.cc |
+++ b/content/common/navigation_params.cc |
@@ -12,6 +12,7 @@ |
#include "content/public/common/url_constants.h" |
#include "url/gurl.h" |
#include "url/url_constants.h" |
+#include "url/url_util.h" |
namespace content { |
@@ -19,11 +20,21 @@ namespace content { |
bool ShouldMakeNetworkRequestForURL(const GURL& url) { |
CHECK(IsBrowserSideNavigationEnabled()); |
- // Javascript URLs, about:blank, srcdoc should not send a request |
- // to the network stack. |
- return !url.IsAboutBlank() && !url.SchemeIs(url::kJavaScriptScheme) && |
- !url.is_empty() && !url.SchemeIs(url::kContentIDScheme) && |
- url != content::kAboutSrcDocURL; |
+ // Javascript URLs, srcdoc, schemes that don't load data should not send a |
+ // request to the network stack. |
+ bool rv = |
+ !url.SchemeIs(url::kJavaScriptScheme) && |
+ !url.is_empty() && !url.SchemeIs(url::kContentIDScheme) && |
+ url != content::kAboutSrcDocURL; |
+ if (rv) { |
+ for (const auto& scheme : url::GetEmptyDocumentSchemes()) { |
+ if (url.SchemeIs(scheme)) { |
+ rv = false; |
+ break; |
dcheng
2017/03/23 21:07:15
Nit: maybe slightly shorter to just return false d
jam
2017/03/23 21:43:21
rewrote this to make it simpler
|
+ } |
+ } |
+ } |
+ return rv; |
} |
SourceLocation::SourceLocation() : line_number(0), column_number(0) {} |