btrfs: fix calling parent create_base method in fall-back

If we want to forward to the create_base of the directory plugin while
making that use our $class for the operations that call might do, we
cannot use the -> notation (which would resolve the next actual
implementation) but rather pass the class directly.
But, DirPlugin reuses the create_base method from the base Plugin
method, so we also need to call that, because on direct call notation
the inheritance fallback to super methods isn't available.

Reported in the forum:
https://forum.proxmox.com/threads/95684/post-606535

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
This commit is contained in:
Thomas Lamprecht
2023-11-19 20:05:50 +01:00
parent 3cd71f42c0
commit 5840bd18a8

View File

@ -262,7 +262,7 @@ sub create_base {
# If we're not working with a 'raw' file, which is the only thing that's "different" for btrfs,
# or a subvolume, we forward to the DirPlugin
if ($format ne 'raw' && $format ne 'subvol') {
return PVE::Storage::DirPlugin::create_base(@_);
return PVE::Storage::Plugin::create_base(@_);
}
my $path = $class->filesystem_path($scfg, $volname);