1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

process.c (ruby_fork_ruby): fix race in signal handling

We must block signals before stopping timer-thread, otherwise
signal handing may be delayed until (and if) another signal
is received after timer-thread is restarted.

[ruby-core:87622] [Bug #14868] [Bug #13916]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63741 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
normal 2018-06-24 12:36:44 +00:00
parent 042395a7f7
commit 4bbdb9ea19

View file

@ -3690,8 +3690,8 @@ rb_fork_ruby(int *status)
while (1) {
prefork();
before_fork_ruby();
disable_child_handler_before_fork(&old);
before_fork_ruby();
pid = fork();
err = errno;
after_fork_ruby();