mirror of
https://github.com/vim/vim.git
synced 2025-07-24 10:45:12 -04:00
patch 8.2.2545: errors and crash when terminal window is zero height
Problem: Errors and crash when terminal window is zero height. (Leonid V. Fedorenchik) Solution: Do not resize when width or height is zero. (closes #7890)
This commit is contained in:
parent
bc327ccc3d
commit
eba13e4ea2
@ -3800,6 +3800,11 @@ term_update_window(win_T *wp)
|
||||
newrows = rows == 0 ? newrows : minsize ? MAX(rows, newrows) : rows;
|
||||
newcols = cols == 0 ? newcols : minsize ? MAX(cols, newcols) : cols;
|
||||
|
||||
// If no cell is visible there is no point in resizing. Also, vterm can't
|
||||
// handle a zero height.
|
||||
if (newrows == 0 || newcols == 0)
|
||||
return;
|
||||
|
||||
if (term->tl_rows != newrows || term->tl_cols != newcols)
|
||||
{
|
||||
term->tl_vterm_size_changed = TRUE;
|
||||
|
@ -470,6 +470,19 @@ func Test_terminal_size()
|
||||
call delete('Xtext')
|
||||
endfunc
|
||||
|
||||
func Test_terminal_zero_height()
|
||||
split
|
||||
wincmd j
|
||||
anoremenu 1.1 WinBar.test :
|
||||
terminal ++curwin
|
||||
wincmd k
|
||||
wincmd _
|
||||
redraw
|
||||
|
||||
call term_sendkeys(bufnr(), "exit\r")
|
||||
bwipe!
|
||||
endfunc
|
||||
|
||||
func Test_terminal_curwin()
|
||||
let cmd = Get_cat_123_cmd()
|
||||
call assert_equal(1, winnr('$'))
|
||||
|
@ -750,6 +750,8 @@ static char *(features[]) =
|
||||
|
||||
static int included_patches[] =
|
||||
{ /* Add new patch number below this line */
|
||||
/**/
|
||||
2545,
|
||||
/**/
|
||||
2544,
|
||||
/**/
|
||||
|
Loading…
x
Reference in New Issue
Block a user