Ensure fflush(stdout) happens in all cases, per gripe from Jon Sablatnig.
authorTom Lane
Wed, 21 Jan 2004 22:05:44 +0000 (22:05 +0000)
committerTom Lane
Wed, 21 Jan 2004 22:05:44 +0000 (22:05 +0000)
src/bin/psql/mainloop.c

index 94d7706d51a118ef383b3f1ddfeb31e05883c419..9a6448396b42561996a8c7d5c75e904c966ddaeb 100644 (file)
@@ -3,7 +3,7 @@
  *
  * Copyright (c) 2000-2003, PostgreSQL Global Development Group
  *
- * $PostgreSQL: pgsql/src/bin/psql/mainloop.c,v 1.58 2003/11/29 19:52:06 pgsql Exp $
+ * $PostgreSQL: pgsql/src/bin/psql/mainloop.c,v 1.59 2004/01/21 22:05:44 tgl Exp $
  */
 #include "postgres_fe.h"
 #include "mainloop.h"
@@ -103,7 +103,6 @@ MainLoop(FILE *source)
            }
 
            cancel_pressed = false;
-           fflush(stdout);
        }
 
 #ifndef WIN32
@@ -122,7 +121,6 @@ MainLoop(FILE *source)
                paren_level = 0;
                count_eof = 0;
                slashCmdStatus = CMD_UNKNOWN;
-               fflush(stdout);
            }
            else
            {
@@ -138,6 +136,8 @@ MainLoop(FILE *source)
        pqsignal(SIGINT, handle_sigint);        /* control-C => cancel */
 #endif   /* not WIN32 */
 
+       fflush(stdout);
+
        if (slashCmdStatus == CMD_NEWEDIT)
        {
            /*
@@ -161,8 +161,6 @@ MainLoop(FILE *source)
        {
            int         prompt_status;
 
-           fflush(stdout);
-
            if (in_quote && in_quote == '\'')
                prompt_status = PROMPT_SINGLEQUOTE;
            else if (in_quote && in_quote == '"')
@@ -181,7 +179,6 @@ MainLoop(FILE *source)
        else
            line = gets_fromFile(source);
 
-
        /* Setting this will not have effect until next line. */
        die_on_error = GetVariableBool(pset.vars, "ON_ERROR_STOP");