diff options
author | Daniel Hahler <git@thequod.de> | 2019-10-19 23:45:27 +0200 |
---|---|---|
committer | Justin M. Keyes <justinkz@gmail.com> | 2019-10-19 14:45:27 -0700 |
commit | 93fe30593b47fe98a31c6bb67f4d6effb8b725fe (patch) | |
tree | efca9db5851194542c6e1dc039861c2577d40717 | |
parent | 029b828693dbf774e86b6478b5744686d4cdf747 (diff) | |
download | rneovim-93fe30593b47fe98a31c6bb67f4d6effb8b725fe.tar.gz rneovim-93fe30593b47fe98a31c6bb67f4d6effb8b725fe.tar.bz2 rneovim-93fe30593b47fe98a31c6bb67f4d6effb8b725fe.zip |
ex_echo: fix check for got_int #11225
It needs to return to not output any remaining parts.
Followup to https://github.com/neovim/neovim/pull/10926
Ref: https://github.com/neovim/neovim/issues/10923
-rw-r--r-- | src/nvim/message.c | 5 | ||||
-rw-r--r-- | test/functional/ui/messages_spec.lua | 2 |
2 files changed, 5 insertions, 2 deletions
diff --git a/src/nvim/message.c b/src/nvim/message.c index b518664f32..03cbe8ec18 100644 --- a/src/nvim/message.c +++ b/src/nvim/message.c @@ -233,7 +233,10 @@ void msg_multiline_attr(const char *s, int attr, bool check_int) { const char *next_spec = s; - while (next_spec != NULL && (!check_int || !got_int)) { + while (next_spec != NULL) { + if (check_int && got_int) { + return; + } next_spec = strpbrk(s, "\t\n\r"); if (next_spec != NULL) { diff --git a/test/functional/ui/messages_spec.lua b/test/functional/ui/messages_spec.lua index 377d49c036..d16559bab2 100644 --- a/test/functional/ui/messages_spec.lua +++ b/test/functional/ui/messages_spec.lua @@ -1125,7 +1125,7 @@ aliquip ex ea commodo consequat.]]) it('can be quit', function() screen:try_resize(25,5) - feed(':echon join(map(range(0, &lines*2), "v:val"), "\\n")<cr>') + feed(':echon join(map(range(0, &lines*10), "v:val"), "\\n")<cr>') screen:expect{grid=[[ 0 | 1 | |