(svn r23198) -Codechange: introduce a free that takes const pointers so we don't need to cast to void/non-const before being able to free

This commit is contained in:
rubidium
2011-11-12 13:00:29 +00:00
parent aadbb9ed3f
commit 33d71b45fe
21 changed files with 78 additions and 60 deletions

View File

@@ -17,7 +17,7 @@
void AIConfig::ChangeAI(const char *name, int version, bool force_exact_match, bool is_random_ai)
{
free((void *)this->name);
free(this->name);
this->name = (name == NULL) ? NULL : strdup(name);
this->info = (name == NULL) ? NULL : AI::FindInfo(this->name, version, force_exact_match);
this->version = (info == NULL) ? -1 : info->GetVersion();
@@ -31,7 +31,7 @@ void AIConfig::ChangeAI(const char *name, int version, bool force_exact_match, b
int start_date = this->GetSetting("start_date");
for (SettingValueList::iterator it = this->settings.begin(); it != this->settings.end(); it++) {
free((void*)(*it).first);
free((*it).first);
}
this->settings.clear();
@@ -65,7 +65,7 @@ AIConfig::AIConfig(const AIConfig *config)
AIConfig::~AIConfig()
{
free((void *)this->name);
free(this->name);
this->ResetSettings();
if (this->config_list != NULL) delete this->config_list;
}
@@ -148,7 +148,7 @@ void AIConfig::SetSetting(const char *name, int value)
void AIConfig::ResetSettings()
{
for (SettingValueList::iterator it = this->settings.begin(); it != this->settings.end(); it++) {
free((void*)(*it).first);
free((*it).first);
}
this->settings.clear();
}

View File

@@ -39,7 +39,7 @@ AIConfigItem _start_date_config = {
AILibrary::~AILibrary()
{
free((void *)this->category);
free(this->category);
}
/* static */ SQInteger AIFileInfo::Constructor(HSQUIRRELVM vm, AIFileInfo *info)
@@ -146,8 +146,8 @@ AIInfo::~AIInfo()
{
/* Free all allocated strings */
for (AIConfigItemList::iterator it = this->config_list.begin(); it != this->config_list.end(); it++) {
free((void*)(*it).name);
free((void*)(*it).description);
free((*it).name);
free((*it).description);
if (it->labels != NULL) {
for (LabelMapping::iterator it2 = (*it).labels->Begin(); it2 != (*it).labels->End(); it2++) {
free(it2->second);
@@ -156,7 +156,7 @@ AIInfo::~AIInfo()
}
}
this->config_list.clear();
free((void*)this->api_version);
free(this->api_version);
}
bool AIInfo::CanLoadFromVersion(int version) const

View File

@@ -68,16 +68,16 @@ void AIScanner::Reset()
{
AIInfoList::iterator it = this->info_list.begin();
for (; it != this->info_list.end(); it++) {
free((void *)(*it).first);
free((*it).first);
delete (*it).second;
}
it = this->info_single_list.begin();
for (; it != this->info_single_list.end(); it++) {
free((void *)(*it).first);
free((*it).first);
}
AILibraryList::iterator lit = this->library_list.begin();
for (; lit != this->library_list.end(); lit++) {
free((void *)(*lit).first);
free((*lit).first);
delete (*lit).second;
}

View File

@@ -54,8 +54,8 @@ AIController::AIController() :
AIController::~AIController()
{
for (LoadedLibraryList::iterator iter = this->loaded_library.begin(); iter != this->loaded_library.end(); iter++) {
free((void *)(*iter).second);
free((void *)(*iter).first);
free((*iter).second);
free((*iter).first);
}
this->loaded_library.clear();