From c1f4f9ba17fd40ef9c726a9599f3122f29ef0092 Mon Sep 17 00:00:00 2001 From: Raghavendra Bhat Date: Thu, 9 Sep 2010 05:56:59 +0000 Subject: free the tmp string allocated while getting brick information Signed-off-by: Raghavendra Bhat Signed-off-by: Vijay Bellur BUG: 1580 () URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1580 --- xlators/mgmt/glusterd/src/glusterd-utils.c | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/xlators/mgmt/glusterd/src/glusterd-utils.c b/xlators/mgmt/glusterd/src/glusterd-utils.c index d078b00c98e..ab86041d8c1 100644 --- a/xlators/mgmt/glusterd/src/glusterd-utils.c +++ b/xlators/mgmt/glusterd/src/glusterd-utils.c @@ -628,14 +628,20 @@ glusterd_brickinfo_from_brick (char *brick, char *hostname = NULL; char *path = NULL; char *tmp = NULL; + char *tmpstr = NULL; GF_ASSERT (brick); GF_ASSERT (brickinfo); - tmp = strdup (brick); + tmp = gf_strdup (brick); + if (!tmp) { + gf_log ("glusterd", GF_LOG_ERROR, + "Out of memory"); + goto out; + } - hostname = strtok (tmp, ":"); - path = strtok (NULL, ":"); + hostname = strtok_r (tmp, ":", &tmpstr); + path = strtok_r (NULL, ":", &tmpstr); GF_ASSERT (hostname); GF_ASSERT (path); @@ -652,6 +658,8 @@ glusterd_brickinfo_from_brick (char *brick, ret = 0; out: + if (tmp) + GF_FREE (tmp); gf_log ("", GF_LOG_DEBUG, "Returning %d", ret); return ret; } -- cgit