diff --git a/Duplicati/Library/Main/Operation/Restore/Channels.cs b/Duplicati/Library/Main/Operation/Restore/Channels.cs index cb4a92fd7..1675befc2 100644 --- a/Duplicati/Library/Main/Operation/Restore/Channels.cs +++ b/Duplicati/Library/Main/Operation/Restore/Channels.cs @@ -9,10 +9,10 @@ namespace Duplicati.Library.Main.Operation.Restore // TODO Should maybe come from Options, or at least some global configuration file? private static readonly int bufferSize = 128; + public static readonly ChannelMarkerWrapper filesToRestore = new(new ChannelNameAttribute("filesToRestore", bufferSize)); public static readonly ChannelMarkerWrapper downloadRequest = new(new ChannelNameAttribute("downloadRequest", bufferSize)); public static readonly ChannelMarkerWrapper<(BlockRequest, IDownloadWaitHandle)> downloadedVolume = new(new ChannelNameAttribute("downloadResponse", bufferSize)); - public static readonly ChannelMarkerWrapper filesToRestore = new(new ChannelNameAttribute("filesToRestore", bufferSize)); - public static readonly ChannelMarkerWrapper<(BlockRequest, byte[])> decompressedVolumes = new(new ChannelNameAttribute("decompressedVolumes", bufferSize)); public static readonly ChannelMarkerWrapper<(BlockRequest, TempFile)> decryptedVolume = new(new ChannelNameAttribute("decrytedVolume", bufferSize)); + public static readonly ChannelMarkerWrapper<(BlockRequest, byte[])> decompressedVolumes = new(new ChannelNameAttribute("decompressedVolumes", bufferSize)); } } \ No newline at end of file diff --git a/Duplicati/Library/Main/Operation/Restore/VolumeDownloader.cs b/Duplicati/Library/Main/Operation/Restore/VolumeDownloader.cs index ff9e51cea..b66e1ebf9 100644 --- a/Duplicati/Library/Main/Operation/Restore/VolumeDownloader.cs +++ b/Duplicati/Library/Main/Operation/Restore/VolumeDownloader.cs @@ -45,7 +45,7 @@ namespace Duplicati.Library.Main.Operation.Restore } } - self.Output.Write((block_request, f)); + await self.Output.WriteAsync((block_request, f)); } } catch (RetiredException ex) diff --git a/Duplicati/Library/Main/Operation/RestoreHandler.cs b/Duplicati/Library/Main/Operation/RestoreHandler.cs index e7ebeac9b..4f46bb289 100644 --- a/Duplicati/Library/Main/Operation/RestoreHandler.cs +++ b/Duplicati/Library/Main/Operation/RestoreHandler.cs @@ -151,8 +151,8 @@ namespace Duplicati.Library.Main.Operation var filelister = Restore.FileLister.Run(db, backend, filter, m_options, m_result); var fileprocessors = Enumerable.Range(0, file_processors).Select(i => Restore.FileProcessor.Run(db, fileprocessor_requests[i], fileprocessor_responses[i], m_result)).ToArray(); var blockmanager = Restore.BlockManager.Run(fileprocessor_requests, fileprocessor_responses); - var volumedecrypters = Enumerable.Range(0, volume_decrypters).Select(i => Restore.VolumeDecrypter.Run()).ToArray(); var volumedownloaders = Enumerable.Range(0, volume_downloaders).Select(i => Restore.VolumeDownloader.Run(db, backend, m_options)).ToArray(); + var volumedecrypters = Enumerable.Range(0, volume_decrypters).Select(i => Restore.VolumeDecrypter.Run()).ToArray(); var volumedecompressors = Enumerable.Range(0, volume_decompressors).Select(i => Restore.VolumeDecompressor.Run(m_options)).ToArray(); all =