summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorRob Landley <rob@landley.net>2006-08-03 20:07:35 +0000
committerRob Landley <rob@landley.net>2006-08-03 20:07:35 +0000
commit081e38483ec55dcfca3d92434fe94f0777ed962d (patch)
tree2d31e921a759c769f339055c9946205fabef5cbf
parent86b4d64aa3f5ca4c2824a8948541b0e18dfe0a74 (diff)
Remove xcalloc() and convert its callers to xzalloc(). About half of them
were using "1" as one of the arguments anyway, and as for the rest a multiply and a push isn't noticeably bigger than pushing two arguments on the stack.
-rw-r--r--coreutils/cut.c4
-rw-r--r--coreutils/ls.c2
-rw-r--r--coreutils/sort.c2
-rw-r--r--e2fsprogs/fsck.c4
-rw-r--r--e2fsprogs/mke2fs.c2
-rw-r--r--findutils/grep.c2
-rw-r--r--findutils/xargs.c2
-rw-r--r--include/libbb.h1
-rw-r--r--libbb/xfuncs.c9
-rw-r--r--modutils/insmod.c2
-rw-r--r--modutils/modprobe.c4
-rw-r--r--networking/httpd.c2
-rw-r--r--networking/traceroute.c10
-rw-r--r--shell/cmdedit.c4
-rw-r--r--util-linux/fdisk.c4
15 files changed, 22 insertions, 32 deletions
diff --git a/coreutils/cut.c b/coreutils/cut.c
index 98fdb5356..1b80e7e73 100644
--- a/coreutils/cut.c
+++ b/coreutils/cut.c
@@ -135,7 +135,7 @@ static void cut_line_by_chars(const char *line)
{
int c, l;
/* set up a list so we can keep track of what's been printed */
- char *printed = xcalloc(strlen(line), sizeof(char));
+ char *printed = xzalloc(strlen(line));
/* print the chars specified in each cut list */
for (c = 0; c < nlists; c++) {
@@ -172,7 +172,7 @@ static void cut_line_by_fields(char *line)
}
/* set up a list so we can keep track of what's been printed */
- printed = xcalloc(strlen(line), sizeof(char));
+ printed = xzalloc(strlen(line));
/* process each list on this line, for as long as we've got a line to process */
for (c = 0; c < nlists && line; c++) {
diff --git a/coreutils/ls.c b/coreutils/ls.c
index 6b9fbbfc9..828127a4a 100644
--- a/coreutils/ls.c
+++ b/coreutils/ls.c
@@ -300,7 +300,7 @@ static struct dnode **dnalloc(int num)
if (num < 1)
return (NULL);
- p = (struct dnode **) xcalloc((size_t) num, (size_t) (sizeof(struct dnode *)));
+ p = (struct dnode **) xzalloc(num * sizeof(struct dnode *));
return (p);
}
diff --git a/coreutils/sort.c b/coreutils/sort.c
index 195e13d13..ea7752d2a 100644
--- a/coreutils/sort.c
+++ b/coreutils/sort.c
@@ -120,7 +120,7 @@ static struct sort_key *add_key(void)
{
struct sort_key **pkey=&key_list;
while(*pkey) pkey=&((*pkey)->next_key);
- return *pkey=xcalloc(1,sizeof(struct sort_key));
+ return *pkey = xzalloc(sizeof(struct sort_key));
}
#define GET_LINE(fp) (global_flags&FLAG_z) ? bb_get_chunk_from_file(fp,NULL) \
diff --git a/e2fsprogs/fsck.c b/e2fsprogs/fsck.c
index afb6f0c7d..99ffed1c5 100644
--- a/e2fsprogs/fsck.c
+++ b/e2fsprogs/fsck.c
@@ -877,8 +877,8 @@ static void compile_fs_type(char *fs_type, struct fs_type_compile *cmp)
}
}
- cmp->list = xcalloc(num, sizeof(char *));
- cmp->type = xcalloc(num, sizeof(int));
+ cmp->list = xzalloc(num * sizeof(char *));
+ cmp->type = xzalloc(num * sizeof(int));
cmp->negate = 0;
if (!fs_type)
diff --git a/e2fsprogs/mke2fs.c b/e2fsprogs/mke2fs.c
index ea6afb92c..687f18567 100644
--- a/e2fsprogs/mke2fs.c
+++ b/e2fsprogs/mke2fs.c
@@ -401,7 +401,7 @@ static errcode_t zero_blocks(ext2_filsys fs, blk_t blk, int num,
}
/* Allocate the zeroizing buffer if necessary */
if (!buf) {
- buf = xcalloc(fs->blocksize, STRIDE_LENGTH);
+ buf = xzalloc(fs->blocksize * STRIDE_LENGTH);
}
/* OK, do the write loop */
next_update = 0;
diff --git a/findutils/grep.c b/findutils/grep.c
index b53bf490a..c2c4e7095 100644
--- a/findutils/grep.c
+++ b/findutils/grep.c
@@ -321,7 +321,7 @@ int grep_main(int argc, char **argv)
lines_before = 0;
lines_after = 0;
} else if(lines_before > 0)
- before_buf = (char **)xcalloc(lines_before, sizeof(char *));
+ before_buf = (char **)xzalloc(lines_before * sizeof(char *));
}
#else
/* with auto sanity checks */
diff --git a/findutils/xargs.c b/findutils/xargs.c
index e46708303..d067a3f48 100644
--- a/findutils/xargs.c
+++ b/findutils/xargs.c
@@ -503,7 +503,7 @@ int xargs_main(int argc, char **argv)
/* allocating pointers for execvp:
a*arg, n*arg from stdin, NULL */
- args = xcalloc(n + a + 1, sizeof(char *));
+ args = xzalloc((n + a + 1) * sizeof(char *));
/* Store the command to be executed
(taken from the command line) */
diff --git a/include/libbb.h b/include/libbb.h
index 5b2977fce..745f8372b 100644
--- a/include/libbb.h
+++ b/include/libbb.h
@@ -230,7 +230,6 @@ void run_applet_by_name(const char *name, int argc, char **argv);
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 *xstrdup (const char *s);
extern char *xstrndup (const char *s, int n);
diff --git a/libbb/xfuncs.c b/libbb/xfuncs.c
index 699d09c67..31f0febca 100644
--- a/libbb/xfuncs.c
+++ b/libbb/xfuncs.c
@@ -41,15 +41,6 @@ void *xzalloc(size_t size)
}
#endif
-#ifdef L_xcalloc
-void *xcalloc(size_t nmemb, size_t size)
-{
- void *ptr = calloc(nmemb, size);
- if (ptr == NULL && nmemb != 0 && size != 0)
- bb_error_msg_and_die(bb_msg_memory_exhausted);
- return ptr;
-}
-#endif
#endif /* DMALLOC */
#ifdef L_xstrdup
diff --git a/modutils/insmod.c b/modutils/insmod.c
index be41e4449..614eb2f6b 100644
--- a/modutils/insmod.c
+++ b/modutils/insmod.c
@@ -3490,7 +3490,7 @@ static struct obj_file *obj_load(FILE * fp, int loadprogbits)
/* Allocate space for a table of local symbols. */
j = f->local_symtab_size = sec->header.sh_info;
- f->local_symtab = xcalloc(j, sizeof(struct obj_symbol *));
+ f->local_symtab = xzalloc(j * sizeof(struct obj_symbol *));
/* Insert all symbols into the hash table. */
for (j = 1, ++sym; j < nsym; ++j, ++sym) {
diff --git a/modutils/modprobe.c b/modutils/modprobe.c
index 5a94c7c92..efb119e3e 100644
--- a/modutils/modprobe.c
+++ b/modutils/modprobe.c
@@ -294,10 +294,10 @@ static void include_conf ( struct dep_t **first, struct dep_t **current, char *b
if ( parse_tag_value ( buffer + 6, &alias, &mod )) {
/* handle alias as a module dependent on the aliased module */
if ( !*current ) {
- (*first) = (*current) = (struct dep_t *) xcalloc ( 1, sizeof ( struct dep_t ));
+ (*first) = (*current) = (struct dep_t *) xzalloc (sizeof ( struct dep_t ));
}
else {
- (*current)-> m_next = (struct dep_t *) xcalloc ( 1, sizeof ( struct dep_t ));
+ (*current)-> m_next = (struct dep_t *) xzalloc (sizeof ( struct dep_t ));
(*current) = (*current)-> m_next;
}
(*current)-> m_name = xstrdup ( alias );
diff --git a/networking/httpd.c b/networking/httpd.c
index 4e0ab92d5..8852cbb62 100644
--- a/networking/httpd.c
+++ b/networking/httpd.c
@@ -1929,7 +1929,7 @@ int httpd_main(int argc, char *argv[])
USE_FEATURE_HTTPD_AUTH_MD5(const char *pass;)
- config = xcalloc(1, sizeof(*config));
+ config = xzalloc(sizeof(*config));
#ifdef CONFIG_FEATURE_HTTPD_BASIC_AUTH
config->realm = "Web Server Authentication";
#endif
diff --git a/networking/traceroute.c b/networking/traceroute.c
index 446490303..9c1d6346e 100644
--- a/networking/traceroute.c
+++ b/networking/traceroute.c
@@ -375,7 +375,7 @@ ifaddrlist(struct IFADDRLIST **ipaddrp)
ifend = (struct ifreq *)((char *)ibuf + ifc.ifc_len);
nipaddr = 1 + (ifc.ifc_len / sizeof(struct ifreq));
- st_ifaddrlist = xcalloc(nipaddr, sizeof(struct IFADDRLIST));
+ st_ifaddrlist = xzalloc(nipaddr * sizeof(struct IFADDRLIST));
al = st_ifaddrlist;
nipaddr = 0;
@@ -872,12 +872,12 @@ gethostinfo(const char *host)
char **p;
u_int32_t addr, *ap;
- hi = xcalloc(1, sizeof(*hi));
+ hi = xzalloc(sizeof(*hi));
addr = inet_addr(host);
if ((int32_t)addr != -1) {
hi->name = xstrdup(host);
hi->n = 1;
- hi->addrs = xcalloc(1, sizeof(hi->addrs[0]));
+ hi->addrs = xzalloc(sizeof(hi->addrs[0]));
hi->addrs[0] = addr;
return hi;
}
@@ -889,7 +889,7 @@ gethostinfo(const char *host)
for (n = 0, p = hp->h_addr_list; *p != NULL; ++n, ++p)
continue;
hi->n = n;
- hi->addrs = xcalloc(n, sizeof(hi->addrs[0]));
+ hi->addrs = xzalloc(n * sizeof(hi->addrs[0]));
for (ap = hi->addrs, p = hp->h_addr_list; *p != NULL; ++ap, ++p)
memcpy(ap, *p, sizeof(*ap));
return hi;
@@ -1161,7 +1161,7 @@ traceroute_main(int argc, char *argv[])
xsetgid(getgid());
xsetuid(getuid());
- outip = (struct ip *)xcalloc(1, (unsigned)packlen);
+ outip = (struct ip *)xzalloc(packlen);
outip->ip_v = IPVERSION;
if (tos_str)
diff --git a/shell/cmdedit.c b/shell/cmdedit.c
index 0af1a2ad0..03aaa3b2e 100644
--- a/shell/cmdedit.c
+++ b/shell/cmdedit.c
@@ -311,7 +311,7 @@ static void parse_prompt(const char *prmt_ptr)
int prmt_len = 0;
size_t cur_prmt_len = 0;
char flg_not_length = '[';
- char *prmt_mem_ptr = xcalloc(1, 1);
+ char *prmt_mem_ptr = xzalloc(1);
char *pwd_buf = xgetcwd(0);
char buf2[PATH_MAX + 1];
char buf[2];
@@ -344,7 +344,7 @@ static void parse_prompt(const char *prmt_ptr)
case 'h':
pbuf = hostname_buf;
if (pbuf == 0) {
- pbuf = xcalloc(256, 1);
+ pbuf = xzalloc(256);
if (gethostname(pbuf, 255) < 0) {
strcpy(pbuf, "?");
} else {
diff --git a/util-linux/fdisk.c b/util-linux/fdisk.c
index 1c935463e..310bd555e 100644
--- a/util-linux/fdisk.c
+++ b/util-linux/fdisk.c
@@ -5162,7 +5162,7 @@ add_partition(int n, int sys)
ext_index = n;
pen->ext_pointer = p;
pe4->offset = extended_offset = start;
- pe4->sectorbuffer = xcalloc(1, sector_size);
+ pe4->sectorbuffer = xzalloc(sector_size);
pe4->part_table = pt_offset(pe4->sectorbuffer, 0);
pe4->ext_pointer = pe4->part_table + 1;
pe4->changed = 1;
@@ -5176,7 +5176,7 @@ add_logical(void)
if (partitions > 5 || ptes[4].part_table->sys_ind) {
struct pte *pe = &ptes[partitions];
- pe->sectorbuffer = xcalloc(1, sector_size);
+ pe->sectorbuffer = xzalloc(sector_size);
pe->part_table = pt_offset(pe->sectorbuffer, 0);
pe->ext_pointer = pe->part_table + 1;
pe->offset = 0;