[PATCH] run-command: use internal argv_array of struct child_process in run_hook_ve()

Subsystems: the rest

DORMANTno replies

2 messages, 2 authors, 2016-06-15 · open the first message on its own page

[PATCH] run-command: use internal argv_array of struct child_process in run_hook_ve()

From: René Scharfe <hidden>
Date: 2016-06-15 23:01:57

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 <redacted>
---
 run-command.c | 15 ++++-----------
 1 file changed, 4 insertions(+), 11 deletions(-)
diff --git a/run-command.c b/run-command.c
index be07d4a..576dfea 100644
--- a/run-command.c
+++ b/run-command.c
@@ -770,28 +770,21 @@ char *find_hook(const char *name)
 int run_hook_ve(const char *const *env, const char *name, va_list args)
 {
 	struct child_process hook;
-	struct argv_array argv = ARGV_ARRAY_INIT;
 	const char *p;
-	int ret;
 
 	p = find_hook(name);
 	if (!p)
 		return 0;
 
-	argv_array_push(&argv, p);
-
-	while ((p = va_arg(args, const char *)))
-		argv_array_push(&argv, p);
-
 	memset(&hook, 0, sizeof(hook));
-	hook.argv = argv.argv;
+	argv_array_push(&hook.args, p);
+	while ((p = va_arg(args, const char *)))
+		argv_array_push(&hook.args, p);
 	hook.env = env;
 	hook.no_stdin = 1;
 	hook.stdout_to_stderr = 1;
 
-	ret = run_command(&hook);
-	argv_array_clear(&argv);
-	return ret;
+	return run_command(&hook);
 }
 
 int run_hook_le(const char *const *env, const char *name, ...)
-- 
2.0.0

Re: [PATCH] run-command: use internal argv_array of struct child_process in run_hook_ve()

From: Jeff King <hidden>
Date: 2016-06-15 23:01:57

On Wed, Jul 16, 2014 at 11:57:47PM +0200, René Scharfe wrote:
Use the existing argv_array member instead of providing our own.  This
way we don't have to initialize or clean it up explicitly.
Yay. Thanks for this cleanup (and all of the other recent ones; they all
looked good to me).

-Peff
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help