diff options
author | Mark Hammond <mhammond@skippinet.com.au> | 2000-08-14 05:04:28 (GMT) |
---|---|---|
committer | Mark Hammond <mhammond@skippinet.com.au> | 2000-08-14 05:04:28 (GMT) |
commit | fb439abbc9bbec93ff11d1c9ddf268bb8e415900 (patch) | |
tree | bf3a34119b857db8ed4c3d2c193839bb103da248 /PC | |
parent | b37a3734960b0d4c06665e41b0451b6f814f1cb6 (diff) | |
download | cpython-fb439abbc9bbec93ff11d1c9ddf268bb8e415900.zip cpython-fb439abbc9bbec93ff11d1c9ddf268bb8e415900.tar.gz cpython-fb439abbc9bbec93ff11d1c9ddf268bb8e415900.tar.bz2 |
Patch #101032, from David Bolen:
Ensure the "proxied" command's return code bubbles back up.
Diffstat (limited to 'PC')
-rw-r--r-- | PC/w9xpopen.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/PC/w9xpopen.c b/PC/w9xpopen.c index 160238c..d96d0f5 100644 --- a/PC/w9xpopen.c +++ b/PC/w9xpopen.c @@ -27,6 +27,7 @@ int main(int argc, char *argv[]) BOOL bRet; STARTUPINFO si; PROCESS_INFORMATION pi; + DWORD exit_code=0; if (argc != 2) { MessageBox(NULL, usage, argv[0], MB_OK); @@ -50,10 +51,12 @@ int main(int argc, char *argv[]) ); if (bRet) { - WaitForSingleObject(pi.hProcess, INFINITE); + if (WaitForSingleObject(pi.hProcess, INFINITE) != WAIT_FAILED) { + GetExitCodeProcess(pi.hProcess, &exit_code); + } CloseHandle(pi.hProcess); CloseHandle(pi.hThread); - return 0; + return exit_code; } return 1; |