Hi On Sun, Mar 24, 2024 at 7:23 PM Irina Ryapolova <irina.ryapol...@syntacore.com> wrote: > > After exit Qemu need to return the terminal to the default state. > > Signed-off-by: Irina Ryapolova <irina.ryapol...@syntacore.com> > --- > chardev/char-win-stdio.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/chardev/char-win-stdio.c b/chardev/char-win-stdio.c > index 1a18999e78..4fa2c3de8b 100644 > --- a/chardev/char-win-stdio.c > +++ b/chardev/char-win-stdio.c > @@ -220,6 +220,7 @@ err1: > static void char_win_stdio_finalize(Object *obj) > { > WinStdioChardev *stdio = WIN_STDIO_CHARDEV(obj); > + DWORD dwMode; > > if (stdio->hInputReadyEvent != INVALID_HANDLE_VALUE) { > CloseHandle(stdio->hInputReadyEvent); > @@ -230,6 +231,10 @@ static void char_win_stdio_finalize(Object *obj) > if (stdio->hInputThread != INVALID_HANDLE_VALUE) { > TerminateThread(stdio->hInputThread, 0); > } > + > + GetConsoleMode(stdio->hStdIn, &dwMode); > + dwMode &= ~ENABLE_VIRTUAL_TERMINAL_INPUT; > + SetConsoleMode(stdio->hStdIn, dwMode);
I'd suggest saving the mode when opening instead, to make sure we restore the same value. thanks -- Marc-André Lureau