changeset 4877:9e36c6b1ebf4 v7.3.1184

updated for version 7.3.1184 Problem: Highlighting is sometimes wrong. (Axel Bender) Solution: Fetch regline again when returning from recursive regmatch.
author Bram Moolenaar <bram@vim.org>
date Thu, 13 Jun 2013 19:47:07 +0200
parents bbdfe0d44263
children 4c6f21f1cc92
files src/regexp_nfa.c src/version.c
diffstat 2 files changed, 4 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/regexp_nfa.c
+++ b/src/regexp_nfa.c
@@ -4495,7 +4495,6 @@ recursive_regmatch(state, pim, prog, sub
     int		    **listids;
 {
     char_u	*save_reginput = reginput;
-    char_u	*save_regline = regline;
     int		save_reglnum = reglnum;
     int		save_nfa_match = nfa_match;
     int		save_nfa_listid = nfa_listid;
@@ -4633,8 +4632,9 @@ recursive_regmatch(state, pim, prog, sub
 
     /* restore position in input text */
     reginput = save_reginput;
-    regline = save_regline;
     reglnum = save_reglnum;
+    if (REG_MULTI)
+	regline = reg_getline(reglnum);
     nfa_match = save_nfa_match;
     nfa_endp = save_nfa_endp;
     nfa_listid = save_nfa_listid;
--- a/src/version.c
+++ b/src/version.c
@@ -729,6 +729,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1184,
+/**/
     1183,
 /**/
     1182,