From 8455c5ed31c9cb2919f5e62693bab6b09bf60df2 Mon Sep 17 00:00:00 2001
From: Bram Moolenaar <Bram@vim.org>
Date: Tue, 14 Jul 2020 21:22:30 +0200
Subject: [PATCH] patch 8.2.1211: removed more than dead code

Problem:    Removed more than dead code.
Solution:   Put back the decrement.
---
 src/move.c                    |  1 +
 src/testdir/test_diffmode.vim | 20 ++++++++++++++++++++
 src/version.c                 |  2 ++
 3 files changed, 23 insertions(+)

diff --git a/src/move.c b/src/move.c
index ec1ad38ad7..767134f56d 100644
--- a/src/move.c
+++ b/src/move.c
@@ -2681,6 +2681,7 @@ halfpage(int flag, linenr_T Prenum)
 	    if (curwin->w_topfill > 0)
 	    {
 		i = 1;
+		--n;
 		--curwin->w_topfill;
 	    }
 	    else
diff --git a/src/testdir/test_diffmode.vim b/src/testdir/test_diffmode.vim
index a3f6d5867b..c0c5d0d44e 100644
--- a/src/testdir/test_diffmode.vim
+++ b/src/testdir/test_diffmode.vim
@@ -1130,4 +1130,24 @@ func Test_diff_multilineconceal()
   redraw
 endfunc
 
+func Test_diff_and_scroll()
+  " this was causing an ml_get error
+  set ls=2
+  for i in range(winheight(0) * 2) 
+    call setline(i, i < winheight(0) - 10 ? i : i + 10) 
+  endfor
+  vnew
+  for i in range(winheight(0)*2 + 10) 
+    call setline(i, i < winheight(0) - 10 ? 0 : i) 
+  endfor
+  diffthis
+  wincmd p
+  diffthis
+  execute 'normal ' . winheight(0) . "\<C-d>"
+
+  bwipe!
+  bwipe!
+  set ls&
+endfunc
+
 " vim: shiftwidth=2 sts=2 expandtab
diff --git a/src/version.c b/src/version.c
index 6be113dcac..95b0857fa4 100644
--- a/src/version.c
+++ b/src/version.c
@@ -754,6 +754,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    1211,
 /**/
     1210,
 /**/
-- 
GitLab