From 83c1290389e17d504c16ae18ad686bb25d27a1a1 Mon Sep 17 00:00:00 2001 From: Rutherther Date: Sat, 19 Feb 2022 14:12:26 +0100 Subject: [PATCH] fix(combat): dispose cancellation token in use skill --- .../NosSmooth.Extensions.Combat/Operations/UseSkillOperation.cs | 2 +- .../Operations/WalkInRangeOperation.cs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Extensions/NosSmooth.Extensions.Combat/Operations/UseSkillOperation.cs b/Extensions/NosSmooth.Extensions.Combat/Operations/UseSkillOperation.cs index ff571a6639738ebec6e802f380ae6ae205ac021f..10209ce1ccdb3856a81ad1946bb9086ab84526f3 100644 --- a/Extensions/NosSmooth.Extensions.Combat/Operations/UseSkillOperation.cs +++ b/Extensions/NosSmooth.Extensions.Combat/Operations/UseSkillOperation.cs @@ -49,7 +49,7 @@ public record UseSkillOperation(Skill Skill, ILivingEntity Target) : ICombatOper } // TODO: support for area skills, support skills that use x, y coordinates (like dashes or teleports) - var linkedSource = CancellationTokenSource.CreateLinkedTokenSource(ct); + using var linkedSource = CancellationTokenSource.CreateLinkedTokenSource(ct); await combatState.CombatManager.RegisterSkillCancellationTokenAsync(linkedSource, ct); var sendResponse = await combatState.Client.SendPacketAsync ( diff --git a/Extensions/NosSmooth.Extensions.Combat/Operations/WalkInRangeOperation.cs b/Extensions/NosSmooth.Extensions.Combat/Operations/WalkInRangeOperation.cs index 1881eb2a729fb244f8424c8b723555a3dd5443e0..ddcf81aacd470f76045636d96b686a9979115deb 100644 --- a/Extensions/NosSmooth.Extensions.Combat/Operations/WalkInRangeOperation.cs +++ b/Extensions/NosSmooth.Extensions.Combat/Operations/WalkInRangeOperation.cs @@ -62,7 +62,7 @@ public record WalkInRangeOperation } var closePosition = GetClosePosition(currentPosition.Value, position.Value, distance); - var goToCancellationTokenSource = CancellationTokenSource.CreateLinkedTokenSource(ct); + using var goToCancellationTokenSource = CancellationTokenSource.CreateLinkedTokenSource(ct); var walkResultTask = WalkManager.GoToAsync(closePosition.X, closePosition.Y, goToCancellationTokenSource.Token); while (!walkResultTask.IsCompleted)