From b1bc4a68b0bc2d7b391c7484a52a46a636ad89fc Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Thu, 8 Aug 2013 11:57:04 +1000 Subject: [PATCH] Add zalloc(size_t) allocator function Same as calloc(1, len). --- shared/zalloc.h | 42 ++++++++++++++++++++++++++++++++++++++++++ src/Makefile.am | 1 + src/compositor.h | 1 + 3 files changed, 44 insertions(+) create mode 100644 shared/zalloc.h diff --git a/shared/zalloc.h b/shared/zalloc.h new file mode 100644 index 00000000..29da1190 --- /dev/null +++ b/shared/zalloc.h @@ -0,0 +1,42 @@ +/* + * Copyright © 2013 Red Hat, Inc. + * + * Permission to use, copy, modify, distribute, and sell this software and + * its documentation for any purpose is hereby granted without fee, provided + * that the above copyright notice appear in all copies and that both that + * copyright notice and this permission notice appear in supporting + * documentation, and that the name of the copyright holders not be used in + * advertising or publicity pertaining to distribution of the software + * without specific, written prior permission. The copyright holders make + * no representations about the suitability of this software for any + * purpose. It is provided "as is" without express or implied warranty. + * + * THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS + * SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS, IN NO EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY + * SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER + * RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF + * CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ + +#ifndef WESTON_ZALLOC_H +#define WESTON_ZALLOC_H + +#ifdef __cplusplus +extern "C" { +#endif + +#include + +static inline void * +zalloc(size_t size) +{ + return calloc(1, size); +} + +#ifdef __cplusplus +} +#endif + +#endif /* WESTON_ZALLOC_H */ diff --git a/src/Makefile.am b/src/Makefile.am index d06e773d..c7ce9820 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -46,6 +46,7 @@ weston_SOURCES = \ pixman-renderer.h \ ../shared/matrix.c \ ../shared/matrix.h \ + ../shared/zalloc.h \ weston-launch.h \ weston-egl-ext.h diff --git a/src/compositor.h b/src/compositor.h index 7fbc4b3b..7600ce3f 100644 --- a/src/compositor.h +++ b/src/compositor.h @@ -37,6 +37,7 @@ extern "C" { #include "version.h" #include "matrix.h" #include "config-parser.h" +#include "zalloc.h" #ifndef MIN #define MIN(x,y) (((x) < (y)) ? (x) : (y))