mirror of
https://github.com/ruby/ruby.git
synced 2025-08-26 14:34:39 +02:00
Process.detach: avoid singleton class creation
* process.c (Init_process): subclass Thread as Process::Waiter (rb_detach_process): use Process::Waiter instead of singleton class * test/ruby/test_process.rb (test_process_detach): new test * inits.c (rb_call_inits): call Init_Thread before Init_process to ensure Process::Waiter may be a subclass of Thread Thanks to headius for reporting [Bug #10231] Thanks to nobu for review of my initial patch. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47561 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
5311e0af8e
commit
afa512d9e1
4 changed files with 28 additions and 2 deletions
|
@ -1965,4 +1965,12 @@ EOS
|
|||
runner.close
|
||||
end
|
||||
end if defined?(fork)
|
||||
|
||||
def test_process_detach
|
||||
pid = fork {}
|
||||
th = Process.detach(pid)
|
||||
assert_equal pid, th.pid
|
||||
status = th.value
|
||||
assert status.success?, status.inspect
|
||||
end if defined?(fork)
|
||||
end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue