use base qw(PVE::Storage::Plugin);
use Fcntl qw(S_ISDIR O_WRONLY O_CREAT O_EXCL);
-use File::Basename qw(dirname);
+use File::Basename qw(basename dirname);
use File::Path qw(mkpath);
use IO::Dir;
use POSIX qw(EEXIST);
my ($class, $storeid, $scfg, $vmid, $fmt, $name, $size) = @_;
if ($fmt ne 'raw' && $fmt ne 'subvol') {
- return $class->SUPER::alloc_image($storeid, $scfg, $vmid, $fmt, $name, $size)
+ return $class->SUPER::alloc_image($storeid, $scfg, $vmid, $fmt, $name, $size);
}
# From Plugin.pm:
$class->parse_volname($volname);
if (!defined($format) || ($format ne 'subvol' && $format ne 'raw')) {
- return PVE::Storage::DirPlugin->free_image($storeid, $scfg, $volname, $isBase, $_format);
+ return $class->SUPER::free_image($storeid, $scfg, $volname, $isBase, $_format);
}
my $path = $class->filesystem_path($scfg, $volname);
}
my $dir = dirname($subvol);
+ my $basename = basename($subvol);
my @snapshot_vols;
foreach_subvol($dir, sub {
my ($volume, $name, $snapshot) = @_;
+ return if $name ne $basename;
return if !defined $snapshot;
push @snapshot_vols, "$dir/$volume";
});