summaryrefslogtreecommitdiffstats
path: root/src/adapter.c
diff options
context:
space:
mode:
authorAlok Barsode <alok.barsode@azingo.com>2008-08-29 14:22:01 +0530
committerAlok Barsode <alok.barsode@azingo.com>2008-08-29 14:22:01 +0530
commitaeecbf7e45383c48ccb4fd70417500e568cda3bb (patch)
tree2aa7d295f360fe6cffa329d05bbeccc21580c884 /src/adapter.c
parent271183bccb0ac55f7fe3ae6b76211251387e3b5c (diff)
Moving send_out_of_range to adapter.c
Diffstat (limited to 'src/adapter.c')
-rw-r--r--src/adapter.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/adapter.c b/src/adapter.c
index 701f49a1..4926d14f 100644
--- a/src/adapter.c
+++ b/src/adapter.c
@@ -167,6 +167,20 @@ static DBusHandlerResult error_connection_attempt_failed(DBusConnection *conn,
err > 0 ? strerror(err) : "Connection attempt failed");
}
+static void send_out_of_range(const char *path, GSList *l)
+{
+ while (l) {
+ const char *peer_addr = l->data;
+
+ g_dbus_emit_signal(connection, path,
+ ADAPTER_INTERFACE, "DeviceDisappeared",
+ DBUS_TYPE_STRING, &peer_addr,
+ DBUS_TYPE_INVALID);
+
+ l = l->next;
+ }
+}
+
static int found_device_cmp(const struct remote_dev_info *d1,
const struct remote_dev_info *d2)
{
@@ -2869,6 +2883,8 @@ void adapter_update_oor_devices(struct adapter *adapter)
struct remote_dev_info *dev;
bdaddr_t tmp;
+ send_out_of_range(adapter->path, adapter->oor_devices);
+
g_slist_foreach(adapter->oor_devices, (GFunc) free, NULL);
g_slist_free(adapter->oor_devices);
adapter->oor_devices = NULL;