diff options
author | Allan Sandfeld Jensen <allan.jensen@theqtcompany.com> | 2015-05-05 16:34:14 +0200 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@theqtcompany.com> | 2015-05-06 17:30:50 +0000 |
commit | 8596813a10b66b539746bb890bd4304e5f65b348 (patch) | |
tree | e2a347c64e7bd005af1ac3036c2d8b40184ebeea /src/webenginewidgets/api/qwebengineprofile.cpp | |
parent | eed2622ebc3298ec533d298fc7798a3690d2440c (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/api/qwebengineprofile.cpp')
-rw-r--r-- | src/webenginewidgets/api/qwebengineprofile.cpp | 4 |
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(); |