Blob Blame History Raw
To: vim_dev@googlegroups.com
Subject: Patch 7.3.558
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
------------

Patch 7.3.558
Problem:    Memory access error. (Gary Johnson)
Solution:   Allocate one more byte. (Dominique Pelle)
Files:	    src/misc1.c


*** ../vim-7.3.557/src/misc1.c	2012-06-14 20:59:20.000000000 +0200
--- src/misc1.c	2012-06-20 12:34:57.000000000 +0200
***************
*** 460,466 ****
  	 *
  	 * I'm not sure if regmmatch_T (multi-match) is needed in this case.
  	 * It may be true that this section would work properly using the
! 	 * regmatch_T code above, in which case, these two seperate sections
  	 * should be consolidated w/ FEAT_COMMENTS making lead_len > 0...
  	 */
  #endif
--- 460,466 ----
  	 *
  	 * I'm not sure if regmmatch_T (multi-match) is needed in this case.
  	 * It may be true that this section would work properly using the
! 	 * regmatch_T code above, in which case, these two separate sections
  	 * should be consolidated w/ FEAT_COMMENTS making lead_len > 0...
  	 */
  #endif
***************
*** 1053,1061 ****
  	}
  	if (lead_len)
  	{
! 	    /* allocate buffer (may concatenate p_exta later) */
  	    leader = alloc(lead_len + lead_repl_len + extra_space + extra_len
! 			 + (second_line_indent > 0 ? second_line_indent : 0));
  	    allocated = leader;		    /* remember to free it later */
  
  	    if (leader == NULL)
--- 1053,1061 ----
  	}
  	if (lead_len)
  	{
! 	    /* allocate buffer (may concatenate p_extra later) */
  	    leader = alloc(lead_len + lead_repl_len + extra_space + extra_len
! 		     + (second_line_indent > 0 ? second_line_indent : 0) + 1);
  	    allocated = leader;		    /* remember to free it later */
  
  	    if (leader == NULL)
***************
*** 3342,3348 ****
  	    buf = alloc(buflen);
  	else if (maxlen < 10)
  	{
! 	    /* Need some more space. This migth happen when receiving a long
  	     * escape sequence. */
  	    buflen += 100;
  	    buf = vim_realloc(buf, buflen);
--- 3342,3348 ----
  	    buf = alloc(buflen);
  	else if (maxlen < 10)
  	{
! 	    /* Need some more space. This might happen when receiving a long
  	     * escape sequence. */
  	    buflen += 100;
  	    buf = vim_realloc(buf, buflen);
*** ../vim-7.3.557/src/version.c	2012-06-20 11:54:55.000000000 +0200
--- src/version.c	2012-06-20 12:36:29.000000000 +0200
***************
*** 716,717 ****
--- 716,719 ----
  {   /* Add new patch number below this line */
+ /**/
+     558,
  /**/

-- 
George:  "I just got a new set of golf clubs for my wife!"
  John:  "Great trade!"

 /// Bram Moolenaar -- Bram@Moolenaar.net -- 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    ///