From c7be0d4888b97448df5b902c28dc8e10d6ad50cf Mon Sep 17 00:00:00 2001 From: ZeroGreen86 Date: Thu, 8 Jan 2026 17:44:19 +0900 Subject: [PATCH] Handle cancellation by unsubscribing from callback Unsubscribe from completed callback if cancellation is requested and handle is valid. --- .../External/Addressables/AddressablesAsyncExtensions.cs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/UniTask/Assets/Plugins/UniTask/Runtime/External/Addressables/AddressablesAsyncExtensions.cs b/src/UniTask/Assets/Plugins/UniTask/Runtime/External/Addressables/AddressablesAsyncExtensions.cs index 0c77c52c..8f9067bb 100644 --- a/src/UniTask/Assets/Plugins/UniTask/Runtime/External/Addressables/AddressablesAsyncExtensions.cs +++ b/src/UniTask/Assets/Plugins/UniTask/Runtime/External/Addressables/AddressablesAsyncExtensions.cs @@ -236,6 +236,11 @@ public bool MoveNext() if (cancellationToken.IsCancellationRequested) { + if (handle.IsValid()) + { + handle.Completed -= completedCallback; + } + completed = true; if (autoReleaseWhenCanceled && handle.IsValid()) { @@ -480,4 +485,4 @@ bool TryReturn() } } -#endif \ No newline at end of file +#endif