From 5b353be3b69fcea9b911fc1ef3980ed3f1a87d45 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Wed, 29 Mar 2006 17:52:29 +0000 Subject: * sysdeps/posix/getaddrinfo.c (gaih_inet): No need to duplicate 'name' for 'canon'. The final allocation will happen later. --- sysdeps/posix/getaddrinfo.c | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) (limited to 'sysdeps/posix') diff --git a/sysdeps/posix/getaddrinfo.c b/sysdeps/posix/getaddrinfo.c index 46c66a8f7e..37f7fa0bd2 100644 --- a/sysdeps/posix/getaddrinfo.c +++ b/sysdeps/posix/getaddrinfo.c @@ -538,16 +538,10 @@ gaih_inet (const char *name, const struct gaih_service *service, else return -EAI_ADDRFAMILY; - dupname: if (req->ai_flags & AI_CANONNAME) - { - canon = strdup (name); - if (canon == NULL) - return -EAI_MEMORY; - } + canon = name; } - - if (at->family == AF_UNSPEC) + else if (at->family == AF_UNSPEC) { char *namebuf = (char *) name; char *scope_delim = strchr (name, SCOPE_DELIMITER); @@ -595,7 +589,8 @@ gaih_inet (const char *name, const struct gaih_service *service, } } - goto dupname; + if (req->ai_flags & AI_CANONNAME) + canon = name; } } -- cgit 1.4.1