| Index: third_party/WebKit/Source/platform/weborigin/SchemeRegistry.cpp
|
| diff --git a/third_party/WebKit/Source/platform/weborigin/SchemeRegistry.cpp b/third_party/WebKit/Source/platform/weborigin/SchemeRegistry.cpp
|
| index 767e2b160feab7312226741f961e5347fde608c0..8e251f431c77fb3890fdfc1cd5f9bc852028f4d3 100644
|
| --- a/third_party/WebKit/Source/platform/weborigin/SchemeRegistry.cpp
|
| +++ b/third_party/WebKit/Source/platform/weborigin/SchemeRegistry.cpp
|
| @@ -26,6 +26,7 @@
|
|
|
| #include "platform/weborigin/SchemeRegistry.h"
|
|
|
| +#include "url/url_util.h"
|
| #include "wtf/ThreadSpecific.h"
|
| #include "wtf/Threading.h"
|
| #include "wtf/ThreadingPrimitives.h"
|
| @@ -38,17 +39,22 @@ namespace {
|
| class URLSchemesRegistry final {
|
| public:
|
| URLSchemesRegistry()
|
| - : localSchemes({"file"}),
|
| - secureSchemes({"https", "about", "data", "wss"}),
|
| - schemesWithUniqueOrigins({"about", "javascript", "data"}),
|
| - emptyDocumentSchemes({"about"}),
|
| - CORSEnabledSchemes({"http", "https", "data"}),
|
| + : emptyDocumentSchemes({"about"}),
|
| // For ServiceWorker schemes: HTTP is required because http://localhost
|
| // is considered secure. Additional checks are performed to ensure that
|
| // other http pages are filtered out.
|
| serviceWorkerSchemes({"http", "https"}),
|
| fetchAPISchemes({"http", "https"}),
|
| - allowedInReferrerSchemes({"http", "https"}) {}
|
| + allowedInReferrerSchemes({"http", "https"}) {
|
| + for (auto& scheme : url::GetLocalSchemes())
|
| + localSchemes.add(scheme.c_str());
|
| + for (auto& scheme : url::GetSecureSchemes())
|
| + secureSchemes.add(scheme.c_str());
|
| + for (auto& scheme : url::GetNoAccessSchemes())
|
| + schemesWithUniqueOrigins.add(scheme.c_str());
|
| + for (auto& scheme : url::GetCORSEnabledSchemes())
|
| + CORSEnabledSchemes.add(scheme.c_str());
|
| + }
|
| ~URLSchemesRegistry() = default;
|
|
|
| URLSchemesSet localSchemes;
|
|
|