Hi Ravi, On Tue, Nov 19, 2013, Ravi kumar Veeramally wrote: > --- > android/hidhost.c | 10 ++++++++++ > 1 file changed, 10 insertions(+) > > diff --git a/android/hidhost.c b/android/hidhost.c > index 05a3fe4..20dedc4 100644 > --- a/android/hidhost.c > +++ b/android/hidhost.c > @@ -1226,6 +1226,14 @@ bool bt_hid_register(int sk, const bdaddr_t *addr) > return true; > } > > +static void free_hid_devices(gpointer data, gpointer user_data) > +{ > + struct hid_device *dev = data; > + > + bt_hid_notify_state(dev, HAL_HIDHOST_STATE_DISCONNECTED); > + hid_device_free(dev); > +} > + > void bt_hid_unregister(void) > { > DBG(""); > @@ -1233,6 +1241,8 @@ void bt_hid_unregister(void) > if (notification_sk < 0) > return; > > + g_slist_foreach(devices, free_hid_devices, NULL); I suppose you also need to set devices = NULL; after this call? Johan -- To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html