diff options
author | Malcrom <malcromdev@gmail.com> | 2012-03-04 16:45:35 -0330 |
---|---|---|
committer | Malcrom <malcromdev@gmail.com> | 2012-03-04 16:45:35 -0330 |
commit | 7cb07e48b3748a8ecd01678b60223f6875525d59 (patch) | |
tree | 57609bcc22cf5f1e73ef2ae7f2e43ff599ed3213 /src | |
parent | 45ef7dbfcba4625d514f5e4d07e34634f3282292 (diff) | |
parent | 15a3ad7276125b17cdb50c4ac1d832627fbc31f4 (diff) |
Merge branch 'master' of git://github.com/TrinityCore/TrinityCore
Diffstat (limited to 'src')
-rwxr-xr-x | src/server/game/Globals/ObjectAccessor.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/server/game/Globals/ObjectAccessor.cpp b/src/server/game/Globals/ObjectAccessor.cpp index dd5e6189b44..9a99a28c7aa 100755 --- a/src/server/game/Globals/ObjectAccessor.cpp +++ b/src/server/game/Globals/ObjectAccessor.cpp @@ -166,10 +166,18 @@ Unit* ObjectAccessor::FindUnit(uint64 guid) Player* ObjectAccessor::FindPlayerByName(const char* name) { TRINITY_READ_GUARD(HashMapHolder<Player>::LockType, *HashMapHolder<Player>::GetLock()); + std::string nameStr = name; + std::transform(nameStr.begin(), nameStr.end(), nameStr.begin(), ::tolower); HashMapHolder<Player>::MapType const& m = GetPlayers(); for (HashMapHolder<Player>::MapType::const_iterator iter = m.begin(); iter != m.end(); ++iter) - if (iter->second->IsInWorld() && strcmp(name, iter->second->GetName()) == 0) + { + if (!iter->second->IsInWorld()) + continue; + std::string currentName = iter->second->GetName(); + std::transform(currentName.begin(), currentName.end(), currentName.begin(), ::tolower); + if (nameStr.compare(currentName) == 0) return iter->second; + } return NULL; } |