shared/csip: Fix memory leak
(cherry picked from commit 7e8bbd81644e44a161d538b73ae45876033ec035)
This commit is contained in:
parent
c760b53bf9
commit
f6d3e073c5
58
Fix-memory-leak.patch
Normal file
58
Fix-memory-leak.patch
Normal file
@ -0,0 +1,58 @@
|
||||
From 09e39a7d6dca8041f3723ee9020c54b94c0c8d47 Mon Sep 17 00:00:00 2001
|
||||
From: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
|
||||
Date: Fri, 24 May 2024 10:47:41 -0400
|
||||
Subject: shared/csip: Fix memory leak
|
||||
|
||||
This fixes the following leak:
|
||||
|
||||
102 bytes in 6 blocks are definitely lost in loss record 660 of 909
|
||||
at 0x484282F: malloc (vg_replace_malloc.c:446)
|
||||
by 0x5A078B: util_malloc (util.c:46)
|
||||
by 0x649162: read_sirk (csip.c:485)
|
||||
by 0x5C74FA: read_cb (gatt-client.c:2713)
|
||||
by 0x5C4137: handle_rsp (att.c:880)
|
||||
by 0x5C4137: can_read_data (att.c:1072)
|
||||
by 0x65DDA4: watch_callback (io-glib.c:157)
|
||||
by 0x49656AB: ??? (in /usr/lib64/libglib-2.0.so.0.8000.2)
|
||||
by 0x49C6707: ??? (in /usr/lib64/libglib-2.0.so.0.8000.2)
|
||||
by 0x496B666: g_main_loop_run (in /usr/lib64/libglib-2.0.so.0.8000.2)
|
||||
by 0x65FE3D: mainloop_run (mainloop-glib.c:66)
|
||||
by 0x6605A3: mainloop_run_with_signal (mainloop-notify.c:188)
|
||||
by 0x31DEFA: main (main.c:1468)
|
||||
|
||||
---
|
||||
src/shared/csip.c | 11 ++++++++++-
|
||||
1 file changed, 10 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/shared/csip.c b/src/shared/csip.c
|
||||
index e13efb6..87b4590 100644
|
||||
--- a/src/shared/csip.c
|
||||
+++ b/src/shared/csip.c
|
||||
@@ -128,6 +128,15 @@ void bt_csip_detach(struct bt_csip *csip)
|
||||
queue_foreach(csip_cbs, csip_detached, csip);
|
||||
}
|
||||
|
||||
+static void csis_free(struct bt_csis *csis)
|
||||
+{
|
||||
+ if (!csis)
|
||||
+ return;
|
||||
+
|
||||
+ free(csis->sirk_val);
|
||||
+ free(csis);
|
||||
+}
|
||||
+
|
||||
static void csip_db_free(void *data)
|
||||
{
|
||||
struct bt_csip_db *cdb = data;
|
||||
@@ -137,7 +146,7 @@ static void csip_db_free(void *data)
|
||||
|
||||
gatt_db_unref(cdb->db);
|
||||
|
||||
- free(cdb->csis);
|
||||
+ csis_free(cdb->csis);
|
||||
free(cdb);
|
||||
}
|
||||
|
||||
--
|
||||
2.27.0
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
Name: bluez
|
||||
Summary: Bluetooth utilities
|
||||
Version: 5.71
|
||||
Release: 2
|
||||
Release: 3
|
||||
License: GPLv2+
|
||||
URL: http://www.bluez.org/
|
||||
Source0: http://www.kernel.org/pub/linux/bluetooth/bluez-%{version}.tar.xz
|
||||
@ -18,6 +18,7 @@ Patch6000: backport-bluez-disable-test-mesh-crypto.patch
|
||||
Patch6013: bluez-5.54-sw.patch
|
||||
%endif
|
||||
Patch7000: 0001-Fix-crash-after-pair-command.patch
|
||||
Patch7001: Fix-memory-leak.patch
|
||||
|
||||
BuildRequires: dbus-devel >= 1.6 libell-devel >= 0.28 autoconf
|
||||
BuildRequires: glib2-devel libical-devel readline-devel
|
||||
@ -175,6 +176,9 @@ make check
|
||||
%{_mandir}/man8/*
|
||||
|
||||
%changelog
|
||||
* Tue Jun 4 2024 xuchenchen <xuchenchen@kylinos.cn> - 5.71-3
|
||||
- sync patches from community, shared/csip: Fix memory leak
|
||||
|
||||
* Sun Apr 28 2024 xuchenchen <xuchenchen@kylinos.cn> - 5.71-2
|
||||
- mgmt: Fix crash after pair command
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user