# File lib/slave.rb, line 254 def on_cut &b at_exit{ begin; b.call; ensure; b = nil; end if b} Thread.new(Thread.current){|current| Thread.current.abort_on_exception = true begin each{|*a|} rescue Exception current.raise $! 42 ensure begin; b.call; ensure; b = nil; end if b end } end