diff --git a/prompt.c b/prompt.c index 72ab9de2f..64f817b36 100644 --- a/prompt.c +++ b/prompt.c @@ -21,7 +21,6 @@ static char *do_askpass(const char *cmd, const char *prompt) if (start_command(&pass)) exit(1); - strbuf_reset(&buffer); if (strbuf_read(&buffer, pass.out, 20) < 0) die("failed to get '%s' from %s\n", prompt, cmd); @@ -32,7 +31,7 @@ static char *do_askpass(const char *cmd, const char *prompt) strbuf_setlen(&buffer, strcspn(buffer.buf, "\r\n")); - return buffer.buf; + return strbuf_detach(&buffer, NULL); } char *git_prompt(const char *prompt, int flags)