binding: bluetooth: fix memory leak in avrcp controls 43/9443/1 3.99.1 dab/3.99.1 dab_3.99.1
authorMatt Ranostay <matt.ranostay@konsulko.com>
Sat, 20 May 2017 20:46:12 +0000 (13:46 -0700)
committerMatt Ranostay <matt.ranostay@konsulko.com>
Sat, 20 May 2017 20:46:54 +0000 (13:46 -0700)
avrcp data pointers need to be freed when btd_device
structure is destroyed

Change-Id: I39b534665d9e7b74ff20443668b5fee395446aa9
Bug-AGL: SPEC-596
Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com>
binding-bluetooth/bluetooth-manager.c

index 35c770f..1f18f8b 100644 (file)
@@ -157,6 +157,24 @@ void device_free(struct btd_device* device)
         device->name = NULL;
     }
 
+    if (device->avrcp_title) {
+        D_PRINTF("avrcp_title:%s\n",device->avrcp_title);
+        g_free(device->avrcp_title);
+        device->avrcp_title = NULL;
+    }
+
+    if (device->avrcp_artist) {
+        D_PRINTF("avrcp_artist:%s\n",device->avrcp_artist);
+        g_free(device->avrcp_artist);
+        device->avrcp_artist = NULL;
+    }
+
+    if (device->avrcp_status) {
+        D_PRINTF("avrcp_status:%s\n",device->avrcp_status);
+        g_free(device->avrcp_status);
+        device->avrcp_status = NULL;
+    }
+
     g_free(device);
 }