From ca438395855f1e8de844e45b1fd12e2d02b21bfe Mon Sep 17 00:00:00 2001 From: Hugues Delorme Date: Mon, 30 Mar 2015 16:48:05 +0200 Subject: [PATCH] gmio_core: force size to 0 for NULL buffer --- src/gmio_core/buffer.c | 2 +- src/gmio_core/buffer.h | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/gmio_core/buffer.c b/src/gmio_core/buffer.c index 9967804..dd72ad9 100644 --- a/src/gmio_core/buffer.c +++ b/src/gmio_core/buffer.c @@ -35,7 +35,7 @@ gmio_buffer_t gmio_buffer(void* ptr, size_t size) { gmio_buffer_t buff; buff.ptr = ptr; - buff.size = size; + buff.size = ptr != NULL ? size : 0; buff.deallocate_func = NULL; return buff; } diff --git a/src/gmio_core/buffer.h b/src/gmio_core/buffer.h index ee5dd0c..012bf65 100644 --- a/src/gmio_core/buffer.h +++ b/src/gmio_core/buffer.h @@ -40,7 +40,10 @@ typedef struct gmio_buffer gmio_buffer_t; GMIO_C_LINKAGE_BEGIN -/*! Returns an initialized gmio_buffer object */ +/*! Returns an initialized gmio_buffer object + * + * If \p ptr is NULL then gmio_buffer::size is forced to \c 0 + */ GMIO_LIB_EXPORT gmio_buffer_t gmio_buffer(void* ptr, size_t size); /*! Returns a gmio_buffer object allocated with standard malloc() */