diff options
-rw-r--r-- | src/fe-text/term-terminfo.c | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/src/fe-text/term-terminfo.c b/src/fe-text/term-terminfo.c index ddb00441..c419687e 100644 --- a/src/fe-text/term-terminfo.c +++ b/src/fe-text/term-terminfo.c @@ -387,15 +387,17 @@ void term_addch(TERM_WINDOW *window, int chr) if (vcmove) term_move_real(); - /* With UTF-8, move cursor only if this char is either single-byte - (8. bit on) or beginning of multibyte (7+8 bits on) */ - if (term_type != TERM_TYPE_UTF8 || - (chr & 0x80) == 0 || (chr & 0x40) == 0) { - term_printed_text(1); - } + if (vcy != term_height || vcx != 0) { + /* With UTF-8, move cursor only if this char is either + single-byte (8. bit off) or beginning of multibyte + (7. bit off) */ + if (term_type != TERM_TYPE_UTF8 || + (chr & 0x80) == 0 || (chr & 0x40) == 0) { + term_printed_text(1); + } - if (vcy != term_height || vcx != 0) putc(chr, window->term->out); + } } static void term_addch_utf8(TERM_WINDOW *window, unichar chr) |