Mercurial > vim
diff src/libvterm/src/screen.c @ 20875:88cec48503b8 v8.2.0989
patch 8.2.0989: crash after resizing a terminal window
Commit: https://github.com/vim/vim/commit/a6e8bf2d8929ef52eeda495e0e0c3d2bff8f5830
Author: Bram Moolenaar <Bram@vim.org>
Date: Tue Jun 16 20:58:07 2020 +0200
patch 8.2.0989: crash after resizing a terminal window
Problem: Crash after resizing a terminal window. (August Masquelier)
Solution: Add check for valid row in libvterm. (closes https://github.com/vim/vim/issues/6273)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Tue, 16 Jun 2020 21:00:05 +0200 |
parents | a4652d7ec99f |
children | 2f2bc98a8dfb |
line wrap: on
line diff
--- a/src/libvterm/src/screen.c +++ b/src/libvterm/src/screen.c @@ -280,6 +280,12 @@ static int erase_internal(VTermRect rect for(col = rect.start_col; col < rect.end_col; col++) { ScreenCell *cell = getcell(screen, row, col); + if (cell == NULL) + { + DEBUG_LOG2("libvterm: erase_internal() position invalid: %d / %d", + row, col); + return 1; + } if(selective && cell->pen.protected_cell) continue;