diff options
author | Shauren <shauren.trinity@gmail.com> | 2024-03-13 18:51:29 +0100 |
---|---|---|
committer | funjoker <funjoker109@gmail.com> | 2024-03-25 20:21:24 +0100 |
commit | 64724464407e5b7646a48e6a5191d6fd8997ac77 (patch) | |
tree | c2ddc8dcdfc7032e9d60fb59735895b388c0b096 /src/server/game/Maps/MapManager.h | |
parent | 382d67622fc9b4ec7eeb9e3f8bd56876133901fd (diff) |
Core/Misc: Use our new unique_trackable_ptr for various classes exposed to scripts (not actually used anywhere currently)
(cherry picked from commit 4779fa5048642b57a0f69de7ab56b9d563c1cbc4)
Diffstat (limited to 'src/server/game/Maps/MapManager.h')
-rw-r--r-- | src/server/game/Maps/MapManager.h | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/server/game/Maps/MapManager.h b/src/server/game/Maps/MapManager.h index 53a7c731c43..aec828daff5 100644 --- a/src/server/game/Maps/MapManager.h +++ b/src/server/game/Maps/MapManager.h @@ -23,6 +23,7 @@ #include "MapUpdater.h" #include "Position.h" #include "SharedDefines.h" +#include "UniqueTrackablePtr.h" #include <boost/dynamic_bitset_fwd.hpp> #include <map> #include <shared_mutex> @@ -131,7 +132,7 @@ class TC_GAME_API MapManager private: using MapKey = std::pair<uint32, uint32>; - typedef std::map<MapKey, Map*> MapMapType; + typedef std::map<MapKey, Trinity::unique_trackable_ptr<Map>> MapMapType; typedef boost::dynamic_bitset<size_t> InstanceIds; Map* FindMap_i(uint32 mapId, uint32 instanceId) const; @@ -161,7 +162,7 @@ void MapManager::DoForAllMaps(Worker&& worker) std::shared_lock<std::shared_mutex> lock(_mapsLock); for (auto const& [key, map] : i_maps) - worker(map); + worker(map.get()); } template<typename Worker> @@ -175,7 +176,7 @@ void MapManager::DoForAllMapsWithMapId(uint32 mapId, Worker&& worker) ); for (auto const& [key, map] : range) - worker(map); + worker(map.get()); } #define sMapMgr MapManager::instance() |