aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Shaw <[email protected]>2004-07-21 03:21:36 +0000
committerDavid Shaw <[email protected]>2004-07-21 03:21:36 +0000
commit4340b6765eb8287b6866634f79bc400ae60674c8 (patch)
treee544761907cd2e0ab3d4a3e3017883e2496f2d0f
parentMinor fixes for W32 packaging and building. (diff)
downloadgnupg-4340b6765eb8287b6866634f79bc400ae60674c8.tar.gz
gnupg-4340b6765eb8287b6866634f79bc400ae60674c8.zip
* status.c (do_get_from_fd): Flush stdout if status isn't flushing it for
us. This guarantees that any menus that were displayed before the prompt don't get stuck in a buffer. Noted by Peter Palfrader. This is Debian bug #254072.
-rw-r--r--g10/ChangeLog7
-rw-r--r--g10/status.c3
2 files changed, 10 insertions, 0 deletions
diff --git a/g10/ChangeLog b/g10/ChangeLog
index f93a1c7dd..f4205f067 100644
--- a/g10/ChangeLog
+++ b/g10/ChangeLog
@@ -1,3 +1,10 @@
+2004-07-20 David Shaw <[email protected]>
+
+ * status.c (do_get_from_fd): Flush stdout if status isn't flushing
+ it for us. This guarantees that any menus that were displayed
+ before the prompt don't get stuck in a buffer. Noted by Peter
+ Palfrader. This is Debian bug #254072.
+
2004-07-20 Werner Koch <[email protected]>
* plaintext.c (handle_plaintext): Make number buffer larger. With
diff --git a/g10/status.c b/g10/status.c
index 9b0cbe82c..4bca9fac2 100644
--- a/g10/status.c
+++ b/g10/status.c
@@ -538,6 +538,9 @@ do_get_from_fd( const char *keyword, int hidden, int bool )
int i, len;
char *string;
+ if(statusfp!=stdout)
+ fflush(stdout);
+
write_status_text( bool? STATUS_GET_BOOL :
hidden? STATUS_GET_HIDDEN : STATUS_GET_LINE, keyword );