aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Grids/ObjectGridLoader.cpp
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2023-10-17 15:48:02 +0200
committerShauren <shauren.trinity@gmail.com>2023-10-17 15:57:03 +0200
commit966936b01ab732c84832be93fb136da63112cc75 (patch)
tree13774c92d604ac231f2ebbb2d718af967d145acd /src/server/game/Grids/ObjectGridLoader.cpp
parentd028bb0e374acfc635b2f6f224f5732d3bfa13fd (diff)
Core/Misc: Fixed thread-unsafe access to list of objects that should be spawned in a cell
Closes #29372 (cherry picked from commit 7b6589c1ecc159f6949c5535785fba79a04b2c4a)
Diffstat (limited to 'src/server/game/Grids/ObjectGridLoader.cpp')
-rw-r--r--src/server/game/Grids/ObjectGridLoader.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/server/game/Grids/ObjectGridLoader.cpp b/src/server/game/Grids/ObjectGridLoader.cpp
index bcb6e6b41af..b5e5826f042 100644
--- a/src/server/game/Grids/ObjectGridLoader.cpp
+++ b/src/server/game/Grids/ObjectGridLoader.cpp
@@ -121,15 +121,15 @@ void LoadHelper(CellGuidSet const& guid_set, CellCoord &cell, GridRefManager<T>
void ObjectGridLoader::Visit(GameObjectMapType &m)
{
CellCoord cellCoord = i_cell.GetCellCoord();
- CellObjectGuids const& cell_guids = sObjectMgr->GetCellObjectGuids(i_map->GetId(), i_map->GetSpawnMode(), cellCoord.GetId());
- LoadHelper(cell_guids.gameobjects, cellCoord, m, i_gameObjects, i_map);
+ if (CellObjectGuids const* cell_guids = sObjectMgr->GetCellObjectGuids(i_map->GetId(), i_map->GetSpawnMode(), cellCoord.GetId()))
+ LoadHelper(cell_guids->gameobjects, cellCoord, m, i_gameObjects, i_map);
}
void ObjectGridLoader::Visit(CreatureMapType &m)
{
CellCoord cellCoord = i_cell.GetCellCoord();
- CellObjectGuids const& cell_guids = sObjectMgr->GetCellObjectGuids(i_map->GetId(), i_map->GetSpawnMode(), cellCoord.GetId());
- LoadHelper(cell_guids.creatures, cellCoord, m, i_creatures, i_map);
+ if (CellObjectGuids const* cell_guids = sObjectMgr->GetCellObjectGuids(i_map->GetId(), i_map->GetSpawnMode(), cellCoord.GetId()))
+ LoadHelper(cell_guids->creatures, cellCoord, m, i_creatures, i_map);
}
void ObjectWorldLoader::Visit(CorpseMapType& /*m*/)