ClearGroupLeader converted to QueryDatabase

This commit is contained in:
Arthur Ice 2014-07-05 11:10:52 -07:00 committed by Arthur Ice
parent 9bbde71964
commit 695e6f2026

View File

@ -1910,17 +1910,26 @@ char *Database::GetGroupLeadershipInfo(uint32 gid, char* leaderbuf, char* mainta
return leaderbuf; return leaderbuf;
} }
void Database::ClearGroupLeader(uint32 gid){ void Database::ClearGroupLeader(uint32 gid) {
char errbuf[MYSQL_ERRMSG_SIZE]; char *query = nullptr;
char *query = 0;
if(gid == 0) { //clear all group leaders if(gid == 0)
if (!RunQuery(query, MakeAnyLenString(&query, "DELETE from group_leaders"), errbuf)) {
printf("Unable to clear group leaders: %s\n",errbuf); //clear all group leaders
} else { //clear a specific group leader auto results = QueryDatabase(query, MakeAnyLenString(&query, "DELETE from group_leaders"));
if (!RunQuery(query, MakeAnyLenString(&query, "DELETE from group_leaders where gid = %lu", (unsigned long)gid), errbuf)) safe_delete_array(query);
printf("Unable to clear group leader: %s\n",errbuf);
if (!results.Success())
std::cout << "Unable to clear group leaders: " << results.ErrorMessage() << std::endl;
return;
} }
auto results = QueryDatabase(query, MakeAnyLenString(&query, "DELETE from group_leaders where gid = %lu", (unsigned long)gid));
safe_delete_array(query); safe_delete_array(query);
if (!results.Success())
std::cout << "Unable to clear group leader: " << results.ErrorMessage() << std::endl;
} }
bool FetchRowMap(MYSQL_RES *result, std::map<std::string,std::string> &rowmap) bool FetchRowMap(MYSQL_RES *result, std::map<std::string,std::string> &rowmap)