Alexandre Julliard : server: Don' t set the idle event when a queue is destroyed, instead return success in WaitForInputIdle on process exit.
Alexandre Julliard
julliard at winehq.org
Thu Dec 17 10:37:06 CST 2009
Module: wine
Branch: master
Commit: d1dc48d8dc3b492935ca41f67593a59310abe919
URL: http://source.winehq.org/git/wine.git/?a=commit;h=d1dc48d8dc3b492935ca41f67593a59310abe919
Author: Alexandre Julliard <julliard at winehq.org>
Date: Wed Dec 16 17:20:46 2009 +0100
server: Don't set the idle event when a queue is destroyed, instead return success in WaitForInputIdle on process exit.
---
dlls/user32/message.c | 2 +-
server/process.c | 5 +++++
server/queue.c | 6 ------
3 files changed, 6 insertions(+), 7 deletions(-)
diff --git a/dlls/user32/message.c b/dlls/user32/message.c
index 8916cae..285a24c 100644
--- a/dlls/user32/message.c
+++ b/dlls/user32/message.c
@@ -3338,7 +3338,7 @@ DWORD WINAPI WaitForInputIdle( HANDLE hProcess, DWORD dwTimeOut )
switch (ret)
{
case WAIT_OBJECT_0:
- return WAIT_FAILED;
+ return 0;
case WAIT_OBJECT_0+2:
process_sent_messages();
break;
diff --git a/server/process.c b/server/process.c
index 51193b7..8f47870 100644
--- a/server/process.c
+++ b/server/process.c
@@ -634,6 +634,11 @@ static void process_killed( struct process *process )
if (handles) release_object( handles );
process->winstation = 0;
process->desktop = 0;
+ if (process->idle_event)
+ {
+ release_object( process->idle_event );
+ process->idle_event = NULL;
+ }
/* close the console attached to this process, if any */
free_console( process );
diff --git a/server/queue.c b/server/queue.c
index c5841c9..b7cbc64 100644
--- a/server/queue.c
+++ b/server/queue.c
@@ -298,12 +298,6 @@ void free_msg_queue( struct thread *thread )
{
release_object( process->queue );
process->queue = NULL;
- if (process->idle_event)
- {
- set_event( process->idle_event );
- release_object( process->idle_event );
- process->idle_event = NULL;
- }
}
release_object( thread->queue );
thread->queue = NULL;
More information about the wine-cvs
mailing list