diff options
| -rw-r--r-- | ChangeLog | 5 | ||||
| -rw-r--r-- | ext/socket/socket.c | 4 |
2 files changed, 8 insertions, 1 deletions
@@ -1,3 +1,8 @@ +Fri Dec 10 08:39:27 2004 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/socket/socket.c (sock_listen): get OpenFile just before calling + listen(2). fixed: [ruby-dev:25149] + Thu Dec 9 17:00:00 2004 Akiyoshi, Masamichi <akiyoshi@hp.com> * ext/socket/socket.c, ext/socket/getaddrinfo.c: port to VMS diff --git a/ext/socket/socket.c b/ext/socket/socket.c index c2f5dfdbb..09355b473 100644 --- a/ext/socket/socket.c +++ b/ext/socket/socket.c @@ -1937,10 +1937,12 @@ sock_listen(sock, log) VALUE sock, log; { OpenFile *fptr; + int backlog; rb_secure(4); + backlog = NUM2INT(log); GetOpenFile(sock, fptr); - if (listen(fileno(fptr->f), NUM2INT(log)) < 0) + if (listen(fileno(fptr->f), backlog) < 0) rb_sys_fail("listen(2)"); return INT2FIX(0); |
