From 23280c99067f8c3347fd870c0b55a831892d9ee0 Mon Sep 17 00:00:00 2001 From: WormHeamer Date: Fri, 2 Jan 2026 02:46:01 -0500 Subject: zero memory in freelist_new --- freelist.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/freelist.h b/freelist.h index 69ef976..6a642d7 100644 --- a/freelist.h +++ b/freelist.h @@ -2,6 +2,7 @@ #define FREELIST_H #include "arena.h" +#include #define FREELIST_NEW(fl, a)\ (__typeof__(*(fl)))freelist_new((void**)(fl), sizeof(**(fl)), _Alignof(__typeof__(**(fl))), a) @@ -14,7 +15,7 @@ static inline void *freelist_new(void **fl, size_t sz, size_t align, Arena *a) { void *p = *fl; void *next = *(void**)p; *fl = next; - return p; + return memset(p, 0, sz); } else { /* must pad and align for ptr to next in freelist */ if (sz < sizeof(void *)) sz = sizeof(void *); -- cgit v1.2.3