Re: [PATCH] use child_process_init() to initialize struct child_process variables
- From
René Scharfe <l.s.r@web.de>
- Date
- Nov 9, 2014, 13:49 UTC
- Message-ID
- <545F7106.7070300@web.de>
- In-Reply-To
- <20141029172109.GA32234@peff.net>
Am 29.10.2014 um 18:21 schrieb Jeff King:
Show 18 quoted lines
> On Tue, Oct 28, 2014 at 09:52:34PM +0100, René Scharfe wrote: >> diff --git a/trailer.c b/trailer.c >> index 8514566..7ff036c 100644 >> --- a/trailer.c >> +++ b/trailer.c >> @@ -237,7 +237,7 @@ static const char *apply_command(const char *command, const char *arg) >> strbuf_replace(&cmd, TRAILER_ARG_STRING, arg); >> >> argv[0] = cmd.buf; >> - memset(&cp, 0, sizeof(cp)); >> + child_process_init(&cp); >> cp.argv = argv; >> cp.env = local_repo_env; >> cp.no_stdin = 1; > > I think this one can use CHILD_PROCESS_INIT in the declaration. I guess > it is debatable whether that is actually preferable, but I tend to think > it is cleaner and less error-prone.
Agreed, thanks.
-- >8 -- Subject: [PATCH] trailer: use CHILD_PROCESS_INIT in apply_command()
Initialize the struct child_process variable cp at declaration time. This is shorter, saves a function call and prevents using the variable before initialization by mistake.
Suggested-by: Jeff King <peff@peff.net> Signed-off-by: Rene Scharfe <l.s.r@web.de> --- trailer.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/trailer.c b/trailer.c index 7ff036c..6ae7865 100644 --- a/trailer.c +++ b/trailer.c @@ -228,7 +228,7 @@ static const char *apply_command(const char *command, const char *arg) { struct strbuf cmd = STRBUF_INIT; struct strbuf buf = STRBUF_INIT; - struct child_process cp; + struct child_process cp = CHILD_PROCESS_INIT; const char *argv[] = {NULL, NULL}; const char *result; @@ -237,7 +237,6 @@ static const char *apply_command(const char *command, const char *arg) strbuf_replace(&cmd, TRAILER_ARG_STRING, arg); argv[0] = cmd.buf; - child_process_init(&cp); cp.argv = argv; cp.env = local_repo_env; cp.no_stdin = 1;
-- 2.1.3