From eb3087e4b0b770200512925730c328a8bda7f3d7 Mon Sep 17 00:00:00 2001 From: Simon Hausmann Date: Thu, 2 Jan 2014 08:48:55 +0100 Subject: Fix lookups of enums in singletons This is a regression against 5.2.0 (which didn't have this bug), due to optimizations introduced in the stable branch after the release. The code path for optimizing access to the members of C++ based singletons through the regular meta-object properties would end up excluding access to enums when the lookup happens at run-time. The run-time getter for the singleton itself would return a wrapped QObject instead of a QQmlTypeWrapper, and only the latter includes enums. As QML based singletons (composite singletons) cannot declare enums, we can continue to do fast lookups on these, but otherwise have to fall back to the slower code path. Task-number: QTBUG-35721 Change-Id: Icc66bdaf3572622cdb718f82b706e3204afa0167 Reviewed-by: Lars Knoll --- .../qml/qqmlecmascript/data/singletontype/singletonWithEnum.qml | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 tests/auto/qml/qqmlecmascript/data/singletontype/singletonWithEnum.qml (limited to 'tests/auto/qml/qqmlecmascript/data/singletontype/singletonWithEnum.qml') diff --git a/tests/auto/qml/qqmlecmascript/data/singletontype/singletonWithEnum.qml b/tests/auto/qml/qqmlecmascript/data/singletontype/singletonWithEnum.qml new file mode 100644 index 0000000000..166f823667 --- /dev/null +++ b/tests/auto/qml/qqmlecmascript/data/singletontype/singletonWithEnum.qml @@ -0,0 +1,9 @@ +import QtQml 2.0 +import Qt.test.singletonWithEnum 1.0 + +QtObject { + property int testValue: 0 + Component.onCompleted: { + testValue = SingletonWithEnum.TestValue; + } +} -- cgit v1.2.3