Author: jmorlan
Date: Thu Apr 15 02:25:30 2010
New Revision: 46875

URL: http://svn.reactos.org/svn/reactos?rev=46875&view=rev
Log:
[WIN32K] Since r43772 we now normalize VK_LCONTROL/VK_RCONTROL to VK_CONTROL 
rather than VK_LCONTROL (and ditto for shift/alt), so update SetKeyState to 
handle this. Fixes bug 4945.

Modified:
    trunk/reactos/subsystems/win32/win32k/ntuser/keyboard.c

Modified: trunk/reactos/subsystems/win32/win32k/ntuser/keyboard.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/ntuser/keyboard.c?rev=46875&r1=46874&r2=46875&view=diff
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/ntuser/keyboard.c [iso-8859-1] 
(original)
+++ trunk/reactos/subsystems/win32/win32k/ntuser/keyboard.c [iso-8859-1] Thu 
Apr 15 02:25:30 2010
@@ -88,12 +88,12 @@
          gQueueKeyStateTable[vk] ^= KS_LOCK_BIT;
    }
 
-   if (ext && vk == VK_LSHIFT)
-      vk = VK_RSHIFT;
-   if (ext && vk == VK_LCONTROL)
-      vk = VK_RCONTROL;
-   if (ext && vk == VK_LMENU)
-      vk = VK_RMENU;
+   if (vk == VK_SHIFT)
+      vk = ext ? VK_RSHIFT : VK_LSHIFT;
+   if (vk == VK_CONTROL)
+      vk = ext ? VK_RCONTROL : VK_LCONTROL;
+   if (vk == VK_MENU)
+      vk = ext ? VK_RMENU : VK_LMENU;
 
    if (down)
       gQueueKeyStateTable[vk] |= KS_DOWN_BIT;


Reply via email to