From 6dee0e3d99dd3423edc6ad2981733fac3ef8c67d Mon Sep 17 00:00:00 2001 From: Jeff Darcy Date: Fri, 16 Nov 2012 13:48:58 -0500 Subject: glusterd: fix use of undefined realpath(3) result Change-Id: Ic50ae192c99cece25cd63f2277fb440fca5f0b04 BUG: 877522 Signed-off-by: Jeff Darcy Reviewed-on: http://review.gluster.org/4201 Reviewed-by: Krishnan Parthasarathi Tested-by: Gluster Build System --- xlators/mgmt/glusterd/src/glusterd-utils.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'xlators/mgmt/glusterd') diff --git a/xlators/mgmt/glusterd/src/glusterd-utils.c b/xlators/mgmt/glusterd/src/glusterd-utils.c index 28b9cdc78fc..726aa3a1bb3 100644 --- a/xlators/mgmt/glusterd/src/glusterd-utils.c +++ b/xlators/mgmt/glusterd/src/glusterd-utils.c @@ -824,8 +824,13 @@ glusterd_is_brickpath_available (uuid_t uuid, char *path) strncpy (tmp_path, path, PATH_MAX); /* path may not yet exist */ - if (!realpath (path, tmp_path) && (errno != ENOENT)) - goto out; + if (!realpath (path, tmp_path)) { + if (errno != ENOENT) { + goto out; + } + /* When realpath(3) fails, tmp_path is undefined. */ + strncpy(tmp_path,path,PATH_MAX); + } list_for_each_entry (volinfo, &priv->volumes, vol_list) { list_for_each_entry (brickinfo, &volinfo->bricks, brick_list) { -- cgit