Module: wine Branch: master Commit: 9f6c004bb0426a502862c8bfbefe34c596a5483b URL: https://source.winehq.org/git/wine.git/?a=commit;h=9f6c004bb0426a502862c8bfb...
Author: Jacek Caban jacek@codeweavers.com Date: Tue Feb 15 13:16:12 2022 +0100
win32u: Move ThreadDetach driver call from user32.
Signed-off-by: Jacek Caban jacek@codeweavers.com Signed-off-by: Huw Davies huw@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/user32/driver.c | 7 +------ dlls/user32/user_main.c | 1 - dlls/win32u/driver.c | 2 ++ dlls/win32u/sysparams.c | 2 ++ 4 files changed, 5 insertions(+), 7 deletions(-)
diff --git a/dlls/user32/driver.c b/dlls/user32/driver.c index 6dbc07d318a..7e9f63ad1c7 100644 --- a/dlls/user32/driver.c +++ b/dlls/user32/driver.c @@ -266,10 +266,6 @@ static void CDECL nulldrv_WindowPosChanged( HWND hwnd, HWND insert_after, UINT s { }
-static void CDECL nulldrv_ThreadDetach( void ) -{ -} -
/********************************************************************** * Lazy loading user driver @@ -398,7 +394,7 @@ static struct user_driver_funcs lazy_load_driver = /* vulkan support */ NULL, /* thread management */ - nulldrv_ThreadDetach + NULL };
void CDECL __wine_set_user_driver( const struct user_driver_funcs *funcs, UINT version ) @@ -445,7 +441,6 @@ void CDECL __wine_set_user_driver( const struct user_driver_funcs *funcs, UINT v SET_USER_FUNC(WindowMessage); SET_USER_FUNC(WindowPosChanging); SET_USER_FUNC(WindowPosChanged); - SET_USER_FUNC(ThreadDetach); #undef SET_USER_FUNC
prev = InterlockedCompareExchangePointer( (void **)&USER_Driver, driver, &lazy_load_driver ); diff --git a/dlls/user32/user_main.c b/dlls/user32/user_main.c index 939271aeb17..91c466aff11 100644 --- a/dlls/user32/user_main.c +++ b/dlls/user32/user_main.c @@ -254,7 +254,6 @@ static void thread_detach(void) exiting_thread_id = GetCurrentThreadId();
WDML_NotifyThreadDetach(); - USER_Driver->pThreadDetach();
NtUserCallNoParam( NtUserThreadDetach ); destroy_thread_windows(); diff --git a/dlls/win32u/driver.c b/dlls/win32u/driver.c index e332a03b0db..b3a3e70f83f 100644 --- a/dlls/win32u/driver.c +++ b/dlls/win32u/driver.c @@ -1070,6 +1070,8 @@ static const struct user_driver_funcs lazy_load_driver = .pSystemParametersInfo = nulldrv_SystemParametersInfo, /* vulkan support */ .pwine_get_vulkan_driver = loaderdrv_wine_get_vulkan_driver, + /* thread management */ + .pThreadDetach = nulldrv_ThreadDetach, };
const struct user_driver_funcs *user_driver = &lazy_load_driver; diff --git a/dlls/win32u/sysparams.c b/dlls/win32u/sysparams.c index 7aee5eae0b9..93fda23a31e 100644 --- a/dlls/win32u/sysparams.c +++ b/dlls/win32u/sysparams.c @@ -4488,6 +4488,8 @@ static void thread_detach(void) { struct user_thread_info *thread_info = get_user_thread_info();
+ user_driver->pThreadDetach(); + free( thread_info->key_state ); thread_info->key_state = 0; }