aboutsummaryrefslogtreecommitdiff
path: root/xmalloc.c
diff options
context:
space:
mode:
authorThomas Adam <thomas@xteddy.org>2019-11-28 12:18:41 +0000
committerThomas Adam <thomas@xteddy.org>2019-11-28 12:18:41 +0000
commit5f5f029e3b3a782dc616778739b2801b00b17c0e (patch)
treefad35dccc37c54e45d0ecc497d3b915dd7b835aa /xmalloc.c
parentc13838436e6883d191374f1628e675bfbb8c8aeb (diff)
parentfa409194d3dfe0095bf6572a253772f2825f5dec (diff)
downloadrtmux-5f5f029e3b3a782dc616778739b2801b00b17c0e.tar.gz
rtmux-5f5f029e3b3a782dc616778739b2801b00b17c0e.tar.bz2
rtmux-5f5f029e3b3a782dc616778739b2801b00b17c0e.zip
Merge branch 'obsd-master'
Diffstat (limited to 'xmalloc.c')
-rw-r--r--xmalloc.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/xmalloc.c b/xmalloc.c
index f249e397..d11d8dc7 100644
--- a/xmalloc.c
+++ b/xmalloc.c
@@ -71,6 +71,20 @@ xreallocarray(void *ptr, size_t nmemb, size_t size)
return new_ptr;
}
+void *
+xrecallocarray(void *ptr, size_t oldnmemb, size_t nmemb, size_t size)
+{
+ void *new_ptr;
+
+ if (nmemb == 0 || size == 0)
+ fatalx("xrecallocarray: zero size");
+ new_ptr = recallocarray(ptr, oldnmemb, nmemb, size);
+ if (new_ptr == NULL)
+ fatalx("xrecallocarray: allocating %zu * %zu bytes: %s",
+ nmemb, size, strerror(errno));
+ return new_ptr;
+}
+
char *
xstrdup(const char *str)
{