Problem: ml_get error when 'splitkeep' is "screen". (Marius Gedminas)
Solution: Check the botline is not too large. (Luuk van Baal,
closes #11293, closes #11292)
let top = line('w0')
help | quit
call assert_equal(top, line('w0'))
+ " No error when resizing window in autocmd and buffer length changed
+ autocmd FileType qf exe "resize" line('$')
+ cexpr getline(1, '$')
+ copen
+ wincmd p
+ norm dd
+ cexpr getline(1, '$')
%bwipeout!
set splitbelow&
static int included_patches[] =
{ /* Add new patch number below this line */
+/**/
+ 667,
/**/
666,
/**/
if (wp->w_height != wp->w_prev_height)
{
// If window has moved update botline to keep the same screenlines.
- if (*p_spk == 's' && wp->w_winrow != wp->w_prev_winrow)
+ if (*p_spk == 's' && wp->w_winrow != wp->w_prev_winrow
+ && wp->w_botline - 1 <= wp->w_buffer->b_ml.ml_line_count)
{
lnum = wp->w_cursor.lnum;
diff = (wp->w_winrow - wp->w_prev_winrow)