diff options
| author | Fabian Kosmale <fabian.kosmale@qt.io> | 2021-03-04 20:23:23 +0100 |
|---|---|---|
| committer | Fabian Kosmale <fabian.kosmale@qt.io> | 2021-03-05 15:54:44 +0100 |
| commit | 7d65ebf1e612120e3f3356f7370d98c0f67663b1 (patch) | |
| tree | 6b7826609ccb959c1c0ed0f4b6a986042058e48e /src/qml/jsruntime/qv4engine.cpp | |
| parent | 9180c009f41ef83c179538db3e8f042fc45d71a2 (diff) | |
QV4Engine: remove redundant check
We already covered the case where the metatype's flag indicate that it
is a QObject. That is exactly the same check used in
QQmlMetaType::toQObject, so if the test did not succeed before, it won't
succeed now either.
As a drive-by, avoid useless metatype-id to metatype lookup.
Change-Id: Ie36a07587aa2b899d2a932bcb3f4a0b5da8aa282
Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Diffstat (limited to 'src/qml/jsruntime/qv4engine.cpp')
| -rw-r--r-- | src/qml/jsruntime/qv4engine.cpp | 7 |
1 files changed, 1 insertions, 6 deletions
diff --git a/src/qml/jsruntime/qv4engine.cpp b/src/qml/jsruntime/qv4engine.cpp index d7bc5a46cf..0c95950400 100644 --- a/src/qml/jsruntime/qv4engine.cpp +++ b/src/qml/jsruntime/qv4engine.cpp @@ -1837,7 +1837,7 @@ QV4::ReturnedValue QV4::ExecutionEngine::fromVariant(const QVariant &variant) a->arrayPut(ii, (v = QV4::QObjectWrapper::wrap(this, list.at(ii)))); a->setArrayLengthUnchecked(list.count()); return a.asReturnedValue(); - } else if (auto flags = QMetaType(type).flags(); flags & QMetaType::PointerToQObject) { + } else if (auto flags = metaType.flags(); flags & QMetaType::PointerToQObject) { QV4::ReturnedValue ret = QV4::QObjectWrapper::wrap(this, *reinterpret_cast<QObject* const *>(ptr)); if (!flags.testFlag(QMetaType::IsConst)) return ret; @@ -1850,11 +1850,6 @@ QV4::ReturnedValue QV4::ExecutionEngine::fromVariant(const QVariant &variant) } } - bool objOk; - QObject *obj = QQmlMetaType::toQObject(variant, &objOk); - if (objOk) - return QV4::QObjectWrapper::wrap(this, obj); - #if QT_CONFIG(qml_sequence_object) bool succeeded = false; QV4::ScopedValue retn(scope, QV4::SequencePrototype::fromVariant(this, variant, &succeeded)); |
