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

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

 



From: Luiz Augusto von Dentz <luiz.von.dentz@xxxxxxxxx>

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 --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);
 
-- 
2.33.1




[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