patch 9.1.0664: MS-Windows: console vim did not switch back to main screen on exit

Problem:  MS-Windows: console vim did not switch back to main screen on
          exit
Solution: switch back to main screen on exit (Ken Takata)

`vim.exe --cmd quit` quitted without switching back to the main screen
buffer and the alternate screen buffer was kept shown.

Restore the main screen buffer even when termcap mode has not been
started.

closes: #15443

Signed-off-by: Ken Takata <kentkt@csc.jp>
Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
Ken Takata
2024-08-07 21:18:24 +02:00
committed by Christian Brabandt
parent e2d9b0d499
commit 568cbc92a6
2 changed files with 6 additions and 4 deletions

View File

@ -3561,6 +3561,10 @@ mch_exit_c(int r)
vtp_exit();
stoptermcap();
// Switch back to main screen buffer.
if (use_alternate_screen_buffer)
vtp_printf("\033[?1049l");
if (g_fWindInitCalled)
settmode(TMODE_COOK);
@ -6334,10 +6338,6 @@ termcap_mode_end(void)
RestoreConsoleBuffer(cb, p_rs);
restore_console_color_rgb();
// Switch back to main screen buffer.
if (exiting && use_alternate_screen_buffer)
vtp_printf("\033[?1049l");
if (!USE_WT && (p_rs || exiting))
{
/*

View File

@ -704,6 +704,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
664,
/**/
663,
/**/