diff options
Diffstat (limited to 'otherlibs/win32unix/getsockname.c')
-rw-r--r-- | otherlibs/win32unix/getsockname.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/otherlibs/win32unix/getsockname.c b/otherlibs/win32unix/getsockname.c index 51b3a9f58..8faf5ba1c 100644 --- a/otherlibs/win32unix/getsockname.c +++ b/otherlibs/win32unix/getsockname.c @@ -20,10 +20,12 @@ value unix_getsockname(sock) /* ML */ value sock; { int retcode; + union sock_addr_union addr; + socklen_param_type addr_len; - sock_addr_len = sizeof(sock_addr); + addr_len = sizeof(sock_addr); retcode = getsockname((SOCKET) Handle_val(sock), - &sock_addr.s_gen, &sock_addr_len); + &addr.s_gen, &addr_len); if (retcode == -1) uerror("getsockname", Nothing); - return alloc_sockaddr(); + return alloc_sockaddr(&addr, addr_len); } |