mirror of
https://github.com/git/git.git
synced 2024-05-06 00:36:14 +02:00
interactive: explicitly `fflush` stdout before expecting input
At least one interactive command writes a prompt to `stdout` and then reads user input on `stdin`: `git clean --interactive`. If the prompt is left in the buffer, the user will not realize the program is waiting for their input. So let's just flush `stdout` before reading the user's input. Signed-off-by: 마누엘 <nalla@hamal.uberspace.de> Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
08d383f23e
commit
1f09aed834
4
prompt.c
4
prompt.c
|
@ -77,8 +77,10 @@ char *git_prompt(const char *prompt, int flags)
|
||||||
|
|
||||||
int git_read_line_interactively(struct strbuf *line)
|
int git_read_line_interactively(struct strbuf *line)
|
||||||
{
|
{
|
||||||
int ret = strbuf_getline_lf(line, stdin);
|
int ret;
|
||||||
|
|
||||||
|
fflush(stdout);
|
||||||
|
ret = strbuf_getline_lf(line, stdin);
|
||||||
if (ret != EOF)
|
if (ret != EOF)
|
||||||
strbuf_trim_trailing_newline(line);
|
strbuf_trim_trailing_newline(line);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue