diff options
author | Jakub Jelinek <jakub@redhat.com> | 2004-11-24 08:05:15 +0000 |
---|---|---|
committer | Jakub Jelinek <jakub@redhat.com> | 2004-11-24 08:05:15 +0000 |
commit | 945a6124b6aa3047e3d144da4fb47cbbf5da70ee (patch) | |
tree | 7b7d217428c431919749c4e8280228da5739c25e /nscd | |
parent | 06bc2b63c861ca3f53e5e98bc0ecd23e4b159531 (diff) | |
download | glibc-945a6124b6aa3047e3d144da4fb47cbbf5da70ee.tar.gz glibc-945a6124b6aa3047e3d144da4fb47cbbf5da70ee.tar.xz glibc-945a6124b6aa3047e3d144da4fb47cbbf5da70ee.zip |
Updated to fedora-glibc-20041124T0741 cvs/fedora-glibc-2_3_3-84
Diffstat (limited to 'nscd')
-rw-r--r-- | nscd/nscd_getai.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/nscd/nscd_getai.c b/nscd/nscd_getai.c index f0b2082baa..24b374b0dc 100644 --- a/nscd/nscd_getai.c +++ b/nscd/nscd_getai.c @@ -104,7 +104,7 @@ __nscd_getai (const char *key, struct nscd_ai_result **result, int *h_errnop) if (resultbuf == NULL) { *h_errnop = NETDB_INTERNAL; - return -1; + goto out_close; } /* Set up the data structure, including pointers. */ @@ -140,7 +140,10 @@ __nscd_getai (const char *key, struct nscd_ai_result **result, int *h_errnop) if (resultbuf->canon != NULL && resultbuf->canon[ai_resp->canonlen - 1] != '\0') /* We cannot use the database. */ - goto out_close; + { + free (resultbuf); + goto out_close; + } retval = 0; *result = resultbuf; @@ -173,6 +176,7 @@ __nscd_getai (const char *key, struct nscd_ai_result **result, int *h_errnop) mapped = NO_MAPPING; } + *result = NULL; free (resultbuf); goto retry; |