From 54010cf8b6da71a1b14c0dc586bb7e6be27052de Mon Sep 17 00:00:00 2001 From: Axel Davy Date: Fri, 21 Oct 2016 17:25:08 +0200 Subject: [PATCH] gallium/util: Add align_calloc MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Add implementation for align_calloc, which is align_malloc + memset. v2: add if (ptr) before memset. Fix indentation. Signed-off-by: Axel Davy Reviewed-by: Nicolai Hähnle --- src/gallium/auxiliary/util/u_memory.h | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/gallium/auxiliary/util/u_memory.h b/src/gallium/auxiliary/util/u_memory.h index 597df6247a6..66c3ba4e410 100644 --- a/src/gallium/auxiliary/util/u_memory.h +++ b/src/gallium/auxiliary/util/u_memory.h @@ -63,6 +63,14 @@ extern "C" { #define align_malloc(_size, _alignment) os_malloc_aligned(_size, _alignment) #define align_free(_ptr) os_free_aligned(_ptr) +static inline void * +align_calloc(size_t size, unsigned long alignment) +{ + void *ptr = align_malloc(size, alignment); + if (ptr) + memset(ptr, 0, size); + return ptr; +} /** * Duplicate a block of memory. -- 2.30.2