pspp: Fix interactive usability for multi-line commands. fc11-i386-build78 fc11-x64-build75 sid-i386-build145
authorBen Pfaff <blp@gnu.org>
Tue, 19 Jan 2010 06:19:13 +0000 (22:19 -0800)
committerBen Pfaff <blp@gnu.org>
Tue, 19 Jan 2010 06:19:13 +0000 (22:19 -0800)
Until now, the terminal UI has only flushed output just before reading
the first line of a command.  This generally worked OK because typically
only the final command produced output, not intermediate lines.  But now
every line of a command potentially produces output (e.g. the command name
or the command syntax).  With the ASCII driver that makes the interface
difficult to use because it typically opens and holds open a pipe to an
interactive program such as "more", which in turn turns off terminal echo
etc.

Flushing output before reading each command avoids this problem and makes
the terminal UI more usable.

src/ui/terminal/read-line.c

index 86c75dea4beee72e2e15b4d102391cea53acc87d..54f90858a5d90542aa70d0d7bade755d5ecd9621 100644 (file)
@@ -155,8 +155,7 @@ readln_read (struct string *line, enum prompt_style style)
 
   welcome ();
 
-  if (style == PROMPT_FIRST)
-    output_flush ();
+  output_flush ();
 
 #if HAVE_READLINE
   rl_attempted_completion_function = (style == PROMPT_FIRST