Jeff King <peff@xxxxxxxx> writes: > On Wed, Aug 26, 2020 at 02:37:39PM -0700, Junio C Hamano wrote: > >> As child_process structure has an embedded strvec args for >> formulating the command line, let's use it instead of using >> an out-of-line argv[] whose length needs to be maintained >> correctly. > > I forgot to mention in my other reply: I think this fails to mention the > actual functional change, which is switching from the dashed form to > using the "git" wrapper. True. With an extra paragraph. -- >8 -- Subject: [PATCH] credential-cache: use child_process.args As child_process structure has an embedded strvec args for formulating the command line, let's use it instead of using an out-of-line argv[] whose length needs to be maintained correctly. Also, when spawning a git subcommand, omit it from the command list and instead use the .git_cmd bit in the child_process structure. Signed-off-by: Junio C Hamano <gitster@xxxxxxxxx> --- credential-cache.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/credential-cache.c b/credential-cache.c index 1cccc3a0b9..04df61cf02 100644 --- a/credential-cache.c +++ b/credential-cache.c @@ -39,13 +39,13 @@ static int send_request(const char *socket, const struct strbuf *out) static void spawn_daemon(const char *socket) { struct child_process daemon = CHILD_PROCESS_INIT; - const char *argv[] = { NULL, NULL, NULL }; char buf[128]; int r; - argv[0] = "git-credential-cache--daemon"; - argv[1] = socket; - daemon.argv = argv; + strvec_pushl(&daemon.args, + "credential-cache--daemon", socket, + NULL); + daemon.git_cmd = 1; daemon.no_stdin = 1; daemon.out = -1; -- 2.28.0-462-gf84ddd074d