diff options
author | bphilly96 <65504429+bphilly96@users.noreply.github.com> | 2021-04-09 04:14:08 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-04-08 23:14:08 -0400 |
commit | 82ac44d01f0e92546f43c804595c14a139af77bd (patch) | |
tree | 476f9d00fc62d46b8ae2a5f6bacddd45cb955cd2 /src/nvim/ex_getln.c | |
parent | ed3c0a27c7e693baf5c817bede081d27ea4dba4c (diff) | |
download | rneovim-82ac44d01f0e92546f43c804595c14a139af77bd.tar.gz rneovim-82ac44d01f0e92546f43c804595c14a139af77bd.tar.bz2 rneovim-82ac44d01f0e92546f43c804595c14a139af77bd.zip |
vim-patch:8.2.2737: status line not updated when local 'statusline' option set (#14325)
Problem: Status line not updated when local 'statusline' option set.
Solution: Check the 'statusline' option of each window.
https://github.com/vim/vim/commit/d8db8383926cb8729417d9515cbfaf455dbbd8d1
Diffstat (limited to 'src/nvim/ex_getln.c')
-rw-r--r-- | src/nvim/ex_getln.c | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/src/nvim/ex_getln.c b/src/nvim/ex_getln.c index e6b2b231f9..7159b27665 100644 --- a/src/nvim/ex_getln.c +++ b/src/nvim/ex_getln.c @@ -784,9 +784,18 @@ static uint8_t *command_line_enter(int firstc, long count, int indent) // Redraw the statusline in case it uses the current mode using the mode() // function. - if (!cmd_silent && msg_scrolled == 0 && *p_stl != NUL) { - curwin->w_redr_status = true; - redraw_statuslines(); + if (!cmd_silent && msg_scrolled == 0) { + bool found_one = false; + + FOR_ALL_WINDOWS_IN_TAB(wp, curtab) { + if (*p_stl != NUL || *wp->w_p_stl != NUL) { + wp->w_redr_status = true; + found_one = true; + } + } + if (found_one) { + redraw_statuslines(); + } } did_emsg = false; |