diff --git a/cmds-qgroup.c b/cmds-qgroup.c index 98149410..7c5532c4 100644 --- a/cmds-qgroup.c +++ b/cmds-qgroup.c @@ -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; }