From 0b3ff33716ec9f5142b00d047b6aa2ae0db11f2a Mon Sep 17 00:00:00 2001 From: Carl Johnsen Date: Mon, 10 Feb 2025 12:38:24 +0100 Subject: [PATCH] Moved retire on exception to final, so regardless of how the FileProcessor exits, it retires the channels. --- Duplicati/Library/Main/Operation/Restore/FileProcessor.cs | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/Duplicati/Library/Main/Operation/Restore/FileProcessor.cs b/Duplicati/Library/Main/Operation/Restore/FileProcessor.cs index 0c3a22a15..5ef00bb0f 100644 --- a/Duplicati/Library/Main/Operation/Restore/FileProcessor.cs +++ b/Duplicati/Library/Main/Operation/Restore/FileProcessor.cs @@ -328,8 +328,6 @@ namespace Duplicati.Library.Main.Operation.Restore catch (RetiredException) { Logging.Log.WriteVerboseMessage(LOGTAG, "RetiredProcess", null, "File processor retired"); - block_request.Retire(); - block_response.Retire(); if (options.InternalProfiling) { @@ -340,9 +338,12 @@ namespace Duplicati.Library.Main.Operation.Restore catch (Exception ex) { Logging.Log.WriteErrorMessage(LOGTAG, "FileProcessingError", ex, "Error during file processing"); + throw; + } + finally + { block_request.Retire(); block_response.Retire(); - throw; } }); }