From b41579d839a8b6a1447dbb76c85aefdd44cedafe Mon Sep 17 00:00:00 2001 From: Jiffin Tony Thottan Date: Mon, 7 Sep 2015 16:46:48 +0530 Subject: uss : handle `buf` variable properly in svs_glfs_readdir() The svs_glfs_readdir() is a generic function which is called from svs_readdir() and svs_readdirp(). But in svs_readdir 'buf' variable is passed as NULL, then glfs_read_readdir() will fail. This patch will fix the same. It is backport of http://review.gluster.org/12117 Upstream Reference: > Change-Id: Id02e4e17e30c85de117db5ddd9f97b578622dff9 > BUG: 1260611 > Signed-off-by: Jiffin Tony Thottan > cherry-picked as 7b6183c36ebfe020b724c95b018a8cd535e1ecdd Change-Id: Iee08d5c29cad0376ca9d378c8f17b0820eebc88a BUG: 1260859 Signed-off-by: Jiffin Tony Thottan Reviewed-on: http://review.gluster.org/12122 Tested-by: NetBSD Build System Reviewed-by: Niels de Vos Reviewed-by: Raghavendra Bhat Tested-by: Gluster Build System --- xlators/features/snapview-server/src/snapview-server.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'xlators/features/snapview-server') diff --git a/xlators/features/snapview-server/src/snapview-server.c b/xlators/features/snapview-server/src/snapview-server.c index 5ae96251ce0..ed30cb8e09d 100644 --- a/xlators/features/snapview-server/src/snapview-server.c +++ b/xlators/features/snapview-server/src/snapview-server.c @@ -1246,7 +1246,6 @@ svs_glfs_readdir (xlator_t *this, glfs_fd_t *glfd, gf_dirent_t *entries, GF_VALIDATE_OR_GOTO ("svs", this, out); GF_VALIDATE_OR_GOTO (this->name, glfd, out); GF_VALIDATE_OR_GOTO (this->name, entries, out); - GF_VALIDATE_OR_GOTO (this->name, buf, out); while (filled_size < size) { in_case = glfs_telldir (glfd); @@ -1287,9 +1286,10 @@ svs_glfs_readdir (xlator_t *this, glfs_fd_t *glfd, gf_dirent_t *entries, entry->d_off = glfs_telldir (glfd); entry->d_ino = de.d_ino; entry->d_type = de.d_type; - iatt_from_stat (buf, &statbuf); - if (readdirplus) + if (readdirplus) { + iatt_from_stat (buf, &statbuf); entry->d_stat = *buf; + } list_add_tail (&entry->list, &entries->list); filled_size += this_size; -- cgit