ruby-changes:10671
From: akr <ko1@a...>
Date: Wed, 11 Feb 2009 16:55:02 +0900 (JST)
Subject: [ruby-changes:10671] Ruby:r22234 (trunk): * ext/socket/lib/socket.rb (Socket.unix_server_socket): close the
akr 2009-02-11 16:54:52 +0900 (Wed, 11 Feb 2009) New Revision: 22234 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=22234 Log: * ext/socket/lib/socket.rb (Socket.unix_server_socket): close the socket when the block exits. Modified files: trunk/ChangeLog trunk/ext/socket/lib/socket.rb trunk/test/socket/test_unix.rb Index: ChangeLog =================================================================== --- ChangeLog (revision 22233) +++ ChangeLog (revision 22234) @@ -1,3 +1,8 @@ +Wed Feb 11 16:54:26 2009 Tanaka Akira <akr@f...> + + * ext/socket/lib/socket.rb (Socket.unix_server_socket): close the + socket when the block exits. + Wed Feb 11 16:50:59 2009 Tanaka Akira <akr@f...> * ext/socket/lib/socket.rb (Socket.unix_server_socket): call the block Index: ext/socket/lib/socket.rb =================================================================== --- ext/socket/lib/socket.rb (revision 22233) +++ ext/socket/lib/socket.rb (revision 22234) @@ -612,6 +612,7 @@ begin yield s ensure + s.close if !s.closed? File.unlink path end else Index: test/socket/test_unix.rb =================================================================== --- test/socket/test_unix.rb (revision 22233) +++ test/socket/test_unix.rb (revision 22234) @@ -299,10 +299,13 @@ def test_unix_server_socket Dir.mktmpdir {|d| path = "#{d}/sock" + s0 = nil Socket.unix_server_socket(path) {|s| assert_equal(path, s.local_address.unix_path) assert(File.socket?(path)) + s0 = s } + assert(s0.closed?) assert_raise(Errno::ENOENT) { File.stat path } } end -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/