From 335414d721c2c8748a48b074b2616503bdeeacf5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=BCri=20Valdmann?= Date: Wed, 31 Oct 2018 16:32:59 +0100 Subject: Fix quicknanobrowser crash on exit Fixes: QTBUG-71513 Change-Id: If3dfa048cfce57a1f10fa7bde3e7892e00fc8fa9 Reviewed-by: Michal Klocek --- src/webengine/api/qquickwebengineview.cpp | 12 ++++++++---- 1 file 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() -- cgit v1.2.3