Commit: patch 9.2.0215: MS-Windows: several tests fail in the Windows CUI.

1 view
Skip to first unread message

Christian Brabandt

unread,
Mar 20, 2026, 7:02:10 PM (3 days ago) Mar 20
to vim...@googlegroups.com
patch 9.2.0215: MS-Windows: several tests fail in the Windows CUI.

Commit: https://github.com/vim/vim/commit/890d5fd1387ef6223c2894676f95bf800bca0d65
Author: Muraoka Taro <koron....@gmail.com>
Date: Fri Mar 20 22:42:02 2026 +0000

patch 9.2.0215: MS-Windows: several tests fail in the Windows CUI.

Problem: The Windows CUI actively buffers transmissions to terms. Patch
0200 changed the timing of DECRQM transmissions, and
out_flush() is no longer called after transmission. Therefore,
actual term initialization does not occur until the buffer is
flushed, causing the following tests to fail:
- test_autocmd.vim - Test_Changed_FirstTime()
- test_mapping.vim - Test_error_in_map_expr()
- test_messages.vim - Test_mode_message_at_leaving_insert_with_esc_mapped()
- test_search.vim - Test_search_cmdline_incsearch_highlight_attr()

The failures since version 200 can be confirmed in the following CI jobs.
- 9.2.0200 https://github.com/vim/vim/actions/runs/23312934497
- https://github.com/vim/vim/actions/runs/23312934497/job/67804736843
- https://github.com/vim/vim/actions/runs/23312934497/job/67804736752
- https://github.com/vim/vim/actions/runs/23312934497/job/67804736735
- 9.2.0199 https://github.com/vim/vim/actions/runs/23311871938
- The above test can be confirmed to be successful.
Solution: After sending DECRQM in send_decrqm_modes(), explicitly call
out_flush() to ensure terminal initialization (Muraoka Taro).

closes: #19764

Signed-off-by: Muraoka Taro <koron....@gmail.com>
Signed-off-by: Christian Brabandt <c...@256bit.org>

diff --git a/src/term.c b/src/term.c
index 5e19b09a9..853ff861d 100644
--- a/src/term.c
+++ b/src/term.c
@@ -7985,6 +7985,7 @@ send_decrqm_modes(void)
vim_snprintf((char *)IObuff, IOSIZE, " [?%d$p", dec_modes[i]);
out_str(IObuff);
}
+ out_flush();
}
}

diff --git a/src/version.c b/src/version.c
index 3f5c22316..41386c35c 100644
--- a/src/version.c
+++ b/src/version.c
@@ -734,6 +734,8 @@ static char *(features[]) =

static int included_patches[] =
{ /* Add new patch number below this line */
+/**/
+ 215,
/**/
214,
/**/
Reply all
Reply to author
Forward
0 new messages