From 8f847632dd0c9331f2b43ceb3b0a4e51167669a5 Mon Sep 17 00:00:00 2001 From: R E Broadley Date: Wed, 11 Mar 2026 18:16:58 -0500 Subject: [PATCH] client: respect --root in list used-space --- client/snapper/cmd-list.cc | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/client/snapper/cmd-list.cc b/client/snapper/cmd-list.cc index 8b00db06..9ca01548 100644 --- a/client/snapper/cmd-list.cc +++ b/client/snapper/cmd-list.cc @@ -28,6 +28,7 @@ #include #include +#include #include "../utils/text.h" #include "../utils/help.h" @@ -87,7 +88,8 @@ namespace snapper { public: - OutputHelper(const ProxySnapper* snapper, const vector& columns); + OutputHelper(const ProxySnapper* snapper, const vector& columns, + const string& root_prefix); bool is_default(const ProxySnapshot& snapshot) const { @@ -135,6 +137,7 @@ namespace snapper ProxySnapshots::const_iterator default_snapshot; ProxySnapshots::const_iterator active_snapshot; + string root_prefix; bool used_space_broken = true; @@ -158,9 +161,11 @@ namespace snapper #endif - OutputHelper::OutputHelper(const ProxySnapper* snapper, const vector& columns) + OutputHelper::OutputHelper(const ProxySnapper* snapper, const vector& columns, + const string& root_prefix) : snapper(snapper), locker(snapper), snapshots(snapper->getSnapshots()), - default_snapshot(snapshots.end()), active_snapshot(snapshots.end()) + default_snapshot(snapshots.end()), active_snapshot(snapshots.end()), + root_prefix(root_prefix) { try { @@ -184,7 +189,7 @@ namespace snapper if (find(columns.begin(), columns.end(), Column::USED_SPACE) != columns.end()) { - string subvolume = snapper->getConfig().getSubvolume(); + string subvolume = prepend_root_prefix(root_prefix, snapper->getConfig().getSubvolume()); #ifdef ENABLE_BTRFS @@ -587,7 +592,7 @@ namespace snapper << snapper->getConfig().getSubvolume() << endl; } - OutputHelper output_helper(snapper, columns); + OutputHelper output_helper(snapper, columns, global_options.root()); TableFormatter formatter(global_options.table_style()); @@ -643,7 +648,7 @@ namespace snapper for (const ProxySnapper* snapper : snappers) { - OutputHelper output_helper(snapper, columns); + OutputHelper output_helper(snapper, columns, global_options.root()); for (const ProxySnapshot& snapshot : output_helper.snapshots) { @@ -675,7 +680,7 @@ namespace snapper json_object* json_config = json_object_new_array(); json_object_object_add(formatter.root(), snapper->configName().c_str(), json_config); - OutputHelper output_helper(snapper, columns); + OutputHelper output_helper(snapper, columns, global_options.root()); for (const ProxySnapshot& snapshot : output_helper.snapshots) { -- 2.47.3