diff --git a/src/UniTask/Assets/Plugins/UniTask/Editor/UniTaskTrackerTreeView.cs b/src/UniTask/Assets/Plugins/UniTask/Editor/UniTaskTrackerTreeView.cs index e7b62692..6db678cb 100644 --- a/src/UniTask/Assets/Plugins/UniTask/Editor/UniTaskTrackerTreeView.cs +++ b/src/UniTask/Assets/Plugins/UniTask/Editor/UniTaskTrackerTreeView.cs @@ -10,6 +10,11 @@ using Cysharp.Threading.Tasks.Internal; using System.Text; using System.Text.RegularExpressions; +#if UNITY_6000_2_OR_NEWER +using TreeView = UnityEditor.IMGUI.Controls.TreeView; +using TreeViewItem = UnityEditor.IMGUI.Controls.TreeViewItem; +using TreeViewState = UnityEditor.IMGUI.Controls.TreeViewState; +#endif namespace Cysharp.Threading.Tasks.Editor { diff --git a/src/UniTask/Assets/Plugins/UniTask/Runtime/UnityAsyncExtensions.AssetBundleRequestAllAssets.cs b/src/UniTask/Assets/Plugins/UniTask/Runtime/UnityAsyncExtensions.AssetBundleRequestAllAssets.cs index b246ffd1..581745db 100644 --- a/src/UniTask/Assets/Plugins/UniTask/Runtime/UnityAsyncExtensions.AssetBundleRequestAllAssets.cs +++ b/src/UniTask/Assets/Plugins/UniTask/Runtime/UnityAsyncExtensions.AssetBundleRequestAllAssets.cs @@ -206,6 +206,10 @@ public bool MoveNext() if (progress != null) { progress.Report(asyncOperation.progress); + if (completed || asyncOperation == null) + { + return false; + } } if (asyncOperation.isDone) @@ -251,4 +255,4 @@ void Continuation(AsyncOperation _) } #endif -#endif \ No newline at end of file +#endif diff --git a/src/UniTask/Assets/Plugins/UniTask/Runtime/UnityAsyncExtensions.AsyncInstantiate.cs b/src/UniTask/Assets/Plugins/UniTask/Runtime/UnityAsyncExtensions.AsyncInstantiate.cs index c36b5d1d..a3c016c5 100644 --- a/src/UniTask/Assets/Plugins/UniTask/Runtime/UnityAsyncExtensions.AsyncInstantiate.cs +++ b/src/UniTask/Assets/Plugins/UniTask/Runtime/UnityAsyncExtensions.AsyncInstantiate.cs @@ -176,6 +176,10 @@ public bool MoveNext() if (progress != null) { progress.Report(asyncOperation.progress); + if (completed || asyncOperation == null) + { + return false; + } } if (asyncOperation.isDone) @@ -339,6 +343,10 @@ public bool MoveNext() if (progress != null) { progress.Report(asyncOperation.progress); + if (completed || asyncOperation == null) + { + return false; + } } if (asyncOperation.isDone) @@ -383,4 +391,4 @@ void Continuation(AsyncOperation _) } } -#endif \ No newline at end of file +#endif diff --git a/src/UniTask/Assets/Plugins/UniTask/Runtime/UnityAsyncExtensions.cs b/src/UniTask/Assets/Plugins/UniTask/Runtime/UnityAsyncExtensions.cs index 1fb5f429..bf3621f0 100644 --- a/src/UniTask/Assets/Plugins/UniTask/Runtime/UnityAsyncExtensions.cs +++ b/src/UniTask/Assets/Plugins/UniTask/Runtime/UnityAsyncExtensions.cs @@ -198,6 +198,10 @@ public bool MoveNext() if (progress != null) { progress.Report(asyncOperation.progress); + if (completed || asyncOperation == null) + { + return false; + } } if (asyncOperation.isDone) @@ -432,6 +436,10 @@ public bool MoveNext() if (progress != null) { progress.Report(asyncOperation.progress); + if (completed || asyncOperation == null) + { + return false; + } } if (asyncOperation.isDone) @@ -667,6 +675,10 @@ public bool MoveNext() if (progress != null) { progress.Report(asyncOperation.progress); + if (completed || asyncOperation == null) + { + return false; + } } if (asyncOperation.isDone) @@ -903,6 +915,10 @@ public bool MoveNext() if (progress != null) { progress.Report(asyncOperation.progress); + if (completed || asyncOperation == null) + { + return false; + } } if (asyncOperation.isDone) @@ -1156,6 +1172,10 @@ public bool MoveNext() if (progress != null) { progress.Report(asyncOperation.progress); + if (completed || asyncOperation == null) + { + return false; + } } if (asyncOperation.isDone) @@ -1213,4 +1233,4 @@ void Continuation(AsyncOperation _) #endif } -} \ No newline at end of file +} diff --git a/src/UniTask/Assets/Plugins/UniTask/Runtime/UnityAsyncExtensions.tt b/src/UniTask/Assets/Plugins/UniTask/Runtime/UnityAsyncExtensions.tt index e2437df0..504326a3 100644 --- a/src/UniTask/Assets/Plugins/UniTask/Runtime/UnityAsyncExtensions.tt +++ b/src/UniTask/Assets/Plugins/UniTask/Runtime/UnityAsyncExtensions.tt @@ -278,6 +278,10 @@ namespace Cysharp.Threading.Tasks if (progress != null) { progress.Report(asyncOperation.progress); + if (completed || asyncOperation == null) + { + return false; + } } if (asyncOperation.isDone) @@ -349,4 +353,4 @@ namespace Cysharp.Threading.Tasks <# } #> } -} \ No newline at end of file +}