From 64a45f8aeb5c9bbae51b8ffd5ccd71deb76b6bb2 Mon Sep 17 00:00:00 2001 From: SkyHasACat Date: Fri, 1 Aug 2025 16:30:16 -0700 Subject: [PATCH] Change world store insert --- apps/openmw/mwworld/store.cpp | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/apps/openmw/mwworld/store.cpp b/apps/openmw/mwworld/store.cpp index 80bcdb056a..c088a4ef1f 100644 --- a/apps/openmw/mwworld/store.cpp +++ b/apps/openmw/mwworld/store.cpp @@ -269,15 +269,13 @@ namespace MWWorld list.push_back((*it)->mId); } } - template - T* TypedDynamicStore::insert(const T& item, bool overrideOnly) + template + T* TypedDynamicStore::insert(const T& item, bool /*overrideOnly*/) { - if (overrideOnly) - { - auto it = mStatic.find(item.mId); - if (it == mStatic.end()) - return nullptr; - } + // Check if the ID already exists in static or dynamic stores + auto itStatic = mStatic.find(item.mId); + auto itDynamic = mDynamic.find(item.mId); + std::pair result = mDynamic.insert_or_assign(item.mId, item); T* ptr = &result.first->second; if (result.second)