[PATCH 1/2] macro: add newdup macro, equivalent of new + memdup but type-safe
Frederic Crozat
fcrozat at suse.com
Thu Mar 29 08:53:41 PDT 2012
---
src/macro.h | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/src/macro.h b/src/macro.h
index 19f259e..a85e72d 100644
--- a/src/macro.h
+++ b/src/macro.h
@@ -137,6 +137,7 @@ static inline size_t ALIGN_TO(size_t l, size_t ali) {
#define memzero(x,l) (memset((x), 0, (l)))
#define zero(x) (memzero(&(x), sizeof(x)))
+#define newdup(x,l) ( (x= new(typeof(*l),1)) ? memcpy((x),(l),sizeof(*l)) : NULL)
#define char_array_0(x) x[sizeof(x)-1] = 0;
--
1.7.7
More information about the systemd-devel
mailing list