Fix crash with invalid JSON

This commit is contained in:
Ted John 2022-10-01 11:47:15 +01:00
parent 589403d6cd
commit dbf99bed71
1 changed files with 11 additions and 3 deletions

View File

@ -40,10 +40,18 @@ void AudioSampleTable::ReadFromJson(IReadObjectContext* context, const json_t& r
}
else if (jSample.is_object())
{
sourceInfo = ParseSource(jSample.at("source").get<std::string>());
if (jSample.contains("modifier"))
auto& jSource = jSample.at("source");
if (jSource.is_string())
{
modifier = jSample.at("modifier").get<int32_t>();
sourceInfo = ParseSource(jSource.get<std::string>());
if (jSample.contains("modifier"))
{
auto& jModifier = jSample.at("modifier");
if (jModifier.is_number())
{
modifier = jModifier.get<int32_t>();
}
}
}
}