diff --git a/test/old/testdir/test_statusline.vim b/test/old/testdir/test_statusline.vim index ebbc6e5443..f54a8b8064 100644 --- a/test/old/testdir/test_statusline.vim +++ b/test/old/testdir/test_statusline.vim @@ -715,4 +715,18 @@ func Test_statusline_in_sandbox() delfunc Check_statusline_in_sandbox endfunc +" This used to call memmove with a negative size and crash Vim +func Test_statusline_singlebyte_negative() + let [_columns, _ls, _stl, _enc] = [&columns, &ls, &stl, &enc] + " set encoding=latin1 + set laststatus=2 columns=15 + setl stl=%#ErrorMsg#abcdtàØ?}}o@`s`ÿæCú\xE%#Normal# + vsp + setl stl=%#ErrorMsg#abcdtàØ?}}o@`s`ÿæCú\xE%#Normal# + redraw! + redrawstatus + bw! + let [&columns, &ls, &stl, &enc] = [_columns, _ls, _stl, _enc] +endfunc + " vim: shiftwidth=2 sts=2 expandtab