From 91ba4f003a92f1e4850195853113772e2e4b2fb0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christoph=20H=C3=BCter?= Date: Thu, 25 Aug 2022 13:48:52 +0200 Subject: [PATCH 1/3] Add null checks to diagnostics helper functions --- .../Plugins/UniTask/Runtime/PlayerLoopHelper.cs | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/UniTask/Assets/Plugins/UniTask/Runtime/PlayerLoopHelper.cs b/src/UniTask/Assets/Plugins/UniTask/Runtime/PlayerLoopHelper.cs index 3c605a4..dd49df0 100644 --- a/src/UniTask/Assets/Plugins/UniTask/Runtime/PlayerLoopHelper.cs +++ b/src/UniTask/Assets/Plugins/UniTask/Runtime/PlayerLoopHelper.cs @@ -524,11 +524,19 @@ namespace Cysharp.Threading.Tasks { sb.AppendFormat("------{0}------", header.type.Name); sb.AppendLine(); + + if (header.subSystemList is null) + { + sb.AppendFormat("{0} has no subsystems!", header.ToString()); + sb.AppendLine(); + continue; + } + foreach (var subSystem in header.subSystemList) { sb.AppendFormat("{0}", subSystem.type.Name); sb.AppendLine(); - + if (subSystem.subSystemList != null) { UnityEngine.Debug.LogWarning("More Subsystem:" + subSystem.subSystemList.Length); @@ -545,6 +553,11 @@ namespace Cysharp.Threading.Tasks foreach (var header in playerLoop.subSystemList) { + if (header.subSystemList is null) + { + continue; + } + foreach (var subSystem in header.subSystemList) { if (subSystem.type == typeof(UniTaskLoopRunners.UniTaskLoopRunnerInitialization)) From cf6f0799e9100cd99f84039c694a0f109c0f8e51 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christoph=20H=C3=BCter?= Date: Thu, 25 Aug 2022 13:51:44 +0200 Subject: [PATCH 2/3] Remove spaces in empty line --- src/UniTask/Assets/Plugins/UniTask/Runtime/PlayerLoopHelper.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/UniTask/Assets/Plugins/UniTask/Runtime/PlayerLoopHelper.cs b/src/UniTask/Assets/Plugins/UniTask/Runtime/PlayerLoopHelper.cs index dd49df0..ed56cce 100644 --- a/src/UniTask/Assets/Plugins/UniTask/Runtime/PlayerLoopHelper.cs +++ b/src/UniTask/Assets/Plugins/UniTask/Runtime/PlayerLoopHelper.cs @@ -531,7 +531,7 @@ namespace Cysharp.Threading.Tasks sb.AppendLine(); continue; } - + foreach (var subSystem in header.subSystemList) { sb.AppendFormat("{0}", subSystem.type.Name); From 3f8e43b83f3e88fede9becc452e326feb691a67f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christoph=20H=C3=BCter?= Date: Wed, 31 Aug 2022 03:00:22 +0200 Subject: [PATCH 3/3] Remove empty line with spaces --- src/UniTask/Assets/Plugins/UniTask/Runtime/PlayerLoopHelper.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/UniTask/Assets/Plugins/UniTask/Runtime/PlayerLoopHelper.cs b/src/UniTask/Assets/Plugins/UniTask/Runtime/PlayerLoopHelper.cs index ed56cce..538fc01 100644 --- a/src/UniTask/Assets/Plugins/UniTask/Runtime/PlayerLoopHelper.cs +++ b/src/UniTask/Assets/Plugins/UniTask/Runtime/PlayerLoopHelper.cs @@ -536,7 +536,7 @@ namespace Cysharp.Threading.Tasks { sb.AppendFormat("{0}", subSystem.type.Name); sb.AppendLine(); - + if (subSystem.subSystemList != null) { UnityEngine.Debug.LogWarning("More Subsystem:" + subSystem.subSystemList.Length);