[PATCH 1/2] android/gatt: Fix not freeing discover_srvc_data

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This fixes the following issue:

32 bytes in 1 blocks are definitely lost in loss record 92 of 142
==19365==    at 0x4C29DB4: calloc (in
/usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==19365==    by 0x43275A: search_dev_for_srvc (gatt.c:1302)
==19365==    by 0x4354C9: connect_cb (gatt.c:1424)
==19365==    by 0x448AD3: accept_cb (btio.c:203)
==19365==    by 0x4E79D12: g_main_context_dispatch (in
/lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.4)
==19365==    by 0x4E7A05F: ??? (in
/lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.4)
==19365==    by 0x4E7A459: g_main_loop_run (in
/lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.4)
==19365==    by 0x40459D: main (main.c:538)
---
 android/gatt.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/android/gatt.c b/android/gatt.c
index b256077..7dd37ab 100644
--- a/android/gatt.c
+++ b/android/gatt.c
@@ -1245,11 +1245,15 @@ static void discover_primary_cb(uint8_t status, GSList *services,
 	if (status) {
 		error("gatt: Discover all primary services failed: %s",
 							att_ecode2str(status));
+		free(cb_data);
+
 		return;
 	}
 
 	if (!services) {
 		info("gatt: No primary services found");
+		free(cb_data);
+
 		return;
 	}
 
-- 
2.0.0

--
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




[Index of Archives]     [Bluez Devel]     [Linux Wireless Networking]     [Linux Wireless Personal Area Networking]     [Linux ATH6KL]     [Linux USB Devel]     [Linux Media Drivers]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux