aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/terminal.c
diff options
context:
space:
mode:
authorBjörn Linse <bjorn.linse@gmail.com>2019-03-04 17:53:41 +0100
committerBjörn Linse <bjorn.linse@gmail.com>2019-03-05 15:05:23 +0100
commitf5d5da391715f3b1d4c3d36c522e39b94866b93f (patch)
tree33fb008f256d8974bfb7cd0cc942656c5bc88181 /src/nvim/terminal.c
parent2816bc8620ca373145842641ce77805f4321b2bc (diff)
downloadrneovim-f5d5da391715f3b1d4c3d36c522e39b94866b93f.tar.gz
rneovim-f5d5da391715f3b1d4c3d36c522e39b94866b93f.tar.bz2
rneovim-f5d5da391715f3b1d4c3d36c522e39b94866b93f.zip
buffer: use aucmd_prepbuf() instead of switch_to_win_for_buf()
Diffstat (limited to 'src/nvim/terminal.c')
-rw-r--r--src/nvim/terminal.c14
1 files changed, 9 insertions, 5 deletions
diff --git a/src/nvim/terminal.c b/src/nvim/terminal.c
index 8b4ad4d3af..ffe650f416 100644
--- a/src/nvim/terminal.c
+++ b/src/nvim/terminal.c
@@ -1112,11 +1112,15 @@ static void refresh_terminal(Terminal *term)
return;
}
long ml_before = buf->b_ml.ml_line_count;
- WITH_BUFFER(buf, {
- refresh_size(term, buf);
- refresh_scrollback(term, buf);
- refresh_screen(term, buf);
- });
+
+ // refresh_ functions assume the terminal buffer is current
+ aco_save_T aco;
+ aucmd_prepbuf(&aco, buf);
+ refresh_size(term, buf);
+ refresh_scrollback(term, buf);
+ refresh_screen(term, buf);
+ aucmd_restbuf(&aco);
+
long ml_added = buf->b_ml.ml_line_count - ml_before;
adjust_topline(term, buf, ml_added);
}