diff options
author | Erik Verbruggen <erik.verbruggen@qt.io> | 2017-06-29 13:54:21 +0200 |
---|---|---|
committer | Lars Knoll <lars.knoll@qt.io> | 2017-06-29 11:56:11 +0000 |
commit | e50b13b4b82b7daab5bb4670379cc52531c91c7c (patch) | |
tree | 143571f7c57a88c476bb5fa2628ceeddb61b815a /src/qml/compiler/qqmlirbuilder.cpp | |
parent | 05557e7fbd123f20a3da845545d5b0228fc37060 (diff) |
Only register QML dependencies for reads from scope/context props
Change-Id: I76ba10f16fc5b481cf1d149ebc45193fdab390fb
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Diffstat (limited to 'src/qml/compiler/qqmlirbuilder.cpp')
-rw-r--r-- | src/qml/compiler/qqmlirbuilder.cpp | 18 |
1 files changed, 2 insertions, 16 deletions
diff --git a/src/qml/compiler/qqmlirbuilder.cpp b/src/qml/compiler/qqmlirbuilder.cpp index 6aa57a6390..d03e2ad539 100644 --- a/src/qml/compiler/qqmlirbuilder.cpp +++ b/src/qml/compiler/qqmlirbuilder.cpp @@ -2030,30 +2030,16 @@ QQmlJS::Codegen::Reference JSCodeGen::fallbackNameLookup(const QString &name) QQmlPropertyData *data = lookupQmlCompliantProperty(_scopeObject, name); if (!data) return Reference::fromName(this, name); -#if 0 - QV4::IR::Temp *base = _block->TEMP(_qmlContextTemp); - base->memberResolver = _function->New<QV4::IR::MemberExpressionResolver>(); - base->memberResolver->owner = _function; - initMetaObjectResolver(base->memberResolver, _scopeObject); -#endif - _function->scopeObjectPropertyDependencies.insert(data->coreIndex(), data->notifyIndex()); Reference base = Reference::fromTemp(this, _qmlContextTemp); - return Reference::fromQmlScopeObject(base, data->coreIndex()); + return Reference::fromQmlScopeObject(base, data->coreIndex(), data->notifyIndex()); } if (_contextObject) { QQmlPropertyData *data = lookupQmlCompliantProperty(_contextObject, name); if (!data) return Reference::fromName(this, name); -#if 0 - QV4::IR::Temp *base = _block->TEMP(_qmlContextTemp); - base->memberResolver = _function->New<QV4::IR::MemberExpressionResolver>(); - base->memberResolver->owner = _function; - initMetaObjectResolver(base->memberResolver, _contextObject); -#endif - _function->contextObjectPropertyDependencies.insert(data->coreIndex(), data->notifyIndex()); Reference base = Reference::fromTemp(this, _qmlContextTemp); - return Reference::fromQmlContextObject(base, data->coreIndex()); + return Reference::fromQmlContextObject(base, data->coreIndex(), data->notifyIndex()); } #else Q_UNUSED(name) |