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 <braddr@puremagic.com>
Signed-off-by: Petr Baudis <pasky@ucw.cz>
diff --git a/cache.h b/cache.h
index c06b941..7696766 100644
--- a/cache.h
+++ b/cache.h
@@ -179,7 +179,7 @@
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 @@
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 @@
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 */