git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 1/2] prompt: clean up strbuf usage

From
Jeff King <peff@peff.net>
Date
Feb 3, 2012, 22:14 UTC
Message-ID
<20120203221411.GA8065@sigill.intra.peff.net>
In-Reply-To
<20120203213654.GD1890@sigill.intra.peff.net>

The do_askpass function inherited a few bad habits from the original git_getpass. One, there's no need to strbuf_reset a buffer which was just initialized. And two, it's a good habit to use strbuf_detach to claim ownership of a buffer's string (even though in this case the owning buffer goes out of scope, so it's effectively the same thing).

Signed-off-by: Jeff King <peff@peff.net>
---
Neither is a big deal, but just some style cleanups while I was in the
area.
 prompt.c |    3 +--
 1 files changed, 1 insertions(+), 2 deletions(-)
diff --git a/prompt.c b/prompt.c
index 72ab9de..64f817b 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)
-- 
1.7.9.rc1.28.gf4be5
Previous: Jeff KingNext: Jeff King
Message 7 of 12 in “Push from an SSH Terminal”
  1. Feanil PatelFeb 3, 2012
  2. Neal GroothuisFeb 3, 2012
  3. Feanil PatelFeb 3, 2012
  4. Neal GroothuisFeb 3, 2012
  5. Jeff KingFeb 3, 2012
  6. Jeff KingFeb 3, 2012
  7. 1/2 prompt: clean up strbuf usageJeff King, Feb 3, 2012
  8. 2/2 prompt: fall back to terminal if askpass failsJeff King, Feb 3, 2012
  9. Junio C HamanoFeb 4, 2012
  10. Jeff KingFeb 4, 2012
  11. Junio C HamanoFeb 4, 2012
  12. Jeff KingFeb 3, 2012

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.