aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/qml/qml/qqmlobjectcreator.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/qml/qml/qqmlobjectcreator.cpp b/src/qml/qml/qqmlobjectcreator.cpp
index f8aadb3070..0df52edb08 100644
--- a/src/qml/qml/qqmlobjectcreator.cpp
+++ b/src/qml/qml/qqmlobjectcreator.cpp
@@ -1170,9 +1170,6 @@ QQmlContextData *QQmlObjectCreator::finalize(QQmlInstantiationInterrupt &interru
trace.event("begin binding eval");
while (!sharedState->allCreatedBindings.isEmpty()) {
- if (watcher.hasRecursed() || interrupt.shouldInterrupt())
- return 0;
-
QQmlAbstractBinding *b = sharedState->allCreatedBindings.pop();
if (!b)
continue;
@@ -1182,6 +1179,9 @@ QQmlContextData *QQmlObjectCreator::finalize(QQmlInstantiationInterrupt &interru
data->clearPendingBindingBit(b->propertyIndex());
b->setEnabled(true, QQmlPropertyPrivate::BypassInterceptor |
QQmlPropertyPrivate::DontRemoveBinding);
+
+ if (watcher.hasRecursed() || interrupt.shouldInterrupt())
+ return 0;
}
}