diff --git a/common/database.cpp b/common/database.cpp index 78eec13a7..f66496654 100644 --- a/common/database.cpp +++ b/common/database.cpp @@ -782,10 +782,15 @@ uint32 Database::GetAccountIDByChar(const char* charname, uint32* oCharID) { } if (results.RowCount() != 1) - return 0; + return 0; auto row = results.begin(); - if (row[0]){ accountId = atoi(row[0]); } + + uint32 accountId = atoi(row[0]); + + if (oCharID) + *oCharID = atoi(row[1]); + return accountId; } diff --git a/common/database.h b/common/database.h index e1d4c6fd6..c4d3af336 100644 --- a/common/database.h +++ b/common/database.h @@ -132,7 +132,7 @@ public: */ bool CheckNameFilter(const char* name, bool surname = false); bool CheckUsedName(const char* name); - uint32 GetAccountIDByChar(const char* charname); + uint32 GetAccountIDByChar(const char* charname, uint32* oCharID = 0); uint32 GetAccountIDByChar(uint32 char_id); uint32 GetAccountIDByName(const char* accname, int16* status = 0, uint32* lsid = 0); uint32 GetGuildIDByCharID(uint32 char_id);