$tmpfilename already gets unlinked after executing the cmd.

furthermore, because this is a local file, it is wrong to delete
it via the ssh command on a remote node.

small change: added \n to the error message.

Signed-off-by: Lorenz Stechauner <l.stechau...@proxmox.com>
---
 PVE/API2/Storage/Status.pm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/PVE/API2/Storage/Status.pm b/PVE/API2/Storage/Status.pm
index 41b3696..5913281 100644
--- a/PVE/API2/Storage/Status.pm
+++ b/PVE/API2/Storage/Status.pm
@@ -459,7 +459,7 @@ __PACKAGE__->register_method ({
        # best effort to match apl_download behaviour
        chmod 0644, $tmpfilename;
 
-       my $err_cleanup = sub { unlink $dest, $tmpfilename; die "cleanup 
failed: $!" if $! && $! != ENOENT };
+       my $err_cleanup = sub { unlink $dest; die "cleanup failed: $!\n" if $! 
&& $! != ENOENT };
 
        my $cmd;
        if ($node ne 'localhost' && $node ne PVE::INotify::nodename()) {
@@ -481,7 +481,7 @@ __PACKAGE__->register_method ({
  
            $cmd = ['/usr/bin/scp', @ssh_options, '-p', '--', $tmpfilename, 
"[$remip]:" . PVE::Tools::shell_quote($dest)];
 
-           $err_cleanup = sub { run_command([@remcmd, 'rm', '-f', '--', $dest, 
$tmpfilename]) };
+           $err_cleanup = sub { run_command([@remcmd, 'rm', '-f', '--', 
$dest]) };
        } else {
            PVE::Storage::activate_storage($cfg, $param->{storage});
            File::Path::make_path($dirname);
-- 
2.30.2



_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel

Reply via email to