diff options
-rw-r--r-- | src/nvim/message.c | 1 | ||||
-rw-r--r-- | test/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 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) |