diff options
author | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2017-05-05 17:28:19 +0200 |
---|---|---|
committer | Jani Heikkinen <jani.heikkinen@qt.io> | 2017-05-08 18:07:25 +0000 |
commit | 757d5b1cea0d3d70b97b31f331df9ada82f45d2d (patch) | |
tree | 731388cd64fd0ec8e24446ed0ff3cb8fe3d7fdac /src/webenginewidgets | |
parent | b5c5f12588a20e88b472d32b0532f6129930f02c (diff) |
Fix crash on exit with url-request interceptors
If the interceptor is the child of the profile, they will be deleted
with the API profile which is before the underlying browser-context,
they should therefore be unset from the browser context first.
Task-number: QTBUG-60236
Change-Id: I2954e8106863b8b421ef166f6bf8fa79240c95ee
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Diffstat (limited to 'src/webenginewidgets')
-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 abed066d3..cd4fc8b02 100644 --- a/src/webenginewidgets/api/qwebengineprofile.cpp +++ b/src/webenginewidgets/api/qwebengineprofile.cpp @@ -156,6 +156,10 @@ QWebEngineProfilePrivate::QWebEngineProfilePrivate(QSharedPointer<BrowserContext QWebEngineProfilePrivate::~QWebEngineProfilePrivate() { + // In the case the user sets this profile as the parent of the interceptor + // it can be deleted before the browser-context still referencing it is. + m_browserContextRef->setRequestInterceptor(nullptr); + delete m_settings; m_settings = 0; m_browserContextRef->removeClient(this); |