From de5d9b1d40c6ec0dc660bf85c91bb0b2ed20fffa Mon Sep 17 00:00:00 2001 From: Roland Illig Date: Wed, 13 Jul 2005 21:30:28 +0000 Subject: [PATCH] * view.c: Always call display() before close_error_pipe() to make sure the screen looks nice. http://mail.gnome.org/archives/mc-devel/2005-July/msg00194.html --- src/ChangeLog | 6 ++++++ src/view.c | 5 +++++ 2 files changed, 11 insertions(+) diff --git a/src/ChangeLog b/src/ChangeLog index 56bda6b0c..ef611695c 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,9 @@ +2005-07-13 Roland Illig + + * view.c: Always call display() before close_error_pipe() to make + sure the screen looks nice. + http://mail.gnome.org/archives/mc-devel/2005-July/msg00194.html + 2005-07-12 Roland Illig * view.c: Added some paragraph comments. Changed some literal diff --git a/src/view.c b/src/view.c index 59b5c8c0a..da9ba07a7 100644 --- a/src/view.c +++ b/src/view.c @@ -247,6 +247,7 @@ static void view_labels (WView * view); static void view_init_growbuf (WView *); static void view_place_cursor (WView *view); +static void display (WView *); /* {{{ Helper Functions }}} */ @@ -406,6 +407,7 @@ view_growbuf_read_until (WView *view, offset_type ofs) if (nread == 0) { view->growbuf_finished = TRUE; (void) pclose (view->ds_stdio_pipe); + display (view); close_error_pipe (0, NULL); view->ds_stdio_pipe = NULL; return; @@ -657,6 +659,7 @@ view_close_datasource (WView *view) case DS_STDIO_PIPE: if (view->ds_stdio_pipe != NULL) { (void) pclose (view->ds_stdio_pipe); + display (view); close_error_pipe (0, NULL); view->ds_stdio_pipe = NULL; } @@ -1305,6 +1308,7 @@ view_load_command_output (WView *view, const char *command) open_error_pipe (); if ((fp = popen (command, "r")) == NULL) { /* Avoid two messages. Message from stderr has priority. */ + display (view); if (!close_error_pipe (view_is_in_panel (view) ? -1 : 1, NULL)) view_show_error (view, _(" Cannot spawn child process ")); return FALSE; @@ -1316,6 +1320,7 @@ view_load_command_output (WView *view, const char *command) view_close_datasource (view); /* Avoid two messages. Message from stderr has priority. */ + display (view); if (!close_error_pipe (view_is_in_panel (view) ? -1 : 1, NULL)) view_show_error (view, _("Empty output from child filter")); return FALSE;