From: Wootak Jung Date: Tue, 24 Oct 2023 03:04:31 +0000 (+0900) Subject: [Bluetooth] Fix ASAN crash issue (#5624) X-Git-Tag: accepted/tizen/8.0/unified/20240613.065534~116 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=06dbeee44b9b2c64993e167880668a01b71aea63;p=platform%2Fcore%2Fcsapi%2Ftizenfx.git [Bluetooth] Fix ASAN crash issue (#5624) - Use g_free for data allocated by g_malloc Signed-off-by: Wootak Jung --- diff --git a/src/Tizen.Network.Bluetooth/Interop/Interop.Glib.cs b/src/Tizen.Network.Bluetooth/Interop/Interop.Glib.cs index 576a6e2..ee7a1e1 100644 --- a/src/Tizen.Network.Bluetooth/Interop/Interop.Glib.cs +++ b/src/Tizen.Network.Bluetooth/Interop/Interop.Glib.cs @@ -26,5 +26,8 @@ internal static partial class Interop [DllImport(Libraries.Glib, EntryPoint = "g_idle_add", CallingConvention = CallingConvention.Cdecl)] internal static extern uint IdleAdd(GSourceFunc d, IntPtr data); + + [DllImport(Libraries.Glib, EntryPoint = "g_free", CallingConvention = CallingConvention.Cdecl)] + internal static extern void Gfree(IntPtr ptr); } } diff --git a/src/Tizen.Network.Bluetooth/Tizen.Network.Bluetooth/BluetoothAdapterImpl.cs b/src/Tizen.Network.Bluetooth/Tizen.Network.Bluetooth/BluetoothAdapterImpl.cs index 99a856d..d74b045 100644 --- a/src/Tizen.Network.Bluetooth/Tizen.Network.Bluetooth/BluetoothAdapterImpl.cs +++ b/src/Tizen.Network.Bluetooth/Tizen.Network.Bluetooth/BluetoothAdapterImpl.cs @@ -534,14 +534,14 @@ namespace Tizen.Network.Bluetooth byte[] hashArr = new byte[hashLength]; Marshal.Copy(hash, hashArr, 0, hashLength); oobData.HashValue = hashArr; - Interop.Libc.Free(hash); + Interop.Glib.Gfree(hash); } if (randomizerLength > 0) { byte[] randomizerArr = new byte[randomizerLength]; Marshal.Copy(randomizer, randomizerArr, 0, randomizerLength); oobData.RandomizerValue = randomizerArr; - Interop.Libc.Free(randomizer); + Interop.Glib.Gfree(randomizer); } return oobData; diff --git a/src/Tizen.Network.Bluetooth/Tizen.Network.Bluetooth/BluetoothLeAdapterImpl.cs b/src/Tizen.Network.Bluetooth/Tizen.Network.Bluetooth/BluetoothLeAdapterImpl.cs index 890c80e..4cd0a80 100644 --- a/src/Tizen.Network.Bluetooth/Tizen.Network.Bluetooth/BluetoothLeAdapterImpl.cs +++ b/src/Tizen.Network.Bluetooth/Tizen.Network.Bluetooth/BluetoothLeAdapterImpl.cs @@ -187,10 +187,10 @@ namespace Tizen.Network.Bluetooth foreach (IntPtr uuids in uuidList) { list.Add(Marshal.PtrToStringAnsi(uuids)); - Interop.Libc.Free(uuids); + Interop.Glib.Gfree(uuids); } - Interop.Libc.Free(uuidListArray); + Interop.Glib.Gfree(uuidListArray); Marshal.FreeHGlobal(scanDataStruct.AdvData); Marshal.FreeHGlobal(scanDataStruct.ScanData); return list; @@ -295,10 +295,10 @@ namespace Tizen.Network.Bluetooth foreach (IntPtr uuids in uuidList) { list.Add(Marshal.PtrToStringAnsi(uuids)); - Interop.Libc.Free(uuids); + Interop.Glib.Gfree(uuids); } - Interop.Libc.Free(uuidListArray); + Interop.Glib.Gfree(uuidListArray); Marshal.FreeHGlobal(scanDataStruct.AdvData); Marshal.FreeHGlobal(scanDataStruct.ScanData); return list; @@ -417,7 +417,7 @@ namespace Tizen.Network.Bluetooth Marshal.Copy(manufData, data.Data, 0, data.DataLength); } - Interop.Libc.Free(manufData); + Interop.Glib.Gfree(manufData); Marshal.FreeHGlobal(scanDataStruct.AdvData); Marshal.FreeHGlobal(scanDataStruct.ScanData); return data;