diff options
Diffstat (limited to 'src/game/CharacterHandler.cpp')
-rw-r--r-- | src/game/CharacterHandler.cpp | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/src/game/CharacterHandler.cpp b/src/game/CharacterHandler.cpp index ffdd9942bb5..8970bf82822 100644 --- a/src/game/CharacterHandler.cpp +++ b/src/game/CharacterHandler.cpp @@ -1300,12 +1300,16 @@ void WorldSession::HandleCharCustomize(WorldPacket& recv_data) return; } - if(objmgr.GetPlayerGUIDByName(newname)) // character with this name already exist + // character with this name already exist + if(uint64 newguid = objmgr.GetPlayerGUIDByName(newname)) { - WorldPacket data(SMSG_CHAR_CUSTOMIZE, 1); - data << uint8(CHAR_CREATE_NAME_IN_USE); - SendPacket( &data ); - return; + if(newguid != guid) + { + WorldPacket data(SMSG_CHAR_CUSTOMIZE, 1); + data << uint8(CHAR_CREATE_NAME_IN_USE); + SendPacket( &data ); + return; + } } CharacterDatabase.escape_string(newname); |