From 19a45f7eb3525bcf923f03ae52d83228f17da16d Mon Sep 17 00:00:00 2001 From: Viktor Engelmann <viktor.engelmann@qt.io> Date: Tue, 21 Feb 2017 11:24:19 +0100 Subject: [PATCH] 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> --- src/webengine/api/qquickwebengineview.cpp | 2 ++ src/webenginewidgets/api/qwebenginepage.cpp | 2 ++ 2 files changed, 4 insertions(+) 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); } -- GitLab