lkundrak / rpms / vim

Forked from rpms/vim 4 years ago
Clone
f6d99c2
To: vim-dev@vim.org
f6d99c2
Subject: Patch 7.1.171
f6d99c2
Fcc: outbox
f6d99c2
From: Bram Moolenaar <Bram@moolenaar.net>
f6d99c2
Mime-Version: 1.0
f6d99c2
Content-Type: text/plain; charset=ISO-8859-1
f6d99c2
Content-Transfer-Encoding: 8bit
f6d99c2
------------
f6d99c2
f6d99c2
Patch 7.1.171
f6d99c2
Problem:    Reading one byte before allocated memory.
f6d99c2
Solution:   Check index not to become negative. (Dominique Pelle)
f6d99c2
Files:	    src/ex_getln.c
f6d99c2
f6d99c2
f6d99c2
*** ../vim-7.1.170/src/ex_getln.c	Tue Oct 30 17:36:31 2007
f6d99c2
--- src/ex_getln.c	Tue Dec  4 21:49:24 2007
f6d99c2
***************
f6d99c2
*** 1186,1195 ****
f6d99c2
  	case K_LEFT:
f6d99c2
  	case K_S_LEFT:
f6d99c2
  	case K_C_LEFT:
f6d99c2
  		do
f6d99c2
  		{
f6d99c2
- 		    if (ccline.cmdpos == 0)
f6d99c2
- 			break;
f6d99c2
  		    --ccline.cmdpos;
f6d99c2
  #ifdef FEAT_MBYTE
f6d99c2
  		    if (has_mbyte)	/* move to first byte of char */
f6d99c2
--- 1186,1195 ----
f6d99c2
  	case K_LEFT:
f6d99c2
  	case K_S_LEFT:
f6d99c2
  	case K_C_LEFT:
f6d99c2
+ 		if (ccline.cmdpos == 0)
f6d99c2
+ 		    goto cmdline_not_changed;
f6d99c2
  		do
f6d99c2
  		{
f6d99c2
  		    --ccline.cmdpos;
f6d99c2
  #ifdef FEAT_MBYTE
f6d99c2
  		    if (has_mbyte)	/* move to first byte of char */
f6d99c2
***************
f6d99c2
*** 1198,1204 ****
f6d99c2
  #endif
f6d99c2
  		    ccline.cmdspos -= cmdline_charsize(ccline.cmdpos);
f6d99c2
  		}
f6d99c2
! 		while ((c == K_S_LEFT || c == K_C_LEFT
f6d99c2
  			       || (mod_mask & (MOD_MASK_SHIFT|MOD_MASK_CTRL)))
f6d99c2
  			&& ccline.cmdbuff[ccline.cmdpos - 1] != ' ');
f6d99c2
  #ifdef FEAT_MBYTE
f6d99c2
--- 1198,1205 ----
f6d99c2
  #endif
f6d99c2
  		    ccline.cmdspos -= cmdline_charsize(ccline.cmdpos);
f6d99c2
  		}
f6d99c2
! 		while (ccline.cmdpos > 0
f6d99c2
! 			&& (c == K_S_LEFT || c == K_C_LEFT
f6d99c2
  			       || (mod_mask & (MOD_MASK_SHIFT|MOD_MASK_CTRL)))
f6d99c2
  			&& ccline.cmdbuff[ccline.cmdpos - 1] != ' ');
f6d99c2
  #ifdef FEAT_MBYTE
f6d99c2
*** ../vim-7.1.170/src/version.c	Fri Dec  7 17:30:04 2007
f6d99c2
--- src/version.c	Fri Dec  7 20:00:06 2007
f6d99c2
***************
f6d99c2
*** 668,669 ****
f6d99c2
--- 668,671 ----
f6d99c2
  {   /* Add new patch number below this line */
f6d99c2
+ /**/
f6d99c2
+     171,
f6d99c2
  /**/
f6d99c2
f6d99c2
-- 
f6d99c2
Some of the well know MS-Windows errors:
f6d99c2
	EMULTI		Multitasking attempted, system confused
f6d99c2
	EKEYBOARD	Keyboard locked, try getting out of this one!
f6d99c2
	EXPLAIN		Unexplained error, please tell us what happened
f6d99c2
	EFUTURE		Reserved for our future mistakes
f6d99c2
f6d99c2
 /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
f6d99c2
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
f6d99c2
\\\        download, build and distribute -- http://www.A-A-P.org        ///
f6d99c2
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///