Remove xcalloc() and convert its callers to xzalloc(). About half of them
authorRob Landley <rob@landley.net>
Thu, 3 Aug 2006 20:07:35 +0000 (20:07 -0000)
committerRob Landley <rob@landley.net>
Thu, 3 Aug 2006 20:07:35 +0000 (20:07 -0000)
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.

15 files changed:
coreutils/cut.c
coreutils/ls.c
coreutils/sort.c
e2fsprogs/fsck.c
e2fsprogs/mke2fs.c
findutils/grep.c
findutils/xargs.c
include/libbb.h
libbb/xfuncs.c
modutils/insmod.c
modutils/modprobe.c
networking/httpd.c
networking/traceroute.c
shell/cmdedit.c
util-linux/fdisk.c

index 98fdb53564568bf6690b624afe7cb6ab082cdaf3..1b80e7e73687e968d95e39723579599235f39d98 100644 (file)
@@ -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++) {
index 6b9fbbfc961d82f36ecab0105ef935ea515485e1..828127a4a2fb711444280885bb15172e7a7c77ff 100644 (file)
@@ -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);
 }
 
index 195e13d13154e1b94e221a1dd6f8d7520f2f8643..ea7752d2a6e8e264785848ff15a04de2dd07c783 100644 (file)
@@ -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) \
index afb6f0c7d75c05a94e27fbb130c08204d2889edc..99ffed1c557718100b9ff853bc0132e221fd26fc 100644 (file)
@@ -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)
index ea6afb92c304a4085e2cc1c9f3fe932d2b1e7468..687f18567d7364c465ed5fda2b5081877b5206c8 100644 (file)
@@ -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;
index b53bf490a8d96a4ea5fcf6556133b1e2f6b9962c..c2c4e709506c4a39c188a299018f3c7b3f834d2e 100644 (file)
@@ -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 */
index e46708303c5ea0538310e49eb4b2b02414729f31..d067a3f480f6ca38739ea1808bf5ce6ba4820222 100644 (file)
@@ -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) */
index 5b2977fce61cc56be911890d8040ea23d1cef5b3..745f8372b49bd83b22d040c4a27a38ec20e3057b 100644 (file)
@@ -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);
index 699d09c67c90a5dfff72d6a9dcfec3c4b7a47ba5..31f0febcad11276908f164aab52931dc9986325b 100644 (file)
@@ -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
index be41e4449320d848eb3b894d4362c8a169faad2c..614eb2f6b67248a7d783585b19a7c7da3a789a37 100644 (file)
@@ -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) {
index 5a94c7c92349aa11bbb6685b794376ed7d24f75e..efb119e3e42ae4655f8b60e372fd7f2df17f0896 100644 (file)
@@ -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 );
index 4e0ab92d5300776a7849783ea29f4c075348be89..8852cbb620561ef8d75b884e974ee3168cc98ed1 100644 (file)
@@ -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
index 446490303efa15e233960eaa27b9c85436902f7a..9c1d6346e76d6c0bd2e81d5a51d5c210d704a019 100644 (file)
@@ -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)
index 0af1a2ad09e50ec0f7e46d0202c55cd006893bdd..03aaa3b2e5f7e048d13d7a5c7535fa352719876a 100644 (file)
@@ -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 {
index 1c935463eadb0a87866bb52779d68d44379d0f6e..310bd555e9224625fa36b1420ef2abd881339744 100644 (file)
@@ -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;