summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorViktor Engelmann <viktor.engelmann@qt.io>2017-02-21 11:24:19 +0100
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2017-02-22 07:51:51 +0000
commit19a45f7eb3525bcf923f03ae52d83228f17da16d (patch)
treec6e125457fbc03c59762c3869410da587e9b3f72
parent16d8518e58fcaf6495604ae2d9188cc59b3e661b (diff)
Abort findText when destroying QWebEnginePage
In the destructor of QWebEnginePage and QQuickWebEngineView, we now call adapter->stopFinding() to suppress callbacks that would cause segmentation faults if a findText request is still active at that point. Task-number: QTBUG-58563 Change-Id: I9d5d8407ee6c28cd76bf6ecf0b62808394e151cd Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Michal Klocek <michal.klocek@qt.io>
-rw-r--r--src/webengine/api/qquickwebengineview.cpp2
-rw-r--r--src/webenginewidgets/api/qwebenginepage.cpp2
2 files changed, 4 insertions, 0 deletions
diff --git a/src/webengine/api/qquickwebengineview.cpp b/src/webengine/api/qquickwebengineview.cpp
index 4cef45f8c..c1f1c9d0b 100644
--- a/src/webengine/api/qquickwebengineview.cpp
+++ b/src/webengine/api/qquickwebengineview.cpp
@@ -879,6 +879,8 @@ QQuickWebEngineView::QQuickWebEngineView(QQuickItem *parent)
QQuickWebEngineView::~QQuickWebEngineView()
{
Q_D(QQuickWebEngineView);
+ if (d->adapter)
+ d->adapter->stopFinding();
if (d->faviconProvider)
d->faviconProvider->detach(this);
}
diff --git a/src/webenginewidgets/api/qwebenginepage.cpp b/src/webenginewidgets/api/qwebenginepage.cpp
index 9150525b5..69697d626 100644
--- a/src/webenginewidgets/api/qwebenginepage.cpp
+++ b/src/webenginewidgets/api/qwebenginepage.cpp
@@ -802,6 +802,8 @@ QWebEnginePage::QWebEnginePage(QWebEngineProfile *profile, QObject* parent)
QWebEnginePage::~QWebEnginePage()
{
Q_D(QWebEnginePage);
+ if (d->adapter)
+ d->adapter->stopFinding();
QWebEngineViewPrivate::bind(d->view, 0);
}