Karsten Hopp ae61a4
To: vim_dev@googlegroups.com
Karsten Hopp ae61a4
Subject: Patch 7.3.989
Karsten Hopp ae61a4
Fcc: outbox
Karsten Hopp ae61a4
From: Bram Moolenaar <Bram@moolenaar.net>
Karsten Hopp ae61a4
Mime-Version: 1.0
Karsten Hopp ae61a4
Content-Type: text/plain; charset=UTF-8
Karsten Hopp ae61a4
Content-Transfer-Encoding: 8bit
Karsten Hopp ae61a4
------------
Karsten Hopp ae61a4
Karsten Hopp ae61a4
Patch 7.3.989
Karsten Hopp ae61a4
Problem:    New regexp engine compares negative numbers to character.
Karsten Hopp ae61a4
Solution:   Add missing case statements.
Karsten Hopp ae61a4
Files:	    src/regexp_nfa.c
Karsten Hopp ae61a4
Karsten Hopp ae61a4
Karsten Hopp ae61a4
*** ../vim-7.3.988/src/regexp_nfa.c	2013-05-21 14:02:55.000000000 +0200
Karsten Hopp ae61a4
--- src/regexp_nfa.c	2013-05-21 15:31:47.000000000 +0200
Karsten Hopp ae61a4
***************
Karsten Hopp ae61a4
*** 3383,3390 ****
Karsten Hopp ae61a4
--- 3383,3412 ----
Karsten Hopp ae61a4
  		ADD_POS_NEG_STATE(t->state);
Karsten Hopp ae61a4
  		break;
Karsten Hopp ae61a4
  
Karsten Hopp ae61a4
+ 	    case NFA_MOPEN + 0:
Karsten Hopp ae61a4
+ 	    case NFA_MOPEN + 1:
Karsten Hopp ae61a4
+ 	    case NFA_MOPEN + 2:
Karsten Hopp ae61a4
+ 	    case NFA_MOPEN + 3:
Karsten Hopp ae61a4
+ 	    case NFA_MOPEN + 4:
Karsten Hopp ae61a4
+ 	    case NFA_MOPEN + 5:
Karsten Hopp ae61a4
+ 	    case NFA_MOPEN + 6:
Karsten Hopp ae61a4
+ 	    case NFA_MOPEN + 7:
Karsten Hopp ae61a4
+ 	    case NFA_MOPEN + 8:
Karsten Hopp ae61a4
+ 	    case NFA_MOPEN + 9:
Karsten Hopp ae61a4
+ 		/* handled below */
Karsten Hopp ae61a4
+ 		break;
Karsten Hopp ae61a4
+ 
Karsten Hopp ae61a4
+ 	    case NFA_SKIP_CHAR:
Karsten Hopp ae61a4
+ 	    case NFA_ZSTART:
Karsten Hopp ae61a4
+ 		/* TODO: should not happen? */
Karsten Hopp ae61a4
+ 		break;
Karsten Hopp ae61a4
+ 
Karsten Hopp ae61a4
  	    default:	/* regular character */
Karsten Hopp ae61a4
+ 		/* TODO: put this in #ifdef later */
Karsten Hopp ae61a4
+ 		if (t->state->c < -256)
Karsten Hopp ae61a4
+ 		    EMSGN("INTERNAL: Negative state char: %ld", t->state->c);
Karsten Hopp ae61a4
  		result = (no_Magic(t->state->c) == c);
Karsten Hopp ae61a4
+ 
Karsten Hopp ae61a4
  		if (!result)
Karsten Hopp ae61a4
  		    result = ireg_ic == TRUE
Karsten Hopp ae61a4
  				&& MB_TOLOWER(t->state->c) == MB_TOLOWER(c);
Karsten Hopp ae61a4
*** ../vim-7.3.988/src/version.c	2013-05-21 14:02:55.000000000 +0200
Karsten Hopp ae61a4
--- src/version.c	2013-05-21 15:32:50.000000000 +0200
Karsten Hopp ae61a4
***************
Karsten Hopp ae61a4
*** 730,731 ****
Karsten Hopp ae61a4
--- 730,733 ----
Karsten Hopp ae61a4
  {   /* Add new patch number below this line */
Karsten Hopp ae61a4
+ /**/
Karsten Hopp ae61a4
+     989,
Karsten Hopp ae61a4
  /**/
Karsten Hopp ae61a4
Karsten Hopp ae61a4
-- 
Karsten Hopp ae61a4
God made machine language; all the rest is the work of man.
Karsten Hopp ae61a4
Karsten Hopp ae61a4
 /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
Karsten Hopp ae61a4
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
Karsten Hopp ae61a4
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
Karsten Hopp ae61a4
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///