]> granicus.if.org Git - pdns/commitdiff
Handle signals better
authorAki Tuomi <cmouse@desteem.org>
Fri, 27 Dec 2013 10:35:05 +0000 (12:35 +0200)
committerAki Tuomi <cmouse@desteem.org>
Fri, 27 Dec 2013 10:35:05 +0000 (12:35 +0200)
modules/remotebackend/unittest_zeromq.rb

index 11b825d9818851232a97c884dbca3d8f0566fb98..be8569d92b8cd5122d3abed5502cb00d652d29aa 100755 (executable)
@@ -8,6 +8,10 @@ require './unittest'
 
 h = Handler.new()
 f = File.open "/tmp/tmp.txt","a"
+runcond=true
+
+trap('INT') { runcond = false }
+trap('TERM') { runcond = false }
 
 begin
   context = ZeroMQ::Context.new
@@ -16,7 +20,7 @@ begin
  
   print "[#{Time.now.to_s}] ZeroMQ unit test responder running\n"
 
-  while(true) do
+  while(runcond) do
     line = ""
     rc = socket.recv_string line
     f.puts line
@@ -43,7 +47,7 @@ begin
       next
     end
   end
-rescue SystemExit, Interrupt
+rescue SystemExit, Interrupt, Errno::EINTR
 end
 
 print "[#{Time.now.to_s}] ZeroMQ unit test responder ended\n"