diff options
Diffstat (limited to 'ext/socket')
-rw-r--r-- | ext/socket/socket.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/ext/socket/socket.c b/ext/socket/socket.c index 039d7b006b..0198a8e1d6 100644 --- a/ext/socket/socket.c +++ b/ext/socket/socket.c @@ -553,7 +553,7 @@ sock_addrinfo(host, port, socktype, flags) struct addrinfo hints, *hintsp, *res; char *hostp, *portp; int error; - char hbuf[1024], pbuf[16]; + char hbuf[1024], pbuf[32]; if (NIL_P(host)) { hostp = NULL; @@ -569,7 +569,7 @@ sock_addrinfo(host, port, socktype, flags) SafeStringValue(host); name = RSTRING(host)->ptr; - if (*name == 0 || (name[0] == '<' && strcmp(name, "<any>") == 0)) { + if (!name || *name == 0 || (name[0] == '<' && strcmp(name, "<any>") == 0)) { mkinetaddr(INADDR_ANY, hbuf, sizeof(hbuf)); } else if (name[0] == '<' && strcmp(name, "<broadcast>") == 0) { |