summaryrefslogtreecommitdiff
path: root/bus/check.c
diff options
context:
space:
mode:
Diffstat (limited to 'bus/check.c')
-rw-r--r--bus/check.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/bus/check.c b/bus/check.c
index a859facc..9bbca639 100644
--- a/bus/check.c
+++ b/bus/check.c
@@ -146,7 +146,8 @@ bus_check_queued_message_reply_callback (BusDeferredMessage *deferred_message,
_dbus_verbose("bus_check_queued_message_reply_callback called message=%p\n", deferred_message);
- if (!bus_connection_is_active(deferred_message->proposed_recipient))
+ if (!(dbus_connection_get_is_connected(deferred_message->proposed_recipient)
+ && bus_connection_is_active(deferred_message->proposed_recipient)))
return;
status = deferred_message->status;
@@ -495,7 +496,7 @@ bus_deferred_message_dispatch (BusDeferredMessage *deferred_message)
}
/* do not attempt to send message if sender has disconnected */
- if (deferred_message->sender != NULL && !bus_connection_is_active(deferred_message->sender))
+ if (deferred_message->sender != NULL && !(dbus_connection_get_is_connected(deferred_message->sender) && bus_connection_is_active(deferred_message->sender)))
{
bus_transaction_cancel_and_free(transaction);
result = BUS_RESULT_FALSE;