[vim] - patchlevel 485

Karsten Hopp karsten at fedoraproject.org
Wed Oct 22 15:57:19 UTC 2014


commit 402abcc1b9a218782db613de962513f63d3adb38
Author: Karsten Hopp <karsten at redhat.com>
Date:   Wed Oct 22 18:00:10 2014 +0200

    - patchlevel 485

 7.4.485 |  114 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 114 insertions(+), 0 deletions(-)
---
diff --git a/7.4.485 b/7.4.485
new file mode 100644
index 0000000..15486dc
--- /dev/null
+++ b/7.4.485
@@ -0,0 +1,114 @@
+To: vim_dev at googlegroups.com
+Subject: Patch 7.4.485
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.4.485 (after 7.4.484)
+Problem:    Abbreviations don't work. (Toothpik)
+Solution:   Move the length computation inside the for loop.  Compare against
+	    the unescaped key.
+Files:	    src/getchar.c
+
+
+*** ../vim-7.4.484/src/getchar.c	2014-10-21 18:17:05.638274024 +0200
+--- src/getchar.c	2014-10-21 19:30:46.262283680 +0200
+***************
+*** 4443,4449 ****
+  #endif
+      int		is_id = TRUE;
+      int		vim_abbr;
+-     int		qlen;		/* length of q, CSI/K_SPECIAL unescaped */
+  
+      if (typebuf.tb_no_abbr_cnt)	/* abbrev. are not recursive */
+  	return FALSE;
+--- 4443,4448 ----
+***************
+*** 4521,4549 ****
+  #else
+  	mp = first_abbr;
+  #endif
+- 	qlen = mp->m_keylen;
+- 	if (vim_strbyte(mp->m_keys, K_SPECIAL) != NULL)
+- 	{
+- 	    char_u	*q = vim_strsave(mp->m_keys);
+- 
+- 	    /* might have CSI escaped mp->m_keys */
+- 	    if (q != NULL)
+- 	    {
+- 		vim_unescape_csi(q);
+- 		qlen = (int)STRLEN(q);
+- 		vim_free(q);
+- 	    }
+- 	}
+  	for ( ; mp;
+  #ifdef FEAT_LOCALMAP
+  		mp->m_next == NULL ? (mp = mp2, mp2 = NULL) :
+  #endif
+  		(mp = mp->m_next))
+  	{
+  	    /* find entries with right mode and keys */
+! 	    if (       (mp->m_mode & State)
+  		    && qlen == len
+! 		    && !STRNCMP(mp->m_keys, ptr, (size_t)len))
+  		break;
+  	}
+  	if (mp != NULL)
+--- 4520,4553 ----
+  #else
+  	mp = first_abbr;
+  #endif
+  	for ( ; mp;
+  #ifdef FEAT_LOCALMAP
+  		mp->m_next == NULL ? (mp = mp2, mp2 = NULL) :
+  #endif
+  		(mp = mp->m_next))
+  	{
++ 	    int		qlen = mp->m_keylen;
++ 	    char_u	*q = mp->m_keys;
++ 	    int		match;
++ 
++ 	    if (vim_strbyte(mp->m_keys, K_SPECIAL) != NULL)
++ 	    {
++ 		/* might have CSI escaped mp->m_keys */
++ 		q = vim_strsave(mp->m_keys);
++ 		if (q != NULL)
++ 		{
++ 		    vim_unescape_csi(q);
++ 		    qlen = (int)STRLEN(q);
++ 		}
++ 	    }
++ 
+  	    /* find entries with right mode and keys */
+! 	    match =    (mp->m_mode & State)
+  		    && qlen == len
+! 		    && !STRNCMP(q, ptr, (size_t)len);
+! 	    if (q != mp->m_keys)
+! 		vim_free(q);
+! 	    if (match)
+  		break;
+  	}
+  	if (mp != NULL)
+*** ../vim-7.4.484/src/version.c	2014-10-21 18:17:05.638274024 +0200
+--- src/version.c	2014-10-21 19:34:55.338284224 +0200
+***************
+*** 743,744 ****
+--- 743,746 ----
+  {   /* Add new patch number below this line */
++ /**/
++     485,
+  /**/
+
+-- 
+TALL KNIGHT: We shall say Ni! again to you if you do not appease us.
+ARTHUR:      All right!  What do you want?
+TALL KNIGHT: We want ... a shrubbery!
+                 "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
+
+ /// Bram Moolenaar -- Bram at 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    ///


More information about the scm-commits mailing list