GetAccountName converted to QueryDatabase

This commit is contained in:
Arthur Ice 2014-07-03 17:34:25 -07:00 committed by Arthur Ice
parent 20e80ebb92
commit 5ef05d1bb6

View File

@ -837,28 +837,29 @@ uint32 Database::GetAccountIDByName(const char* accname, int16* status, uint32*
}
void Database::GetAccountName(uint32 accountid, char* name, uint32* oLSAccountID) {
char errbuf[MYSQL_ERRMSG_SIZE];
char *query = 0;
MYSQL_RES *result;
MYSQL_ROW row;
char *query = nullptr;
if (RunQuery(query, MakeAnyLenString(&query, "SELECT name, lsaccount_id FROM account WHERE id='%i'", accountid), errbuf, &result)) {
safe_delete_array(query);
if (mysql_num_rows(result) == 1) {
row = mysql_fetch_row(result);
auto results = QueryDatabase(query, MakeAnyLenString(&query, "SELECT name, lsaccount_id FROM account WHERE id='%i'", accountid));
strcpy(name, row[0]);
if (row[1] && oLSAccountID) {
*oLSAccountID = atoi(row[1]);
}
}
mysql_free_result(result);
}
else {
safe_delete_array(query);
if (!results.Success())
{
std::cerr << "Error in GetAccountName query '" << query << "' " << errbuf << std::endl;
safe_delete_array(query);
return;
}
safe_delete_array(query);
if (results.RowCount() != 1)
return;
auto row = results.begin();
strcpy(name, row[0]);
if (row[1] && oLSAccountID) {
*oLSAccountID = atoi(row[1]);
}
}
void Database::GetCharName(uint32 char_id, char* name) {