From 451c48a0926540fe42a307d222c733210551b1d0 Mon Sep 17 00:00:00 2001 From: 林千里 Date: Wed, 6 Jun 2018 14:36:19 +1000 Subject: terminal: flush vterm output buffer on pty output #8486 Fixes #4151 libvterm uses an "output buffer" for terminal reporting (e.g. \e[6n to report cursor position) Flush it in on_channel_output() not just terminal_send_key() See also this line from pangoterm: https://bazaar.launchpad.net/~leonerd/pangoterm/trunk/view/607/pangoterm.c#L2159 --- src/nvim/channel.c | 1 + 1 file changed, 1 insertion(+) (limited to 'src/nvim/channel.c') diff --git a/src/nvim/channel.c b/src/nvim/channel.c index 64d743891b..6ad64bbb85 100644 --- a/src/nvim/channel.c +++ b/src/nvim/channel.c @@ -602,6 +602,7 @@ static void on_channel_output(Stream *stream, Channel *chan, RBuffer *buf, // process_channel_event will modify the read buffer(convert NULs into NLs) if (chan->term) { terminal_receive(chan->term, ptr, count); + terminal_flush_output(chan->term); } rbuffer_consumed(buf, count); -- cgit