aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/regexp.c
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2022-02-06 10:18:59 +0800
committerGitHub <noreply@github.com>2022-02-06 10:18:59 +0800
commit8215c05945054755b2c3cadae198894372dbfe0f (patch)
tree777afd96a8e332d3712df0a2e26c04ed8d4c06ca /src/nvim/regexp.c
parent28d5face21748bbd7b116a1e57bffb535dba392a (diff)
parentd11bbacf0ffa45096364195bda4739984d25121e (diff)
downloadrneovim-8215c05945054755b2c3cadae198894372dbfe0f.tar.gz
rneovim-8215c05945054755b2c3cadae198894372dbfe0f.tar.bz2
rneovim-8215c05945054755b2c3cadae198894372dbfe0f.zip
Merge pull request #17194 from zeertzjq/inccommand-prev-sub
fix(inccommand): do not change reg_prev_sub when previewing
Diffstat (limited to 'src/nvim/regexp.c')
-rw-r--r--src/nvim/regexp.c15
1 files changed, 10 insertions, 5 deletions
diff --git a/src/nvim/regexp.c b/src/nvim/regexp.c
index ba234bc841..6a6c915094 100644
--- a/src/nvim/regexp.c
+++ b/src/nvim/regexp.c
@@ -6534,11 +6534,16 @@ char_u *regtilde(char_u *source, int magic)
}
}
- xfree(reg_prev_sub);
- if (newsub != source) /* newsub was allocated, just keep it */
- reg_prev_sub = newsub;
- else /* no ~ found, need to save newsub */
- reg_prev_sub = vim_strsave(newsub);
+ // Only change reg_prev_sub when not previewing.
+ if (!(State & CMDPREVIEW)) {
+ xfree(reg_prev_sub);
+ if (newsub != source) { // newsub was allocated, just keep it
+ reg_prev_sub = newsub;
+ } else { // no ~ found, need to save newsub
+ reg_prev_sub = vim_strsave(newsub);
+ }
+ }
+
return newsub;
}