diff --git a/obexd/client/map.c b/obexd/client/map.c
index 290cfee..8b56143 100644
--- a/obexd/client/map.c
+++ b/obexd/client/map.c
struct obc_transfer *transfer,
GError *err, void *user_data)
{
- struct map_data *map = user_data;
+ struct pending_request *request = user_data;
DBusMessage *reply;
if (err != NULL) {
- reply = g_dbus_create_error(map->msg,
+ reply = g_dbus_create_error(request->msg,
ERROR_INTERFACE ".Failed",
"%s", err->message);
goto done;
}
- reply = dbus_message_new_method_return(map->msg);
+ reply = dbus_message_new_method_return(request->msg);
done:
g_dbus_send_message(conn, reply);
- dbus_message_unref(map->msg);
+ pending_request_free(request);
}
static DBusMessage *map_update_inbox(DBusConnection *connection,
char contents[2];
struct obc_transfer *transfer;
GError *err = NULL;
+ struct pending_request *request;
contents[0] = FILLER_BYTE;
contents[1] = '\0';
if (transfer == NULL)
goto fail;
+ request = pending_request_new(map, message);
+
if (!obc_session_queue(map->session, transfer, update_inbox_cb,
- map, &err))
+ request, &err)) {
+ pending_request_free(request);
goto fail;
-
- map->msg = dbus_message_ref(message);
+ }
return NULL;