aboutsummaryrefslogtreecommitdiffstats
path: root/src/util
diff options
context:
space:
mode:
Diffstat (limited to 'src/util')
-rw-r--r--src/util/emalloc.h12
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;
}