Author: gadamopoulos Date: Thu Apr 28 19:26:09 2011 New Revision: 51479
URL: http://svn.reactos.org/svn/reactos?rev=51479&view=rev Log: [win32k] - Call update_input_key_state correctly
Modified: trunk/reactos/subsystems/win32/win32k/ntuser/msgqueue.c
Modified: trunk/reactos/subsystems/win32/win32k/ntuser/msgqueue.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/ntu... ============================================================================== --- trunk/reactos/subsystems/win32/win32k/ntuser/msgqueue.c [iso-8859-1] (original) +++ trunk/reactos/subsystems/win32/win32k/ntuser/msgqueue.c [iso-8859-1] Thu Apr 28 19:26:09 2011 @@ -52,8 +52,7 @@
if( key < 0x100 ) { - ret = ((DWORD)(MessageQueue->KeyState[key] & KS_DOWN_BIT) << 8 ) | - (MessageQueue->KeyState[key] & KS_LOCK_BIT); + ret = (DWORD)MessageQueue->KeyState[key]; }
return ret; @@ -62,6 +61,8 @@ /* change the input key state for a given key */ static void set_input_key_state( PUSER_MESSAGE_QUEUE MessageQueue, UCHAR key, BOOL down ) { + DPRINT("set_input_key_state key:%d, down:%d\n", key, down); + if (down) { if (!(MessageQueue->KeyState[key] & KS_DOWN_BIT)) @@ -81,6 +82,8 @@ { UCHAR key; BOOL down = 0; + + DPRINT("update_input_key_state message:%d\n", msg->message);
switch (msg->message) { @@ -1465,7 +1468,7 @@
if (Remove) { - update_input_key_state(MessageQueue, pMsg); + update_input_key_state(MessageQueue, &msg); RemoveEntryList(&CurrentMessage->ListEntry); ClearMsgBitsMask(MessageQueue, CurrentMessage->QS_Flags); MsqDestroyMessage(CurrentMessage);