diff options
Diffstat (limited to 'bus/utils.c')
-rw-r--r-- | bus/utils.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/bus/utils.c b/bus/utils.c index fadfc140..8a68d8a4 100644 --- a/bus/utils.c +++ b/bus/utils.c @@ -39,3 +39,20 @@ bus_wait_for_memory (void) #endif } +void +bus_connection_dispatch_all_messages (DBusConnection *connection) +{ + while (bus_connection_dispatch_one_message (connection)) + ; +} + +dbus_bool_t +bus_connection_dispatch_one_message (DBusConnection *connection) +{ + DBusDispatchStatus status; + + while ((status = dbus_connection_dispatch (connection)) == DBUS_DISPATCH_NEED_MEMORY) + bus_wait_for_memory (); + + return status == DBUS_DISPATCH_DATA_REMAINS; +} |