summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIevgenii Meshcheriakov <ievgenii.meshcheriakov@qt.io>2023-08-22 16:31:40 +0200
committerIevgenii Meshcheriakov <ievgenii.meshcheriakov@qt.io>2023-08-26 17:24:19 +0200
commita6027d4c59044277b902a113a219be66cd73c9da (patch)
tree9328bcef8e8cfaaed40cc1790c5c6910039c803b
parent712149802b1e79a1bb7ec6f20b2db6fa01950cea (diff)
QtDBus: Use invokeMethod accepting member functions with arguments
This makes the code slightly more readable. Rename one overload of QDBusConnectionManager::doConnectToBus to avoid using qOverload. Change-Id: Id878e5baade539c3f748b5bf66a5aff726604b89 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: MÃ¥rten Nordheim <marten.nordheim@qt.io>
-rw-r--r--src/dbus/qdbusconnectionmanager.cpp25
-rw-r--r--src/dbus/qdbusconnectionmanager_p.h4
-rw-r--r--src/dbus/qdbusintegrator.cpp4
3 files changed, 14 insertions, 19 deletions
diff --git a/src/dbus/qdbusconnectionmanager.cpp b/src/dbus/qdbusconnectionmanager.cpp
index 73b993d566..dc4116cf04 100644
--- a/src/dbus/qdbusconnectionmanager.cpp
+++ b/src/dbus/qdbusconnectionmanager.cpp
@@ -164,12 +164,9 @@ QDBusConnectionPrivate *QDBusConnectionManager::connectToBus(QDBusConnection::Bu
{
QDBusConnectionPrivate *result = nullptr;
- QMetaObject::invokeMethod(
- this,
- [this, type, &name, suspendedDelivery] {
- return doConnectToBus(type, name, suspendedDelivery);
- },
- Qt::BlockingQueuedConnection, &result);
+ QMetaObject::invokeMethod(this, &QDBusConnectionManager::doConnectToStandardBus,
+ Qt::BlockingQueuedConnection, qReturnArg(result), type, name,
+ suspendedDelivery);
if (suspendedDelivery && result && result->connection)
result->enableDispatchDelayed(qApp); // qApp was checked in the caller
@@ -181,9 +178,8 @@ QDBusConnectionPrivate *QDBusConnectionManager::connectToBus(const QString &addr
{
QDBusConnectionPrivate *result = nullptr;
- QMetaObject::invokeMethod(
- this, [this, &address, &name] { return doConnectToBus(address, name); },
- Qt::BlockingQueuedConnection, &result);
+ QMetaObject::invokeMethod(this, &QDBusConnectionManager::doConnectToBus,
+ Qt::BlockingQueuedConnection, qReturnArg(result), address, name);
return result;
}
@@ -192,16 +188,15 @@ QDBusConnectionPrivate *QDBusConnectionManager::connectToPeer(const QString &add
{
QDBusConnectionPrivate *result = nullptr;
- QMetaObject::invokeMethod(
- this, [this, &address, &name] { return doConnectToPeer(address, name); },
- Qt::BlockingQueuedConnection, &result);
+ QMetaObject::invokeMethod(this, &QDBusConnectionManager::doConnectToPeer,
+ Qt::BlockingQueuedConnection, qReturnArg(result), address, name);
return result;
}
-QDBusConnectionPrivate *QDBusConnectionManager::doConnectToBus(QDBusConnection::BusType type,
- const QString &name,
- bool suspendedDelivery)
+QDBusConnectionPrivate *
+QDBusConnectionManager::doConnectToStandardBus(QDBusConnection::BusType type, const QString &name,
+ bool suspendedDelivery)
{
const auto locker = qt_scoped_lock(mutex);
diff --git a/src/dbus/qdbusconnectionmanager_p.h b/src/dbus/qdbusconnectionmanager_p.h
index 2e1381d0da..644c3c8fb1 100644
--- a/src/dbus/qdbusconnectionmanager_p.h
+++ b/src/dbus/qdbusconnectionmanager_p.h
@@ -52,8 +52,8 @@ protected:
void run() override;
private:
- QDBusConnectionPrivate *doConnectToBus(QDBusConnection::BusType type, const QString &name,
- bool suspendedDelivery);
+ QDBusConnectionPrivate *doConnectToStandardBus(QDBusConnection::BusType type,
+ const QString &name, bool suspendedDelivery);
QDBusConnectionPrivate *doConnectToBus(const QString &address, const QString &name);
QDBusConnectionPrivate *doConnectToPeer(const QString &address, const QString &name);
diff --git a/src/dbus/qdbusintegrator.cpp b/src/dbus/qdbusintegrator.cpp
index a1e8bec7da..497a6d3546 100644
--- a/src/dbus/qdbusintegrator.cpp
+++ b/src/dbus/qdbusintegrator.cpp
@@ -2714,8 +2714,8 @@ void QDBusConnectionPrivate::enableDispatchDelayed(QObject *context)
// This call cannot race with something disabling dispatch only
// because dispatch is never re-disabled from Qt code on an
// in-use connection once it has been enabled.
- QMetaObject::invokeMethod(
- this, [this] { setDispatchEnabled(true); }, Qt::QueuedConnection);
+ QMetaObject::invokeMethod(this, &QDBusConnectionPrivate::setDispatchEnabled,
+ Qt::QueuedConnection, true);
if (!ref.deref())
deleteLater();
},