change interface to bb_xasprintf() - more perfect for me.
author"Vladimir N. Oleynik" <dzo@simtreas.ru>
Thu, 29 Sep 2005 16:18:57 +0000 (16:18 -0000)
committer"Vladimir N. Oleynik" <dzo@simtreas.ru>
Thu, 29 Sep 2005 16:18:57 +0000 (16:18 -0000)
ln.c: error_msg(str)->error_msg(%s, str) - remove standart "feature" for hackers
reduce 100 bytes don't care in sum

16 files changed:
archival/tar.c
coreutils/expr.c
coreutils/ln.c
e2fsprogs/fsck.c
e2fsprogs/mke2fs.c
include/libbb.h
libbb/bb_asprintf.c
libbb/concat_path_file.c
libbb/run_shell.c
loginutils/adduser.c
miscutils/less.c
miscutils/mountpoint.c
modutils/insmod.c
networking/ifupdown.c
procps/sysctl.c
shell/cmdedit.c

index 7a82b441b16f2a12a8c16f131931833e84a4817f..f6750ae3356fb136409373aa64beb65620b6235b 100644 (file)
@@ -695,12 +695,8 @@ int tar_main(int argc, char **argv)
        }
 
        /* Prepend '-' to the first argument if required */
-       if (argv[1][0] != '-') {
-               char *tmp;
-
-               bb_xasprintf(&tmp, "-%s", argv[1]);
-               argv[1] = tmp;
-       }
+       if (argv[1][0] != '-') 
+               argv[1] = bb_xasprintf("-%s", argv[1]);
 
        /* Initialise default values */
        tar_handle = init_handle();
index 3f052d92a74f301e56206343629d70b9cce525ee..969d9fff584f1032d307527fc9d38f7bda394d85 100644 (file)
@@ -147,7 +147,7 @@ static int null (VALUE *v)
 static void tostring (VALUE *v)
 {
        if (v->type == integer) {
-               bb_xasprintf (&(v->u.s), "%d", v->u.i);
+               v->u.s = bb_xasprintf ("%d", v->u.i);
                v->type = string;
        }
 }
index 274e0d06cbbae8abb3566a8346f2a376c309b0cf..6751e909384c0e447c50e00c023112480a995397 100644 (file)
@@ -74,17 +74,17 @@ extern int ln_main(int argc, char **argv)
                        src_name = src;
                }
                if (!(flag & LN_SYMLINK) && stat(*argv, &statbuf)) {
-                       bb_perror_msg(*argv);
+                       bb_perror_msg("%s", *argv);
                        status = EXIT_FAILURE;
                        free(src_name);
                        continue;
                }
 
                if (flag & LN_BACKUP) {
-                               char *backup = NULL;
-                               bb_xasprintf(&backup, "%s%s", src, suffix);
+                               char *backup;
+                               backup = bb_xasprintf("%s%s", src, suffix);
                                if (rename(src, backup) < 0 && errno != ENOENT) {
-                                               bb_perror_msg(src);
+                                               bb_perror_msg("%s", src);
                                                status = EXIT_FAILURE;
                                                free(backup);
                                                continue;
index bb334e3dd1c8bb5b0b620e95be7a754dd7370d19..93514a3912991da4c7a07541dc818c4c0b1a17ea 100644 (file)
@@ -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);
        }
index 017fb53c5721828f1886af16e2add878275f0462..6cd5bd4202ad32954fb98d3104dd62b8d044ddcf 100644 (file)
@@ -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);
 
index c92d97240611d82ee9fe2de007aea00edf1f962f..02bdb5861d3750d1967983c5167ec0bfa80bab12 100644 (file)
@@ -408,8 +408,7 @@ void reset_ino_dev_hashtable(void);
 extern size_t bb_strlen(const char *string);
 #define strlen(x)   bb_strlen(x)
 
-void bb_xasprintf(char **string_ptr, const char *format, ...) __attribute__ ((format (printf, 2, 3)));
-
+char *bb_xasprintf(const char *format, ...) __attribute__ ((format (printf, 1, 2)));
 
 #define FAIL_DELAY    3
 extern void change_identity ( const struct passwd *pw );
index a3ba42454aa95b0c32b93fd6c376012a4f70eeba..8658a54087e84411c67416bfb6854ec1ff8b3b44 100644 (file)
@@ -1,5 +1,5 @@
 /*
-   Copyright (C) 2002 Vladimir Oleynik <dzo@simtreas.ru>
+   Copyright (C) 2002,2005 Vladimir Oleynik <dzo@simtreas.ru>
 */
 
 #include <stdlib.h>
@@ -7,16 +7,18 @@
 #include <stdarg.h>
 #include "libbb.h"
 
-void bb_xasprintf(char **string_ptr, const char *format, ...)
+char *bb_xasprintf(const char *format, ...)
 {
        va_list p;
        int r;
+       char *string_ptr;
 
        va_start(p, format);
-       r = vasprintf(string_ptr, format, p);
+       r = vasprintf(&string_ptr, format, p);
        va_end(p);
 
        if (r < 0) {
                bb_perror_msg_and_die("bb_xasprintf");
        }
+       return string_ptr;
 }
index 00233ad9a37ebead3703e9d0b3d4f27afd204da6..029c23272a6479a26f129a364f3ab3d68f3fc098 100644 (file)
@@ -30,7 +30,6 @@
 
 extern char *concat_path_file(const char *path, const char *filename)
 {
-       char *outbuf;
        char *lc;
 
        if (!path)
@@ -38,7 +37,5 @@ extern char *concat_path_file(const char *path, const char *filename)
        lc = last_char_is(path, '/');
        while (*filename == '/')
                filename++;
-       bb_xasprintf(&outbuf, "%s%s%s", path, (lc==NULL ? "/" : ""), filename);
-
-       return outbuf;
+       return bb_xasprintf("%s%s%s", path, (lc==NULL ? "/" : ""), filename);
 }
index 67ff2a5f82566d5ec818c14178a5fe48d93b8479..6d084eead80ce5243ed6c801cc5c3b8350601818 100644 (file)
@@ -84,11 +84,8 @@ void run_shell ( const char *shell, int loginshell, const char *command, const c
 
        args [0] = bb_get_last_path_component ( bb_xstrdup ( shell ));
 
-       if ( loginshell ) {
-               char *args0;
-               bb_xasprintf ( &args0, "-%s", args [0] );
-               args [0] = args0;
-       }
+       if ( loginshell ) 
+               args [0] = bb_xasprintf ("-%s", args [0]);
 
        if ( command ) {
                args [argno++] = "-c";
index eb9890168a873363702c0f41a16e9eca8d00d033..1630c72ba1cd4a32e02d234123063a83dd941dea 100644 (file)
@@ -117,7 +117,7 @@ static void addgroup_wrapper(const char *login, gid_t gid)
 {
        char *cmd;
 
-       bb_xasprintf(&cmd, "addgroup -g %d %s", gid, login);
+       cmd = bb_xasprintf("addgroup -g %d %s", gid, login);
        system(cmd);
        free(cmd);
 }
index 7b1b96c6d8c66415333b8a62df17078a2bc0f0eb..189b886f712c5480e35516db3d4f0014c16936e4 100644 (file)
@@ -208,7 +208,7 @@ static void add_linenumbers(void) {
 
        for (i = 0; i <= num_flines; i++) {
                safe_strncpy(current_line, flines[i], 256);
-               bb_xasprintf(&flines[i],"%5d %s", i + 1, current_line);
+               flines[i] = bb_xasprintf("%5d %s", i + 1, current_line);
        }
 }
 
@@ -618,11 +618,8 @@ static void colon_process(void) {
 
 static char *insert_highlights (char *line, int start, int end) {
 
-       char *new_line;
-
-       bb_xasprintf(&new_line, "%.*s%s%.*s%s%s", start, line, HIGHLIGHT,
+       return bb_xasprintf("%.*s%s%.*s%s%s", start, line, HIGHLIGHT,
                        end - start, line + start, NORMAL, line + end);
-       return new_line;
 }
 
 static char *process_regex_on_line(char *line, regex_t *pattern) {
index 46b2d4e26811abc4caa9b1ab7e454fe542c43ea0..771df5588a822be97f20c8ea580fb3987779aa1c 100644 (file)
@@ -46,8 +46,8 @@ int mountpoint_main(int argc, char **argv)
                        if (S_ISDIR(st.st_mode)) {
                                dev_t st_dev = st.st_dev;
                                ino_t st_ino = st.st_ino;
-                               char *p;
-                               bb_xasprintf(&p, "%s/..", arg);
+                               char *p = bb_xasprintf("%s/..", arg);
+                               
                                if (stat(p, &st) == 0) {
                                        short ret = (st_dev != st.st_dev) ||
                                                (st_dev == st.st_dev && st_ino == st.st_ino);
index 232a6e6919924fc1a682656f1aa4de8346479b73..94e66f48ccd8fb0dd5c923eb2747b722a468d1e0 100644 (file)
@@ -3756,10 +3756,10 @@ extern int insmod_main( int argc, char **argv)
 
 #if defined(CONFIG_FEATURE_2_6_MODULES)
        if (k_version > 4)
-               bb_xasprintf(&m_fullName, "%s.ko", tmp);
+               m_fullName = bb_xasprintf("%s.ko", tmp);
        else
 #endif
-               bb_xasprintf(&m_fullName, "%s.o", tmp);
+               m_fullName = bb_xasprintf("%s.o", tmp);
 
        if (!m_name) {
                m_name = tmp;
index c73529463d74eeb044d255b01f7a43ea3bd8c3d0..d23c9f70aedd713b173526ceff2edcabc7cdd809 100644 (file)
@@ -1010,7 +1010,7 @@ static int execute_all(struct interface_defn_t *ifd, execfn *exec, const char *o
                }
        }
 
-       bb_xasprintf(&buf, "run-parts /etc/network/if-%s.d", opt);
+       buf = bb_xasprintf("run-parts /etc/network/if-%s.d", opt);
        if ((*exec)(buf) != 1) {
                return 0;
        }
index 359dcc041d0612ee203a30693f211d46bd9fe27c..dbb82e69ce488db4043e86f6a905fbeaac791951 100644 (file)
@@ -209,7 +209,7 @@ int sysctl_write_setting(const char *setting, int output)
                return -2;
        }
 
-       bb_xasprintf(&tmpname, "%s%.*s", PROC_PATH, (equals - name), name);
+       tmpname = bb_xasprintf("%s%.*s", PROC_PATH, (equals - name), name);
        outname = bb_xstrdup(tmpname + strlen(PROC_PATH));
 
        while ((cptr = strchr(tmpname, '.')) != NULL)
index c4cb9d9c45291adebd51b06c4bfd9a7a9a1dc144..edfa016134205e556a8977184e1395577358498a 100644 (file)
@@ -621,7 +621,7 @@ static char **username_tab_completion(char *ud, int *num_matches)
                        /* Null usernames should result in all users as possible completions. */
                        if ( /*!userlen || */ !strncmp(ud, entry->pw_name, userlen)) {
 
-                              bb_xasprintf(&temp, "~%s/", entry->pw_name);
+                               temp = bb_xasprintf("~%s/", entry->pw_name);
                                matches = xrealloc(matches, (nm + 1) * sizeof(char *));
 
                                matches[nm++] = temp;