updated for version 7.3.1184
Problem: Highlighting is sometimes wrong. (Axel Bender)
Solution: Fetch regline again when returning from recursive regmatch.
diff --git a/src/regexp_nfa.c b/src/regexp_nfa.c
index 5ad7a07..780653f 100644
--- a/src/regexp_nfa.c
+++ b/src/regexp_nfa.c
@@ -4495,7 +4495,6 @@
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 @@
/* 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;
diff --git a/src/version.c b/src/version.c
index 8256924..f003bbc 100644
--- a/src/version.c
+++ b/src/version.c
@@ -729,6 +729,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1184,
+/**/
1183,
/**/
1182,