summaryrefslogtreecommitdiffstats
path: root/src/webenginewidgets
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@theqtcompany.com>2015-05-05 16:34:14 +0200
committerAllan Sandfeld Jensen <allan.jensen@theqtcompany.com>2015-05-06 17:30:50 +0000
commit8596813a10b66b539746bb890bd4304e5f65b348 (patch)
treee2a347c64e7bd005af1ac3036c2d8b40184ebeea /src/webenginewidgets
parenteed2622ebc3298ec533d298fc7798a3690d2440c (diff)
Improve thread safety and behavior of custom URL requests
Adds thread protection between the UI and IO threads access to the QIODevice, and changes it to a QPointer, so we can tell if the user deletes it. Change-Id: I3e7b3f682d4c5a145d75cd5822affcfc9012cff7 Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
Diffstat (limited to 'src/webenginewidgets')
-rw-r--r--src/webenginewidgets/api/qwebengineprofile.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/webenginewidgets/api/qwebengineprofile.cpp b/src/webenginewidgets/api/qwebengineprofile.cpp
index e63519d2c..adccfca2a 100644
--- a/src/webenginewidgets/api/qwebengineprofile.cpp
+++ b/src/webenginewidgets/api/qwebengineprofile.cpp
@@ -494,6 +494,10 @@ void QWebEngineProfilePrivate::installUrlSchemeHandler(QWebEngineUrlSchemeHandle
return;
}
+ if (m_urlSchemeHandlers.contains(scheme)) {
+ qWarning() << "URL scheme handler already installed for the scheme: " << scheme;
+ return;
+ }
m_urlSchemeHandlers.insert(scheme, handler);
browserContext()->customUrlSchemeHandlers().append(handler->d_func());
browserContext()->updateCustomUrlSchemeHandlers();