diff --git a/dlls/dinput/dinput_main.c b/dlls/dinput/dinput_main.c index 46c18ed55dd..985dae1ab36 100644 --- a/dlls/dinput/dinput_main.c +++ b/dlls/dinput/dinput_main.c @@ -1381,8 +1381,7 @@ static DWORD WINAPI hook_thread_proc(void *param) mouse_hook = NULL; } - if (finished_event) - SetEvent(finished_event); + SetEvent(finished_event); } } @@ -1504,17 +1503,13 @@ void check_dinput_hooks(LPDIRECTINPUTDEVICE8W iface, BOOL acquired) WARN( "Unable to (un)register raw device %x:%x\n", dev->raw_device.usUsagePage, dev->raw_device.usUsage ); } - if (acquired) - hook_change_finished_event = CreateEventW( NULL, FALSE, FALSE, NULL ); + hook_change_finished_event = CreateEventW( NULL, FALSE, FALSE, NULL ); PostThreadMessageW( hook_thread_id, WM_USER+0x10, 1, (LPARAM)hook_change_finished_event ); LeaveCriticalSection(&dinput_hook_crit); - if (acquired) - { - WaitForSingleObject(hook_change_finished_event, INFINITE); - CloseHandle(hook_change_finished_event); - } + WaitForSingleObject(hook_change_finished_event, INFINITE); + CloseHandle(hook_change_finished_event); } void check_dinput_events(void) diff --git a/dlls/dinput8/tests/hid.c b/dlls/dinput8/tests/hid.c index cf50dd32fb9..87a2a9a7a3c 100644 --- a/dlls/dinput8/tests/hid.c +++ b/dlls/dinput8/tests/hid.c @@ -4758,9 +4758,6 @@ static void test_simple_joystick(void) todo_wine ok( hr == DIERR_UNSUPPORTED, "Escape returned: %#x\n", hr ); - /* FIXME: we have to wait a bit because Wine DInput internal thread keeps a reference */ - Sleep( 100 ); - ref = IDirectInputDevice8_Release( device ); ok( ref == 0, "Release returned %d\n", ref ); @@ -7227,9 +7224,6 @@ static void test_force_feedback_joystick( void ) ok( hr == DI_OK, "Unacquire returned: %#x\n", hr ); set_hid_expect( file, NULL, 0 ); - /* FIXME: we have to wait a bit because Wine DInput internal thread keeps a reference */ - Sleep( 100 ); - ref = IDirectInputDevice8_Release( device ); ok( ref == 0, "Release returned %d\n", ref );