aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/screen.c
diff options
context:
space:
mode:
authorJan Edmund Lazo <jan.lazo@mail.utoronto.ca>2020-10-07 19:52:40 -0400
committerGitHub <noreply@github.com>2020-10-07 19:52:40 -0400
commit3ea5df0f045b416c827e8fa841d01333fa0146e6 (patch)
tree4d6ad982e8715fc5ed1d3bdb7e98f123d5f433e1 /src/nvim/screen.c
parent8ba5f4d19c6a2fa0de07a82867c52e68f5a757b7 (diff)
parenta893593a9f54a0fbe84b467d43f11a841ecae2ee (diff)
downloadrneovim-3ea5df0f045b416c827e8fa841d01333fa0146e6.tar.gz
rneovim-3ea5df0f045b416c827e8fa841d01333fa0146e6.tar.bz2
rneovim-3ea5df0f045b416c827e8fa841d01333fa0146e6.zip
Merge pull request #13029 from aufarg/vim-8.2.1345
[RDY] vim-patch:8.2.{1345,1488}
Diffstat (limited to 'src/nvim/screen.c')
-rw-r--r--src/nvim/screen.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/nvim/screen.c b/src/nvim/screen.c
index 3503348049..7c42f29a90 100644
--- a/src/nvim/screen.c
+++ b/src/nvim/screen.c
@@ -899,11 +899,12 @@ static void win_update(win_T *wp)
|| type == INVERTED || type == INVERTED_ALL)
&& !wp->w_botfill && !wp->w_old_botfill
) {
- if (mod_top != 0 && wp->w_topline == mod_top) {
- /*
- * w_topline is the first changed line, the scrolling will be done
- * further down.
- */
+ if (mod_top != 0
+ && wp->w_topline == mod_top
+ && (!wp->w_lines[0].wl_valid
+ || wp->w_topline <= wp->w_lines[0].wl_lnum)) {
+ // w_topline is the first changed line and window is not scrolled,
+ // the scrolling from changed lines will be done further down.
} else if (wp->w_lines[0].wl_valid
&& (wp->w_topline < wp->w_lines[0].wl_lnum
|| (wp->w_topline == wp->w_lines[0].wl_lnum