btrfs-progs: mkfs: avoid positive return value from cleanup_temp_chunks

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 to return 1, which indicates something wrong.

Fix it.

Signed-off-by: Qu Wenruo <wqu@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
Qu Wenruo 2017-10-19 13:41:34 +08:00 committed by David Sterba
parent 66e485873c
commit a00bfc200c
1 changed files with 3 additions and 0 deletions

View File

@ -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); ret = btrfs_search_slot(trans, root, &key, &path, 0, 0);
if (ret < 0) if (ret < 0)
goto out; goto out;
/* Don't pollute ret for >0 case */
if (ret > 0)
ret = 0;
btrfs_item_key_to_cpu(path.nodes[0], &found_key, btrfs_item_key_to_cpu(path.nodes[0], &found_key,
path.slots[0]); path.slots[0]);