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

Fixes #8097

(cherry picked from commit 927d15b815)
This commit is contained in:
Bojidar Marinov 2017-03-21 13:32:44 +02:00 committed by Rémi Verschelde
parent 8f5b15754c
commit 0afb9b579f

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];
}