diff options
author | Lars Knoll <lars.knoll@qt.io> | 2020-09-09 13:42:35 +0200 |
---|---|---|
committer | Lars Knoll <lars.knoll@qt.io> | 2020-09-23 19:30:28 +0200 |
commit | 850d850c5af8ff77a4b9d53457ec6b1ba6c20cb3 (patch) | |
tree | 79af5853f71ca977c4e24eab609c0f07dcb04a7a /src/dbus/qdbusabstractinterface.cpp | |
parent | be714154fa3f9dd7f1a44952293eee037793e383 (diff) |
Use QMetaType instead of integer based type ids
Change the implementation of Qt DBus to use QMetaType directly
instead of integer based type ids.
Change-Id: I999023b58fa50dcc3504386467faf09874f7d2cf
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'src/dbus/qdbusabstractinterface.cpp')
-rw-r--r-- | src/dbus/qdbusabstractinterface.cpp | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/src/dbus/qdbusabstractinterface.cpp b/src/dbus/qdbusabstractinterface.cpp index 4c580ed676..0a873ad5ad 100644 --- a/src/dbus/qdbusabstractinterface.cpp +++ b/src/dbus/qdbusabstractinterface.cpp @@ -154,10 +154,10 @@ bool QDBusAbstractInterfacePrivate::property(const QMetaProperty &mp, void *retu if (!isValid || !canMakeCalls()) // can't make calls return false; - const int type = mp.userType(); + QMetaType type = mp.metaType(); // is this metatype registered? const char *expectedSignature = ""; - if (int(mp.userType()) != QMetaType::QVariant) { + if (type.id() != QMetaType::QVariant) { expectedSignature = QDBusMetaType::typeToSignature(type); if (expectedSignature == nullptr) { qWarning("QDBusAbstractInterface: type %s must be registered with Qt D-Bus before it can be " @@ -193,10 +193,10 @@ bool QDBusAbstractInterfacePrivate::property(const QMetaProperty &mp, void *retu const char *foundType = nullptr; QVariant value = qvariant_cast<QDBusVariant>(reply.arguments().at(0)).variant(); - if (value.userType() == type || type == QMetaType::QVariant + if (value.metaType() == type || type.id() == QMetaType::QVariant || (expectedSignature[0] == 'v' && expectedSignature[1] == '\0')) { // simple match - if (type == QMetaType::QVariant) { + if (type.id() == QMetaType::QVariant) { *reinterpret_cast<QVariant*>(returnValuePtr) = value; } else { QMetaType(type).destruct(returnValuePtr); @@ -205,7 +205,7 @@ bool QDBusAbstractInterfacePrivate::property(const QMetaProperty &mp, void *retu return true; } - if (value.userType() == qMetaTypeId<QDBusArgument>()) { + if (value.metaType() == QMetaType::fromType<QDBusArgument>()) { QDBusArgument arg = qvariant_cast<QDBusArgument>(value); foundType = "user type"; @@ -216,7 +216,7 @@ bool QDBusAbstractInterfacePrivate::property(const QMetaProperty &mp, void *retu } } else { foundType = value.typeName(); - foundSignature = QDBusMetaType::typeToSignature(value.userType()); + foundSignature = QDBusMetaType::typeToSignature(value.metaType()); } // there was an error... @@ -281,7 +281,7 @@ int QDBusAbstractInterfaceBase::qt_metacall(QMetaObject::Call _c, int _id, void if (_c == QMetaObject::WriteProperty) { QVariant value; - if (mp.userType() == qMetaTypeId<QDBusVariant>()) + if (mp.metaType() == QMetaType::fromType<QDBusVariant>()) value = reinterpret_cast<const QDBusVariant*>(_a[0])->variant(); else value = QVariant(mp.metaType(), _a[0]); |