From e74de6938b5e3c0da101d5bbb0866fda1e4a330d Mon Sep 17 00:00:00 2001 From: Mattias Andrée Date: Sun, 17 Dec 2023 19:30:55 +0100 Subject: Fix libsimple_arrayset and libsimple_arraypset and add libsimple_arrayfill and libsimple_arraynull MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Mattias Andrée --- libsimple/array.h | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/libsimple/array.h b/libsimple/array.h index b17966b..5530e24 100644 --- a/libsimple/array.h +++ b/libsimple/array.h @@ -111,13 +111,13 @@ #endif -#define libsimple_arrayset(buf, item, n) libsimple_memsetelem(buf, item, (n) * sizeof *(buf)) +#define libsimple_arrayset(buf, item, n) libsimple_memsetelem(buf, item, sizeof *(buf), n) #ifndef arrayset # define arrayset(...) libsimple_arrayset(__VA_ARGS__) #endif -#define libsimple_arraypset(buf, item, n) libsimple_mempsetelem(buf, item, (n) * sizeof *(buf)) +#define libsimple_arraypset(buf, item, n) libsimple_mempsetelem(buf, item, sizeof *(buf), n) #ifndef arraypset # define arraypset(...) libsimple_arraypset(__VA_ARGS__) #endif @@ -163,3 +163,15 @@ #ifndef arrayreplace # define arrayreplace(...) libsimple_arrayreplace(__VA_ARGS__) #endif + + +#define libsimple_arrayfill(buf, item) libsimple_memsetelem(buf, item, sizeof *(buf), sizeof (buf) / sizeof *(buf)) +#ifndef arrayfill +# define arrayfill(...) libsimple_arrayfill(__VA_ARGS__) +#endif + + +#define libsimple_arraynull(buf) libsimple_memsetelem(buf, (void *)0, sizeof *(buf), sizeof (buf) / sizeof *(buf)) +#ifndef arraynull +# define arraynull(...) libsimple_arraynull(__VA_ARGS__) +#endif -- cgit v1.2.3-70-g09d2