summaryrefslogtreecommitdiff
path: root/ext/socket
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2002-08-30 10:42:09 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2002-08-30 10:42:09 +0000
commite8550265002a53f0a7e736aeb6b9b711b6bacfab (patch)
tree313b9622abf265d1e91ca27f9b8becaae738ce6f /ext/socket
parentf5f30e580f90e2022f2c32935d5ba0e1eb00f1ed (diff)
* ext/Win32API/Win32API.c (Win32API_Call): RSTRING()->ptr may be
NULL. * ext/nkf/nkf.c (rb_nkf_guess): ditto. * ext/readline/readline.c (readline_s_set_completion_append_character): ditto. * ext/socket/socket.c (sock_s_getaddrinfo, sock_s_getnameinfo): ditto. * ext/tcltklib/tcltklib.c (ip_toUTF8, ip_fromUTF8): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2768 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext/socket')
-rw-r--r--ext/socket/socket.c18
1 files changed, 8 insertions, 10 deletions
diff --git a/ext/socket/socket.c b/ext/socket/socket.c
index 1e91c38c67..2e9731dbc4 100644
--- a/ext/socket/socket.c
+++ b/ext/socket/socket.c
@@ -2133,7 +2133,7 @@ sock_s_getaddrinfo(argc, argv)
{
VALUE host, port, family, socktype, protocol, flags, ret;
char hbuf[1024], pbuf[1024];
- char *hptr, *pptr;
+ char *hptr, *pptr, *ap;
struct addrinfo hints, *res;
int error;
@@ -2167,13 +2167,12 @@ sock_s_getaddrinfo(argc, argv)
else if (FIXNUM_P(family)) {
hints.ai_family = FIX2INT(family);
}
- else {
- StringValue(family);
- if (strcmp(RSTRING(family)->ptr, "AF_INET") == 0) {
+ else if ((ap = StringValuePtr(family)) != 0) {
+ if (strcmp(ap, "AF_INET") == 0) {
hints.ai_family = PF_INET;
}
#ifdef INET6
- else if (strcmp(RSTRING(family)->ptr, "AF_INET6") == 0) {
+ else if (strcmp(ap, "AF_INET6") == 0) {
hints.ai_family = PF_INET6;
}
#endif
@@ -2211,7 +2210,7 @@ sock_s_getnameinfo(argc, argv)
int error;
struct sockaddr_storage ss;
struct sockaddr *sap;
- char *ep;
+ char *ep, *ap;
sa = flags = Qnil;
rb_scan_args(argc, argv, "11", &sa, &flags);
@@ -2287,13 +2286,12 @@ sock_s_getnameinfo(argc, argv)
else if (FIXNUM_P(af)) {
hints.ai_family = FIX2INT(af);
}
- else {
- StringValue(af);
- if (strcmp(RSTRING(af)->ptr, "AF_INET") == 0) {
+ else if ((ap = StringValuePtr(af)) != 0) {
+ if (strcmp(ap, "AF_INET") == 0) {
hints.ai_family = PF_INET;
}
#ifdef INET6
- else if (strcmp(RSTRING(af)->ptr, "AF_INET6") == 0) {
+ else if (ap, "AF_INET6") == 0) {
hints.ai_family = PF_INET6;
}
#endif