diff --git a/dlls/user/message.c b/dlls/user/message.c index 14f458fc46a..4a0dab38698 100644 --- a/dlls/user/message.c +++ b/dlls/user/message.c @@ -1518,12 +1518,12 @@ LRESULT WINAPI SendMessageTimeoutW( HWND hwnd, UINT msg, WPARAM wparam, LPARAM l return 1; } - SPY_EnterMessage( SPY_SENDMESSAGE, hwnd, msg, wparam, lparam ); - if (!(dest_tid = GetWindowThreadProcessId( hwnd, &dest_pid ))) return 0; if (USER_IsExitingThread( dest_tid )) return 0; + SPY_EnterMessage( SPY_SENDMESSAGE, hwnd, msg, wparam, lparam ); + if (dest_tid == GetCurrentThreadId()) { result = call_window_proc( hwnd, msg, wparam, lparam, TRUE ); @@ -1566,12 +1566,12 @@ LRESULT WINAPI SendMessageTimeoutA( HWND hwnd, UINT msg, WPARAM wparam, LPARAM l return 1; } - SPY_EnterMessage( SPY_SENDMESSAGE, hwnd, msg, wparam, lparam ); - if (!(dest_tid = GetWindowThreadProcessId( hwnd, &dest_pid ))) return 0; if (USER_IsExitingThread( dest_tid )) return 0; + SPY_EnterMessage( SPY_SENDMESSAGE, hwnd, msg, wparam, lparam ); + if (dest_tid == GetCurrentThreadId()) { result = call_window_proc( hwnd, msg, wparam, lparam, FALSE );