Module: wine Branch: master Commit: e727e44dfa50ebc78e0efc7a2c61ef48fe1084df URL: http://source.winehq.org/git/wine.git/?a=commit;h=e727e44dfa50ebc78e0efc7a2c...
Author: Piotr Caban piotr@codeweavers.com Date: Wed Jan 16 14:40:31 2013 +0100
cmd: Even if FindExecutable fails wait for process to finish in non-interactive mode.
---
programs/cmd/wcmdmain.c | 17 +++++++---------- 1 files changed, 7 insertions(+), 10 deletions(-)
diff --git a/programs/cmd/wcmdmain.c b/programs/cmd/wcmdmain.c index 1145088..fbe5794 100644 --- a/programs/cmd/wcmdmain.c +++ b/programs/cmd/wcmdmain.c @@ -1225,16 +1225,13 @@ void WCMD_run_program (WCHAR *command, BOOL called) if (!status) break;
- if (!assumeInternal && !console) errorlevel = 0; - else - { - /* Always wait when non-interactive (cmd /c or in batch program), - or for console applications */ - if (assumeInternal || !interactive || !HIWORD(console)) - WaitForSingleObject (pe.hProcess, INFINITE); - GetExitCodeProcess (pe.hProcess, &errorlevel); - if (errorlevel == STILL_ACTIVE) errorlevel = 0; - } + /* Always wait when non-interactive (cmd /c or in batch program), + or for console applications */ + if (assumeInternal || !interactive || (console && !HIWORD(console))) + WaitForSingleObject (pe.hProcess, INFINITE); + GetExitCodeProcess (pe.hProcess, &errorlevel); + if (errorlevel == STILL_ACTIVE) errorlevel = 0; + CloseHandle(pe.hProcess); CloseHandle(pe.hThread); return;