Patch 7.3.138
Problem: ":com" changes the multi-byte text of :echo. (Dimitar Dimitrov)
Solution: Search for K_SPECIAL as a byte, not a character. (Ben Schmidt)
Files: src/ex_docmd.c
*** ../vim-7.3.137/src/ex_docmd.c 2011-01-17 19:50:01.000000000 +0100
--- src/ex_docmd.c 2011-03-03 15:47:00.000000000 +0100
***************
*** 6054,6068 ****
end = vim_strchr(start + 1, '>');
if (buf != NULL)
{
! ksp = vim_strchr(p, K_SPECIAL);
! if (ksp != NULL && (start == NULL || ksp < start || end == NULL)
&& ((ksp[1] == KS_SPECIAL && ksp[2] == KE_FILLER)
# ifdef FEAT_GUI
|| (ksp[1] == KS_EXTRA && ksp[2] == (int)KE_CSI)
# endif
))
{
! /* K_SPECIAL han been put in the buffer as K_SPECIAL
* KS_SPECIAL KE_FILLER, like for mappings, but
* do_cmdline() doesn't handle that, so convert it back.
* Also change K_SPECIAL KS_EXTRA KE_CSI into CSI. */
--- 6054,6070 ----
end = vim_strchr(start + 1, '>');
if (buf != NULL)
{
! for (ksp = p; *ksp != NUL && *ksp != K_SPECIAL; ++ksp)
! ;
! if (*ksp == K_SPECIAL
! && (start == NULL || ksp < start || end == NULL)
&& ((ksp[1] == KS_SPECIAL && ksp[2] == KE_FILLER)
# ifdef FEAT_GUI
|| (ksp[1] == KS_EXTRA && ksp[2] == (int)KE_CSI)
# endif
))
{
! /* K_SPECIAL has been put in the buffer as K_SPECIAL
* KS_SPECIAL KE_FILLER, like for mappings, but
* do_cmdline() doesn't handle that, so convert it back.
* Also change K_SPECIAL KS_EXTRA KE_CSI into CSI. */
*** ../vim-7.3.137/src/version.c 2011-03-03 15:04:01.000000000 +0100
--- src/version.c 2011-03-03 15:53:41.000000000 +0100
***************
*** 716,717 ****
--- 716,719 ----
{ /* Add new patch number below this line */
+ /**/
+ 138,
/**/
--
f y cn rd ths thn y cn hv grt jb n cmptr prgrmmng
/// Bram Moolenaar -- [email protected] -- 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 ///
--
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