From 222e8bb888e92af39576dcfa8a50c9874b1341f1 Mon Sep 17 00:00:00 2001 From: rootdarkarchon Date: Tue, 27 Jun 2023 18:47:18 +0200 Subject: [PATCH] cancel download on visibility change --- MareSynchronos/PlayerData/Handlers/PairHandler.cs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/MareSynchronos/PlayerData/Handlers/PairHandler.cs b/MareSynchronos/PlayerData/Handlers/PairHandler.cs index dd472c5..e4d602e 100644 --- a/MareSynchronos/PlayerData/Handlers/PairHandler.cs +++ b/MareSynchronos/PlayerData/Handlers/PairHandler.cs @@ -420,6 +420,8 @@ public sealed class PairHandler : DisposableMediatorSubscriberBase { IsVisible = false; _charaHandler?.Invalidate(); + _downloadCancellationTokenSource?.CancelDispose(); + _downloadCancellationTokenSource = null; MediatorUnsubscribeFromCharacterChanged(); Logger.LogTrace("{this} visibility changed, now: {visi}", this, IsVisible); } @@ -453,7 +455,7 @@ public sealed class PairHandler : DisposableMediatorSubscriberBase _redrawCts.CancelAfter(TimeSpan.FromSeconds(30)); var token = _redrawCts.Token; - Task.Run(async () => + _ = Task.Run(async () => { var applicationId = Guid.NewGuid(); await _dalamudUtil.WaitWhileCharacterIsDrawing(Logger, _charaHandler!, applicationId, ct: token).ConfigureAwait(false);