Blob Blame History Raw
To: vim_dev@googlegroups.com
Subject: Patch 7.3.039
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.039
Problem:    Crash when using skk.vim plugin.
Solution:   Get length of expression evaluation result only after checking for
	    NULL.  (Noriaki Yagi, Dominique Pelle)
Files:	    src/ex_getln.c


*** ../vim-7.3.038/src/ex_getln.c	2010-09-29 15:50:14.000000000 +0200
--- src/ex_getln.c	2010-10-27 12:42:00.000000000 +0200
***************
*** 688,711 ****
  		    p = get_expr_line();
  		    --textlock;
  		    restore_cmdline(&save_ccline);
- 		    len = (int)STRLEN(p);
  
! 		    if (p != NULL && realloc_cmdbuff(len + 1) == OK)
  		    {
! 			ccline.cmdlen = len;
! 			STRCPY(ccline.cmdbuff, p);
! 			vim_free(p);
! 
! 			/* Restore the cursor or use the position set with
! 			 * set_cmdline_pos(). */
! 			if (new_cmdpos > ccline.cmdlen)
! 			    ccline.cmdpos = ccline.cmdlen;
! 			else
! 			    ccline.cmdpos = new_cmdpos;
! 
! 			KeyTyped = FALSE;	/* Don't do p_wc completion. */
! 			redrawcmd();
! 			goto cmdline_changed;
  		    }
  		}
  		beep_flush();
--- 688,714 ----
  		    p = get_expr_line();
  		    --textlock;
  		    restore_cmdline(&save_ccline);
  
! 		    if (p != NULL)
  		    {
! 			len = (int)STRLEN(p);
! 			if (realloc_cmdbuff(len + 1) == OK)
! 			{
! 			    ccline.cmdlen = len;
! 			    STRCPY(ccline.cmdbuff, p);
! 			    vim_free(p);
! 
! 			    /* Restore the cursor or use the position set with
! 			     * set_cmdline_pos(). */
! 			    if (new_cmdpos > ccline.cmdlen)
! 				ccline.cmdpos = ccline.cmdlen;
! 			    else
! 				ccline.cmdpos = new_cmdpos;
! 
! 			    KeyTyped = FALSE;	/* Don't do p_wc completion. */
! 			    redrawcmd();
! 			    goto cmdline_changed;
! 			}
  		    }
  		}
  		beep_flush();
*** ../vim-7.3.038/src/version.c	2010-10-27 12:33:12.000000000 +0200
--- src/version.c	2010-10-27 12:43:40.000000000 +0200
***************
*** 716,717 ****
--- 716,719 ----
  {   /* Add new patch number below this line */
+ /**/
+     39,
  /**/

-- 
"Hegel was right when he said that we learn from history that man can
never learn anything from history."       (George Bernard Shaw)

 /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\        download, build and distribute -- http://www.A-A-P.org        ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///