On 6/14/19 3:37 PM, Alwin Antreich wrote: > For less and cleaner code, use a hash for de-compressor commands instead > of the 'long' if-elsif statement. >
squash that with 1/3, or better try to pull the decompressor_ method out in a separate patch, with this already applied, and not mixed in with the zstd stuff. > Signed-off-by: Alwin Antreich <[email protected]> > --- > PVE/Storage.pm | 20 +++++++++----------- > 1 file changed, 9 insertions(+), 11 deletions(-) > > diff --git a/PVE/Storage.pm b/PVE/Storage.pm > index 6953b3f..537259a 100755 > --- a/PVE/Storage.pm > +++ b/PVE/Storage.pm > @@ -1380,19 +1380,17 @@ sub decompressor_info { > } > } > > + my $decompressor = { > + 'gz' => ["zcat", $archive], > + 'lzo' => ["lzop", "-d", "-c", $archive], > + 'zst' => ["zstd", "-q", "-d", "-c", $archive], > + }; > + > my $cmd; > - if (defined($comp)) { > - if ($comp eq 'gz') { > - $cmd = ["zcat", $archive]; > - } elsif ($comp eq 'lzo') { > - $cmd = ["lzop", "-d", "-c", $archive]; > - } elsif ($comp eq 'zst') { > - $cmd = ["zstd", "-q", "-d", "-c", $archive]; > - } else { > - die "unknown compression method '$comp'\n" if !$noerr; > - } > + if (defined($comp) && $decompressor->{$comp}) { > + $cmd = $decompressor->{$comp}; > } else { > - die "compression type not set\n" if !$noerr; > + die "compression method unknown, '$comp'\n" if !$noerr; can get you a "use of undefined variable ..." here, as the if above can hit this else branch if the defined($comp) evaluates to false.. > } > > pop(@$cmd) if !defined($archive); > _______________________________________________ pve-devel mailing list [email protected] https://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
