From 1b83c3d9c7f6a3f127ef850874df347dba8c4256 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Fabian=20Gr=C3=BCnbichler?= Date: Thu, 15 Sep 2016 13:17:46 +0200 Subject: [PATCH] harmonize list_images code --- PVE/Storage/RBDPlugin.pm | 9 ++++----- PVE/Storage/ZFSPoolPlugin.pm | 19 +++++++++---------- 2 files changed, 13 insertions(+), 15 deletions(-) diff --git a/PVE/Storage/RBDPlugin.pm b/PVE/Storage/RBDPlugin.pm index a965ade..de8751a 100644 --- a/PVE/Storage/RBDPlugin.pm +++ b/PVE/Storage/RBDPlugin.pm @@ -498,19 +498,18 @@ sub list_images { my $owner = $info->{vmid}; if ($parent && $parent =~ m/^(base-\d+-\S+)\@__base__$/) { - $volname = "$1/$volname"; + $info->{volid} = "$storeid:$1/$volname"; + } else { + $info->{volid} = "$storeid:$volname"; } - my $volid = "$storeid:$volname"; - if ($vollist) { - my $found = grep { $_ eq $volid } @$vollist; + my $found = grep { $_ eq $info->{volid} } @$vollist; next if !$found; } else { next if defined ($vmid) && ($owner ne $vmid); } - $info->{volid} = $volid; $info->{format} = 'raw'; push @$res, $info; diff --git a/PVE/Storage/ZFSPoolPlugin.pm b/PVE/Storage/ZFSPoolPlugin.pm index 91101a2..77ed72c 100644 --- a/PVE/Storage/ZFSPoolPlugin.pm +++ b/PVE/Storage/ZFSPoolPlugin.pm @@ -248,27 +248,26 @@ sub list_images { foreach my $image (keys %$dat) { - my $volname = $dat->{$image}->{name}; - my $parent = $dat->{$image}->{parent}; + my $info = $dat->{$image}; - my $volid = undef; - if ($parent && $parent =~ m/^(\S+)@(\S+)$/) { + my $volname = $info->{name}; + my $parent = $info->{parent}; + my $owner = $info->{vmid}; + + if ($parent && $parent =~ m/^(\S+)\@__base__$/) { my ($basename) = ($1); - $volid = "$storeid:$basename/$volname"; + $info->{volid} = "$storeid:$basename/$volname"; } else { - $volid = "$storeid:$volname"; + $info->{volid} = "$storeid:$volname"; } - my $owner = $dat->{$volname}->{vmid}; if ($vollist) { - my $found = grep { $_ eq $volid } @$vollist; + my $found = grep { $_ eq $info->{volid} } @$vollist; next if !$found; } else { next if defined ($vmid) && ($owner ne $vmid); } - my $info = $dat->{$volname}; - $info->{volid} = $volid; push @$res, $info; } } -- 2.39.5