From: Brad Roberts Date: Sun, 15 May 2005 02:04:25 +0000 (-0700) Subject: Cleanup the x-allocation functions X-Git-Tag: v0.99~566 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=127cfd0d2f1db6ef690e01aafd1c660ea1c82499;p=git.git Cleanup the x-allocation functions xmalloc() and xrealloc() now take their sizes as size_t-type arguments. Introduced complementary xcalloc(). Signed-off-by: Brad Roberts Signed-off-by: Petr Baudis --- diff --git a/cache.h b/cache.h index c06b94107..7696766dd 100644 --- a/cache.h +++ b/cache.h @@ -179,7 +179,7 @@ const char *show_date(unsigned long time, int timezone); void parse_date(char *date, char *buf, int bufsize); void datestamp(char *buf, int bufsize); -static inline void *xmalloc(int size) +static inline void *xmalloc(size_t size) { void *ret = malloc(size); if (!ret) @@ -187,7 +187,7 @@ static inline void *xmalloc(int size) return ret; } -static inline void *xrealloc(void *ptr, int size) +static inline void *xrealloc(void *ptr, size_t size) { void *ret = realloc(ptr, size); if (!ret) @@ -195,4 +195,12 @@ static inline void *xrealloc(void *ptr, int size) return ret; } +static inline void *xcalloc(size_t nmemb, size_t size) +{ + void *ret = calloc(nmemb, size); + if (!ret) + die("Out of memory, calloc failed"); + return ret; +} + #endif /* CACHE_H */