btrfs-progs: qgroups show: handle errors when resolving root id

If btrfs_get_path_rootid fails, prints an error message but continues.
Replace with a helper that returns an error.

Signed-off-by: David Sterba <dsterba@suse.com>
master
David Sterba 2016-10-31 10:27:25 +01:00
parent 4dc315e68a
commit f2744dbc93
1 changed files with 8 additions and 1 deletions

View File

@ -366,7 +366,13 @@ static int cmd_qgroup_show(int argc, char **argv)
}
if (filter_flag) {
qgroupid = btrfs_get_path_rootid(fd);
ret = lookup_ino_rootid(fd, &qgroupid);
if (ret < 0) {
error("cannot resolve rootid for %s: %s",
path, strerror(-ret));
close_file_or_dir(fd, dirstream);
goto out;
}
if (filter_flag & 0x1)
btrfs_qgroup_setup_filter(&filter_set,
BTRFS_QGROUP_FILTER_ALL_PARENT,
@ -382,6 +388,7 @@ static int cmd_qgroup_show(int argc, char **argv)
if (ret < 0)
error("can't list qgroups: %s", strerror(e));
out:
return !!ret;
}