From 2ad55ede56b2c4fb283a11b10d84ead7a6565a42 Mon Sep 17 00:00:00 2001 From: Kawe Mazidjatari <48657826+Mauler125@users.noreply.github.com> Date: Tue, 16 Jul 2024 11:58:51 +0200 Subject: [PATCH] Recast: fix nullptr crash on Editor::m_geom Should be checked, can be null. --- src/naveditor/Editor.cpp | 35 +++++++++++++++++++---------------- 1 file changed, 19 insertions(+), 16 deletions(-) diff --git a/src/naveditor/Editor.cpp b/src/naveditor/Editor.cpp index b082cd13..b63b3201 100644 --- a/src/naveditor/Editor.cpp +++ b/src/naveditor/Editor.cpp @@ -250,23 +250,26 @@ void Editor::handleCommonSettings() ImGui::PopItemWidth(); - ImGui::Separator(); - ImGui::Text("Bounding"); - - float* navMeshBMin = m_geom->getNavMeshBoundsMin(); - float* navMeshBMax = m_geom->getNavMeshBoundsMax(); - - ImGui::PushItemWidth(230); - - ImGui::SliderFloat3("Mins##BuildSettings", navMeshBMin, -MAX_COORD_FLOAT, MAX_COORD_FLOAT); - ImGui::SliderFloat3("Maxs##BuildSettings", navMeshBMax, -MAX_COORD_FLOAT, MAX_COORD_FLOAT); - - ImGui::PopItemWidth(); - - if (ImGui::Button("Reset##BuildSettings", ImVec2(120, 0))) + if (m_geom) { - rdVcopy(navMeshBMin, m_geom->getOriginalNavMeshBoundsMin()); - rdVcopy(navMeshBMax, m_geom->getOriginalNavMeshBoundsMax()); + ImGui::Separator(); + ImGui::Text("Bounding"); + + float* navMeshBMin = m_geom->getNavMeshBoundsMin(); + float* navMeshBMax = m_geom->getNavMeshBoundsMax(); + + ImGui::PushItemWidth(230); + + ImGui::SliderFloat3("Mins##BuildSettings", navMeshBMin, -MAX_COORD_FLOAT, MAX_COORD_FLOAT); + ImGui::SliderFloat3("Maxs##BuildSettings", navMeshBMax, -MAX_COORD_FLOAT, MAX_COORD_FLOAT); + + ImGui::PopItemWidth(); + + if (ImGui::Button("Reset##BuildSettings", ImVec2(120, 0))) + { + rdVcopy(navMeshBMin, m_geom->getOriginalNavMeshBoundsMin()); + rdVcopy(navMeshBMax, m_geom->getOriginalNavMeshBoundsMax()); + } } ImGui::Separator();