diff options
-rw-r--r-- | src/server/game/Movement/Waypoints/WaypointManager.cpp | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/src/server/game/Movement/Waypoints/WaypointManager.cpp b/src/server/game/Movement/Waypoints/WaypointManager.cpp index 0323438a96f..b3f8815e067 100644 --- a/src/server/game/Movement/Waypoints/WaypointManager.cpp +++ b/src/server/game/Movement/Waypoints/WaypointManager.cpp @@ -85,10 +85,6 @@ WaypointMgr* WaypointMgr::instance() void WaypointMgr::ReloadPath(uint32 id) { - auto itr = _waypointStore.find(id); - if (itr != _waypointStore.end()) - _waypointStore.erase(itr); - PreparedStatement* stmt = WorldDatabase.GetPreparedStatement(WORLD_SEL_WAYPOINT_DATA_BY_ID); stmt->setUInt32(0, id); @@ -132,7 +128,9 @@ void WaypointMgr::ReloadPath(uint32 id) } while (result->NextRow()); - _waypointStore[id] = WaypointPath(id, std::move(values)); + WaypointPath& path = _waypointStore[id]; + path.id = id; + path.nodes = std::move(values); } WaypointPath const* WaypointMgr::GetPath(uint32 id) const |