[ruby-cvs:67153] normal:r59975 (trunk): process: block/unblock signals around fork

normal at ruby-lang.org normal at ruby-lang.org
Thu Sep 21 03:47:14 JST 2017


normal	2017-09-21 03:47:14 +0900 (Thu, 21 Sep 2017)

  New Revision: 59975

  https://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=59975

  Log:
    process: block/unblock signals around fork
    
    As with forking for execve(2) in `spawn', we must block signals
    to ensure they are handled correctly in a freshly `fork'-ed child.
    
    * process.c (retry_fork_ruby): block/unblock signals around fork
      (rb_fork_ruby): re-enable signals in forked child
    * test/ruby/test_process.rb (test_forked_child_signal): new test
      [ruby-core:82883] [Bug #13916]
    
      Thanks to Russell Davis for the bug report and test case.

  Modified files:
    trunk/process.c
    trunk/test/ruby/test_process.rb


More information about the ruby-cvs mailing list