From 0fc78aa1732279d5a62cc1723e4552287a0ebcb8 Mon Sep 17 00:00:00 2001 From: elsid Date: Fri, 29 Dec 2023 13:10:13 +0100 Subject: [PATCH] Make ESM::StringRefId compatible with std::string UniversalId --- apps/opencs/model/world/universalid.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/apps/opencs/model/world/universalid.cpp b/apps/opencs/model/world/universalid.cpp index dec533b015..d883cccea5 100644 --- a/apps/opencs/model/world/universalid.cpp +++ b/apps/opencs/model/world/universalid.cpp @@ -360,6 +360,10 @@ const std::string& CSMWorld::UniversalId::getId() const if (const std::string* result = std::get_if(&mValue)) return *result; + if (const ESM::RefId* refId = std::get_if(&mValue)) + if (const ESM::StringRefId* result = refId->getIf()) + return result->getValue(); + throw std::logic_error("invalid access to ID of " + ::toString(getArgumentType()) + " UniversalId"); }