aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/regexp.c
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2022-04-04 13:02:32 +0800
committerGitHub <noreply@github.com>2022-04-04 13:02:32 +0800
commitdaa8ac051d9e641cb708af5ae2ffd571f5abbc44 (patch)
tree410fdd3af60b0ba3af8a67edde01818ba6a84a89 /src/nvim/regexp.c
parentdb13f105d62e868997e61d8cef921fbebb312ddc (diff)
parentbbfc44e255ec6d1a6ced68dde64ff5d3c68b9ceb (diff)
downloadrneovim-daa8ac051d9e641cb708af5ae2ffd571f5abbc44.tar.gz
rneovim-daa8ac051d9e641cb708af5ae2ffd571f5abbc44.tar.bz2
rneovim-daa8ac051d9e641cb708af5ae2ffd571f5abbc44.zip
Merge pull request #17991 from zeertzjq/vim-8.2.4253
vim-patch:8.2.4253: using freed memory when substitute with function call
Diffstat (limited to 'src/nvim/regexp.c')
-rw-r--r--src/nvim/regexp.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/nvim/regexp.c b/src/nvim/regexp.c
index 53add57736..9a04cc428a 100644
--- a/src/nvim/regexp.c
+++ b/src/nvim/regexp.c
@@ -1531,7 +1531,7 @@ static fptr_T do_Lower(int *d, int c)
*
* The tildes are parsed once before the first call to vim_regsub().
*/
-char_u *regtilde(char_u *source, int magic)
+char_u *regtilde(char_u *source, int magic, bool preview)
{
char_u *newsub = source;
char_u *tmpsub;
@@ -1576,7 +1576,7 @@ char_u *regtilde(char_u *source, int magic)
}
// Only change reg_prev_sub when not previewing.
- if (!(State & CMDPREVIEW)) {
+ if (!preview) {
xfree(reg_prev_sub);
if (newsub != source) { // newsub was allocated, just keep it
reg_prev_sub = newsub;