vim-patch:8.2.3391: crash with combination of 'linebreak' and other options

Problem:    Crash with combination of 'linebreak' and other options.
Solution:   Avoid n_extra to become negative. (Christian Brabandt,
            closes vim/vim#8817)
20e0c3d27b
This commit is contained in:
Sean Dewar
2021-09-10 15:12:45 +01:00
parent b91609a70d
commit 6e1c03bd2d

View File

@@ -3556,9 +3556,12 @@ static int win_line(win_T *wp, linenr_T lnum, int startrow, int endrow, bool noc
n_extra = win_lbr_chartabsize(wp, line, p, (colnr_T)vcol, NULL) - 1;
// We have just drawn the showbreak value, no need to add
// space for it again
// space for it again.
if (vcol == vcol_sbr) {
n_extra -= MB_CHARLEN(get_showbreak_value(wp));
if (n_extra < 0) {
n_extra = 0;
}
}
if (c == TAB && n_extra + col > grid->Columns) {