diff --git a/host/platform/Windows/src/mousehook.c b/host/platform/Windows/src/mousehook.c index a4ef4b9b..1617ea1d 100644 --- a/host/platform/Windows/src/mousehook.c +++ b/host/platform/Windows/src/mousehook.c @@ -166,7 +166,7 @@ void mouseHook_install(MouseHookFn callback) { if (!mouseHook.event) { - mouseHook.event = CreateEventA(NULL, FALSE, FALSE, NULL); + mouseHook.event = CreateEventA(NULL, TRUE, FALSE, NULL); if (!mouseHook.event) { DEBUG_WINERROR("Failed to create mouse hook uninstall event", @@ -201,6 +201,7 @@ void mouseHook_remove(void) SetEvent(mouseHook.event); WaitForSingleObject(mouseHook.thread , INFINITE); WaitForSingleObject(mouseHook.updateThread, INFINITE); + ResetEvent(mouseHook.event); CloseHandle(mouseHook.thread); CloseHandle(mouseHook.updateThread); } diff --git a/host/platform/Windows/src/service.c b/host/platform/Windows/src/service.c index 22e95796..568d7c55 100644 --- a/host/platform/Windows/src/service.c +++ b/host/platform/Windows/src/service.c @@ -698,6 +698,7 @@ VOID WINAPI SvcMain(DWORD dwArgc, LPTSTR *lpszArgv) { case WAIT_OBJECT_0: service.running = false; + doLog("Host application exited gracefully\n"); break; case WAIT_TIMEOUT: doLog("Host application failed to exit in 1 second\n"); diff --git a/host/src/app.c b/host/src/app.c index ee2208d9..0dbc3e06 100644 --- a/host/src/app.c +++ b/host/src/app.c @@ -787,6 +787,7 @@ fail_lgmp: fail_ivshmem: ivshmemClose(&shmDev); ivshmemFree(&shmDev); + DEBUG_INFO("Host application exited"); return exitcode; }