summaryrefslogtreecommitdiff
path: root/src/regexp_nfa.c
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2013-06-13 22:59:30 +0200
committerBram Moolenaar <Bram@vim.org>2013-06-13 22:59:30 +0200
commit4c46b5e00116420edcd5a75ca97449a6f29bb0fb (patch)
tree873373dba62a73f698135ea9b6de59181efc8f99 /src/regexp_nfa.c
parent9d438d3b3862e6cdb4a7b02702f1f82d49bc177d (diff)
downloadvim-git-4c46b5e00116420edcd5a75ca97449a6f29bb0fb.tar.gz
updated for version 7.3.1189v7.3.1189
Problem: Highlighting is still wrong sometimes. (Dominique Pelle) Solution: Also restore reginput properly.
Diffstat (limited to 'src/regexp_nfa.c')
-rw-r--r--src/regexp_nfa.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/regexp_nfa.c b/src/regexp_nfa.c
index 20f7aa31b..e843cd742 100644
--- a/src/regexp_nfa.c
+++ b/src/regexp_nfa.c
@@ -4495,7 +4495,7 @@ recursive_regmatch(state, pim, prog, submatch, m, listids)
regsubs_T *m;
int **listids;
{
- char_u *save_reginput = reginput;
+ int save_reginput_col = (int)(reginput - regline);
int save_reglnum = reglnum;
int save_nfa_match = nfa_match;
int save_nfa_listid = nfa_listid;
@@ -4632,10 +4632,10 @@ recursive_regmatch(state, pim, prog, submatch, m, listids)
}
/* restore position in input text */
- reginput = save_reginput;
reglnum = save_reglnum;
if (REG_MULTI)
regline = reg_getline(reglnum);
+ reginput = regline + save_reginput_col;
nfa_match = save_nfa_match;
nfa_endp = save_nfa_endp;
nfa_listid = save_nfa_listid;