diff mbox

btrfs-progs: Preserve process_one_leaf return value.

Message ID 1391799230-6954-1-git-send-email-mitch.harder@sabayonlinux.org (mailing list archive)
State Accepted, archived
Headers show

Commit Message

Mitch Harder Feb. 7, 2014, 6:53 p.m. UTC
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>
---
 cmds-check.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)
diff mbox

Patch

diff --git a/cmds-check.c b/cmds-check.c
index 2911af0..eef7c6c 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,