DBRenameGuild converted to QueryDatabase

This commit is contained in:
Arthur Ice 2014-08-17 11:30:26 -07:00
parent 3856f7f1e5
commit 1734641d12

View File

@ -562,41 +562,37 @@ bool BaseGuildManager::DBDeleteGuild(uint32 guild_id) {
bool BaseGuildManager::DBRenameGuild(uint32 guild_id, const char* name) { bool BaseGuildManager::DBRenameGuild(uint32 guild_id, const char* name) {
if(m_db == nullptr) { if(m_db == nullptr) {
_log(GUILDS__DB, "Requested to rename guild %d when we have no database object.", guild_id); _log(GUILDS__DB, "Requested to rename guild %d when we have no database object.", guild_id);
return(false); return false;
} }
std::map<uint32, GuildInfo *>::const_iterator res; std::map<uint32, GuildInfo *>::const_iterator res;
res = m_guilds.find(guild_id); res = m_guilds.find(guild_id);
if(res == m_guilds.end()) if(res == m_guilds.end())
return(false); return false;
GuildInfo *info = res->second; GuildInfo *info = res->second;
char errbuf[MYSQL_ERRMSG_SIZE];
char *query = 0;
//escape our strings. //escape our strings.
uint32 len = strlen(name); uint32 len = strlen(name);
char *esc = new char[len*2+1]; char *esc = new char[len*2+1];
m_db->DoEscapeString(esc, name, len); m_db->DoEscapeString(esc, name, len);
//insert the new `guilds` entry //insert the new `guilds` entry
if (!m_db->RunQuery(query, MakeAnyLenString(&query, std::string query = StringFormat("UPDATE guilds SET name='%s' WHERE id=%d", esc, guild_id);
"UPDATE guilds SET name='%s' WHERE id=%d", auto results = m_db->QueryDatabase(query);
esc, guild_id), errbuf))
if (!results.Success())
{ {
_log(GUILDS__ERROR, "Error renaming guild %d '%s': %s", guild_id, query, errbuf); _log(GUILDS__ERROR, "Error renaming guild %d '%s': %s", guild_id, query.c_str(), results.Success());
safe_delete_array(query);
safe_delete_array(esc); safe_delete_array(esc);
return(false); return false;
} }
safe_delete_array(query);
safe_delete_array(esc); safe_delete_array(esc);
_log(GUILDS__DB, "Renamed guild %s (%d) to %s in database.", info->name.c_str(), guild_id, name); _log(GUILDS__DB, "Renamed guild %s (%d) to %s in database.", info->name.c_str(), guild_id, name);
info->name = name; //update our local record. info->name = name; //update our local record.
return(true); return true;
} }
bool BaseGuildManager::DBSetGuildLeader(uint32 guild_id, uint32 leader) { bool BaseGuildManager::DBSetGuildLeader(uint32 guild_id, uint32 leader) {