diff options
author | jeg2 <jeg2@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-12-01 16:01:49 +0000 |
---|---|---|
committer | jeg2 <jeg2@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-12-01 16:01:49 +0000 |
commit | d92b461dd9f5ff0eae7d15435aab1507dfb53496 (patch) | |
tree | 79b28e71b11b770e16e3b8ba9c0d1a1cd58f5060 /lib/xmlrpc | |
parent | d5bd9d159369ea12070497878e40ae6f829f5e70 (diff) |
* lib/xmlrpc/server.rb (XMLRPC::Server#server): Improve signal handling so
pressing control-c in the controlling terminal or sending SIGTERM stops
the XML-RPC server.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14070 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/xmlrpc')
-rw-r--r-- | lib/xmlrpc/server.rb | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/xmlrpc/server.rb b/lib/xmlrpc/server.rb index 59a5869408..ca8d3b0a5b 100644 --- a/lib/xmlrpc/server.rb +++ b/lib/xmlrpc/server.rb @@ -639,11 +639,11 @@ class Server < WEBrickServlet def serve if RUBY_PLATFORM =~ /mingw|mswin32/ - signal = 1 + signals = [1] else - signal = "HUP" + signals = %w[INT TERM HUP] end - trap(signal) { @server.shutdown } + signals.each { |signal| trap(signal) { @server.shutdown } } @server.start end |