patch 9.2.0445: win_fix_scroll() called before win_comp_pos() in command_height()
Commit: https://github.com/vim/vim/commit/40fc78f0a185f003844334e7c9dd217d6d993143 Author: Jesse Rosenstock <[email protected]> Date: Tue May 5 19:50:46 2026 +0000 patch 9.2.0445: win_fix_scroll() called before win_comp_pos() in command_height() Problem: win_fix_scroll(true) is called before win_comp_pos() in command_height(). Solution: Move win_fix_scroll(true) after win_comp_pos(), matching the ordering used in win_drag_status_line() (Jesse Rosenstock). Patch 9.2.0413 added win_fix_scroll(true) to command_height() to handle splitkeep when cmdheight changes, but placed the call before win_comp_pos(). win_fix_scroll() reads w_winrow to detect window movement (https://github.com/vim/vim/blob/620557bd48865fa3d927901764d2747bf68597b5/src/window.c#L7266), but w_winrow is not recomputed until win_comp_pos() runs (https://github.com/vim/vim/blob/620557bd48865fa3d927901764d2747bf68597b5/src/window.c#L6516). This causes incorrect scroll adjustments and was breaking Test_smoothscroll_incsearch on macOS CI. closes: #20138 Co-authored-by: Gemini Signed-off-by: Jesse Rosenstock <[email protected]> Signed-off-by: Christian Brabandt <[email protected]> diff --git a/src/version.c b/src/version.c index a859c2ced..4d3f68d05 100644 --- a/src/version.c +++ b/src/version.c @@ -729,6 +729,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 445, /**/ 444, /**/ diff --git a/src/window.c b/src/window.c index 8813ffa80..eb4e494d1 100644 --- a/src/window.c +++ b/src/window.c @@ -7591,10 +7591,10 @@ command_height(void) } if (p_ch < old_p_ch && command_frame_height && frp != NULL) frame_add_height(frp, (int)(old_p_ch - p_ch)); - win_fix_scroll(true); // Recompute window positions. win_comp_pos(); + win_fix_scroll(true); cmdline_row = Rows - p_ch; redraw_cmdline = TRUE; -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion visit https://groups.google.com/d/msgid/vim_dev/E1wKLw6-007ZSN-Cc%40256bit.org.
