[master] 9c3d28cef miniobj: Add ALLOC_OBJ_EXTRA() requested by PHK

Dridi Boukelmoune dridi.boukelmoune at gmail.com
Mon Aug 21 15:26:07 UTC 2023


commit 9c3d28cefcec462ac8cdb413f17428900c0cb08e
Author: Dridi Boukelmoune <dridi.boukelmoune at gmail.com>
Date:   Mon Aug 21 17:11:06 2023 +0200

    miniobj: Add ALLOC_OBJ_EXTRA() requested by PHK
    
    And use it to implement ALLOC_FLEX_OBJ().

diff --git a/include/miniobj.h b/include/miniobj.h
index fcdc9210c..8cb9e293e 100644
--- a/include/miniobj.h
+++ b/include/miniobj.h
@@ -30,14 +30,16 @@
 			(to)->magic = (type_magic);			\
 	} while (0)
 
-#define ALLOC_FLEX_OBJ(to, fld, len, type_magic)			\
+#define ALLOC_OBJ_EXTRA(to, extra_size, type_magic)			\
 	do {								\
-		(to) = calloc(1, sizeof(*(to)) +			\
-		    ((len) * sizeof *((to)->fld)));			\
+		(to) = calloc(1, sizeof(*(to)) + (extra_size));		\
 		if ((to) != NULL)					\
 			(to)->magic = (type_magic);			\
 	} while (0)
 
+#define ALLOC_FLEX_OBJ(to, fld, len, type_magic)			\
+	ALLOC_OBJ_EXTRA(to, (len) * sizeof *((to)->fld), (type_magic))
+
 #define FREE_OBJ(to)							\
 	do {								\
 		ZERO_OBJ(&(to)->magic, sizeof (to)->magic);		\


More information about the varnish-commit mailing list