Dmitry Timoshkov : server: Mark the process as disconnected from desktop/ winstation before closing its handles.

Alexandre Julliard julliard at winehq.org
Mon Jun 3 16:06:32 CDT 2013


Module: wine
Branch: master
Commit: df6c2a841824cf9edb438f9aea2ccb25922b671b
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=df6c2a841824cf9edb438f9aea2ccb25922b671b

Author: Dmitry Timoshkov <dmitry at baikal.ru>
Date:   Mon Jun  3 18:15:15 2013 +0900

server: Mark the process as disconnected from desktop/winstation before closing its handles.

---

 dlls/kernel32/tests/process.c |    1 -
 server/process.c              |    2 +-
 2 files changed, 1 insertions(+), 2 deletions(-)

diff --git a/dlls/kernel32/tests/process.c b/dlls/kernel32/tests/process.c
index 64e333e..9d3e983 100644
--- a/dlls/kernel32/tests/process.c
+++ b/dlls/kernel32/tests/process.c
@@ -1957,7 +1957,6 @@ static void test_TerminateProcess(void)
 
     SetLastError(0xdeadbeef);
     ret = TerminateProcess(pi.hProcess, 0);
-todo_wine
     ok(ret, "TerminateProcess error %u\n", GetLastError());
 
     CloseHandle(pi.hProcess);
diff --git a/server/process.c b/server/process.c
index 61d9d17..f1046c0 100644
--- a/server/process.c
+++ b/server/process.c
@@ -628,9 +628,9 @@ static void process_killed( struct process *process )
     assert( list_empty( &process->thread_list ));
     process->end_time = current_time;
     if (!process->is_system) close_process_desktop( process );
-    close_process_handles( process );
     process->winstation = 0;
     process->desktop = 0;
+    close_process_handles( process );
     if (process->idle_event)
     {
         release_object( process->idle_event );




More information about the wine-cvs mailing list