[PATCH] [Msvcrt]: fix for getch() and special characters

Eric Pouech eric.pouech at orange.fr
Sun Jun 1 15:04:15 CDT 2008


sounds like I send the non tested version :-(

A+
---

 dlls/msvcrt/console.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)


diff --git a/dlls/msvcrt/console.c b/dlls/msvcrt/console.c
index ab1cd94..21bcf16 100644
--- a/dlls/msvcrt/console.c
+++ b/dlls/msvcrt/console.c
@@ -139,11 +139,11 @@ int CDECL _getch(void)
             {
                 unsigned idx;
 
-                if (ir.Event.KeyEvent.wVirtualScanCode & (LEFT_ALT_PRESSED | RIGHT_ALT_PRESSED))
+                if (ir.Event.KeyEvent.dwControlKeyState & (LEFT_ALT_PRESSED | RIGHT_ALT_PRESSED))
                     idx = ALT_CHAR;
-                else if (ir.Event.KeyEvent.wVirtualScanCode & (LEFT_CTRL_PRESSED | RIGHT_CTRL_PRESSED) )
+                else if (ir.Event.KeyEvent.dwControlKeyState & (LEFT_CTRL_PRESSED | RIGHT_CTRL_PRESSED) )
                     idx = CTRL_CHAR;
-                else if (ir.Event.KeyEvent.wVirtualScanCode & SHIFT_PRESSED)
+                else if (ir.Event.KeyEvent.dwControlKeyState & SHIFT_PRESSED)
                     idx = SHIFT_CHAR;
                 else
                     idx = NORMAL_CHAR;





More information about the wine-patches mailing list