From 6b9c24f7ddb379d3e3e243813a0fed1f04b5e363 Mon Sep 17 00:00:00 2001 From: Benno Schulenberg Date: Wed, 14 Jul 2021 10:16:31 +0200 Subject: [PATCH] feedback: when not in curses mode, write error messages to the terminal No errors ought to occur when not in curses mode, but when they *do* occur, increase the chances that we can figure out what happened. --- src/winio.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/winio.c b/src/winio.c index 95a01da2..6984a247 100644 --- a/src/winio.c +++ b/src/winio.c @@ -2254,10 +2254,6 @@ void statusline(message_type importance, const char *msg, ...) bool old_whitespace = ISSET(WHITESPACE_DISPLAY); UNSET(WHITESPACE_DISPLAY); - - /* When not in curses mode, there is no status bar to display anything on. */ - if (isendwin()) - return; #endif /* Ignore a message with an importance that is lower than the last one. */ @@ -2270,6 +2266,13 @@ void statusline(message_type importance, const char *msg, ...) vsnprintf(compound, MAXCHARLEN * COLS + 1, msg, ap); va_end(ap); + /* When not in curses mode, write the message to standard error. */ + if (isendwin()) { + fprintf(stderr, "\n%s\n", compound); + free(compound); + return; + } + #if !defined(NANO_TINY) && defined(ENABLE_MULTIBUFFER) if (!we_are_running && importance == ALERT && openfile && !openfile->fmt && !openfile->errormessage && openfile->next != openfile)