aboutsummaryrefslogtreecommitdiffstats
path: root/src/declarative/qml
diff options
context:
space:
mode:
authorKent Hansen <kent.hansen@nokia.com>2011-11-15 09:21:24 +0100
committerQt by Nokia <qt-info@nokia.com>2011-11-16 09:07:49 +0100
commit09313a8a3364c807a63ad69d4293f7502f10a8df (patch)
tree1fd2ba19c7754de14b346650f371b0211009d061 /src/declarative/qml
parent01daf72ee66fb3fb5d9378ecaa42c9ace8bc6c76 (diff)
Make non-threaded VME interpreter work again
625bb0520708879ef5d281ab0c62fc7ad5415441 added a statement to the QML_NEXT_INSTR macro without turning the macro definition into a block. This caused statements like if (foo) QML_NEXT_INSTR(bar); to unexpectedly break from the switch (the second statement in the QML_NEXT_INSTR expansion is "break"). Change-Id: I384280eaea1dd1f3b940be67d589f3a03d9e8685 Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Diffstat (limited to 'src/declarative/qml')
-rw-r--r--src/declarative/qml/qdeclarativevme.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/declarative/qml/qdeclarativevme.cpp b/src/declarative/qml/qdeclarativevme.cpp
index 52095e34f3..e39a7c90f8 100644
--- a/src/declarative/qml/qdeclarativevme.cpp
+++ b/src/declarative/qml/qdeclarativevme.cpp
@@ -226,9 +226,11 @@ static void removeBindingOnProperty(QObject *o, int index)
case QDeclarativeInstruction::I: \
QML_BEGIN_INSTR_COMMON(I)
-# define QML_NEXT_INSTR(I) \
+# define QML_NEXT_INSTR(I) { \
if (watcher.hasRecursed()) return 0; \
- break;
+ break; \
+ }
+
# define QML_END_INSTR(I) \
if (watcher.hasRecursed() || interrupt.shouldInterrupt()) return 0; \
} break;