commit:     43d8c0998aafc279cdfdb18c715ae945e945138a
Author:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 15 14:02:55 2019 +0000
Commit:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
CommitDate: Fri Mar 15 14:02:55 2019 +0000
URL:        https://gitweb.gentoo.org/proj/portage-utils.git/commit/?id=43d8c099

q.c: move run_applet_l to its only consumer qmerge.c

Signed-off-by: Fabian Groffen <grobian <AT> gentoo.org>

 q.c      | 45 ++++-----------------------------------------
 qmerge.c | 40 ++++++++++++++++++++++++++++++++++++++++
 2 files changed, 44 insertions(+), 41 deletions(-)

diff --git a/q.c b/q.c
index 64aa284..30a295d 100644
--- a/q.c
+++ b/q.c
@@ -87,7 +87,8 @@ int q_main(int argc, char **argv)
                case 'M': modpath = optarg; break;
                case 'm':
                        if (optarg) {
-                               const char *path = initialize_flat(optarg, 
CACHE_METADATA, true);
+                               const char *path =
+                                       initialize_flat(optarg, CACHE_METADATA, 
true);
                                if (USE_CLEANUP)
                                        free((void *)path);
                                reinitialize_metacache = -1;
@@ -149,7 +150,8 @@ int q_main(int argc, char **argv)
                for (i = 1; applets[i].desc; ++i) {
                        int r = symlinkat(prog, fd, applets[i].name);
                        if (!quiet)
-                               printf(" %s ...\t[%s]\n", applets[i].name, r ? 
strerror(errno) : "OK");
+                               printf(" %s ...\t[%s]\n",
+                                               applets[i].name, r ? 
strerror(errno) : "OK");
                        if (r && errno != EEXIST)
                                ret = 1;
                }
@@ -184,42 +186,3 @@ int q_main(int argc, char **argv)
        return (func)(argc - 1, argv);
 }
 
-static int run_applet_l(const char *arg, ...)
-{
-       int (*applet)(int, char **);
-       va_list ap;
-       int ret, optind_saved, argc;
-       char **argv;
-       const char *argv0_saved;
-
-       optind_saved = optind;
-       argv0_saved = argv0;
-
-       applet = lookup_applet(arg);
-       if (!applet)
-               return -1;
-
-       /* This doesn't NULL terminate argv, but you should be using argc */
-       va_start(ap, arg);
-       argc = 0;
-       argv = NULL;
-       while (arg) {
-               argv = xrealloc(argv, sizeof(*argv) * ++argc);
-               argv[argc - 1] = xstrdup(arg);
-               arg = va_arg(ap, const char *);
-       }
-       va_end(ap);
-
-       optind = 0;
-       argv0 = argv[0];
-       ret = applet(argc, argv);
-
-       while (argc--)
-               free(argv[argc]);
-       free(argv);
-
-       optind = optind_saved;
-       argv0 = argv0_saved;
-
-       return ret;
-}

diff --git a/qmerge.c b/qmerge.c
index aec51be..c90f786 100644
--- a/qmerge.c
+++ b/qmerge.c
@@ -105,6 +105,46 @@ static int pkg_unmerge(q_vdb_pkg_ctx *, set *, int, char 
**, int, char **);
 static struct pkg_t *grab_binpkg_info(const char *);
 static char *find_binpkg(const char *);
 
+static int run_applet_l(const char *arg, ...)
+{
+       int (*applet)(int, char **);
+       va_list ap;
+       int ret, optind_saved, argc;
+       char **argv;
+       const char *argv0_saved;
+
+       optind_saved = optind;
+       argv0_saved = argv0;
+
+       applet = lookup_applet(arg);
+       if (!applet)
+               return -1;
+
+       /* This doesn't NULL terminate argv, but you should be using argc */
+       va_start(ap, arg);
+       argc = 0;
+       argv = NULL;
+       while (arg) {
+               argv = xrealloc(argv, sizeof(*argv) * ++argc);
+               argv[argc - 1] = xstrdup(arg);
+               arg = va_arg(ap, const char *);
+       }
+       va_end(ap);
+
+       optind = 0;
+       argv0 = argv[0];
+       ret = applet(argc, argv);
+
+       while (argc--)
+               free(argv[argc]);
+       free(argv);
+
+       optind = optind_saved;
+       argv0 = argv0_saved;
+
+       return ret;
+}
+
 static void
 fetch(const char *destdir, const char *src)
 {

Reply via email to