From 9ba30644084cf8859bccbece6b4cc11b18822e58 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Konstantin=20K=C3=BChlem?= <kuehlem@vr.rwth-aachen.de>
Date: Thu, 6 Feb 2025 15:54:36 +0100
Subject: [PATCH] fix: LOAD_DeferDependencyLoads for LoadPackage caused crashes
 when preloading some bleuprints when starting a study with preloading maps
 enabled

---
 Source/StudyFrameworkPlugin/Private/SFGameInstance.cpp | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/Source/StudyFrameworkPlugin/Private/SFGameInstance.cpp b/Source/StudyFrameworkPlugin/Private/SFGameInstance.cpp
index 16e3006..673cf42 100644
--- a/Source/StudyFrameworkPlugin/Private/SFGameInstance.cpp
+++ b/Source/StudyFrameworkPlugin/Private/SFGameInstance.cpp
@@ -456,7 +456,10 @@ void USFGameInstance::PreloadAllMaps(const TArray<USFCondition*>& Conditions)
 
 	for (FString Map : Maps)
 	{
-		LoadPackage(nullptr, *Map, LOAD_DeferDependencyLoads);
+		// Maps where loaded with "LOAD_DeferDependencyLoads" until UE 5.5 to prevent crashes, if dlls are not loaded yet
+		// However, this results in crashes in UE 5.5 when preloading blueprints
+		const UPackage* LoadedMap = LoadPackage(nullptr, *Map, LOAD_None);
+		checkf(LoadedMap, TEXT("Unable to load map: %s"), *Map);
 	}
 	FSFLoggingUtils::Log("Sucessfully preloaded all maps.");
 }
-- 
GitLab