[PATCH] core/advertising: Fix memory leak on btd_advertising_manager_destroy

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

 



When creating an adv_manager using advertising_manager_create(),
it should be properly freed using advertising_manager_destroy().

==19916== 64 (32 direct, 32 indirect) bytes in 1 blocks are definitely lost in loss record 167 of 234
==19916==    at 0x4C2CC70: calloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==19916==    by 0x45B0D0: btd_advertising_manager_new (advertising.c:764)
==19916==    by 0x468DF9: read_info_complete (adapter.c:7353)
==19916==    by 0x48E3A5: request_complete (mgmt.c:242)
==19916==    by 0x48ED1C: can_read_data (mgmt.c:321)
==19916==    by 0x49A504: watch_callback (io-glib.c:170)
==19916==    by 0x4E7FCE4: g_main_context_dispatch (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.4002.0)
==19916==    by 0x4E80047: g_main_context_iterate.isra.24 (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.4002.0)
==19916==    by 0x4E80309: g_main_loop_run (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.4002.0)
==19916==    by 0x40B2AE: main (main.c:661)
---
 src/advertising.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/advertising.c b/src/advertising.c
index d6ab084..421a5e9 100644
--- a/src/advertising.c
+++ b/src/advertising.c
@@ -818,4 +818,6 @@ void btd_advertising_manager_destroy(struct btd_advertising *manager)
 	g_dbus_unregister_interface(btd_get_dbus_connection(),
 					adapter_get_path(manager->adapter),
 					LE_ADVERTISING_MGR_IFACE);
+
+	advertising_manager_destroy(manager);
 }
-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in



[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