diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | test/openssl/test_ssl.rb | 19 |
2 files changed, 17 insertions, 7 deletions
@@ -1,3 +1,8 @@ +Mon Jun 30 23:15:07 2008 Yusuke Endoh <mame@tsg.ne.jp> + + * test/openssl/test_ssl.rb (start_server): shutdown TCPServer before + close. + Mon Jun 30 23:01:50 2008 Nobuyoshi Nakada <nobu@ruby-lang.org> * common.mk (RUBY_H_INCLUDES): common headers which are included with diff --git a/test/openssl/test_ssl.rb b/test/openssl/test_ssl.rb index 50659f1b3b..876ca4c685 100644 --- a/test/openssl/test_ssl.rb +++ b/test/openssl/test_ssl.rb @@ -128,14 +128,19 @@ class OpenSSL::TestSSL < Test::Unit::TestCase block.call(server, port.to_i) ensure - tcps.close if (tcps) - if (server) - server.join(5) - if server.alive? - server.kill - server.join - flunk("TCPServer was closed and SSLServer is still alive") unless $! + tcps.shutdown if (tcps) + begin + if (server) + server.join(5) + if server.alive? + server.kill + server.join + flunk("TCPServer was closed and SSLServer is still alive") unless $! + end end + rescue Errno::EINVAL, Errno::EBADF + ensure + tcps.close if (tcps) end end end |