From 807640e49b0d8b67b5bf424db0c221812483f55d Mon Sep 17 00:00:00 2001 From: Hisham Date: Wed, 3 Feb 2016 12:42:25 +0000 Subject: Shorten the code using the err() function. --- XAlloc.c | 29 +++++++++++------------------ 1 file changed, 11 insertions(+), 18 deletions(-) diff --git a/XAlloc.c b/XAlloc.c index c3c1ae3e..cc290211 100644 --- a/XAlloc.c +++ b/XAlloc.c @@ -5,22 +5,24 @@ #ifndef _GNU_SOURCE #define _GNU_SOURCE #endif -#include +#include +#include #include /*{ #include }*/ -static char oomMessage[] = "Out of memory!\n"; +static inline void fail() { + curs_set(1); + endwin(); + err(1, NULL); +} void* xMalloc(size_t size) { void* data = malloc(size); if (!data && size > 0) { - curs_set(1); - endwin(); - write(2, oomMessage, sizeof oomMessage - 1); - exit(1); + fail(); } return data; } @@ -28,10 +30,7 @@ void* xMalloc(size_t size) { void* xCalloc(size_t nmemb, size_t size) { void* data = calloc(nmemb, size); if (!data) { - curs_set(1); - endwin(); - write(2, oomMessage, sizeof oomMessage - 1); - exit(1); + fail(); } return data; } @@ -39,10 +38,7 @@ void* xCalloc(size_t nmemb, size_t size) { void* xRealloc(void* ptr, size_t size) { void* data = realloc(ptr, size); if (!data && size > 0) { - curs_set(1); - endwin(); - write(2, oomMessage, sizeof oomMessage - 1); - exit(1); + fail(); } return data; } @@ -50,10 +46,7 @@ void* xRealloc(void* ptr, size_t size) { char* xStrdup(const char* str) { char* data = strdup(str); if (!data && str) { - curs_set(1); - endwin(); - write(2, oomMessage, sizeof oomMessage - 1); - exit(1); + fail(); } return data; } -- cgit v1.2.3