diff --git a/Assets/UniRx.Async/UnityAsyncExtensions.cs b/Assets/UniRx.Async/UnityAsyncExtensions.cs index 77fe595..fdb6cd3 100644 --- a/Assets/UniRx.Async/UnityAsyncExtensions.cs +++ b/Assets/UniRx.Async/UnityAsyncExtensions.cs @@ -792,6 +792,11 @@ namespace UniRx.Async public void UnsafeOnCompleted(Action continuation) { + if(asyncOperation != null && asyncOperation.isDone) + { + continuation?.Invoke(); + return; + } Error.ThrowWhenContinuationIsAlreadyRegistered(continuationAction); continuationAction = continuation.AsFuncOfT(); asyncOperation.completed += continuationAction;