summaryrefslogtreecommitdiffstats
path: root/dbus
diff options
context:
space:
mode:
authorJohn (J5) Palmieri <johnp@redhat.com>2005-10-03 19:55:56 +0000
committerJohn (J5) Palmieri <johnp@redhat.com>2005-10-03 19:55:56 +0000
commit66e1cb9e68ba37980f7a90c396950be1587cdcd7 (patch)
tree689bcc7a44387e36d19a53a4b50a2d004b586a45 /dbus
parent9a821f4c135b3c7b52440550660a7c1e7e4f0731 (diff)
* bus/driver.c (bus_driver_handle_introspect): Add signals
to the introspect data. (patch from Daniel P. Berrange <dan at berrange.com>) * bus/dispatch.c (check_existent_ping): Add testcase for Ping * dbus/dbus-connection.c (_dbus_connection_peer_filter, _dbus_connection_run_builtin_filters): Changed these to be unlock_no_update functions and call _dbus_connection_send_unlocked_no_update instead of dbus_connection_send to avoid locking errors. * doc/TODO: Removed the make Ping test TODO
Diffstat (limited to 'dbus')
-rw-r--r--dbus/dbus-connection.c19
1 files changed, 10 insertions, 9 deletions
diff --git a/dbus/dbus-connection.c b/dbus/dbus-connection.c
index ff66f5f4..1e699617 100644
--- a/dbus/dbus-connection.c
+++ b/dbus/dbus-connection.c
@@ -3363,8 +3363,8 @@ dbus_connection_get_dispatch_status (DBusConnection *connection)
* Filter funtion for handling the Peer standard interface
**/
static DBusHandlerResult
-_dbus_connection_peer_filter (DBusConnection *connection,
- DBusMessage *message)
+_dbus_connection_peer_filter_unlocked_no_update (DBusConnection *connection,
+ DBusMessage *message)
{
if (dbus_message_is_method_call (message,
DBUS_INTERFACE_PEER,
@@ -3376,8 +3376,9 @@ _dbus_connection_peer_filter (DBusConnection *connection,
ret = dbus_message_new_method_return (message);
if (ret == NULL)
return DBUS_HANDLER_RESULT_NEED_MEMORY;
-
- sent = dbus_connection_send (connection, ret, NULL);
+
+ sent = _dbus_connection_send_unlocked_no_update (connection, ret, NULL);
+
dbus_message_unref (ret);
if (!sent)
@@ -3397,13 +3398,13 @@ _dbus_connection_peer_filter (DBusConnection *connection,
* they should be processed from this method
**/
static DBusHandlerResult
-_dbus_connection_run_builtin_filters (DBusConnection *connection,
- DBusMessage *message)
+_dbus_connection_run_builtin_filters_unlocked_no_update (DBusConnection *connection,
+ DBusMessage *message)
{
/* We just run one filter for now but have the option to run more
if the spec calls for it in the future */
- return _dbus_connection_peer_filter (connection, message);
+ return _dbus_connection_peer_filter_unlocked_no_update (connection, message);
}
/**
@@ -3514,8 +3515,8 @@ dbus_connection_dispatch (DBusConnection *connection)
result = DBUS_HANDLER_RESULT_HANDLED;
goto out;
}
-
- result = _dbus_connection_run_builtin_filters (connection, message);
+
+ result = _dbus_connection_run_builtin_filters_unlocked_no_update (connection, message);
if (result != DBUS_HANDLER_RESULT_NOT_YET_HANDLED)
goto out;