fix #3331: improve progress for last snapshot in group
especially for the last group, without this the progress would report: "percentage done: 100.00% (1 of 2 groups, 1 of 1 group snapshots)" instead of the more logical "percentage done: 100.00% (2 of 2 groups)" Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
This commit is contained in:
parent
d8769d659e
commit
8081e4aa7b
|
@ -33,6 +33,12 @@ impl StoreProgress {
|
|||
|
||||
impl std::fmt::Display for StoreProgress {
|
||||
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
|
||||
let current_group = if self.done_groups < self.total_groups {
|
||||
self.done_groups + 1
|
||||
} else {
|
||||
self.done_groups
|
||||
};
|
||||
|
||||
if self.group_snapshots == 0 {
|
||||
write!(
|
||||
f,
|
||||
|
@ -49,6 +55,14 @@ impl std::fmt::Display for StoreProgress {
|
|||
self.done_snapshots,
|
||||
self.group_snapshots,
|
||||
)
|
||||
} else if self.done_snapshots == self.group_snapshots {
|
||||
write!(
|
||||
f,
|
||||
"{:.2}% ({} of {} groups)",
|
||||
self.percentage() * 100.0,
|
||||
current_group,
|
||||
self.total_groups,
|
||||
)
|
||||
} else {
|
||||
write!(
|
||||
f,
|
||||
|
|
Loading…
Reference in New Issue