diff options
author | Shauren <shauren.trinity@gmail.com> | 2024-10-28 00:52:19 +0100 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2024-10-28 01:12:09 +0100 |
commit | 90db558697fb1253d9195e4d4743be80ca1968b7 (patch) | |
tree | ebb3c00004aaf54b2846358923c6568f5095276e /src | |
parent | df1788663673eb6157c3063acc9628280e213511 (diff) |
Core/Objects: Eliminate unneccessary temporary objects and double map lookups when building SMSG_UPDATE_OBJECT
(cherry picked from commit 38a209276d9a6b3fb5e657711894a1b696933c59)
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Entities/Object/Object.cpp | 10 |
1 files changed, 1 insertions, 9 deletions
diff --git a/src/server/game/Entities/Object/Object.cpp b/src/server/game/Entities/Object/Object.cpp index 74cfa6e9bb6..f74b6668846 100644 --- a/src/server/game/Entities/Object/Object.cpp +++ b/src/server/game/Entities/Object/Object.cpp @@ -505,15 +505,7 @@ void Object::ClearUpdateMask(bool remove) void Object::BuildFieldsUpdate(Player* player, UpdateDataMapType& data_map) const { - UpdateDataMapType::iterator iter = data_map.find(player); - - if (iter == data_map.end()) - { - std::pair<UpdateDataMapType::iterator, bool> p = data_map.emplace(player, UpdateData()); - ASSERT(p.second); - iter = p.first; - } - + UpdateDataMapType::iterator iter = data_map.try_emplace(player).first; BuildValuesUpdateBlockForPlayer(&iter->second, iter->first); } |