diff mbox series

[BlueZ,3/4] shared/util: Add util_memdup

Message ID 20220106210319.3620823-3-luiz.dentz@gmail.com
State New
Headers show
Series [BlueZ,1/4] shared/util: Rename btd_malloc to util_malloc | expand

Commit Message

Luiz Augusto von Dentz Jan. 6, 2022, 9:03 p.m. UTC
From: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>

This adds util_memdup which is intended to replace g_memdup since
replacing that with g_memdup2 requires bumping the glib version.
---
 src/shared/util.c | 16 ++++++++++++++++
 src/shared/util.h |  1 +
 2 files changed, 17 insertions(+)
diff mbox series

Patch

diff --git a/src/shared/util.c b/src/shared/util.c
index 93110047b..6e1c83057 100644
--- a/src/shared/util.c
+++ b/src/shared/util.c
@@ -41,6 +41,22 @@  void *util_malloc(size_t size)
 	return NULL;
 }
 
+void *util_memdup(const void *src, size_t size)
+{
+	void *cpy;
+
+	if (!src || !size)
+		return NULL;
+
+	cpy = util_malloc(size);
+	if (!cpy)
+		return NULL;
+
+	memcpy(cpy, src, size);
+
+	return cpy;
+}
+
 void util_debug_va(util_debug_func_t function, void *user_data,
 				const char *format, va_list va)
 {
diff --git a/src/shared/util.h b/src/shared/util.h
index 11d09979d..8ef6132c4 100644
--- a/src/shared/util.h
+++ b/src/shared/util.h
@@ -87,6 +87,7 @@  char *strdelimit(char *str, char *del, char c);
 int strsuffix(const char *str, const char *suffix);
 
 void *util_malloc(size_t size);
+void *util_memdup(const void *src, size_t size);
 
 typedef void (*util_debug_func_t)(const char *str, void *user_data);