mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
mjit: provide more diagnostics for waitpid failures
Also, enable check for defined(_WIN32) macro for SIGCHLD_LOSSY, too. [Bug #14867] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63796 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
ce2a3b40ed
commit
e4600b87b5
2 changed files with 4 additions and 3 deletions
5
mjit.c
5
mjit.c
|
@ -422,8 +422,9 @@ exec_process(const char *path, char *const argv[])
|
||||||
: waitpid(pid, &stat, 0);
|
: waitpid(pid, &stat, 0);
|
||||||
if (r == -1) {
|
if (r == -1) {
|
||||||
if (errno == EINTR) continue;
|
if (errno == EINTR) continue;
|
||||||
fprintf(stderr, "[%d] waitpid(%d): %s\n",
|
fprintf(stderr, "[%d] waitpid(%d): %s (SIGCHLD=%d,%u)\n",
|
||||||
getpid(), pid, strerror(errno));
|
getpid(), pid, strerror(errno),
|
||||||
|
RUBY_SIGCHLD, SIGCHLD_LOSSY);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
else if (r == pid) {
|
else if (r == pid) {
|
||||||
|
|
|
@ -101,7 +101,7 @@
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* platforms with broken or non-existent SIGCHLD work by polling */
|
/* platforms with broken or non-existent SIGCHLD work by polling */
|
||||||
#if defined(__APPLE__) || defined(__WIN32__)
|
#if defined(__APPLE__) || defined(__WIN32__) || defined(_WIN32)
|
||||||
# define SIGCHLD_LOSSY (1)
|
# define SIGCHLD_LOSSY (1)
|
||||||
#else
|
#else
|
||||||
# define SIGCHLD_LOSSY (0)
|
# define SIGCHLD_LOSSY (0)
|
||||||
|
|
Loading…
Reference in a new issue