diff options
Diffstat (limited to 'e2fsprogs')
-rw-r--r-- | e2fsprogs/fsck.c | 13 | ||||
-rw-r--r-- | e2fsprogs/mke2fs.c | 5 |
2 files changed, 7 insertions, 11 deletions
diff --git a/e2fsprogs/fsck.c b/e2fsprogs/fsck.c index bb334e3dd..93514a391 100644 --- a/e2fsprogs/fsck.c +++ b/e2fsprogs/fsck.c @@ -363,7 +363,6 @@ static char *find_fsck(char *type) { char *s; const char *tpl; - char *prog; char *p = string_copy(fsck_path); struct stat st; @@ -371,12 +370,12 @@ static char *find_fsck(char *type) tpl = (strncmp(type, "fsck.", 5) ? "%s/fsck.%s" : "%s/%s"); for(s = strtok(p, ":"); s; s = strtok(NULL, ":")) { - bb_xasprintf(&prog, tpl, s, type); - if (stat(prog, &st) == 0) break; - free(prog); + s = bb_xasprintf(tpl, s, type); + if (stat(s, &st) == 0) break; + free(s); } free(p); - return(s ? prog : NULL); + return(s); } static int progress_active(void) @@ -410,7 +409,7 @@ static int execute(const char *type, const char *device, const char *mntpt, return ENOMEM; memset(inst, 0, sizeof(struct fsck_instance)); - bb_xasprintf(&prog, "fsck.%s", type); + prog = bb_xasprintf("fsck.%s", type); argv[0] = prog; argc = 1; @@ -1189,7 +1188,7 @@ int fsck_main(int argc, char *argv[]) /* Update our search path to include uncommon directories. */ if (oldpath) { - bb_xasprintf(&fsck_path, "%s:%s", fsck_prefix_path, oldpath); + fsck_path = bb_xasprintf("%s:%s", fsck_prefix_path, oldpath); } else { fsck_path = string_copy(fsck_prefix_path); } diff --git a/e2fsprogs/mke2fs.c b/e2fsprogs/mke2fs.c index 017fb53c5..6cd5bd420 100644 --- a/e2fsprogs/mke2fs.c +++ b/e2fsprogs/mke2fs.c @@ -794,10 +794,7 @@ static int PRS(int argc, char *argv[]) /* Update our PATH to include /sbin */ if (oldpath) { - char *newpath; - - bb_xasprintf(&newpath, "%s:%s", PATH_SET, oldpath); - putenv(newpath); + putenv (bb_xasprintf("%s:%s", PATH_SET, oldpath)); } else putenv (PATH_SET); |