commit 6b9c24f7ddb379d3e3e243813a0fed1f04b5e363
parent 5954eeaff27402e7e4f1346f61fad2af4f9a5e9b
Author: Benno Schulenberg <bensberg@telfort.nl>
Date: Wed, 14 Jul 2021 10:16:31 +0200
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.
Diffstat:
1 file changed, 7 insertions(+), 4 deletions(-)
diff --git 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)