Issue #7134 has been updated by kosaki (Motohiro KOSAKI).

Status changed from Feedback to Closed

Hmmm...
Ok, ok. I give up this claim. I hope nobody uses trap. 
----------------------------------------
Backport #7134: Signal handling bug in Mac OS X
https://bugs.ruby-lang.org/issues/7134#change-35083

Author: auastro (Andy Kitchen)
Status: Closed
Priority: Normal
Assignee: kosaki (Motohiro KOSAKI)
Category: 
Target version: 


On Mac OS X, running the attached program causes the exception below about 1/10 times it is run.

$ ruby hup.rb 
hup.rb:2:in `write': deadlock; recursive locking (ThreadError)
	from hup.rb:2:in `puts'
	from hup.rb:2:in `puts'
	from hup.rb:2:in `block in <main>'
	from hup.rb:6:in `call'
	from hup.rb:6:in `write'
	from hup.rb:6:in `puts'
	from hup.rb:6:in `puts'
	from hup.rb:6:in `<main>'

The expected output is:
> In Hup Handler
>Finished...

or

> Finished...
> In Hup Handler

My ruby is compiled with clang:

$ clang --version
Apple clang version 4.1 (tags/Apple/clang-421.11.65) (based on LLVM 3.1svn)
Target: x86_64-apple-darwin12.2.0
Thread model: posix



-- 
http://bugs.ruby-lang.org/