From 8e1fb1ca03e252036b90490d5b7f390b5a9b4413 Mon Sep 17 00:00:00 2001 From: Manikandan Selvaganesh Date: Tue, 3 Feb 2015 15:21:51 +0530 Subject: xlators/dht : divide by zero coverity fix CID:1226163. BUG: 789278 Change-Id: Ie31d65da236d7029784defad963672b2ded2676a BUG:1192435 Signed-off-by: Manikandan Selvaganesh Signed-off-by: Humble Devassy Chirammal Reviewed-on: http://review.gluster.org/9563 Tested-by: Gluster Build System Reviewed-by: N Balachandran Reviewed-by: Shyamsundar Ranganathan --- xlators/cluster/dht/src/dht-selfheal.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'xlators/cluster/dht') diff --git a/xlators/cluster/dht/src/dht-selfheal.c b/xlators/cluster/dht/src/dht-selfheal.c index a6658cc4cbb..50c2805d51b 100644 --- a/xlators/cluster/dht/src/dht-selfheal.c +++ b/xlators/cluster/dht/src/dht-selfheal.c @@ -1572,7 +1572,7 @@ dht_selfheal_layout_new_directory (call_frame_t *frame, loc_t *loc, } } - if (weight_by_size) { + if (weight_by_size && total_size) { /* We know total_size is not zero. */ chunk = ((unsigned long) 0xffffffff) / total_size; gf_log (this->name, GF_LOG_INFO, @@ -1580,6 +1580,7 @@ dht_selfheal_layout_new_directory (call_frame_t *frame, loc_t *loc, total_size, chunk); } else { + weight_by_size = _gf_false; chunk = ((unsigned long) 0xffffffff) / bricks_to_use; } -- cgit