changeset 29942:991bec040ce9 v9.0.0309

patch 9.0.0309: invalid memory access when cmdheight is zero Commit: https://github.com/vim/vim/commit/7a99da43d14671cc91a302bcfa34d37a35eaa28d Author: Bram Moolenaar <Bram@vim.org> Date: Sun Aug 28 22:21:01 2022 +0100 patch 9.0.0309: invalid memory access when cmdheight is zero Problem: Invalid memory access when cmdheight is zero. Solution: Check index in w_lines is smaller than Rows.
author Bram Moolenaar <Bram@vim.org>
date Sun, 28 Aug 2022 23:30:03 +0200
parents fb7ea094aeec
children 5cdf623f3836
files src/drawscreen.c src/version.c
diffstat 2 files changed, 7 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/drawscreen.c
+++ b/src/drawscreen.c
@@ -830,6 +830,9 @@ after_updating_screen(int may_resize_she
     // handle the drop now.
     handle_any_postponed_drop();
 #endif
+
+    // in case it was changed in dont_use_message_window()
+    cmdline_row = Rows - p_ch;
 }
 
 /*
@@ -2426,7 +2429,8 @@ win_update(win_T *wp)
 			    if (wp->w_lines_valid > wp->w_height)
 				wp->w_lines_valid = wp->w_height;
 			    for (i = wp->w_lines_valid; i - j >= idx; --i)
-				wp->w_lines[i] = wp->w_lines[i - j];
+				if (i < Rows)
+				    wp->w_lines[i] = wp->w_lines[i - j];
 
 			    // The w_lines[] entries for inserted lines are
 			    // now invalid, but wl_size may be used above.
--- a/src/version.c
+++ b/src/version.c
@@ -708,6 +708,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    309,
+/**/
     308,
 /**/
     307,