aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/ex_cmds.c
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2022-06-12 07:48:28 +0800
committerzeertzjq <zeertzjq@outlook.com>2022-06-12 20:42:30 +0800
commit41bb81a2dfe3c173a5d8f9d7c200475028221cf3 (patch)
tree238df43e486cbd67be253cbfcc1ef24f544553b4 /src/nvim/ex_cmds.c
parent502f03fc064d1eb427d214521d5cb9f5425a15b4 (diff)
downloadrneovim-41bb81a2dfe3c173a5d8f9d7c200475028221cf3.tar.gz
rneovim-41bb81a2dfe3c173a5d8f9d7c200475028221cf3.tar.bz2
rneovim-41bb81a2dfe3c173a5d8f9d7c200475028221cf3.zip
fix(substitute): subtract number of backslashes later
Diffstat (limited to 'src/nvim/ex_cmds.c')
-rw-r--r--src/nvim/ex_cmds.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/nvim/ex_cmds.c b/src/nvim/ex_cmds.c
index 6fa3f1b427..9bb77ce928 100644
--- a/src/nvim/ex_cmds.c
+++ b/src/nvim/ex_cmds.c
@@ -4142,6 +4142,7 @@ static int do_sub(exarg_T *eap, proftime_T timeout, long cmdpreview_ns, handle_T
// That is Vi compatible.
for (p1 = new_end; *p1; p1++) {
if (p1[0] == '\\' && p1[1] != NUL) { // remove backslash
+ sublen--; // correct the byte counts for extmark_splice()
STRMOVE(p1, p1 + 1);
} else if (*p1 == CAR) {
if (u_inssub(lnum) == OK) { // prepare for undo