summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarcel Holtmann <marcel@holtmann.org>2008-12-20 10:31:01 +0100
committerMarcel Holtmann <marcel@holtmann.org>2008-12-20 10:31:01 +0100
commit8dccb974d9762ea535c5a2bb07e889cb6dc34c28 (patch)
tree181c82b3c563d9d92492f11aa9d4a2c8ed396138
parent589bc816c51c00ffc403f73ebabe5a0418dff5b7 (diff)
Send AdapterRemoved and DeviceRemoved signals last
-rw-r--r--src/adapter.c4
-rw-r--r--src/manager.c4
2 files changed, 4 insertions, 4 deletions
diff --git a/src/adapter.c b/src/adapter.c
index 55ac92e5..c825542a 100644
--- a/src/adapter.c
+++ b/src/adapter.c
@@ -1259,13 +1259,13 @@ void adapter_remove_device(DBusConnection *conn, struct btd_adapter *adapter,
if (!device_is_temporary(device))
remove_bonding(conn, NULL, dstaddr, adapter);
+ adapter_update_devices(adapter);
+
g_dbus_emit_signal(conn, adapter->path,
ADAPTER_INTERFACE, "DeviceRemoved",
DBUS_TYPE_OBJECT_PATH, &dev_path,
DBUS_TYPE_INVALID);
- adapter_update_devices(adapter);
-
agent = device_get_agent(device);
if (agent) {
diff --git a/src/manager.c b/src/manager.c
index 22754d92..7849b64b 100644
--- a/src/manager.c
+++ b/src/manager.c
@@ -447,13 +447,13 @@ static void manager_remove_adapter(struct btd_adapter *adapter)
uint16_t dev_id = adapter_get_dev_id(adapter);
const gchar *path = adapter_get_path(adapter);
+ manager_update_adapters();
+
g_dbus_emit_signal(connection, "/",
MANAGER_INTERFACE, "AdapterRemoved",
DBUS_TYPE_OBJECT_PATH, &path,
DBUS_TYPE_INVALID);
- manager_update_adapters();
-
if (default_adapter_id == dev_id || default_adapter_id < 0) {
int new_default = hci_get_route(NULL);