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