1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-04-11 11:31:52 +02:00

Avoid crash if configs file is missing, e.g. broken version of mod

This commit is contained in:
Ivan Savenko 2024-05-11 13:10:30 +00:00
parent 87e4756f6d
commit 147db10a28

View File

@ -243,10 +243,20 @@ JsonNode JsonUtils::assembleFromFiles(const std::vector<std::string> & files, bo
for(const auto & file : files)
{
bool isValidFile = false;
JsonNode section(JsonPath::builtinTODO(file), isValidFile);
merge(result, section);
isValid |= isValidFile;
JsonPath path = JsonPath::builtinTODO(file);
if (CResourceHandler::get()->existsResource(path))
{
bool isValidFile = false;
JsonNode section(JsonPath::builtinTODO(file), isValidFile);
merge(result, section);
isValid |= isValidFile;
}
else
{
logMod->error("Failed to find file %s", file);
isValid = false;
}
}
return result;
}