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.
This commit is contained in:
		| @@ -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++) { | ||||
|   | ||||
| @@ -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); | ||||
| } | ||||
|  | ||||
|   | ||||
| @@ -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) \ | ||||
|   | ||||
| @@ -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) | ||||
|   | ||||
| @@ -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; | ||||
|   | ||||
| @@ -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 */ | ||||
|   | ||||
| @@ -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) */ | ||||
|   | ||||
| @@ -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); | ||||
|   | ||||
| @@ -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 | ||||
|   | ||||
| @@ -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) { | ||||
|   | ||||
| @@ -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 ); | ||||
|   | ||||
| @@ -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 | ||||
|   | ||||
| @@ -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) | ||||
|   | ||||
| @@ -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 { | ||||
|   | ||||
| @@ -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; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user