Patch 7.3.708
Problem:    Filler lines above the first line may be hidden when opening Vim.
Solution:   Change how topfill is computed. (Christian Brabandt)
Files:      src/diff.c, src/testdir/test47.in, src/testdir/test47.ok


*** ../vim-7.3.707/src/diff.c   2012-05-18 18:47:11.000000000 +0200
--- src/diff.c  2012-10-21 22:08:44.000000000 +0200
***************
*** 615,625 ****
  #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->w_topfill > n)
                    wp->w_topfill = (n < 0 ? 0 : n);
            }
        }
  }
--- 615,627 ----
  #endif
            /* A change may have made filler lines invalid, need to take care
             * of that for other windows. */
!           n = diff_check(wp, wp->w_topline);
!           if ((wp != curwin && wp->w_topfill > 0) || n > 0)
            {
                if (wp->w_topfill > n)
                    wp->w_topfill = (n < 0 ? 0 : n);
+               else if (n > 0 && n > wp->w_topfill)
+                   wp->w_topfill = n;
            }
        }
  }
*** ../vim-7.3.707/src/testdir/test47.in        2010-08-15 21:57:29.000000000 
+0200
--- src/testdir/test47.in       2012-10-21 22:08:44.000000000 +0200
***************
*** 36,42 ****
  :call append("$", two)
  :call append("$", three)
  :$-2,$w! test.out
! :unlet one two three
  :qa!
  ENDTEST
  
--- 36,57 ----
  :call append("$", two)
  :call append("$", three)
  :$-2,$w! test.out
! :" 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
  
*** ../vim-7.3.707/src/testdir/test47.ok        2010-08-15 21:57:29.000000000 
+0200
--- src/testdir/test47.ok       2012-10-21 22:08:44.000000000 +0200
***************
*** 1,3 ****
--- 1,4 ----
  2-4-5-6-8-9
  1-2-4-5-8
  2-3-4-5-6-7-8
+ 1
*** ../vim-7.3.707/src/version.c        2012-10-21 21:38:42.000000000 +0200
--- src/version.c       2012-10-21 22:10:42.000000000 +0200
***************
*** 727,728 ****
--- 727,730 ----
  {   /* Add new patch number below this line */
+ /**/
+     708,
  /**/

-- 
At some point in the project somebody will start whining about the need to
determine the project "requirements".  This involves interviewing people who
don't know what they want but, curiously, know exactly when they need it.
                                (Scott Adams - The Dilbert principle)

 /// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net   \\\
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

Raspunde prin e-mail lui