diff --git a/src/webengine/api/qquickwebenginescript.cpp b/src/webengine/api/qquickwebenginescript.cpp index 71dad70..1f8a1d3 100644 --- a/src/webengine/api/qquickwebenginescript.cpp +++ b/src/webengine/api/qquickwebenginescript.cpp @@ -233,7 +233,7 @@ void QQuickWebEngineScript::timerEvent(QTimerEvent *e) if (!d->m_controllerHost) return; d->m_basicTimer.stop(); - d->m_controllerHost->addUserScript(d->coreScript, d->m_adapter); + d->m_controllerHost->addUserScript(d->coreScript, d->m_adapter.data()); } void QQuickWebEngineScriptPrivate::bind(QtWebEngineCore::UserScriptControllerHost *scriptController, QtWebEngineCore::WebContentsAdapter *adapter) @@ -254,7 +254,7 @@ void QQuickWebEngineScriptPrivate::aboutToUpdateUnderlyingScript() { Q_Q(QQuickWebEngineScript); if (m_controllerHost) - m_controllerHost->removeUserScript(coreScript, m_adapter); + m_controllerHost->removeUserScript(coreScript, m_adapter.data()); // Defer updates to the next event loop m_basicTimer.start(0, q); } diff --git a/src/webengine/api/qquickwebenginescript_p_p.h b/src/webengine/api/qquickwebenginescript_p_p.h index 133e2dc..2cb4fab 100644 --- a/src/webengine/api/qquickwebenginescript_p_p.h +++ b/src/webengine/api/qquickwebenginescript_p_p.h @@ -50,6 +50,7 @@ #include "qquickwebenginescript_p.h" +#include #include #include "user_script.h" #include "web_contents_adapter.h" @@ -71,7 +72,7 @@ public: QtWebEngineCore::UserScript coreScript; QBasicTimer m_basicTimer; QtWebEngineCore::UserScriptControllerHost *m_controllerHost; - QtWebEngineCore::WebContentsAdapter *m_adapter; + QExplicitlySharedDataPointer m_adapter; QUrl m_sourceUrl; private: