libbb: make xrealloc_vector zero out the realloc'ed tail

function                                             old     new   delta
xrealloc_vector_helper                                51      76     +25
man_main                                             712     705      -7
act                                                  250     234     -16
create_list                                           91      70     -21
getopt_main                                          695     664     -31
load_dep_bb                                          281     248     -33
fileAction                                           744     709     -35
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/6 up/down: 25/-143)          Total: -118 bytes
This commit is contained in:
Denis Vlasenko
2008-08-04 13:20:36 +00:00
parent 2b576b8e76
commit 27842288b3
9 changed files with 30 additions and 20 deletions

View File

@@ -270,10 +270,9 @@ static FAST_FUNC int fileAction(const char *pathname,
cur = module_count++;
modinfo = xrealloc_vector(modinfo, 12, cur);
//TODO: use zeroing version of xrealloc_vector?
modinfo[cur].pathname = xstrdup(pathname);
modinfo[cur].aliases = NULL;
modinfo[cur+1].pathname = NULL;
/*modinfo[cur].aliases = NULL; - xrealloc_vector did it */
/*modinfo[cur+1].pathname = NULL;*/
if (!pathname_matches_modname(fname, modname_to_match)) {
dbg1_error_msg("'%s' module name doesn't match", pathname);
@@ -330,8 +329,7 @@ static int load_dep_bb(void)
space = strchrnul(line, ' ');
cur = module_count++;
modinfo = xrealloc_vector(modinfo, 12, cur);
//TODO: use zeroing version of xrealloc_vector?
modinfo[cur+1].pathname = NULL;
/*modinfo[cur+1].pathname = NULL; - xrealloc_vector did it */
modinfo[cur].pathname = line; /* we take ownership of malloced block here */
if (*space)
*space++ = '\0';