diff --git a/src/display.c b/src/display.c index eb252674a..1639387c3 100644 --- a/src/display.c +++ b/src/display.c @@ -75,14 +75,10 @@ open_external_viewer(const char *argv[], const char *dir, bool silent, bool conf if (echo) { char buf[SIZEOF_STR] = ""; - io_run_buf(argv, buf, sizeof(buf), dir, false); - if (*buf) { + ok = io_run_buf(argv, buf, sizeof(buf), dir, true); + if (*buf) report("%s", buf); - return true; - } else { - report("No output"); - return false; - } + } else if (silent || is_script_executing()) { ok = io_run_bg(argv, dir); diff --git a/src/view.c b/src/view.c index 6e419fae0..2112fe088 100644 --- a/src/view.c +++ b/src/view.c @@ -853,7 +853,6 @@ load_view(struct view *view, struct view *prev, enum open_flags flags) /* Do not clear the position if it is the first view. */ if (view->prev && !(flags & (OPEN_RELOAD | OPEN_REFRESH))) clear_position(&view->prev_pos); - report_clear(); } else if (view_is_displayed(view)) { redraw_view(view); report_clear();