• Eli Zaretskii's avatar
    Fix non-ASCII input in non-GUI frames on MS-Windows. (Bug#12055) · 01bd1b0d
    Eli Zaretskii authored
     src/w32inevt.c: Include w32inevt.h.
     (w32_read_console_input): New inline function, calls either
     ReadConsoleInputA or ReadConsoleInputW, depending on the value of
     w32_console_unicode_input.
     (fill_queue): Call w32_read_console_input instead of ReadConsoleInput.
     (w32_kbd_patch_key, key_event): Use the codepage returned by
     GetConsoleCP, rather than the ANSI codepage returned by GetLocaleInfo.
     (key_event): use uChar.UnicodeChar only if
     w32_console_unicode_input is non-zero.
     src/w32console.c: Include w32heap.h.
     <w32_console_unicode_input>: New global variable.
     (initialize_w32_display): Set w32_console_unicode_input to 1 on NT
     family of Windows, zero otherwise.
     src/w32inevt.h: Declare w32_console_unicode_input.
     lisp/international/mule-cmds.el (set-locale-environment): In a
     console session on MS-Windows, set up keyboard and terminal
     encoding from the OEM codepage, not the ANSI codepage.
    01bd1b0d
ChangeLog 617 KB