]> git.ipfire.org Git - thirdparty/git.git/blobdiff - xdiff/xmacros.h
xdiff: introduce XDL_ALLOC_ARRAY()
[thirdparty/git.git] / xdiff / xmacros.h
index ae4636c2477cc640eae84578805d9722d5e28d1b..9fd3c5da91a9caf0b59d507832127b403e9d9c80 100644 (file)
@@ -49,5 +49,10 @@ do { \
                ((unsigned long) __p[2]) << 16 | ((unsigned long) __p[3]) << 24; \
 } while (0)
 
+/* Allocate an array of nr elements, returns NULL on failure */
+#define XDL_ALLOC_ARRAY(p, nr)                         \
+       ((p) = SIZE_MAX / sizeof(*(p)) >= (size_t)(nr)  \
+               ? xdl_malloc((nr) * sizeof(*(p)))       \
+               : NULL)
 
 #endif /* #if !defined(XMACROS_H) */