From c57373cdb64ad8f69909b37dd231a726b8828dc3 Mon Sep 17 00:00:00 2001 From: Aaron Kennedy Date: Thu, 6 Aug 2009 17:40:37 +1000 Subject: Avoid locking when the QVariant type is well known --- src/declarative/qml/qmlmetatype.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/declarative/qml/qmlmetatype.cpp b/src/declarative/qml/qmlmetatype.cpp index 50bc676..512650f 100644 --- a/src/declarative/qml/qmlmetatype.cpp +++ b/src/declarative/qml/qmlmetatype.cpp @@ -798,6 +798,9 @@ QmlMetaType::TypeCategory QmlMetaType::typeCategory(int userType) { if (userType < 0) return Unknown; + if (userType == QMetaType::QObjectStar) + return Object; + QReadLocker lock(metaTypeDataLock()); QmlMetaTypeData *data = metaTypeData(); if (userType < data->objects.size() && data->objects.testBit(userType)) @@ -812,6 +815,9 @@ QmlMetaType::TypeCategory QmlMetaType::typeCategory(int userType) bool QmlMetaType::isObject(int userType) { + if (userType == QMetaType::QObjectStar) + return true; + QReadLocker lock(metaTypeDataLock()); QmlMetaTypeData *data = metaTypeData(); return userType >= 0 && userType < data->objects.size() && data->objects.testBit(userType); -- cgit v0.12