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