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

This commit is contained in:
Dmitry Timoshkov 2013-06-03 18:15:15 +09:00 committed by Alexandre Julliard
parent 5bee8b4e40
commit df6c2a8418
2 changed files with 1 additions and 2 deletions

View File

@ -1957,7 +1957,6 @@ static void test_TerminateProcess(void)
SetLastError(0xdeadbeef); SetLastError(0xdeadbeef);
ret = TerminateProcess(pi.hProcess, 0); ret = TerminateProcess(pi.hProcess, 0);
todo_wine
ok(ret, "TerminateProcess error %u\n", GetLastError()); ok(ret, "TerminateProcess error %u\n", GetLastError());
CloseHandle(pi.hProcess); CloseHandle(pi.hProcess);

View File

@ -628,9 +628,9 @@ static void process_killed( struct process *process )
assert( list_empty( &process->thread_list )); assert( list_empty( &process->thread_list ));
process->end_time = current_time; process->end_time = current_time;
if (!process->is_system) close_process_desktop( process ); if (!process->is_system) close_process_desktop( process );
close_process_handles( process );
process->winstation = 0; process->winstation = 0;
process->desktop = 0; process->desktop = 0;
close_process_handles( process );
if (process->idle_event) if (process->idle_event)
{ {
release_object( process->idle_event ); release_object( process->idle_event );