Dmitry Timoshkov : user32: Make sure that SendInput always initializes the time field.
Alexandre Julliard
julliard at winehq.org
Wed Sep 22 14:47:52 CDT 2010
Module: wine
Branch: master
Commit: 88900f429a9c2cf7e2c00d085f694a89ff8da77b
URL: http://source.winehq.org/git/wine.git/?a=commit;h=88900f429a9c2cf7e2c00d085f694a89ff8da77b
Author: Dmitry Timoshkov <dmitry at codeweavers.com>
Date: Wed Sep 22 15:49:45 2010 +0900
user32: Make sure that SendInput always initializes the time field.
---
dlls/user32/input.c | 4 ++--
dlls/winex11.drv/keyboard.c | 2 ++
dlls/winex11.drv/mouse.c | 2 ++
3 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/dlls/user32/input.c b/dlls/user32/input.c
index 0dccf21..6e1e459 100644
--- a/dlls/user32/input.c
+++ b/dlls/user32/input.c
@@ -167,7 +167,7 @@ void WINAPI keybd_event( BYTE bVk, BYTE bScan,
input.u.ki.wVk = bVk;
input.u.ki.wScan = bScan;
input.u.ki.dwFlags = dwFlags;
- input.u.ki.time = GetTickCount();
+ input.u.ki.time = 0;
input.u.ki.dwExtraInfo = dwExtraInfo;
SendInput( 1, &input, sizeof(input) );
}
@@ -186,7 +186,7 @@ void WINAPI mouse_event( DWORD dwFlags, DWORD dx, DWORD dy,
input.u.mi.dy = dy;
input.u.mi.mouseData = dwData;
input.u.mi.dwFlags = dwFlags;
- input.u.mi.time = GetCurrentTime();
+ input.u.mi.time = 0;
input.u.mi.dwExtraInfo = dwExtraInfo;
SendInput( 1, &input, sizeof(input) );
}
diff --git a/dlls/winex11.drv/keyboard.c b/dlls/winex11.drv/keyboard.c
index 02fd6bb..d6054d6 100644
--- a/dlls/winex11.drv/keyboard.c
+++ b/dlls/winex11.drv/keyboard.c
@@ -1158,6 +1158,8 @@ void X11DRV_send_keyboard_input( WORD wVk, WORD wScan, DWORD event_flags, DWORD
WORD flags, wVkStripped, wVkL, wVkR, vk_hook = wVk;
LPARAM lParam = 0;
+ if (!time) time = GetTickCount();
+
wVk = LOBYTE(wVk);
flags = LOBYTE(wScan);
diff --git a/dlls/winex11.drv/mouse.c b/dlls/winex11.drv/mouse.c
index cf988c9..922df65 100644
--- a/dlls/winex11.drv/mouse.c
+++ b/dlls/winex11.drv/mouse.c
@@ -345,6 +345,8 @@ void X11DRV_send_mouse_input( HWND hwnd, DWORD flags, DWORD x, DWORD y,
{
POINT pt;
+ if (!time) time = GetTickCount();
+
if (flags & MOUSEEVENTF_MOVE && flags & MOUSEEVENTF_ABSOLUTE)
{
if (injected_flags & LLMHF_INJECTED)
More information about the wine-cvs
mailing list