From 4eac2e833cf1518f676a468bec6ad161062431bc Mon Sep 17 00:00:00 2001 From: naruse Date: Tue, 22 Dec 2015 13:45:14 +0000 Subject: fix r53231: raise Errno::EBADF like other OSes git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53244 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ext/socket/init.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/ext/socket/init.c b/ext/socket/init.c index bd069263c6..bc01217641 100644 --- a/ext/socket/init.c +++ b/ext/socket/init.c @@ -61,8 +61,10 @@ rsock_init_sock(VALUE sock, int fd) { rb_io_t *fp; - if (!is_socket(fd)) - rb_raise(rb_eArgError, "not a socket file descriptor"); + if (!is_socket(fd)) { + errno = EBADF; + rb_sys_fail("not a socket file descriptor"); + } rb_update_max_fd(fd); MakeOpenFile(sock, fp); -- cgit v1.2.3