diff options
Diffstat (limited to 'otherlibs/win32unix/bind.c')
-rw-r--r-- | otherlibs/win32unix/bind.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/otherlibs/win32unix/bind.c b/otherlibs/win32unix/bind.c index a4f45b1e9..58e4b60e0 100644 --- a/otherlibs/win32unix/bind.c +++ b/otherlibs/win32unix/bind.c @@ -20,8 +20,11 @@ value unix_bind(socket, address) /* ML */ value socket, address; { int ret; - get_sockaddr(address); - ret = bind((SOCKET) Handle_val(socket), &sock_addr.s_gen, sock_addr_len); + union sock_addr_union addr; + socklen_param_type addr_len; + + get_sockaddr(address, &addr, &addr_len); + ret = bind((SOCKET) Handle_val(socket), &addr.s_gen, addr_len); if (ret == -1) unix_error(WSAGetLastError(), "bind", Nothing); return Val_unit; } |