Diff between b41791221213b0c5b1d66ed52462b5960e070ea5 and c4a8ba6d82f1b5c7f14c2abc01242925c60b468d
Changed Files
| File | Additions | Deletions | Status |
| src/device.c | +8 | -0 | modified |
Full Patch
diff --git a/src/device.c b/src/device.c
index 93e454e..46f26d1 100644
--- a/src/device.c
+++ b/src/device.c
@@ -790,6 +790,14 @@ void device_request_disconnect(struct btd_device *device, DBusMessage *msg)
browse_request_cancel(device->browse);
}
+ if (device->attrib) {
+ GIOChannel *io = g_attrib_get_channel(device->attrib);
+ if (io) {
+ g_io_channel_shutdown(io, FALSE, NULL);
+ g_io_channel_unref(io);
+ }
+ }
+
if (msg)
device->disconnects = g_slist_append(device->disconnects,
dbus_message_ref(msg));