summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBram Moolenaar <bram@vim.org>2013-06-13 19:47:07 +0200
committerBram Moolenaar <bram@vim.org>2013-06-13 19:47:07 +0200
commitf69dbcd99e740187ceeca7ab9b8e1f19616b8991 (patch)
tree942f68bb961889ef4ba6e0b2bebbc6c8e3565882
parent9cdffe81449ec8c13af9993bc81527aa0dcb1f10 (diff)
downloadvim-f69dbcd99e740187ceeca7ab9b8e1f19616b8991.tar.gz
updated for version 7.3.1184v7.3.1184v7-3-1184
Problem: Highlighting is sometimes wrong. (Axel Bender) Solution: Fetch regline again when returning from recursive regmatch.
-rw-r--r--src/regexp_nfa.c4
-rw-r--r--src/version.c2
2 files changed, 4 insertions, 2 deletions
diff --git a/src/regexp_nfa.c b/src/regexp_nfa.c
index 5ad7a071..780653f0 100644
--- a/src/regexp_nfa.c
+++ b/src/regexp_nfa.c
@@ -4495,7 +4495,6 @@ recursive_regmatch(state, pim, prog, submatch, m, listids)
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, submatch, m, listids)
/* 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 82569243..f003bbc0 100644
--- 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,