{
DBusConnection *recipient = link->data;
- if (!bus_transaction_send (transaction, recipient, message))
+ if (!bus_transaction_send (transaction, sender, recipient, message))
goto out;
}
return TRUE;
}
- return bus_transaction_send (transaction, connection, message);
+ return bus_transaction_send (transaction, NULL, connection, message);
}
dbus_bool_t
bus_transaction_send (BusTransaction *transaction,
- DBusConnection *connection,
+ DBusConnection *sender,
+ DBusConnection *destination,
DBusMessage *message)
{
MessageToSend *to_send;
dbus_message_get_member (message) : "(unset)",
dbus_message_get_error_name (message) ?
dbus_message_get_error_name (message) : "(unset)",
- dbus_connection_get_is_connected (connection) ?
+ dbus_connection_get_is_connected (destination) ?
"" : " (disconnected)");
_dbus_assert (dbus_message_get_sender (message) != NULL);
- if (!dbus_connection_get_is_connected (connection))
- return TRUE; /* silently ignore disconnected connections */
+ if (!dbus_connection_get_is_connected (destination))
+ return TRUE; /* silently ignore disconnected destinations */
- d = BUS_CONNECTION_DATA (connection);
+ d = BUS_CONNECTION_DATA (destination);
_dbus_assert (d != NULL);
to_send = dbus_new (MessageToSend, 1);
return FALSE;
}
- to_send->preallocated = dbus_connection_preallocate_send (connection);
+ to_send->preallocated = dbus_connection_preallocate_send (destination);
if (to_send->preallocated == NULL)
{
dbus_free (to_send);
if (!_dbus_list_prepend (&d->transaction_messages, to_send))
{
- message_to_send_free (connection, to_send);
+ message_to_send_free (destination, to_send);
return FALSE;
}
_dbus_verbose ("prepended message\n");
- /* See if we already had this connection in the list
+ /* See if we already had this destination in the list
* for this transaction. If we have a pending message,
* then we should already be in transaction->connections
*/
if (link == NULL)
{
- if (!_dbus_list_prepend (&transaction->connections, connection))
+ if (!_dbus_list_prepend (&transaction->connections, destination))
{
_dbus_list_remove (&d->transaction_messages, to_send);
- message_to_send_free (connection, to_send);
+ message_to_send_free (destination, to_send);
return FALSE;
}
}
BusTransaction* bus_transaction_new (BusContext *context);
BusContext* bus_transaction_get_context (BusTransaction *transaction);
dbus_bool_t bus_transaction_send (BusTransaction *transaction,
- DBusConnection *connection,
+ DBusConnection *sender,
+ DBusConnection *destination,
DBusMessage *message);
dbus_bool_t bus_transaction_capture (BusTransaction *transaction,
DBusConnection *connection,
return TRUE; /* don't send it but don't return an error either */
}
- if (!bus_transaction_send (transaction,
- connection,
- message))
+ if (!bus_transaction_send (transaction, sender, connection, message))
{
BUS_SET_OOM (error);
return FALSE;
}
/* Dispatch the message */
- if (!bus_transaction_send (transaction, addressed_recipient, message))
+ if (!bus_transaction_send (transaction, sender, addressed_recipient,
+ message))
{
BUS_SET_OOM (error);
return FALSE;