1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-12-03 23:19:22 +02:00

Text container fix

This commit is contained in:
nordsoft
2023-10-11 01:26:07 +02:00
parent 8335fffaea
commit 6093f042dd
4 changed files with 12 additions and 6 deletions

View File

@@ -264,21 +264,21 @@ void TextLocalizationContainer::registerStringOverride(const std::string & modCo
void TextLocalizationContainer::addSubContainer(const TextLocalizationContainer & container)
{
subContainers.insert(&container);
subContainers.push_back(&container);
}
void TextLocalizationContainer::removeSubContainer(const TextLocalizationContainer & container)
{
subContainers.erase(&container);
std::remove(subContainers.begin(), subContainers.end(), &container);
}
const std::string & TextLocalizationContainer::deserialize(const TextIdentifier & identifier) const
{
if(stringsLocalizations.count(identifier.get()) == 0)
{
for(const auto * container : subContainers)
if(container->identifierExists(identifier))
return container->deserialize(identifier);
for(auto containerIter = subContainers.rbegin(); containerIter != subContainers.rend(); ++containerIter)
if((*containerIter)->identifierExists(identifier))
return (*containerIter)->deserialize(identifier);
logGlobal->error("Unable to find localization for string '%s'", identifier.get());
return identifier.get();