summaryrefslogtreecommitdiffstats
path: root/test/socket/test_socket.rb
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2004-12-09 23:39:57 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2004-12-09 23:39:57 +0000
commitdc932e649260970cd849af21b4434123a0c6bae1 (patch)
tree86dd3b9367cb55aa4576f78467550bd1fbc9b028 /test/socket/test_socket.rb
parent07353b72ae9227584d945d58354794cefe39fb4b (diff)
downloadruby-dc932e649260970cd849af21b4434123a0c6bae1.tar.gz
ruby-dc932e649260970cd849af21b4434123a0c6bae1.tar.xz
ruby-dc932e649260970cd849af21b4434123a0c6bae1.zip
* ext/socket/socket.c (sock_listen): get OpenFile just before calling
listen(2). git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@7527 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/socket/test_socket.rb')
-rw-r--r--test/socket/test_socket.rb14
1 files changed, 14 insertions, 0 deletions
diff --git a/test/socket/test_socket.rb b/test/socket/test_socket.rb
index c436484dd..11d688ba7 100644
--- a/test/socket/test_socket.rb
+++ b/test/socket/test_socket.rb
@@ -57,4 +57,18 @@ class TestBasicSocket < Test::Unit::TestCase
}
end
end
+
+ def test_listen
+ s = nil
+ log = Object.new
+ class << log; self end.send(:define_method, :to_int) {
+ s.close
+ 2
+ }
+ inet_stream do |s|
+ assert_raise(IOError) {
+ s.listen(log)
+ }
+ end
+ end
end if defined?(Socket)