PVE::QemuServer::create_disks - run code inside eval

So that we can free allocated volumes ins something fails.

Thi bug was introduced with commit ae57f6b352
This commit is contained in:
Dietmar Maurer 2017-05-06 17:00:20 +02:00
parent 0342b45bee
commit 64932aebff

View File

@ -119,7 +119,8 @@ my $create_disks = sub {
my $vollist = []; my $vollist = [];
my $res = {}; my $res = {};
PVE::QemuServer::foreach_drive($settings, sub {
my $code = sub {
my ($ds, $disk) = @_; my ($ds, $disk) = @_;
my $volid = $disk->{file}; my $volid = $disk->{file};
@ -190,7 +191,9 @@ my $create_disks = sub {
$res->{$ds} = PVE::QemuServer::print_drive($vmid, $disk); $res->{$ds} = PVE::QemuServer::print_drive($vmid, $disk);
} }
}); };
eval { PVE::QemuServer::foreach_drive($settings, $code); };
# free allocated images on error # free allocated images on error
if (my $err = $@) { if (my $err = $@) {