summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRob Landley2006-05-19 20:36:49 +0000
committerRob Landley2006-05-19 20:36:49 +0000
commit80b8ff07ca4c39114875c7fd3230c4e9ae823f83 (patch)
tree0595f3f0671af4a40d5ee87c18bcf4dc4def3a41
parentb1629b1b2abc17a6430e4173d64d7956784118e0 (diff)
downloadbusybox-80b8ff07ca4c39114875c7fd3230c4e9ae823f83.zip
busybox-80b8ff07ca4c39114875c7fd3230c4e9ae823f83.tar.gz
A pending item in my tree I might as well check in: I plan to migrate calloc()
and bb_calloc() calls to bb_xzalloc() which allocates prezeroed memory but only takes one argument (the size).
-rw-r--r--include/libbb.h1
-rw-r--r--libbb/xfuncs.c9
2 files changed, 10 insertions, 0 deletions
diff --git a/include/libbb.h b/include/libbb.h
index 461c28f..ca3afea 100644
--- a/include/libbb.h
+++ b/include/libbb.h
@@ -183,6 +183,7 @@ void run_applet_by_name(const char *name, int argc, char **argv);
* to have the prototypes here unconditionally. */
extern void *xmalloc(size_t size);
extern void *xrealloc(void *old, size_t size);
+extern void *xzalloc(size_t size);
extern void *xcalloc(size_t nmemb, size_t size);
extern char *bb_xstrdup (const char *s);
diff --git a/libbb/xfuncs.c b/libbb/xfuncs.c
index fa6aa0f..d3c9e41 100644
--- a/libbb/xfuncs.c
+++ b/libbb/xfuncs.c
@@ -37,6 +37,15 @@ void *xrealloc(void *ptr, size_t size)
}
#endif
+#ifdef L_xzalloc
+void *xzalloc(size_t size)
+{
+ void *ptr = xmalloc(size);
+ memset(ptr, 0, size);
+ return ptr;
+}
+#endif
+
#ifdef L_xcalloc
void *xcalloc(size_t nmemb, size_t size)
{