From a85d9a556e994ffcf0406123a17563f1058a1fd3 Mon Sep 17 00:00:00 2001 From: Kawe Mazidjatari <48657826+Mauler125@users.noreply.github.com> Date: Sun, 7 Jan 2024 00:02:26 +0100 Subject: [PATCH] DataCache: clear fallback handler if main pak gets unloaded If common.rpak is unloaded, the fallback model handles/pointers become invalid. --- r5dev/engine/cmodel_bsp.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/r5dev/engine/cmodel_bsp.cpp b/r5dev/engine/cmodel_bsp.cpp index 7476e566..ae8e7fb9 100644 --- a/r5dev/engine/cmodel_bsp.cpp +++ b/r5dev/engine/cmodel_bsp.cpp @@ -245,7 +245,11 @@ void Mod_ProcessPakQueue() { const char* pszLoadedPakName = pLoadedPakInfo->m_fileName; - if (strcmp(pszLoadedPakName, "common_mp.rpak") == 0 || + if (strcmp(pszLoadedPakName, "common.rpak") == 0) + { + g_StudioMdlFallbackHandler.Clear(); + } + else if (strcmp(pszLoadedPakName, "common_mp.rpak") == 0 || strcmp(pszLoadedPakName, "common_sp.rpak") == 0 || strcmp(pszLoadedPakName, "common_pve.rpak") == 0) {