Check if Windows is using stdout/stderr

This commit is contained in:
Hugo van Kemenade 2026-04-21 18:29:15 +03:00
parent e17d6971a0
commit 294d00827f

View file

@ -295,7 +295,9 @@ _Py_can_colorize(FILE *f)
#if defined(MS_WINDOWS) && defined(HAVE_WINDOWS_CONSOLE_IO)
{
DWORD mode = 0;
HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);
DWORD nStdHandle = (f == stderr) ? STD_ERROR_HANDLE
: STD_OUTPUT_HANDLE;
HANDLE handle = GetStdHandle(nStdHandle);
if (!GetConsoleMode(handle, &mode)
|| !(mode & ENABLE_VIRTUAL_TERMINAL_PROCESSING))
{