Suppress error messages when using ConfigFile::get_value and a default is given

Fixes #8097
This commit is contained in:
Bojidar Marinov 2017-03-21 13:32:44 +02:00
parent 33a2c5def0
commit 927d15b815
No known key found for this signature in database
GPG key ID: 4D546A8F1E091856

View file

@ -82,8 +82,13 @@ void ConfigFile::set_value(const String &p_section, const String &p_key, const V
}
Variant ConfigFile::get_value(const String &p_section, const String &p_key, Variant p_default) const {
ERR_FAIL_COND_V(!values.has(p_section), p_default);
ERR_FAIL_COND_V(!values[p_section].has(p_key), p_default);
if (!values.has(p_section) || !values[p_section].has(p_key)) {
if (p_default.get_type() == Variant::NIL) {
ERR_EXPLAIN("Couldn't find the given section/key and no default was given");
ERR_FAIL_V(p_default);
}
return p_default;
}
return values[p_section][p_key];
}