diff mbox

[v2,2/6] btrfs-progs: mkfs: Avoid positive return value from cleanup_temp_chunks

Message ID 20171019054138.13965-3-wqu@suse.com (mailing list archive)
State New, archived
Headers show

Commit Message

Qu Wenruo Oct. 19, 2017, 5:41 a.m. UTC
Since we're calling btrfs_search_slot() the return value can be
positive.
However we just pass that return value out, causing undefined return
value.

This can cause mkfs return 1, which indicates something wrong.

Fix it.

Signed-off-by: Qu Wenruo <wqu@suse.com>
---
 mkfs/main.c | 3 +++
 1 file changed, 3 insertions(+)
diff mbox

Patch

diff --git a/mkfs/main.c b/mkfs/main.c
index 80e6089c37a1..9d53c6632b45 100644
--- a/mkfs/main.c
+++ b/mkfs/main.c
@@ -1350,6 +1350,9 @@  static int cleanup_temp_chunks(struct btrfs_fs_info *fs_info,
 		ret = btrfs_search_slot(trans, root, &key, &path, 0, 0);
 		if (ret < 0)
 			goto out;
+		/* Don't pollute ret for >0 case */
+		if (ret > 0)
+			ret = 0;
 
 		btrfs_item_key_to_cpu(path.nodes[0], &found_key,
 				      path.slots[0]);