aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbfredl <bjorn.linse@gmail.com>2022-09-26 11:25:15 +0200
committerGitHub <noreply@github.com>2022-09-26 11:25:15 +0200
commitfe045bfd5f27abd5d55615e14c606d035e4d2533 (patch)
tree1022765d7e98c8ccf7d57cb9be684088663694eb
parent6596f7e136b7ceba2a94c708e2a179ec60b6d048 (diff)
parentdb0ea1ab444c5e45fe02e1f2984aefc2eb613096 (diff)
downloadrneovim-fe045bfd5f27abd5d55615e14c606d035e4d2533.tar.gz
rneovim-fe045bfd5f27abd5d55615e14c606d035e4d2533.tar.bz2
rneovim-fe045bfd5f27abd5d55615e14c606d035e4d2533.zip
Merge pull request #20350 from bfredl/cmdfix
fix(messages): validate msg_grid before silent! message with cmdheight=0
-rw-r--r--src/nvim/message.c1
-rw-r--r--test/functional/ui/cmdline_spec.lua13
2 files changed, 14 insertions, 0 deletions
diff --git a/src/nvim/message.c b/src/nvim/message.c
index 0b9cbfe474..b3e99d99a1 100644
--- 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
index 92eb853686..3669352901 100644
--- 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)