diff --git a/pkg/term/term_windows.go b/pkg/term/term_windows.go index dbe4678840..dc50da4577 100644 --- a/pkg/term/term_windows.go +++ b/pkg/term/term_windows.go @@ -44,9 +44,11 @@ func StdStreams() (stdIn io.ReadCloser, stdOut, stdErr io.Writer) { if err = winterm.SetConsoleMode(fd, mode|enableVirtualTerminalInput); err != nil { emulateStdin = true } else { - winterm.SetConsoleMode(fd, mode) vtInputSupported = true } + // Unconditionally set the console mode back even on failure because SetConsoleMode + // remembers invalid bits on input handles. + winterm.SetConsoleMode(fd, mode) } fd = os.Stdout.Fd()