diff options
author | Jüri Valdmann <juri.valdmann@qt.io> | 2019-05-14 13:21:39 +0200 |
---|---|---|
committer | Jüri Valdmann <juri.valdmann@qt.io> | 2019-07-18 08:36:59 +0000 |
commit | 8c03dab5f7a2c4ed511d33edb52fc64f1f9d5c26 (patch) | |
tree | d4c042674458eddb7da4e57a67acfe4296ad37a0 | |
parent | cf4e820a3320ddb509dba7a40e58c5c2a76ab643 (diff) | |
download | qtwebengine-chromium-8c03dab5f7a2c4ed511d33edb52fc64f1f9d5c26.tar.gz |
FIXUP: Extend url library for WebEngine custom schemes
Add CustomScheme::CorsEnabled flag.
Task-number: QTBUG-75651
Change-Id: Id87f2d59b446541c310229d7d99d03972a375695
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
-rw-r--r-- | chromium/content/common/url_schemes.cc | 2 | ||||
-rw-r--r-- | chromium/url/url_util_qt.cc | 3 | ||||
-rw-r--r-- | chromium/url/url_util_qt.h | 1 |
3 files changed, 6 insertions, 0 deletions
diff --git a/chromium/content/common/url_schemes.cc b/chromium/content/common/url_schemes.cc index 251ff504fdf..24e6d6de255 100644 --- a/chromium/content/common/url_schemes.cc +++ b/chromium/content/common/url_schemes.cc @@ -115,6 +115,8 @@ void RegisterContentSchemes(bool lock_schemes) { url::AddNoAccessScheme(cs.name.c_str()); if (cs.flags & url::CustomScheme::ContentSecurityPolicyIgnored) url::AddCSPBypassingScheme(cs.name.c_str()); + if (cs.flags & url::CustomScheme::CorsEnabled) + url::AddCorsEnabledScheme(cs.name.c_str()); } // Prevent future modification of the scheme lists. This is to prevent diff --git a/chromium/url/url_util_qt.cc b/chromium/url/url_util_qt.cc index 8588f1b549e..9b1b91ca232 100644 --- a/chromium/url/url_util_qt.cc +++ b/chromium/url/url_util_qt.cc @@ -50,6 +50,8 @@ std::string ToString(const CustomScheme& cs) serialized += 'V'; if (cs.flags & CustomScheme::ContentSecurityPolicyIgnored) serialized += 'C'; + if (cs.flags & CustomScheme::CorsEnabled) + serialized += 'F'; return serialized; } @@ -92,6 +94,7 @@ private: case 'W': cs.flags |= CustomScheme::ServiceWorkersAllowed; break; case 'V': cs.flags |= CustomScheme::ViewSourceAllowed; break; case 'C': cs.flags |= CustomScheme::ContentSecurityPolicyIgnored; break; + case 'F': cs.flags |= CustomScheme::CorsEnabled; break; case ';': Flush(); state = NAME; break; default: CHECK(false) << "Unexpected character '" << ch << "'."; } diff --git a/chromium/url/url_util_qt.h b/chromium/url/url_util_qt.h index ead8dd4940c..199ca62c4fd 100644 --- a/chromium/url/url_util_qt.h +++ b/chromium/url/url_util_qt.h @@ -29,6 +29,7 @@ struct COMPONENT_EXPORT(URL) CustomScheme { ServiceWorkersAllowed = 0x10, ViewSourceAllowed = 0x20, ContentSecurityPolicyIgnored = 0x40, + CorsEnabled = 0x80, }; std::string name; |