diff src/regexp.c @ 4466:4ff8fa416a0d v7.3.981

updated for version 7.3.981 Problem: In the old regexp engine \i, \I, \f and \F don't work on multi-byte characters. Solution: Dereference pointer properly.
author Bram Moolenaar <bram@vim.org>
date Tue, 21 May 2013 00:03:02 +0200
parents fe8a0a6a1c2a
children d037b9cbdaaa
line wrap: on
line diff
--- a/src/regexp.c
+++ b/src/regexp.c
@@ -5758,7 +5758,7 @@ regrepeat(p, maxcount)
       case SIDENT + ADD_NL:
 	while (count < maxcount)
 	{
-	    if (vim_isIDc(*scan) && (testval || !VIM_ISDIGIT(*scan)))
+	    if (vim_isIDc(PTR2CHAR(scan)) && (testval || !VIM_ISDIGIT(*scan)))
 	    {
 		mb_ptr_adv(scan);
 	    }
@@ -5819,7 +5819,7 @@ regrepeat(p, maxcount)
       case SFNAME + ADD_NL:
 	while (count < maxcount)
 	{
-	    if (vim_isfilec(*scan) && (testval || !VIM_ISDIGIT(*scan)))
+	    if (vim_isfilec(PTR2CHAR(scan)) && (testval || !VIM_ISDIGIT(*scan)))
 	    {
 		mb_ptr_adv(scan);
 	    }