neovim

Neovim text editor
git clone https://git.dasho.dev/neovim.git
Log | Files | Refs | README

commit db0ea1ab444c5e45fe02e1f2984aefc2eb613096
parent 6596f7e136b7ceba2a94c708e2a179ec60b6d048
Author: bfredl <bjorn.linse@gmail.com>
Date:   Mon, 26 Sep 2022 10:40:34 +0200

fix(messages): validate msg_grid before silent! message with cmdheight=0

fixes #20316

Diffstat:
Msrc/nvim/message.c | 1+
Mtest/functional/ui/cmdline_spec.lua | 13+++++++++++++
2 files changed, 14 insertions(+), 0 deletions(-)

diff --git a/src/nvim/message.c b/src/nvim/message.c @@ -1401,6 +1401,7 @@ void msg_start(void) if (!msg_scroll && full_screen) { // overwrite last message if (cmdline_row >= Rows && !ui_has(kUIMessages)) { + msg_grid_validate(); msg_scroll_up(false, true); msg_scrolled++; cmdline_row = Rows - 1; diff --git a/test/functional/ui/cmdline_spec.lua b/test/functional/ui/cmdline_spec.lua @@ -1183,4 +1183,17 @@ describe('cmdheight=0', function() {1:~ }| ]]} end) + + it('with silent! at startup', function() + clear{args={'-c', 'set cmdheight=0', '-c', 'autocmd VimEnter * silent! call Foo()'}} + screen:attach() + -- doesn't crash while not displaying silent! error message + screen:expect{grid=[[ + ^ | + {1:~ }| + {1:~ }| + {1:~ }| + {1:~ }| + ]]} + end) end)