astepano / rpms / vim

Forked from rpms/vim 6 years ago
Clone
ac08c1d
To: vim_dev@googlegroups.com
ac08c1d
Subject: Patch 7.4.863
ac08c1d
Fcc: outbox
ac08c1d
From: Bram Moolenaar <Bram@moolenaar.net>
ac08c1d
Mime-Version: 1.0
ac08c1d
Content-Type: text/plain; charset=UTF-8
ac08c1d
Content-Transfer-Encoding: 8bit
ac08c1d
------------
ac08c1d
ac08c1d
Patch 7.4.863
ac08c1d
Problem:    plines_nofill() used without the diff feature.
ac08c1d
Solution:   Define PLINES_NOFILL().
ac08c1d
Files:      src/macros.h, src/move.c
ac08c1d
ac08c1d
ac08c1d
*** ../vim-7.4.862/src/macros.h	2015-07-10 17:56:18.219777154 +0200
ac08c1d
--- src/macros.h	2015-09-09 20:14:30.153091468 +0200
ac08c1d
***************
ac08c1d
*** 315,317 ****
ac08c1d
--- 315,323 ----
ac08c1d
  #  endif
ac08c1d
  # endif
ac08c1d
  #endif
ac08c1d
+ 
ac08c1d
+ #ifdef FEAT_DIFF
ac08c1d
+ # define PLINES_NOFILL(x) plines_nofill(x)
ac08c1d
+ #else
ac08c1d
+ # define PLINES_NOFILL(x) plines(x)
ac08c1d
+ #endif
ac08c1d
*** ../vim-7.4.862/src/move.c	2015-09-08 17:31:38.591350883 +0200
ac08c1d
--- src/move.c	2015-09-09 20:40:43.264983747 +0200
ac08c1d
***************
ac08c1d
*** 1252,1262 ****
ac08c1d
  	    }
ac08c1d
  	    else
ac08c1d
  #endif
ac08c1d
! #ifdef FEAT_DIFF
ac08c1d
! 		done += plines_nofill(curwin->w_topline);
ac08c1d
! #else
ac08c1d
! 		done += plines(curwin->w_topline);
ac08c1d
! #endif
ac08c1d
  	}
ac08c1d
  	--curwin->w_botline;		/* approximate w_botline */
ac08c1d
  	invalidate_botline();
ac08c1d
--- 1252,1258 ----
ac08c1d
  	    }
ac08c1d
  	    else
ac08c1d
  #endif
ac08c1d
! 		done += PLINES_NOFILL(curwin->w_topline);
ac08c1d
  	}
ac08c1d
  	--curwin->w_botline;		/* approximate w_botline */
ac08c1d
  	invalidate_botline();
ac08c1d
***************
ac08c1d
*** 1609,1621 ****
ac08c1d
  	    lp->height = 1;
ac08c1d
  	else
ac08c1d
  #endif
ac08c1d
! 	{
ac08c1d
! #ifdef FEAT_DIFF
ac08c1d
! 	    lp->height = plines_nofill(lp->lnum);
ac08c1d
! #else
ac08c1d
! 	    lp->height = plines(lp->lnum);
ac08c1d
! #endif
ac08c1d
! 	}
ac08c1d
      }
ac08c1d
  }
ac08c1d
  
ac08c1d
--- 1605,1611 ----
ac08c1d
  	    lp->height = 1;
ac08c1d
  	else
ac08c1d
  #endif
ac08c1d
! 	    lp->height = PLINES_NOFILL(lp->lnum);
ac08c1d
      }
ac08c1d
  }
ac08c1d
  
ac08c1d
***************
ac08c1d
*** 1653,1663 ****
ac08c1d
  	else
ac08c1d
  #endif
ac08c1d
  	{
ac08c1d
! #ifdef FEAT_DIFF
ac08c1d
! 	    lp->height = plines_nofill(lp->lnum);
ac08c1d
! #else
ac08c1d
! 	    lp->height = plines(lp->lnum);
ac08c1d
! #endif
ac08c1d
  	}
ac08c1d
      }
ac08c1d
  }
ac08c1d
--- 1643,1649 ----
ac08c1d
  	else
ac08c1d
  #endif
ac08c1d
  	{
ac08c1d
! 	    lp->height = PLINES_NOFILL(lp->lnum);
ac08c1d
  	}
ac08c1d
      }
ac08c1d
  }
ac08c1d
***************
ac08c1d
*** 1769,1775 ****
ac08c1d
  	    i = 1;
ac08c1d
  	else
ac08c1d
  #endif
ac08c1d
! 	    i = plines_nofill(top);
ac08c1d
  	used += i;
ac08c1d
  	if (extra + i <= off && bot < curbuf->b_ml.ml_line_count)
ac08c1d
  	{
ac08c1d
--- 1755,1761 ----
ac08c1d
  	    i = 1;
ac08c1d
  	else
ac08c1d
  #endif
ac08c1d
! 	    i = PLINES_NOFILL(top);
ac08c1d
  	used += i;
ac08c1d
  	if (extra + i <= off && bot < curbuf->b_ml.ml_line_count)
ac08c1d
  	{
ac08c1d
***************
ac08c1d
*** 2273,2283 ****
ac08c1d
  		++above;
ac08c1d
  	    else
ac08c1d
  #endif
ac08c1d
! #ifndef FEAT_DIFF
ac08c1d
! 		above += plines(topline);
ac08c1d
! #else
ac08c1d
! 		above += plines_nofill(topline);
ac08c1d
! 
ac08c1d
  	    /* Count filler lines below this line as context. */
ac08c1d
  	    if (topline < botline)
ac08c1d
  		above += diff_check_fill(curwin, topline + 1);
ac08c1d
--- 2259,2266 ----
ac08c1d
  		++above;
ac08c1d
  	    else
ac08c1d
  #endif
ac08c1d
! 		above += PLINES_NOFILL(topline);
ac08c1d
! #ifdef FEAT_DIFF
ac08c1d
  	    /* Count filler lines below this line as context. */
ac08c1d
  	    if (topline < botline)
ac08c1d
  		above += diff_check_fill(curwin, topline + 1);
ac08c1d
***************
ac08c1d
*** 2666,2676 ****
ac08c1d
  	    else
ac08c1d
  #endif
ac08c1d
  	    {
ac08c1d
! #ifdef FEAT_DIFF
ac08c1d
! 		i = plines_nofill(curwin->w_topline);
ac08c1d
! #else
ac08c1d
! 		i = plines(curwin->w_topline);
ac08c1d
! #endif
ac08c1d
  		n -= i;
ac08c1d
  		if (n < 0 && scrolled > 0)
ac08c1d
  		    break;
ac08c1d
--- 2649,2655 ----
ac08c1d
  	    else
ac08c1d
  #endif
ac08c1d
  	    {
ac08c1d
! 		i = PLINES_NOFILL(curwin->w_topline);
ac08c1d
  		n -= i;
ac08c1d
  		if (n < 0 && scrolled > 0)
ac08c1d
  		    break;
ac08c1d
***************
ac08c1d
*** 2776,2786 ****
ac08c1d
  	    else
ac08c1d
  #endif
ac08c1d
  	    {
ac08c1d
! #ifdef FEAT_DIFF
ac08c1d
! 		i = plines_nofill(curwin->w_topline - 1);
ac08c1d
! #else
ac08c1d
! 		i = plines(curwin->w_topline - 1);
ac08c1d
! #endif
ac08c1d
  		n -= i;
ac08c1d
  		if (n < 0 && scrolled > 0)
ac08c1d
  		    break;
ac08c1d
--- 2755,2761 ----
ac08c1d
  	    else
ac08c1d
  #endif
ac08c1d
  	    {
ac08c1d
! 		i = PLINES_NOFILL(curwin->w_topline - 1);
ac08c1d
  		n -= i;
ac08c1d
  		if (n < 0 && scrolled > 0)
ac08c1d
  		    break;
ac08c1d
*** ../vim-7.4.862/src/version.c	2015-09-09 20:26:58.909675729 +0200
ac08c1d
--- src/version.c	2015-09-09 20:28:25.236703587 +0200
ac08c1d
***************
ac08c1d
*** 743,744 ****
ac08c1d
--- 743,746 ----
ac08c1d
  {   /* Add new patch number below this line */
ac08c1d
+ /**/
ac08c1d
+     863,
ac08c1d
  /**/
ac08c1d
ac08c1d
-- 
ac08c1d
OLD WOMAN: Well, how did you become king, then?
ac08c1d
ARTHUR: The Lady of the Lake, her arm clad in the purest shimmering samite,
ac08c1d
        held Excalibur aloft from the bosom of the water to signify by Divine
ac08c1d
        Providence ...  that I, Arthur, was to carry Excalibur ...  That is
ac08c1d
        why I am your king!
ac08c1d
                 "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
ac08c1d
ac08c1d
 /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
ac08c1d
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
ac08c1d
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
ac08c1d
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///