aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/ex_cmds2.c
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2024-03-22 05:54:12 +0800
committerzeertzjq <zeertzjq@outlook.com>2024-03-22 06:04:37 +0800
commitdabc44d15c8ef203b16e00dfa93c5e2639680bc4 (patch)
treed14085e9665e2763c46ec339262a728391e0a4d0 /src/nvim/ex_cmds2.c
parent271879dd490b8f9c20c5541e60ca2a2924b631d9 (diff)
downloadrneovim-dabc44d15c8ef203b16e00dfa93c5e2639680bc4.tar.gz
rneovim-dabc44d15c8ef203b16e00dfa93c5e2639680bc4.tar.bz2
rneovim-dabc44d15c8ef203b16e00dfa93c5e2639680bc4.zip
vim-patch:9.1.0195: memleak with ex_drop, NULL dereference
Problem: memleak with ex_drop(), NULL dereference (zeertzjq) Solution: revert back to ex_rewind(), use curbuf instead of buf fixes: vim/vim#14246 closes: vim/vim#14251 https://github.com/vim/vim/commit/85a769d466d2009db6a318fd120d9691344664ba Co-authored-by: Christian Brabandt <cb@256bit.org>
Diffstat (limited to 'src/nvim/ex_cmds2.c')
-rw-r--r--src/nvim/ex_cmds2.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/nvim/ex_cmds2.c b/src/nvim/ex_cmds2.c
index fc50664ce0..d754150089 100644
--- a/src/nvim/ex_cmds2.c
+++ b/src/nvim/ex_cmds2.c
@@ -866,12 +866,12 @@ void ex_drop(exarg_T *eap)
const int save_ar = curbuf->b_p_ar;
// reload the file if it is newer
- curbuf->b_p_ar = 1;
+ curbuf->b_p_ar = true;
buf_check_timestamp(curbuf);
curbuf->b_p_ar = save_ar;
}
- if (buf->b_ml.ml_flags & ML_EMPTY) {
- open_buffer(false, eap, 0);
+ if (curbuf->b_ml.ml_flags & ML_EMPTY) {
+ ex_rewind(eap);
}
return;
}