run-command: use internal argv_array of struct child_process in run_hook_ve()
Use the existing argv_array member instead of providing our own. This way we don't have to initialize or clean it up explicitly. Signed-off-by: Rene Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
René Scharfe committed
Jul 16, 2014 at 23:57 UTC
d1d094564ac818a79465f249ca765ab7ef97d443
1 file changed
+4
-11
run-command.c
+4
-11
@@ -770,28 +770,21 @@ char *find_hook(const char *name)
770
int run_hook_ve(const char *const *env, const char *name, va_list args)
771
{
772
struct child_process hook;
773
- struct argv_array argv = ARGV_ARRAY_INIT;
773
const char *p;
775
- int ret;
774
775
p = find_hook(name);
776
if (!p)
777
return 0;
778
781
- argv_array_push(&argv, p);
782
-
783
- while ((p = va_arg(args, const char *)))
784
- argv_array_push(&argv, p);
785
-
779
memset(&hook, 0, sizeof(hook));
787
- hook.argv = argv.argv;
780
+ argv_array_push(&hook.args, p);
781
+ while ((p = va_arg(args, const char *)))
782
+ argv_array_push(&hook.args, p);
783
hook.env = env;
784
hook.no_stdin = 1;
785
hook.stdout_to_stderr = 1;
786
792
- ret = run_command(&hook);
793
- argv_array_clear(&argv);
794
- return ret;
787
+ return run_command(&hook);
788
}
789
790
int run_hook_le(const char *const *env, const char *name, ...)