From 87efdaf0a7a804cda24749246b26772bbdcaef5e Mon Sep 17 00:00:00 2001 From: Oleksandr Natalenko Date: Mon, 2 Jan 2017 20:54:08 +0100 Subject: utils: provide array allocation wrapper This will be used for allocating memory for arrays in heap instead of keeping them on stack. Signed-off-by: Oleksandr Natalenko Signed-off-by: Florian Westphal --- src/utils.c | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'src/utils.c') diff --git a/src/utils.c b/src/utils.c index 65dabf41..47f5b791 100644 --- a/src/utils.c +++ b/src/utils.c @@ -39,6 +39,17 @@ void *xmalloc(size_t size) return ptr; } +void *xmalloc_array(size_t nmemb, size_t size) +{ + assert(size != 0); + assert(nmemb != 0); + + if (nmemb > SIZE_MAX / size) + memory_allocation_error(); + + return xmalloc(nmemb * size); +} + void *xrealloc(void *ptr, size_t size) { ptr = realloc(ptr, size); -- cgit v1.2.3