From 6a55395e4f1ee9c8fb652cb85320b60286db1942 Mon Sep 17 00:00:00 2001 From: Shauren Date: Sun, 18 Aug 2013 15:23:39 +0200 Subject: Core/Players: Do not add banned characters to _legitCharacters container --- src/server/game/Handlers/CharacterHandler.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'src/server') diff --git a/src/server/game/Handlers/CharacterHandler.cpp b/src/server/game/Handlers/CharacterHandler.cpp index 415b67467c0..0554820364d 100644 --- a/src/server/game/Handlers/CharacterHandler.cpp +++ b/src/server/game/Handlers/CharacterHandler.cpp @@ -224,7 +224,10 @@ void WorldSession::HandleCharEnum(PreparedQueryResult result) TC_LOG_INFO(LOG_FILTER_NETWORKIO, "Loading char guid %u from account %u.", guidlow, GetAccountId()); if (Player::BuildEnumData(result, &data)) { - _legitCharacters.insert(guidlow); + // Do not allow banned characters to log in + if (!(*result)[20].GetUInt32()) + _legitCharacters.insert(guidlow); + if (!sWorld->HasCharacterNameData(guidlow)) // This can happen if characters are inserted into the database manually. Core hasn't loaded name data yet. sWorld->AddCharacterNameData(guidlow, (*result)[1].GetString(), (*result)[4].GetUInt8(), (*result)[2].GetUInt8(), (*result)[3].GetUInt8(), (*result)[7].GetUInt8()); ++num; -- cgit v1.2.3