diff --git a/reactos/subsystems/win32/csrss/win32csr/tuiconsole.c b/reactos/subsystems/win32/csrss/win32csr/tuiconsole.c index caffc42ae8e..fecbb21d2d2 100644 --- a/reactos/subsystems/win32/csrss/win32csr/tuiconsole.c +++ b/reactos/subsystems/win32/csrss/win32csr/tuiconsole.c @@ -32,7 +32,7 @@ TuiConsoleWndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam) } static BOOL FASTCALL -TuiInit(VOID) +TuiInit(DWORD OemCP) { CONSOLE_SCREEN_BUFFER_INFO ScrInfo; DWORD BytesReturned; @@ -46,6 +46,14 @@ TuiInit(VOID) return FALSE; } + if (!DeviceIoControl(ConsoleDeviceHandle, IOCTL_CONSOLE_LOADFONT, + &OemCP, sizeof(OemCP), NULL, 0, + &BytesReturned, NULL)) + { + DPRINT("Failed to load the font for codepage %d\n", OemCP); + /* Let's suppose the font is good enough to continue */ + } + ActiveConsole = NULL; InitializeCriticalSection(&ActiveConsoleLock); if (! DeviceIoControl(ConsoleDeviceHandle, IOCTL_CONSOLE_GET_SCREEN_BUFFER_INFO, @@ -304,7 +312,7 @@ TuiInitConsole(PCSRSS_CONSOLE Console) if (! ConsInitialized) { ConsInitialized = TRUE; - if (! TuiInit()) + if (! TuiInit(Console->CodePage)) { ConsInitialized = FALSE; return STATUS_UNSUCCESSFUL;