summaryrefslogtreecommitdiff
path: root/src/webengine/api/qquickwebengineview.cpp
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@qt.io>2018-11-02 10:07:14 +0100
committerLiang Qi <liang.qi@qt.io>2018-11-02 10:07:14 +0100
commit34b714122051eae86ac49fd95c7015fb081f79eb (patch)
tree7ba1917986e00da1df4821efe6e62f4e9bffb156 /src/webengine/api/qquickwebengineview.cpp
parent6e3aaa4b22892fd1fecdb9cf6c6e96296c13844a (diff)
parent8eda96bc8ae68387807e079cd557c98c4a452c4f (diff)
downloadqtwebengine-34b714122051eae86ac49fd95c7015fb081f79eb.tar.gz
Merge remote-tracking branch 'origin/5.12.0' into 5.12
Change-Id: I4dfca686e8a03e592879c456208baf3ab0025f88
Diffstat (limited to 'src/webengine/api/qquickwebengineview.cpp')
-rw-r--r--src/webengine/api/qquickwebengineview.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/webengine/api/qquickwebengineview.cpp b/src/webengine/api/qquickwebengineview.cpp
index 39901e693..3bc0be196 100644
--- a/src/webengine/api/qquickwebengineview.cpp
+++ b/src/webengine/api/qquickwebengineview.cpp
@@ -166,6 +166,9 @@ QQuickWebEngineViewPrivate::~QQuickWebEngineViewPrivate()
adapter->stopFinding();
if (faviconProvider)
faviconProvider->detach(q_ptr);
+ // q_ptr->d_ptr might be null due to destroy()
+ if (q_ptr->d_ptr)
+ bindViewAndWidget(q_ptr, nullptr);
}
void QQuickWebEngineViewPrivate::initializeProfile()
@@ -188,10 +191,11 @@ bool QQuickWebEngineViewPrivate::profileInitialized() const
void QQuickWebEngineViewPrivate::destroy()
{
- // the profile for this web contens is about to be
- // garbage collected, delete WebContent first and
- // let the QQuickWebEngineView be collected later by gc.
- delete q_ptr->d_ptr.take();
+ // The profile for this web contents is about to be
+ // garbage collected, delete WebContents first and
+ // let the QQuickWebEngineView be collected later by gc.
+ bindViewAndWidget(q_ptr, nullptr);
+ delete q_ptr->d_ptr.take();
}
UIDelegatesManager *QQuickWebEngineViewPrivate::ui()