From d31dbb424f3f435539529d91ea53dc47ebaf4a5f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mattis=20B=C3=B6ckle?= Date: Wed, 22 Jan 2025 23:56:32 +0100 Subject: [PATCH] Initialize the memory used for bytearrays We were accessing uninitialized memory whenever using bytearrays which causes valgrind to complain. Now that memory is just initialized to 0 --- libraries/llvm/bytearray.c | 1 + 1 file changed, 1 insertion(+) diff --git a/libraries/llvm/bytearray.c b/libraries/llvm/bytearray.c index 7cf5a3ade..364b53ad6 100644 --- a/libraries/llvm/bytearray.c +++ b/libraries/llvm/bytearray.c @@ -22,6 +22,7 @@ struct Pos c_bytearray_new(const Int size) { void *objPtr = malloc(sizeof(struct Header) + size); struct Header *headerPtr = objPtr; *headerPtr = (struct Header) { .rc = 0, .eraser = c_bytearray_erase_noop, }; + memset(objPtr + sizeof(struct Header), 0, size); return (struct Pos) { .tag = size, .obj = objPtr,