]> git.ipfire.org Git - thirdparty/ccache.git/commitdiff
Implement args_extend function
authorJoel Rosdahl <joel@rosdahl.net>
Sat, 17 Jul 2010 16:49:12 +0000 (18:49 +0200)
committerJoel Rosdahl <joel@rosdahl.net>
Sat, 17 Jul 2010 16:49:12 +0000 (18:49 +0200)
args.c
ccache.h

diff --git a/args.c b/args.c
index 6cb14a19f97481787c746ad6ff60dca1e1651a61..ce0c416099393e68037e32d8e8b6afb60babe302 100644 (file)
--- a/args.c
+++ b/args.c
@@ -82,6 +82,16 @@ args_add(struct args *args, const char *s)
        args->argv[args->argc] = NULL;
 }
 
+/* Add all arguments in to_append to args. */
+void
+args_extend(struct args *args, struct args *to_append)
+{
+       int i;
+       for (i = 0; i < to_append->argc; i++) {
+               args_add(args, to_append->argv[i]);
+       }
+}
+
 /* pop the last element off the args list */
 void
 args_pop(struct args *args, int n)
index 03a5ae1ca92e655a9bd3a8d2b4e288d0ecbabe36..dfc4f7e219326233a2d41f29006b2afd704e5304 100644 (file)
--- a/ccache.h
+++ b/ccache.h
@@ -169,6 +169,7 @@ struct args *args_copy(struct args *args);
 void args_free(struct args *args);
 void args_add(struct args *args, const char *s);
 void args_add_prefix(struct args *args, const char *s);
+void args_extend(struct args *args, struct args *to_append);
 void args_pop(struct args *args, int n);
 void args_strip(struct args *args, const char *prefix);
 void args_remove_first(struct args *args);