diff options
author | zeertzjq <zeertzjq@outlook.com> | 2022-03-30 08:32:12 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-03-30 08:32:12 +0800 |
commit | e5428d10b5a49e9395190482ff35bbac0c1117ea (patch) | |
tree | 9d3c290de9b71bbe892a4127a70cc270cb2360e2 /src/nvim/main.c | |
parent | 2f378237037150f3c7405fec1d8762e73067d223 (diff) | |
download | rneovim-e5428d10b5a49e9395190482ff35bbac0c1117ea.tar.gz rneovim-e5428d10b5a49e9395190482ff35bbac0c1117ea.tar.bz2 rneovim-e5428d10b5a49e9395190482ff35bbac0c1117ea.zip |
vim-patch:8.1.0439: recursive use of getcmdline() still not protected (#17726)
Problem: Recursive use of getcmdline() still not protected.
Solution: Instead of saving the command buffer when making a call which may
cause recursiveness, save the buffer when actually being called
recursively.
https://github.com/vim/vim/commit/438d176e35c16d56ff3bb7a80300197ce5a30c4f
Co-authored-by: zeertzjq <zeertzjq@outlook.com>
Clear ccline earlier in save_cmdline() if ccline is in use so that
ccline.prev_ccline can be assigned.
Diffstat (limited to 'src/nvim/main.c')
-rw-r--r-- | src/nvim/main.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/nvim/main.c b/src/nvim/main.c index afb9313cba..6ea1cb0875 100644 --- a/src/nvim/main.c +++ b/src/nvim/main.c @@ -20,6 +20,7 @@ #include "nvim/ex_cmds.h" #include "nvim/ex_cmds2.h" #include "nvim/ex_docmd.h" +#include "nvim/ex_getln.h" #include "nvim/fileio.h" #include "nvim/fold.h" #include "nvim/getchar.h" @@ -156,6 +157,7 @@ bool event_teardown(void) void early_init(mparm_T *paramp) { env_init(); + cmdline_init(); eval_init(); // init global variables init_path(argv0 ? argv0 : "nvim"); init_normal_cmds(); // Init the table of Normal mode commands. |