diff --git a/src/libs/qmljs/qmljsinterpreter.cpp b/src/libs/qmljs/qmljsinterpreter.cpp index 54f6823242413b1046ed0f695c9e81ded93594fb..9a287b44e95f50a0324cbe7ddfcfe341226cf5d9 100644 --- a/src/libs/qmljs/qmljsinterpreter.cpp +++ b/src/libs/qmljs/qmljsinterpreter.cpp @@ -771,7 +771,7 @@ void ScopeChain::update() foreach (QmlComponentChain *parent, qmlComponentScope.instantiatingComponents) parent->add(&_all); - if (qmlComponentScope.rootObject) + if (qmlComponentScope.rootObject && ! qmlScopeObjects.contains(qmlComponentScope.rootObject)) _all += qmlComponentScope.rootObject; _all += qmlScopeObjects; _all += qmlComponentScope.functionScopes; diff --git a/src/libs/qmljs/qmljsscopebuilder.cpp b/src/libs/qmljs/qmljsscopebuilder.cpp index 4f3f6fa1233145143957465c716849d5693aea12..18c8dcf1b8c73e7434fc7cb3272c9fa852122a97 100644 --- a/src/libs/qmljs/qmljsscopebuilder.cpp +++ b/src/libs/qmljs/qmljsscopebuilder.cpp @@ -68,8 +68,7 @@ void ScopeBuilder::setQmlScopeObject(Node *node) const ObjectValue *scopeObject = _doc->bind()->findQmlObject(node); if (scopeObject) { - if (scopeObject != scopeChain.qmlComponentScope.rootObject) - scopeChain.qmlScopeObjects += scopeObject; + scopeChain.qmlScopeObjects += scopeObject; } #ifndef NO_DECLARATIVE_BACKEND