summaryrefslogtreecommitdiff
path: root/cmds-check.c
diff options
context:
space:
mode:
authorMitch Harder <mitch.harder@sabayonlinux.org>2014-02-07 12:53:50 -0600
committerChris Mason <clm@fb.com>2014-03-21 06:23:13 -0700
commit5218123d8ffe51dffd6852d2c7858178f64483c2 (patch)
tree7b5b9ea42bbfcc2df363314783f021a28f4d563c /cmds-check.c
parent771040bb35e06383eab31d195607ddd8097f5e36 (diff)
btrfs-progs: Preserve process_one_leaf return value.
The return value in process_one_leaf could be over-written while looping over the items in the leaf. This patch will preserve a non-zero return value to the calling function if a non-zero return value is encountered in the loop. The return value of one (1) is consistent with non-zero values that could be returned while processing the leaf. The only caller of this function (walk_down_tree) would ignore the return value anyway. But this patch will correct the behaviour in case future changes intend to utilize the return value. Signed-off-by: Mitch Harder <mitch.harder@sabayonlinux.org> Signed-off-by: David Sterba <dsterba@suse.cz> Signed-off-by: Chris Mason <clm@fb.com>
Diffstat (limited to 'cmds-check.c')
-rw-r--r--cmds-check.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/cmds-check.c b/cmds-check.c
index 2911af08..eef7c6cc 100644
--- a/cmds-check.c
+++ b/cmds-check.c
@@ -1219,6 +1219,7 @@ static int process_one_leaf(struct btrfs_root *root, struct extent_buffer *eb,
u32 nritems;
int i;
int ret = 0;
+ int error = 0;
struct cache_tree *inode_cache;
struct shared_node *active_node;
@@ -1268,8 +1269,10 @@ static int process_one_leaf(struct btrfs_root *root, struct extent_buffer *eb,
default:
break;
};
+ if (ret != 0)
+ error = 1;
}
- return ret;
+ return error;
}
static void reada_walk_down(struct btrfs_root *root,