about summary refs log tree commit homepage
path: root/test/setup.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/setup.rb')
-rw-r--r--test/setup.rb8
1 files changed, 2 insertions, 6 deletions
diff --git a/test/setup.rb b/test/setup.rb
index 8fda7f1..3c64c2b 100644
--- a/test/setup.rb
+++ b/test/setup.rb
@@ -58,13 +58,8 @@ require 'socket'
 class TempServer
   attr_reader :port, :pid
 
-  def self.destroy_all!
-    ObjectSpace.each_object(TempServer) { |t| t.destroy! }
-  end
-
-  at_exit { TempServer.destroy_all! }
-
   def initialize(server_proc, port = nil)
+    @destroy_pid = $$
     @pid = @sock = nil
     @port = port
     retries = 10
@@ -85,6 +80,7 @@ class TempServer
   end
 
   def destroy!
+    return if @destroy_pid != $$
     @sock.close rescue nil
     Process.kill('KILL', @pid) rescue nil
   end