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 -- [email protected] -- 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    ///

-- 
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