diff --git a/common/guild_base.cpp b/common/guild_base.cpp index 3edbaf69c..d9f72d595 100644 --- a/common/guild_base.cpp +++ b/common/guild_base.cpp @@ -930,19 +930,17 @@ bool BaseGuildManager::DBSetPublicNote(uint32 charid, const char* note) { return(true); } -bool BaseGuildManager::QueryWithLogging(char *&query, int len, const char *errmsg) { +bool BaseGuildManager::QueryWithLogging(std::string query, int len, const char *errmsg) { if(m_db == nullptr) return(false); - char errbuf[MYSQL_ERRMSG_SIZE]; + auto results = m_db->QueryDatabase(query); - if (!m_db->RunQuery(query, len, errbuf)) + if (!results.Success()) { - _log(GUILDS__ERROR, "Error %s: '%s': %s", errmsg, query, errbuf); - safe_delete_array(query); + _log(GUILDS__ERROR, "Error %s: '%s': %s", errmsg, query.c_str(), results.ErrorMessage().c_str()); return(false); } - safe_delete_array(query); return(true); } diff --git a/common/guild_base.h b/common/guild_base.h index 1e856ede9..787e1d0c9 100644 --- a/common/guild_base.h +++ b/common/guild_base.h @@ -108,7 +108,7 @@ protected: bool DBSetAltFlag(uint32 charid, bool is_alt); bool DBSetTributeFlag(uint32 charid, bool enabled); bool DBSetPublicNote(uint32 charid, const char *note); - bool QueryWithLogging(char *&query, int len, const char *errmsg); + bool QueryWithLogging(std::string query, int len, const char *errmsg); // void DBSetPublicNote(uint32 guild_id,char* charname, char* note); bool LocalDeleteGuild(uint32 guild_id);