Flush stream before taking input in select_question() and only flush
once during question().  Also fix some tabs inside related fprintf
statements.

Signed-off-by: Andrew Gregory <[email protected]>
---
 src/pacman/util.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/pacman/util.c b/src/pacman/util.c
index 66765b1..351c74d 100644
--- a/src/pacman/util.c
+++ b/src/pacman/util.c
@@ -1391,17 +1391,17 @@ int multiselect_question(char *array, int count)
        /* sentinel byte to later see if we filled up the entire string */
        *lastchar = 1;
 
        while(1) {
                memset(array, 1, count);
 
                fprintf(stream, "\n");
                fprintf(stream, _("Enter a selection (default=all)"));
-               fprintf(stream, ": ");
+               fprintf(stream, ": ");
                fflush(stream);
 
                if(config->noconfirm) {
                        fprintf(stream, "\n");
                        break;
                }
 
                flush_term_input(fileno(stdin));
@@ -1455,17 +1455,18 @@ int select_question(int count)
        } else {
                /* Use stderr so questions are always displayed when 
redirecting output */
                stream = stderr;
        }
 
        while(1) {
                fprintf(stream, "\n");
                fprintf(stream, _("Enter a number (default=%d)"), preset);
-               fprintf(stream, ": ");
+               fprintf(stream, ": ");
+               fflush(stream);
 
                if(config->noconfirm) {
                        fprintf(stream, "\n");
                        break;
                }
 
                flush_term_input(fileno(stdin));
 
@@ -1516,17 +1517,16 @@ static int question(short preset, const char *format, 
va_list args)
        fputs(config->colstr.nocolor, stream);
        fflush(stream);
 
        if(config->noconfirm) {
                fprintf(stream, "\n");
                return preset;
        }
 
-       fflush(stream);
        flush_term_input(fd_in);
 
        if(fgets(response, sizeof(response), stdin)) {
                size_t len = strtrim(response);
                if(len == 0) {
                        return preset;
                }
 
-- 
1.8.2.2


Reply via email to