Avoid unnecessary exceptions when reading config file.

This commit is contained in:
Alexander Shaduri
2024-05-02 13:47:14 +04:00
parent 228bcf5014
commit bf2343015e
+6 -4
View File
@@ -60,10 +60,12 @@ inline void from_json(const rconfig::json& j, AppDeviceOptionMap& devmap)
{
for (const auto& obj : j) {
try {
devmap.value.insert_or_assign(
{obj.at("device").get<std::string>(), obj.at("type").get<std::string>()},
obj.at("options").get<std::string>()
);
if (obj.contains("device") && obj.contains("type") && obj.contains("options")) {
devmap.value.insert_or_assign(
{obj.at("device").get<std::string>(), obj.at("type").get<std::string>()},
obj.at("options").get<std::string>()
);
}
}
catch(std::exception& e) {
// ignore "not found"