[pve-devel] [PATCH storage 1/2] file-restore: return perl-y booleans

Fabian Grünbichler f.gruenbichler at proxmox.com
Fri Apr 23 12:34:25 CEST 2021


like we do in most of our API.

Signed-off-by: Fabian Grünbichler <f.gruenbichler at proxmox.com>
---
 PVE/API2/Storage/FileRestore.pm | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/PVE/API2/Storage/FileRestore.pm b/PVE/API2/Storage/FileRestore.pm
index 68f81eb..f6dc74a 100644
--- a/PVE/API2/Storage/FileRestore.pm
+++ b/PVE/API2/Storage/FileRestore.pm
@@ -56,7 +56,7 @@ __PACKAGE__->register_method ({
 		},
 		leaf => {
 		    description => "If this entry is a leaf in the directory graph.",
-		    type => 'any', # JSON::PP::Boolean gets passed through
+		    type => 'boolean',
 		},
 		size => {
 		    description => "Entry file size.",
@@ -91,6 +91,13 @@ __PACKAGE__->register_method ({
 	my $client = PVE::PBSClient->new($scfg, $storeid);
 	my $ret = $client->file_restore_list($snap, $path, $base64);
 
+
+	# 'leaf' is a proper JSON boolean, map to perl-y bool
+	# TODO: make PBSClient decode all bools always as 1/0?
+	foreach my $item (@$ret) {
+	    $item->{leaf} = $item->{leaf} ? 1 : 0;
+	}
+
 	return $ret;
     }});
 
-- 
2.20.1






More information about the pve-devel mailing list