diff options
author | Bram Moolenaar <Bram@vim.org> | 2012-10-21 22:18:21 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2012-10-21 22:18:21 +0200 |
commit | a80888d296f97ed28a4debc5019a7bbe86cd9121 (patch) | |
tree | d8f09728663186c8cf0e7759cfdb280459575756 | |
parent | 17aa8cc255d313ac33eca4f2727ed2a6b8bdd8ef (diff) | |
download | vim-git-a80888d296f97ed28a4debc5019a7bbe86cd9121.tar.gz |
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.c | 6 | ||||
-rw-r--r-- | src/testdir/test47.in | 17 | ||||
-rw-r--r-- | src/testdir/test47.ok | 1 | ||||
-rw-r--r-- | src/version.c | 2 |
4 files changed, 23 insertions, 3 deletions
diff --git a/src/diff.c b/src/diff.c index d9aaec828..864e60914 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 c87387b2f..13ad82462 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 3307b934e..b1cba92b1 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 4631c7204..ddd393422 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, |