From b2ee804e0bef8a82030438e1bc6dd25d0257e213 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Malte=20K=C3=B6gel?= <koegel@vr.rwth-aachen.de> Date: Wed, 11 Oct 2023 14:50:26 +0200 Subject: [PATCH] Added workaround for the invalid object problem described in #98 --- .../Private/Logging/SFLogObject.cpp | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/Source/StudyFrameworkPlugin/Private/Logging/SFLogObject.cpp b/Source/StudyFrameworkPlugin/Private/Logging/SFLogObject.cpp index 7516213..caf7358 100644 --- a/Source/StudyFrameworkPlugin/Private/Logging/SFLogObject.cpp +++ b/Source/StudyFrameworkPlugin/Private/Logging/SFLogObject.cpp @@ -90,7 +90,20 @@ void USFLogObject::WritePositionLogToFile() { { USFGameInstance::Get()->GetLogObject()->CreatePositionLogFile(); } - + + int i = 0; + while(i < LogObject->ComponentLoggingInfoArray.Num()) { + if (i >= LogObject->ComponentLoggingInfoArray.Num()) { + break; + } + if(!LogObject->ComponentLoggingInfoArray[i].ComponentToLog->IsValidLowLevelFast()) + { + LogObject->ComponentLoggingInfoArray.RemoveAt(i); + continue; + } + i++; + } + for (auto& ComponentLoggingInfo : LogObject->ComponentLoggingInfoArray) { if (ComponentLoggingInfo.LogNextTick == true) { ComponentLoggingInfo.LogNextTick = false; -- GitLab