From 6e4cbd5787c6241a406b6ae1ddacf1527ad1efc5 Mon Sep 17 00:00:00 2001 From: Aric Stewart Date: Wed, 27 Mar 2013 14:42:43 -0500 Subject: [PATCH] user32: ImmProcessKey is only called on WM_KEYDOWN and if the message is being removed. --- dlls/user32/message.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dlls/user32/message.c b/dlls/user32/message.c index b0bf176a9ea..09a4cb3cb91 100644 --- a/dlls/user32/message.c +++ b/dlls/user32/message.c @@ -2453,8 +2453,8 @@ static BOOL process_keyboard_message( MSG *msg, UINT hw_id, HWND hwnd_filter, } accept_hardware_message( hw_id, remove, 0 ); - if ( msg->message == WM_KEYDOWN || msg->message == WM_KEYUP ) - if ( ImmProcessKey(msg->hwnd, GetKeyboardLayout(0), msg->wParam, msg->lParam, 0) ) + if ( remove && msg->message == WM_KEYDOWN ) + if (ImmProcessKey(msg->hwnd, GetKeyboardLayout(0), msg->wParam, msg->lParam, 0) ) msg->wParam = VK_PROCESSKEY; return TRUE;