summaryrefslogtreecommitdiffstats
path: root/src/dbus/qdbusconnection_p.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/dbus/qdbusconnection_p.h')
-rw-r--r--src/dbus/qdbusconnection_p.h16
1 files changed, 5 insertions, 11 deletions
diff --git a/src/dbus/qdbusconnection_p.h b/src/dbus/qdbusconnection_p.h
index b1ec11dc71..00c3aced0e 100644
--- a/src/dbus/qdbusconnection_p.h
+++ b/src/dbus/qdbusconnection_p.h
@@ -282,24 +282,18 @@ public:
QStringList serverConnectionNames;
ConnectionMode mode;
+ QDBusConnectionInterface *busService;
- // members accessed in unlocked mode (except for deletion)
- // connection and server provide their own locking mechanisms
- // busService doesn't have state to be changed
+ // the dispatch lock protects everything related to the DBusConnection or DBusServer
+ // including the timeouts and watches
+ QMutex dispatchLock;
DBusConnection *connection;
DBusServer *server;
- QDBusConnectionInterface *busService;
-
- // watchers and timeouts are accessed from any thread
- // but the corresponding timer and QSocketNotifier must be handled
- // only in the object's thread
- QMutex watchAndTimeoutLock;
WatcherHash watchers;
TimeoutHash timeouts;
PendingTimeoutList timeoutsPendingAdd;
- // members accessed through a lock
- QMutex dispatchLock;
+ // the master lock protects our own internal state
QReadWriteLock lock;
QDBusError lastError;