diff options
author | erw7 <erw7.github@gmail.com> | 2019-05-29 16:23:55 +0900 |
---|---|---|
committer | Justin M. Keyes <justinkz@gmail.com> | 2019-06-03 22:41:48 +0200 |
commit | 27b684b83f393fb65e27840ca7cdfe09ad341e8e (patch) | |
tree | f763ce22d3237c23fb038c7d388768e71e5c2827 /src | |
parent | 4841c46e3384b09caaaded4936cde7be461d1b3c (diff) | |
download | rneovim-27b684b83f393fb65e27840ca7cdfe09ad341e8e.tar.gz rneovim-27b684b83f393fb65e27840ca7cdfe09ad341e8e.tar.bz2 rneovim-27b684b83f393fb65e27840ca7cdfe09ad341e8e.zip |
Fix screenchar() problem in headless mode
In the case of the headless mode, screenchar() does not operate normally
because it is not output to the internal screen. Change output to stderr
and internal screen to fix it.
Diffstat (limited to 'src')
-rw-r--r-- | src/nvim/message.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/nvim/message.c b/src/nvim/message.c index a597fb4866..5f3d367504 100644 --- a/src/nvim/message.c +++ b/src/nvim/message.c @@ -1806,8 +1806,13 @@ void msg_puts_attr_len(const char *const str, const ptrdiff_t len, int attr) // different, e.g. for Win32 console) or we just don't know where the // cursor is. if (msg_use_printf()) { + int saved_msg_col = msg_col; msg_puts_printf(str, len); - } else { + if (headless_mode) { + msg_col = saved_msg_col; + } + } + if (!msg_use_printf() || headless_mode) { msg_puts_display((const char_u *)str, len, attr, false); } } |