Rebase against upstream changes, remove some patches (accepted upstream).

This commit is contained in:
Sebastian Lackner
2015-03-23 18:20:54 +01:00
parent 525b5f5dd3
commit d8651610cc
15 changed files with 216 additions and 378 deletions

View File

@@ -1,4 +1,4 @@
From d24be9691751b300e10783f66f911a55709f9331 Mon Sep 17 00:00:00 2001
From 3f119545bac640a7a65b609ddaa0b82f4725a3f0 Mon Sep 17 00:00:00 2001
From: Sebastian Lackner <sebastian@fds-team.de>
Date: Mon, 14 Jul 2014 05:06:40 +0200
Subject: user32: After calling LL hooks the key state cache has to be
@@ -8,8 +8,8 @@ Subject: user32: After calling LL hooks the key state cache has to be
dlls/user32/hook.c | 2 +-
dlls/user32/input.c | 8 ++++++--
dlls/user32/message.c | 7 ++++++-
dlls/user32/user_private.h | 5 ++++-
4 files changed, 17 insertions(+), 5 deletions(-)
dlls/user32/user_private.h | 3 +++
4 files changed, 16 insertions(+), 4 deletions(-)
diff --git a/dlls/user32/hook.c b/dlls/user32/hook.c
index 2f6b42c..0c6a059 100644
@@ -90,19 +90,20 @@ index eac4e4d..d59e342 100644
USER_Driver->pSetCursorPos( new_x, new_y );
}
diff --git a/dlls/user32/user_private.h b/dlls/user32/user_private.h
index c389414..01a19bf 100644
index 919540d..4380a00 100644
--- a/dlls/user32/user_private.h
+++ b/dlls/user32/user_private.h
@@ -190,11 +190,14 @@ struct user_thread_info
@@ -185,6 +185,7 @@ struct user_thread_info
ULONG_PTR GetMessageExtraInfoVal; /* Value for GetMessageExtraInfo */
UINT active_hooks; /* Bitmap of active hooks */
UINT key_state_time; /* Time of last key state refresh */
+ INT key_state_epoch; /* Counter to invalidate the key state */
BYTE *key_state; /* Cache of global key state */
HWND top_window; /* Desktop window */
HWND msg_window; /* HWND_MESSAGE parent window */
RAWINPUT *rawinput;
+ INT key_state_epoch; /* Counter to invalidate the key state */
@@ -193,6 +194,8 @@ struct user_thread_info
- ULONG pad[5]; /* Available for more data */
+ ULONG pad[4]; /* Available for more data */
};
#include <poppack.h>
C_ASSERT( sizeof(struct user_thread_info) <= sizeof(((TEB *)0)->Win32ClientInfo) );
+extern INT global_key_state_epoch DECLSPEC_HIDDEN;
+
@@ -110,5 +111,5 @@ index c389414..01a19bf 100644
{
HHOOK handle;
--
2.3.2
2.3.3

View File

@@ -1,2 +1 @@
Fixes: [29871] Invalidate key state cache globally after calling LL hooks
Depends: user32-user_thread_info