diff options
author | Ulf Hermann <ulf.hermann@qt.io> | 2022-03-02 16:09:55 +0100 |
---|---|---|
committer | Ulf Hermann <ulf.hermann@qt.io> | 2022-03-03 13:35:48 +0100 |
commit | f3a1fe74f2b78a0c82b7dd0c42023fd987a49022 (patch) | |
tree | 1fdf07fe8822c7b696366f792ffb030c9790a545 /src | |
parent | 6efb9946cf43a369e71fa182da97d7510d86579f (diff) |
QmlCompiler: Optimize metaobject retrieval some more
The QObject one didn't take effect, and we don't need the metatype to
get a metaobject for QObject or QQmlComponent.
Change-Id: Ib047d958a79659fe7c5904b2fdc25b72e69b7b2b
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit 83a2e80971af69c0b54edc79877016abfd3478b9)
Diffstat (limited to 'src')
-rw-r--r-- | src/qmlcompiler/qqmljscodegenerator.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/qmlcompiler/qqmljscodegenerator.cpp b/src/qmlcompiler/qqmljscodegenerator.cpp index 7e2748f2bc..addda79063 100644 --- a/src/qmlcompiler/qqmljscodegenerator.cpp +++ b/src/qmlcompiler/qqmljscodegenerator.cpp @@ -84,9 +84,9 @@ QString QQmlJSCodeGenerator::metaTypeFromName(const QQmlJSScope::ConstPtr &type) QString QQmlJSCodeGenerator::metaObject(const QQmlJSScope::ConstPtr &objectType) { if (!objectType->isComposite()) { - if (objectType->internalName() == u"QtObject"_qs + if (objectType->internalName() == u"QObject"_qs || objectType->internalName() == u"QQmlComponent"_qs) { - return metaTypeFromType(objectType) + u".metaObject()"_qs; + return u'&' + objectType->internalName() + u"::staticMetaObject"_qs; } return metaTypeFromName(objectType) + u".metaObject()"_qs; } |