diff options
| author | WormHeamer | 2026-01-02 02:46:01 -0500 |
|---|---|---|
| committer | WormHeamer | 2026-01-02 02:46:01 -0500 |
| commit | 23280c99067f8c3347fd870c0b55a831892d9ee0 (patch) | |
| tree | 216f26b9a515320f8260b8fe89ebdc6b5f1483eb /freelist.h | |
| parent | f5b3768e8a918d2a5dcb1c7e6828311c9742cb59 (diff) | |
zero memory in freelist_new
Diffstat (limited to 'freelist.h')
| -rw-r--r-- | freelist.h | 3 |
1 files changed, 2 insertions, 1 deletions
@@ -2,6 +2,7 @@ #define FREELIST_H #include "arena.h" +#include <string.h> #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 *); |
