Follow-up to f858d94, only reinitialize screen when toggling debug mode

The screen_init() call for each print() & C:o caused serious screen
artefacts in debug mode.  This patch reworks f858d94 to only re-init
screen when toggling debug.

Also, avoid screen_init() completely if started in debug mode.

Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
This commit is contained in:
Joachim Nilsson committed 2018-01-23 09:33:24 +01:00
1 parent ddf1bce642
commit 3d20237959
3 files changed
+13 -10

No files matched your search

+12 -2
View File
@@ -67,8 +67,14 @@ void log_exit(void)
fputs("\n", stderr);
}
/* Reinitialize screen, terminal may have been resized at runtime */
screen_init();
/*
* Unless in debug mode at shutdown, Reinitialize screen,
* terminal may have been resized at runtime
*/
if (debug)
screen_exit();
else
screen_init();
}
void log_open(void)
@@ -106,9 +112,13 @@ void log_debug(void)
if (debug) {
silent = 0;
loglevel = LOG_DEBUG;
screen_exit();
} else {
silent = SILENT_MODE;
loglevel = LOG_NOTICE;
screen_init();
}
log_open();