From 717257ec9bad80ecf6bc5114d37017e3ac14deeb Mon Sep 17 00:00:00 2001 From: JustArchi Date: Sun, 23 Aug 2020 13:14:17 +0200 Subject: [PATCH] Misc @KamushekDev when you subscribe to things like this, it's always worth having try finally block ensuring that you unsubscribe, even in case of unhandled exception in the middle. --- ArchiSteamFarm/ASF.cs | 9 +++++++-- ArchiSteamFarm/WebBrowser.cs | 1 + 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/ArchiSteamFarm/ASF.cs b/ArchiSteamFarm/ASF.cs index 23d6ea802..869a8bc8f 100644 --- a/ArchiSteamFarm/ASF.cs +++ b/ArchiSteamFarm/ASF.cs @@ -299,11 +299,16 @@ namespace ArchiSteamFarm { ArchiLogger.LogGenericInfo(string.Format(Strings.UpdateDownloadingNewVersion, newVersion, binaryAsset.Size / 1024 / 1024)); Progress progressReporter = new Progress(); + progressReporter.ProgressChanged += ReportHandler; - WebBrowser.BinaryResponse? response = await WebBrowser.UrlGetToBinary(binaryAsset.DownloadURL!, progressReporter: progressReporter).ConfigureAwait(false); + WebBrowser.BinaryResponse? response; - progressReporter.ProgressChanged -= ReportHandler; + try { + response = await WebBrowser.UrlGetToBinary(binaryAsset.DownloadURL!, progressReporter: progressReporter).ConfigureAwait(false); + } finally { + progressReporter.ProgressChanged -= ReportHandler; + } if (response?.Content == null) { return null; diff --git a/ArchiSteamFarm/WebBrowser.cs b/ArchiSteamFarm/WebBrowser.cs index d8c4ede55..7cbe847d8 100644 --- a/ArchiSteamFarm/WebBrowser.cs +++ b/ArchiSteamFarm/WebBrowser.cs @@ -452,6 +452,7 @@ namespace ArchiSteamFarm { } progressReporter?.Report(0); + #if NETFRAMEWORK using MemoryStream ms = new MemoryStream((int) response.Length); #else