Module
Signal

In: | lib/phusion_passenger/utils.rb

Methods

- list_trappable

Public Class methods
list_trappable()

Like Signal.list, but only returns signals that we can actually trap.

[ show source ]

         # File lib/phusion_passenger/utils.rb, line 466
    466:         def self.list_trappable
    467:                 ruby_engine = defined?(RUBY_ENGINE) ? RUBY_ENGINE : "mri"
    468:                 case ruby_engine
    469:                 when "mri"
    470:                         if RUBY_VERSION >= '1.9.0'
    471:                                 return Signal.list
    472:                         else
    473:                                 result = Signal.list
    474:                                 result.delete("ALRM")
    475:                                 return result
    476:                         end
    477:                 when "jruby"
    478:                         result = Signal.list
    479:                         result.delete("QUIT")
    480:                         result.delete("ILL")
    481:                         result.delete("FPE")
    482:                         result.delete("KILL")
    483:                         result.delete("SEGV")
    484:                         result.delete("STOP")
    485:                         result.delete("USR1")
    486:                         return result
    487:                 else
    488:                         return Signal.list
    489:                 end
    490:         end