From e5428d10b5a49e9395190482ff35bbac0c1117ea Mon Sep 17 00:00:00 2001 From: zeertzjq Date: Wed, 30 Mar 2022 08:32:12 +0800 Subject: 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 Clear ccline earlier in save_cmdline() if ccline is in use so that ccline.prev_ccline can be assigned. --- src/nvim/main.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/nvim/main.c') 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. -- cgit