summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLibravatar Brad Roberts <braddr@puremagic.com>2005-05-14 19:04:25 -0700
committerLibravatar Petr Baudis <xpasky@machine.sinus.cz>2005-05-15 11:58:12 +0200
commit127cfd0d2f1db6ef690e01aafd1c660ea1c82499 (patch)
tree69a33292d2e84b3830583592ff19e94cb6a4ecb6
parent[PATCH 3/3] Rename git-diff-tree-helper to git-diff-helper (part 2). (diff)
downloadtgif-127cfd0d2f1db6ef690e01aafd1c660ea1c82499.tar.xz
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>
-rw-r--r--cache.h12
1 files changed, 10 insertions, 2 deletions
diff --git a/cache.h b/cache.h
index c06b94107e..7696766dde 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 */