From 2f2a3334de3e7a3ca1d4faa725f37ff6823c6a3b Mon Sep 17 00:00:00 2001 From: Havoc Pennington Date: Fri, 13 Oct 2006 16:26:47 +0000 Subject: 2006-10-13 Havoc Pennington * dbus/dbus-connection.c (dbus_connection_send_with_reply_and_block): fix to handle closed connections, from Tambet Ingo bug #8631 --- ChangeLog | 6 ++++++ dbus/dbus-connection.c | 8 ++++++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 615be307..9dec4b82 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2006-10-13 Havoc Pennington + + * dbus/dbus-connection.c + (dbus_connection_send_with_reply_and_block): fix to handle closed + connections, from Tambet Ingo bug #8631 + 2006-10-11 John (J5) Palmieri * configure.in: use AC_TRY_COMPILE for dirfd instead of AC_TRY_RUN diff --git a/dbus/dbus-connection.c b/dbus/dbus-connection.c index a94e0b2e..7a38a0ab 100644 --- a/dbus/dbus-connection.c +++ b/dbus/dbus-connection.c @@ -2619,7 +2619,7 @@ reply_handler_timeout (void *data) * * @param connection the connection * @param message the message to send - * @param pending_return return location for a #DBusPendingCall object, or #NULLif connection is disconnected + * @param pending_return return location for a #DBusPendingCall object, or #NULL if connection is disconnected * @param timeout_milliseconds timeout in milliseconds or -1 for default * @returns #FALSE if no memory, #TRUE otherwise. * @@ -3089,7 +3089,11 @@ dbus_connection_send_with_reply_and_block (DBusConnection *connection, return NULL; } - _dbus_assert (pending != NULL); + if (pending == NULL) + { + dbus_set_error (error, DBUS_ERROR_DISCONNECTED, "Connection is closed"); + return NULL; + } dbus_pending_call_block (pending); -- cgit