summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2012-10-21 22:18:21 +0200
committerBram Moolenaar <Bram@vim.org>2012-10-21 22:18:21 +0200
commita80888d296f97ed28a4debc5019a7bbe86cd9121 (patch)
treed8f09728663186c8cf0e7759cfdb280459575756
parent17aa8cc255d313ac33eca4f2727ed2a6b8bdd8ef (diff)
updated for version 7.3.708v7.3.708
Problem: Filler lines above the first line may be hidden when opening Vim. Solution: Change how topfill is computed. (Christian Brabandt)
-rw-r--r--src/diff.c6
-rw-r--r--src/testdir/test47.in17
-rw-r--r--src/testdir/test47.ok1
-rw-r--r--src/version.c2
4 files changed, 23 insertions, 3 deletions
diff --git a/src/diff.c b/src/diff.c
index d9aaec8287..864e609143 100644
--- a/src/diff.c
+++ b/src/diff.c
@@ -615,11 +615,13 @@ diff_redraw(dofold)
#endif
/* A change may have made filler lines invalid, need to take care
* of that for other windows. */
- if (wp != curwin && wp->w_topfill > 0)
+ n = diff_check(wp, wp->w_topline);
+ if ((wp != curwin && wp->w_topfill > 0) || n > 0)
{
- n = diff_check(wp, wp->w_topline);
if (wp->w_topfill > n)
wp->w_topfill = (n < 0 ? 0 : n);
+ else if (n > 0 && n > wp->w_topfill)
+ wp->w_topfill = n;
}
}
}
diff --git a/src/testdir/test47.in b/src/testdir/test47.in
index c87387b2fd..13ad82462f 100644
--- a/src/testdir/test47.in
+++ b/src/testdir/test47.in
@@ -36,7 +36,22 @@ j:let three = three . "-" . winline()
:call append("$", two)
:call append("$", three)
:$-2,$w! test.out
-:unlet one two three
+:" Test that diffing shows correct filler lines
+:diffoff!
+:windo :bw!
+:enew
+:put =range(4,10)
+:1d _
+:vnew
+:put =range(1,10)
+:1d _
+:windo :diffthis
+:wincmd h
+:let w0=line('w0')
+:enew
+:put =w0
+:.w >> test.out
+:unlet! one two three w0
:qa!
ENDTEST
diff --git a/src/testdir/test47.ok b/src/testdir/test47.ok
index 3307b934eb..b1cba92b1c 100644
--- a/src/testdir/test47.ok
+++ b/src/testdir/test47.ok
@@ -1,3 +1,4 @@
2-4-5-6-8-9
1-2-4-5-8
2-3-4-5-6-7-8
+1
diff --git a/src/version.c b/src/version.c
index 4631c72045..ddd3934229 100644
--- a/src/version.c
+++ b/src/version.c
@@ -726,6 +726,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 708,
+/**/
707,
/**/
706,