summaryrefslogtreecommitdiff
path: root/process.c
diff options
context:
space:
mode:
authornormal <normal@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-06-29 08:51:33 +0000
committernormal <normal@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-06-29 08:51:33 +0000
commitbe076acb51ecd4463dc2897ad8093cdafbf5425f (patch)
tree52a82229c9128e0da3b0f85a2744296613744381 /process.c
parent25b15f94415ed147526ef0f712ceb915e43ac0fe (diff)
process.c: handle errno correctly in non-SIGCHLD path
It's a bit redundant, but we optimize for platforms with SIGCHLD, not without. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63790 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'process.c')
-rw-r--r--process.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/process.c b/process.c
index 4388a6ba0f..08986f9ede 100644
--- a/process.c
+++ b/process.c
@@ -1114,6 +1114,8 @@ waitpid_no_SIGCHLD(struct waitpid_state *w)
RUBY_UBF_PROCESS, 0);
} while (w->ret < 0 && errno == EINTR && (RUBY_VM_CHECK_INTS(w->ec),1));
}
+ if (w->ret == -1)
+ w->errnum = errno;
}
rb_pid_t