diff options
author | Simon Hausmann <simon.hausmann@qt.io> | 2017-04-11 13:36:42 +0200 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@qt.io> | 2017-04-11 13:37:52 +0200 |
commit | 4c6032ea69a607f1126e9746f9b16b4bd01b852f (patch) | |
tree | 2084987690561a4238f968465b8c21d85881d9c9 /src/qml/jsruntime/qv4qobjectwrapper_p.h | |
parent | 37da30b83021869b2fd069ea49d72d89b16c2046 (diff) | |
parent | 3480c2e0565eeb938fb6fb8ba1dad640fb0a0d12 (diff) |
Merge remote-tracking branch 'origin/5.9' into dev
Change-Id: I95914046889022e0ef9bdc17338dc5895c5223fe
Diffstat (limited to 'src/qml/jsruntime/qv4qobjectwrapper_p.h')
-rw-r--r-- | src/qml/jsruntime/qv4qobjectwrapper_p.h | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/src/qml/jsruntime/qv4qobjectwrapper_p.h b/src/qml/jsruntime/qv4qobjectwrapper_p.h index dbb4a153e4..55700d17c1 100644 --- a/src/qml/jsruntime/qv4qobjectwrapper_p.h +++ b/src/qml/jsruntime/qv4qobjectwrapper_p.h @@ -209,13 +209,10 @@ inline ReturnedValue QObjectWrapper::wrap(ExecutionEngine *engine, QObject *obje if (Q_UNLIKELY(QQmlData::wasDeleted(object))) return QV4::Encode::null(); - QObjectPrivate *priv = QObjectPrivate::get(const_cast<QObject *>(object)); - if (Q_LIKELY(priv->declarativeData)) { - auto ddata = static_cast<QQmlData *>(priv->declarativeData); - if (Q_LIKELY(ddata->jsEngineId == engine->m_engineId && !ddata->jsWrapper.isUndefined())) { - // We own the JS object - return ddata->jsWrapper.value(); - } + auto ddata = QQmlData::get(object); + if (Q_LIKELY(ddata && ddata->jsEngineId == engine->m_engineId && !ddata->jsWrapper.isUndefined())) { + // We own the JS object + return ddata->jsWrapper.value(); } return wrap_slowPath(engine, object); |