From 3e5d274bfd9577d7b3930b170037ca0bee964d21 Mon Sep 17 00:00:00 2001 From: LightCat Date: Sat, 25 Aug 2018 14:20:22 +0200 Subject: [PATCH] another crash fix --- include/navparser.hpp | 8 ++++++-- src/navparser.cpp | 1 + 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/include/navparser.hpp b/include/navparser.hpp index d56045c2..8b96ab2a 100644 --- a/include/navparser.hpp +++ b/include/navparser.hpp @@ -38,8 +38,12 @@ class inactivityTracker bool vischeckConnection(std::pair &connection) { - Vector begin = areas.at(FindInVector(connection.first)).m_center; - Vector end = areas.at(FindInVector(connection.second)).m_center; + int id0 = FindInVector(connection.first); + int id1 = FindInVector(connection.second); + if (id0 == -1 || id1 == -1) + return false; + Vector begin = areas.at(id0).m_center; + Vector end = areas.at(id1).m_center; begin.z += 72; end.z += 72; bool result = IsVectorVisible(begin, end, false); diff --git a/src/navparser.cpp b/src/navparser.cpp index f9739f5f..ea4ec0e5 100644 --- a/src/navparser.cpp +++ b/src/navparser.cpp @@ -24,6 +24,7 @@ size_t FindInVector(size_t id) if (areas.at(i).m_id == id) return i; } + return -1; } void Init()