[pve-devel] [PATCH common] format: fix render_bytes with CLIFormatter

Stefan Reiter s.reiter at proxmox.com
Wed Feb 17 14:32:16 CET 2021

CLIFormatter passes in an options hash as a second paramter, which so
far was ignored. Now that we treat it as a precision parameter, check if
it is a hash and extract the option from it before using it.

Otherwise perl puts HASH(0x...) into the format and sprintf chokes.

Signed-off-by: Stefan Reiter <s.reiter at proxmox.com>

Reported here: https://forum.proxmox.com/threads/bug-found-where-to-post.84407/

I'm getting too used to Rust...

 src/PVE/Format.pm | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/PVE/Format.pm b/src/PVE/Format.pm
index ed86029..366bc16 100644
--- a/src/PVE/Format.pm
+++ b/src/PVE/Format.pm
@@ -64,6 +64,8 @@ sub render_fraction_as_percentage {
 sub render_bytes {
     my ($value, $precision) = @_;
+    $precision = $precision->{precision} if ref($precision) eq 'HASH';
     my @units = qw(B KiB MiB GiB TiB PiB);
     my $max_unit = 0;

More information about the pve-devel mailing list