mirror of
https://github.com/ruby/ruby.git
synced 2025-09-15 08:33:58 +02:00
* parse.y (str_extend): should check nesting parentheses in #{}.
* process.c (pst_wstopsig): returns nil unless WIFSTOPPED() is non-zero. * process.c (pst_wtermsig): returns nil unless WIFSIGNALED() is non-zero. * process.c (pst_wexitstatus): returns nil unless WIFEXITED() is non-zero. * eval.c (rb_thread_select): tv_sec and tv_usec should not be negative. * signal.c (posix_signal): do not set SA_RESTART for SIGVTALRM. * parse.y (call_args2): block_arg may follow the first argument in call_args2. * eval.c (stack_check): should avoid stack length check during raising SystemStackError exception. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1852 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
e15f65b004
commit
f1fdbf080e
10 changed files with 181 additions and 56 deletions
7
signal.c
7
signal.c
|
@ -293,7 +293,12 @@ posix_signal(signum, handler)
|
|||
sigemptyset(&sigact.sa_mask);
|
||||
sigact.sa_flags = 0;
|
||||
#if defined(SA_RESTART)
|
||||
sigact.sa_flags |= SA_RESTART; /* SVR4, 4.3+BSD */
|
||||
/* All other signals but VTALRM shall restart restartable syscall
|
||||
VTALRM will cause EINTR to syscall if interrupted.
|
||||
*/
|
||||
if (signum != SIGVTALRM) {
|
||||
sigact.sa_flags |= SA_RESTART; /* SVR4, 4.3+BSD */
|
||||
}
|
||||
#endif
|
||||
#ifdef SA_NOCLDWAIT
|
||||
if (signum == SIGCHLD && handler == SIG_IGN)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue