From c571eafd1f19e09837c775000ea3c7891b842a46 Mon Sep 17 00:00:00 2001 From: Joel Ahlgren Date: Mon, 3 Apr 2023 22:41:28 +0200 Subject: [PATCH] Fix broken asynchronous extraction. --- SevenZip/SevenZipExtractorAsynchronous.cs | 45 +++++++++++------------ 1 file changed, 22 insertions(+), 23 deletions(-) diff --git a/SevenZip/SevenZipExtractorAsynchronous.cs b/SevenZip/SevenZipExtractorAsynchronous.cs index 4b4c0f1..c308092 100644 --- a/SevenZip/SevenZipExtractorAsynchronous.cs +++ b/SevenZip/SevenZipExtractorAsynchronous.cs @@ -13,32 +13,31 @@ partial class SevenZipExtractor /// private void RecreateInstanceIfNeeded() { - if (!NeedsToBeRecreated) + if (NeedsToBeRecreated) { - return; - } - - Stream backupStream = null; - string backupFileName = null; - - if (string.IsNullOrEmpty(_fileName)) - { - backupStream = _inStream; - } - else - { - backupFileName = _fileName; - } + NeedsToBeRecreated = false; + Stream backupStream = null; + string backupFileName = null; - CommonDispose(); + if (string.IsNullOrEmpty(_fileName)) + { + backupStream = _inStream; + } + else + { + backupFileName = _fileName; + } - if (backupStream == null) - { - Init(backupFileName); - } - else - { - Init(backupStream); + CommonDispose(); + + if (backupStream == null) + { + Init(backupFileName); + } + else + { + Init(backupStream); + } } }