diff options
author | Luiz Augusto von Dentz <luiz.dentz@openbossa.org> | 2009-04-27 18:05:53 -0300 |
---|---|---|
committer | Luiz Augusto von Dentz <luiz.dentz@openbossa.org> | 2009-04-28 14:01:50 -0300 |
commit | c343fb7a67e025a1c8388b7a0c2ba36dd8fdfcdd (patch) | |
tree | 2c09b4bc6ec0dd774e30011386e990b9ece726a7 /src/adapter.c | |
parent | 7e06679b800793776e909ead504883187ff8c671 (diff) | |
download | bluez-c343fb7a67e025a1c8388b7a0c2ba36dd8fdfcdd.tar.gz |
Make sure device are unloaded before drivers when removing an adapter.
Devices drivers, such as a2dp driver, may depend on adapter drivers to exit
properly.
Diffstat (limited to 'src/adapter.c')
-rw-r--r-- | src/adapter.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/adapter.c b/src/adapter.c index 8278b39a0..afa1d4ded 100644 --- a/src/adapter.c +++ b/src/adapter.c @@ -2457,12 +2457,12 @@ void adapter_remove(struct btd_adapter *adapter) debug("Removing adapter %s", path); - unload_drivers(adapter); - for (l = adapter->devices; l; l = l->next) device_remove(l->data, connection, FALSE); g_slist_free(adapter->devices); + unload_drivers(adapter); + /* Return adapter to down state if it was not up on init */ if (adapter->up && !adapter->already_up) { int dd = hci_open_dev(adapter->dev_id); |