From fb1133fda33c7ca1749b94c9d71e7b32b3553bc8 Mon Sep 17 00:00:00 2001 From: akr Date: Tue, 3 Feb 2009 15:21:42 +0000 Subject: * ext/socket/lib/socket.rb (Socket.tcp_server_sockets_port0): skip socket creation error. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@22019 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ext/socket/lib/socket.rb | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'ext/socket/lib') diff --git a/ext/socket/lib/socket.rb b/ext/socket/lib/socket.rb index c9b70433c..0fbce1ca6 100644 --- a/ext/socket/lib/socket.rb +++ b/ext/socket/lib/socket.rb @@ -232,7 +232,11 @@ class Socket sockets = [] port = nil ai_list.each {|ai| - s = Socket.new(ai.pfamily, ai.socktype, ai.protocol) + begin + s = Socket.new(ai.pfamily, ai.socktype, ai.protocol) + rescue SystemCallError + next + end sockets << s s.ipv6only! if ai.ipv6? s.setsockopt(:SOCKET, :REUSEADDR, 1) -- cgit