summaryrefslogtreecommitdiff
path: root/win32/win32.c
diff options
context:
space:
mode:
Diffstat (limited to 'win32/win32.c')
-rw-r--r--win32/win32.c25
1 files changed, 12 insertions, 13 deletions
diff --git a/win32/win32.c b/win32/win32.c
index 3c3d1e56e7..6856884472 100644
--- a/win32/win32.c
+++ b/win32/win32.c
@@ -1666,20 +1666,19 @@ win32_waitpid(int pid, int *status, int flags)
long child = find_pid(pid);
if (child >= 0) {
HANDLE hProcess = w32_child_handles[child];
- DWORD timeout=(flags&WNOHANG)?0:INFINITE;
- DWORD waitcode = WaitForSingleObject(hProcess, timeout);
- if (waitcode == WAIT_TIMEOUT) {
- {
- return 0;
- }
- else if (waitcode != WAIT_FAILED) {
- if (GetExitCodeProcess(hProcess, &waitcode)) {
- *status = (int)((waitcode & 0xff) << 8);
- retval = (int)w32_child_pids[child];
- remove_dead_process(child);
- return retval;
- }
+ DWORD timeout = (flags & WNOHANG) ? 0 : INFINITE;
+ DWORD waitcode = WaitForSingleObject(hProcess, timeout);
+ if (waitcode == WAIT_TIMEOUT) {
+ return 0;
+ }
+ else if (waitcode != WAIT_FAILED) {
+ if (GetExitCodeProcess(hProcess, &waitcode)) {
+ *status = (int)((waitcode & 0xff) << 8);
+ retval = (int)w32_child_pids[child];
+ remove_dead_process(child);
+ return retval;
}
+ }
else
errno = ECHILD;
}