From ad529cf3b6fec01a878a191ef7fac3d83c04cf53 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Konstantin=20K=C3=BChlem?= <kuehlem@vr.rwth-aachen.de>
Date: Tue, 29 Apr 2025 13:35:16 +0200
Subject: [PATCH] fix: GetFactorLevel() causes a crash, if the there is no
 valid condition (yet)

Altough the method was designed for returning an invalid/absent factore level
---
 Source/StudyFrameworkPlugin/Private/SFGameInstance.cpp | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/Source/StudyFrameworkPlugin/Private/SFGameInstance.cpp b/Source/StudyFrameworkPlugin/Private/SFGameInstance.cpp
index 673cf42..e610dac 100644
--- a/Source/StudyFrameworkPlugin/Private/SFGameInstance.cpp
+++ b/Source/StudyFrameworkPlugin/Private/SFGameInstance.cpp
@@ -762,7 +762,9 @@ FString USFGameInstance::GetFactorLevel(FString FactorName) const
 	{
 		return "ParticipantNotSet";
 	}
-	if (Participant->GetCurrentCondition()->FactorLevels.Contains(FactorName))
+	
+	const auto* Condition = Participant->GetCurrentCondition();
+	if (Condition != nullptr && Condition->FactorLevels.Contains(FactorName))
 	{
 		return Participant->GetCurrentCondition()->FactorLevels[FactorName];
 	}
-- 
GitLab