diff --git a/ChangeLog b/ChangeLog index 3d68349b14..7f5d08fb8b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Fri Jul 17 13:35:47 2009 Tanaka Akira + + * ext/socket/init.c (rsock_getfamily): return AF_UNSPEC if getsockname + is failed. [ruby-core:24383] + Fri Jul 17 01:22:57 2009 Yukihiro Matsumoto * array.c (recursive_join): raise ArgumentError for joining diff --git a/ext/socket/init.c b/ext/socket/init.c index 81237536c9..ed85e0b503 100644 --- a/ext/socket/init.c +++ b/ext/socket/init.c @@ -532,7 +532,7 @@ rsock_getfamily(int sockfd) ss.ss_family = AF_UNSPEC; if (getsockname(sockfd, (struct sockaddr*)&ss, &sslen) < 0) - rb_sys_fail("getsockname(2)"); + return AF_UNSPEC; return ss.ss_family; }