--- bluez-utils-2.20/hcid/dbus.c.orig 2005-09-21 11:27:26 +0200 +++ bluez-utils-2.20/hcid/dbus.c 2005-09-21 11:27:35 +0200 @@ -120,6 +121,7 @@ DBusMessage *message; #ifdef HAVE_DBUS_MESSAGE_ITER_GET_BASIC uint8_t *addr = (uint8_t *) &ci->bdaddr; + uint32_t ci_out = ci->out; #else DBusMessageIter iter; #endif @@ -138,7 +140,7 @@ bacpy(&req->bda, &ci->bdaddr); #ifdef HAVE_DBUS_MESSAGE_ITER_GET_BASIC - dbus_message_append_args(message, DBUS_TYPE_BOOLEAN, &ci->out, + dbus_message_append_args(message, DBUS_TYPE_BOOLEAN, &ci_out, DBUS_TYPE_ARRAY, DBUS_TYPE_BYTE, &addr, sizeof(bdaddr_t), DBUS_TYPE_INVALID); #else @@ -261,6 +263,8 @@ DBusMessage *message; #ifndef HAVE_DBUS_MESSAGE_ITER_GET_BASIC DBusMessageIter iter; +#else + int32_t tmp_rssi = rssi; #endif char *local_addr, *peer_addr; bdaddr_t tmp; @@ -276,11 +280,12 @@ } #ifdef HAVE_DBUS_MESSAGE_ITER_GET_BASIC + dbus_message_append_args(message, DBUS_TYPE_STRING, &local_addr, DBUS_TYPE_STRING, &peer_addr, DBUS_TYPE_UINT32, &class, - DBUS_TYPE_INT32, &rssi, + DBUS_TYPE_INT32, &tmp_rssi, DBUS_TYPE_INVALID); #else dbus_message_append_iter_init(message, &iter);