From 37cc89345844da00e6b29019c8875480a7143cef Mon Sep 17 00:00:00 2001 From: TotallyNotElite <1yourexperiment@protonmail.com> Date: Sat, 25 Aug 2018 18:07:31 +0200 Subject: [PATCH] Fix small error --- include/navparser.hpp | 7 +++++-- src/navparser.cpp | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/include/navparser.hpp b/include/navparser.hpp index 8b96ab2a..e1e90a3c 100644 --- a/include/navparser.hpp +++ b/include/navparser.hpp @@ -25,7 +25,7 @@ bool Prepare(); void CreateMove(); void Draw(); -size_t FindInVector(size_t id); +int FindInVector(size_t id); class inactivityTracker { @@ -303,9 +303,12 @@ struct MAP : public micropather::Graph if (inactiveTracker.IsIgnored( std::pair{ area->m_id, i.area->m_id })) continue; + int id = FindInVector(i.area->m_id); + if (id == -1) + return; micropather::StateCost cost; cost.state = - static_cast(&areas.at(FindInVector(i.area->m_id))); + static_cast(&areas.at(id)); cost.cost = area->m_center.DistTo(i.area->m_center); adjacent->push_back(cost); } diff --git a/src/navparser.cpp b/src/navparser.cpp index ea4ec0e5..c3e30478 100644 --- a/src/navparser.cpp +++ b/src/navparser.cpp @@ -17,9 +17,9 @@ static std::unique_ptr TF2MAP; // Function to get place in Vector by connection ID // Todo: find an alternative for this, maybe a map for storing ptrs to the // std::vector? -size_t FindInVector(size_t id) +int FindInVector(size_t id) { - for (size_t i = 0; i < areas.size(); i++) + for (int i = 0; i < areas.size(); i++) { if (areas.at(i).m_id == id) return i;