summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff King <peff@peff.net>2011-12-10 10:41:08 (GMT)
committerJunio C Hamano <gitster@pobox.com>2011-12-13 00:09:38 (GMT)
commita50902590e703878e888fd8a33ec5a22d5347481 (patch)
treed62c8a7f6e43495c4e9e667adb6d6cf094162143
parent21aeafceda2382d26bfa73a98ba45a937d65d77a (diff)
downloadgit-a50902590e703878e888fd8a33ec5a22d5347481.zip
git-a50902590e703878e888fd8a33ec5a22d5347481.tar.gz
git-a50902590e703878e888fd8a33ec5a22d5347481.tar.bz2
prompt: use git_terminal_prompt
Our custom implementation of git_terminal_prompt has many advantages over regular getpass(), as described in the prior commit. This also lets us implement a PROMPT_ECHO flag for callers who want it. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--prompt.c3
-rw-r--r--prompt.h1
2 files changed, 3 insertions, 1 deletions
diff --git a/prompt.c b/prompt.c
index 2002644..72ab9de 100644
--- a/prompt.c
+++ b/prompt.c
@@ -2,6 +2,7 @@
#include "run-command.h"
#include "strbuf.h"
#include "prompt.h"
+#include "compat/terminal.h"
static char *do_askpass(const char *cmd, const char *prompt)
{
@@ -50,7 +51,7 @@ char *git_prompt(const char *prompt, int flags)
return do_askpass(askpass, prompt);
}
- r = getpass(prompt);
+ r = git_terminal_prompt(prompt, flags & PROMPT_ECHO);
if (!r)
die_errno("could not read '%s'", prompt);
return r;
diff --git a/prompt.h b/prompt.h
index 9ab85a7..04f321a 100644
--- a/prompt.h
+++ b/prompt.h
@@ -2,6 +2,7 @@
#define PROMPT_H
#define PROMPT_ASKPASS (1<<0)
+#define PROMPT_ECHO (1<<1)
char *git_prompt(const char *prompt, int flags);
char *git_getpass(const char *prompt);