diff --git a/engine/server/application/LoginServer/src/shared/ClientConnection.cpp b/engine/server/application/LoginServer/src/shared/ClientConnection.cpp index 82836431..7d799bfd 100755 --- a/engine/server/application/LoginServer/src/shared/ClientConnection.cpp +++ b/engine/server/application/LoginServer/src/shared/ClientConnection.cpp @@ -249,16 +249,17 @@ void ClientConnection::validateClient(const std::string & id, const std::string } if (childAccounts.size() == 0) { + std::hash h; + StationId parent = h(parentAccount); + for (auto i = childAccounts.begin(); i != childAccounts.end(); ++i) { if (!i->empty()) { if (i->length() > MAX_ACCOUNT_NAME_LENGTH) { i->resize(MAX_ACCOUNT_NAME_LENGTH); } - std::hash h; - // insert all related accounts, if not already there, into the db - DatabaseConnection::getInstance().upsertAccountRelationship(suid, h(*i)); + DatabaseConnection::getInstance().upsertAccountRelationship(parent, h(*i)); } } }