diff options
-rw-r--r-- | include/util.h | 2 | ||||
-rw-r--r-- | src/util.c | 22 |
2 files changed, 24 insertions, 0 deletions
diff --git a/include/util.h b/include/util.h index bdf260e..5a5a819 100644 --- a/include/util.h +++ b/include/util.h @@ -10,5 +10,7 @@ enum exit_status { }; void *must_malloc(size_t size); +void *must_calloc(size_t nmemb, size_t size); +void *must_realloc(void *ptr, size_t size); #endif @@ -11,3 +11,25 @@ must_malloc(size_t size) exit(EXIT_ABNORMAL); } } + +void * +must_calloc(size_t nmemb, size_t size) +{ + void *ret = calloc(nmemb, size); + if (ret == NULL) { + fprintf(stderr, "out of memory\n"); + exit(EXIT_ABNORMAL); + } + return ret; +} + +void * +must_realloc(void *ptr, size_t size) +{ + void *ret = realloc(ptr, size); + if (ret == NULL) { + fprintf(stderr, "out of memory\n"); + exit(EXIT_ABNORMAL); + } + return ret; +} |