changeset 15339:417bf10a756d v8.1.0677

patch 8.1.0677: look-behind match may use the wrong line number commit https://github.com/vim/vim/commit/866f3558141aa68862aa2fedbb7747bf2365e838 Author: Bram Moolenaar <Bram@vim.org> Date: Tue Jan 1 22:19:08 2019 +0100 patch 8.1.0677: look-behind match may use the wrong line number Problem: Look-behind match may use the wrong line number. (Dominique Pelle) Solution: Use the line number in regsave instead of the one in behind_pos, we may be looking at the previous line. (closes #3749)
author Bram Moolenaar <Bram@vim.org>
date Tue, 01 Jan 2019 22:30:08 +0100
parents 8fe428256607
children 90d037c7fa06
files src/regexp.c src/version.c
diffstat 2 files changed, 3 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/regexp.c
+++ b/src/regexp.c
@@ -5582,7 +5582,7 @@ regmatch(
 			if (has_mbyte)
 			{
 			    char_u *line =
-					 reg_getline(behind_pos.rs_u.pos.lnum);
+				  reg_getline(rp->rs_un.regsave.rs_u.pos.lnum);
 
 			    rp->rs_un.regsave.rs_u.pos.col -=
 				(*mb_head_off)(line, line
--- a/src/version.c
+++ b/src/version.c
@@ -800,6 +800,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    677,
+/**/
     676,
 /**/
     675,