diff options
-rw-r--r-- | src/nvim/drawline.c | 4 | ||||
-rw-r--r-- | test/functional/ui/statuscolumn_spec.lua | 8 |
2 files changed, 10 insertions, 2 deletions
diff --git a/src/nvim/drawline.c b/src/nvim/drawline.c index 5196d5c9f4..4a7bc9170a 100644 --- a/src/nvim/drawline.c +++ b/src/nvim/drawline.c @@ -654,8 +654,8 @@ static void draw_statuscol(win_T *wp, winlinevars_T *wlv, linenr_T lnum, int vir p = sp->start; } size_t translen = transstr_buf(p, buf + len - p, transbuf, MAXPATHL, true); - draw_col_buf(wp, wlv, transbuf, translen, num_attr, fold_vcol, false); - draw_col_fill(wlv, schar_from_ascii(' '), stcp->width - width, num_attr); + draw_col_buf(wp, wlv, transbuf, translen, cur_attr, fold_vcol, false); + draw_col_fill(wlv, schar_from_ascii(' '), stcp->width - width, cur_attr); } static void handle_breakindent(win_T *wp, winlinevars_T *wlv) diff --git a/test/functional/ui/statuscolumn_spec.lua b/test/functional/ui/statuscolumn_spec.lua index 255eeb4754..328e212a22 100644 --- a/test/functional/ui/statuscolumn_spec.lua +++ b/test/functional/ui/statuscolumn_spec.lua @@ -227,6 +227,14 @@ describe('statuscolumn', function() {1: }{8:8│}aaaaa | | ]]) + -- Last segment and fillchar are highlighted properly + command("set stc=%#Error#%{v:relnum?'Foo':'FooBar'}") + screen:expect([[ + {9:Foo }aaaaa |*4 + {9:FooBar}^aaaaa | + {9:Foo }aaaaa |*8 + | + ]]) end) it('works with wrapped lines, signs and folds', function() |