diff options
author | nicm <nicm> | 2014-10-08 17:35:58 +0000 |
---|---|---|
committer | nicm <nicm> | 2014-10-08 17:35:58 +0000 |
commit | a27ba6e38006c12c48de88600b8cff9f6aabfed7 (patch) | |
tree | fc8ecf1c1b965f70b95d0a3e472cd0b1a2e1d2c9 /xmalloc.c | |
parent | 77efcf8bdd14cd19dc445cf6e44bba7af414939c (diff) | |
download | rtmux-a27ba6e38006c12c48de88600b8cff9f6aabfed7.tar.gz rtmux-a27ba6e38006c12c48de88600b8cff9f6aabfed7.tar.bz2 rtmux-a27ba6e38006c12c48de88600b8cff9f6aabfed7.zip |
Add xreallocarray and remove nmemb argument from xrealloc.
Diffstat (limited to 'xmalloc.c')
-rw-r--r-- | xmalloc.c | 17 |
1 files changed, 15 insertions, 2 deletions
@@ -68,7 +68,20 @@ xmalloc(size_t size) } void * -xrealloc(void *oldptr, size_t nmemb, size_t size) +xrealloc(void *oldptr, size_t newsize) +{ + void *newptr; + + if (newsize == 0) + fatalx("zero size"); + if ((newptr = realloc(oldptr, newsize)) == NULL) + fatal("xrealloc failed"); + + return (newptr); +} + +void * +xreallocarray(void *oldptr, size_t nmemb, size_t size) { size_t newsize = nmemb * size; void *newptr; @@ -78,7 +91,7 @@ xrealloc(void *oldptr, size_t nmemb, size_t size) if (SIZE_MAX / nmemb < size) fatalx("nmemb * size > SIZE_MAX"); if ((newptr = realloc(oldptr, newsize)) == NULL) - fatal("xrealloc failed"); + fatal("xreallocarray failed"); return (newptr); } |