diff options
-rw-r--r-- | src/drawline.c | 3 | ||||
-rw-r--r-- | src/testdir/test_listlbr.vim | 24 | ||||
-rw-r--r-- | src/version.c | 2 |
3 files changed, 28 insertions, 1 deletions
diff --git a/src/drawline.c b/src/drawline.c index 5fe25f554..5c647507d 100644 --- a/src/drawline.c +++ b/src/drawline.c @@ -3095,7 +3095,8 @@ win_line( ? wp->w_lcs_chars.tab3 : wp->w_lcs_chars.tab1; #ifdef FEAT_LINEBREAK - if (wp->w_p_lbr && wlv.p_extra != NULL) + if (wp->w_p_lbr && wlv.p_extra != NULL + && *wlv.p_extra != NUL) wlv.c_extra = NUL; // using p_extra from above else #endif diff --git a/src/testdir/test_listlbr.vim b/src/testdir/test_listlbr.vim index 4a43feab7..198ad8c7f 100644 --- a/src/testdir/test_listlbr.vim +++ b/src/testdir/test_listlbr.vim @@ -73,6 +73,30 @@ func Test_linebreak_with_nolist() call s:close_windows() endfunc +func Test_linebreak_with_list_and_number() + call s:test_windows('setl list listchars+=tab:>-') + call setline(1, ["abcdefg\thijklmnopqrstu", "v"]) + let lines = s:screen_lines([1, 4], winwidth(0)) + let expect_nonumber = [ +\ "abcdefg>------------", +\ "hijklmnopqrstu$ ", +\ "v$ ", +\ "~ ", +\ ] + call s:compare_lines(expect_nonumber, lines) + + setl number + let lines = s:screen_lines([1, 4], winwidth(0)) + let expect_number = [ +\ " 1 abcdefg>--------", +\ " hijklmnopqrstu$ ", +\ " 2 v$ ", +\ "~ ", +\ ] + call s:compare_lines(expect_number, lines) + call s:close_windows() +endfunc + func Test_should_break() call s:test_windows('setl sbr=+ nolist') call setline(1, "1\t" . repeat('a', winwidth(0)-2)) diff --git a/src/version.c b/src/version.c index bef7cf09c..ede31d62f 100644 --- a/src/version.c +++ b/src/version.c @@ -696,6 +696,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1373, +/**/ 1372, /**/ 1371, |