diff options
author | Ulf Hermann <ulf.hermann@qt.io> | 2022-05-20 15:26:47 +0200 |
---|---|---|
committer | Ulf Hermann <ulf.hermann@qt.io> | 2022-05-24 15:44:16 +0200 |
commit | dc77f7c71c532a1c51f7618765559937fd5d2eb3 (patch) | |
tree | f1d633a5033b0a4cc30c52aac9b3b0a5be05385d /src/qml/qml/qqmljavascriptexpression.cpp | |
parent | 3d8702378ba7f8252862aac8d71995d61f4f2b69 (diff) |
Replace synthetic AOT functions with property-to-property bindings
Those should be more efficient and make your feet attract fewer
projectiles.
Fixes: QTBUG-103588
Change-Id: I8b25b9edb1edf5e112dbcba5bba898646d29ae2b
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Diffstat (limited to 'src/qml/qml/qqmljavascriptexpression.cpp')
-rw-r--r-- | src/qml/qml/qqmljavascriptexpression.cpp | 9 |
1 files changed, 0 insertions, 9 deletions
diff --git a/src/qml/qml/qqmljavascriptexpression.cpp b/src/qml/qml/qqmljavascriptexpression.cpp index 1ef60f5350..9ebaa0bba5 100644 --- a/src/qml/qml/qqmljavascriptexpression.cpp +++ b/src/qml/qml/qqmljavascriptexpression.cpp @@ -123,9 +123,6 @@ QQmlJavaScriptExpression::~QQmlJavaScriptExpression() clearError(); if (m_scopeObject.isT2()) // notify DeleteWatcher of our deletion. m_scopeObject.asT2()->_s = nullptr; - - if (m_v4Function.tag() == OwnsSyntheticAotFunction) - delete static_cast<QV4::SyntheticAotFunction *>(m_v4Function.data()); } QString QQmlJavaScriptExpression::expressionIdentifier() const @@ -539,12 +536,6 @@ void QQmlJavaScriptExpression::setupFunction(QV4::ExecutionContext *qmlContext, return; m_qmlScope.set(qmlContext->engine(), *qmlContext); m_v4Function = f; - - // Synthetic AOT functions are owned by the QQmlJavaScriptExpressions they are assigned to. - // We need to check this here, because non-synthetic functions may be removed before the - // QQmlJavaScriptExpressions that use them. - m_v4Function.setTag(f->isSyntheticAotFunction() ? OwnsSyntheticAotFunction : DoesNotOwn); - m_compilationUnit.reset(m_v4Function->executableCompilationUnit()); } |