diff options
Diffstat (limited to 'src/util/emalloc.h')
| -rw-r--r-- | src/util/emalloc.h | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/util/emalloc.h b/src/util/emalloc.h index 7c4266e..81816be 100644 --- a/src/util/emalloc.h +++ b/src/util/emalloc.h @@ -3,6 +3,7 @@ #define emalloc(...) enmalloc(1, __VA_ARGS__) #define ecalloc(...) encalloc(1, __VA_ARGS__) +#define erealloc(...) enrealloc(1, __VA_ARGS__) static inline void * enmalloc(int status, size_t n) @@ -18,6 +19,15 @@ encalloc(int status, size_t n, size_t m) { void *ptr = calloc(n, m); if (!ptr) - enprintf(status, "malloc: out of memory\n"); + enprintf(status, "calloc: out of memory\n"); + return ptr; +} + +static inline void * +enrealloc(int status, void *ptr, size_t n) +{ + ptr = realloc(ptr, n); + if (!ptr) + enprintf(status, "realloc: out of memory\n"); return ptr; } |
