(svn r15057) -Fix [NoAI]: clamp the values of a setting between the ones allowed by info.nut

This commit is contained in:
truebrain
2009-01-13 13:09:49 +00:00
parent 1bd2867715
commit 07f2afa635
3 changed files with 19 additions and 1 deletions

View File

@@ -88,7 +88,12 @@ int AIConfig::GetSetting(const char *name)
void AIConfig::SetSetting(const char *name, int value)
{
/* You can only set ai specific settings if an AI is selected. */
assert(strcmp(name, "start_date") == 0 || this->info != NULL);
assert(this->info != NULL);
const AIConfigItem *config_item = this->info->GetConfigItem(name);
if (config_item == NULL) return;
value = Clamp(value, config_item->min_value, config_item->max_value);
SettingValueList::iterator it = this->settings.find(name);
if (it != this->settings.end()) {