if the size/avail of a mount is bigger than a certain amount, json_encode writes the number in scientific format, which did not fit inside our \d+ regex
this resulted in 'undef' values for the result hash and subsequently led to errors and warnings extend it to also catch scientific formatted numbers Signed-off-by: Dominik Csapak <d.csa...@proxmox.com> --- src/PVE/Tools.pm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/PVE/Tools.pm b/src/PVE/Tools.pm index 02c2886..89de4ec 100644 --- a/src/PVE/Tools.pm +++ b/src/PVE/Tools.pm @@ -1008,7 +1008,7 @@ sub df { warn $@ if $@; # untaint the values - my ($blocks, $used, $bavail) = map { defined($_) ? (/^(\d+)$/) : 0 } + my ($blocks, $used, $bavail) = map { defined($_) ? (/^([\d\.e\-+]+)$/) : 0 } # can be in scientific notation $res->@{qw(blocks used bavail)}; return { -- 2.20.1 _______________________________________________ pve-devel mailing list pve-devel@pve.proxmox.com https://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel