summaryrefslogtreecommitdiffstats
path: root/src/core/web_engine_context.cpp
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2019-02-15 15:32:08 +0100
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2019-02-15 16:03:41 +0100
commitc69f510ed6e85c64f02ee0ee030336cd9aa66793 (patch)
treec2555af8f13b5336047e17548092bf1590f81576 /src/core/web_engine_context.cpp
parentaf30e7857e205990057735a07fe0974af9db8733 (diff)
parent74d2d301b11f2edfde69f0515e2fd74882ab6dab (diff)
Merge remote-tracking branch 'origin/5.12' into 5.13
Diffstat (limited to 'src/core/web_engine_context.cpp')
-rw-r--r--src/core/web_engine_context.cpp15
1 files changed, 10 insertions, 5 deletions
diff --git a/src/core/web_engine_context.cpp b/src/core/web_engine_context.cpp
index 63a1637fe..67639dc4f 100644
--- a/src/core/web_engine_context.cpp
+++ b/src/core/web_engine_context.cpp
@@ -368,11 +368,16 @@ WebEngineContext::WebEngineContext()
qputenv("force_s3tc_enable", "true");
#endif
- QWebEngineUrlScheme qrcScheme(QByteArrayLiteral("qrc"));
- qrcScheme.setFlags(QWebEngineUrlScheme::SecureScheme
- | QWebEngineUrlScheme::LocalAccessAllowed
- | QWebEngineUrlScheme::ViewSourceAllowed);
- QWebEngineUrlScheme::registerScheme(qrcScheme);
+ if (QWebEngineUrlScheme::schemeByName(QByteArrayLiteral("qrc")) == QWebEngineUrlScheme()) {
+ // User might have registered "qrc" already with different options.
+ QWebEngineUrlScheme qrcScheme(QByteArrayLiteral("qrc"));
+ qrcScheme.setFlags(QWebEngineUrlScheme::SecureScheme
+ | QWebEngineUrlScheme::LocalAccessAllowed
+ | QWebEngineUrlScheme::ViewSourceAllowed);
+ QWebEngineUrlScheme::registerScheme(qrcScheme);
+ }
+
+ QWebEngineUrlScheme::lockSchemes();
// Allow us to inject javascript like any webview toolkit.
content::RenderFrameHost::AllowInjectingJavaScriptForAndroidWebView();