diff options
| author | smix8 <52464204+smix8@users.noreply.github.com> | 2024-04-10 21:56:21 +0200 |
|---|---|---|
| committer | smix8 <52464204+smix8@users.noreply.github.com> | 2024-04-10 21:56:21 +0200 |
| commit | 497afeaf05d9844e79664343a277955edaf3ccf4 (patch) | |
| tree | f81de24766cd2b1516803584a212b67d9cde8211 | |
| parent | 83b916bb00eb8cac4584143a80f5cfad7ce1e908 (diff) | |
| download | redot-engine-497afeaf05d9844e79664343a277955edaf3ccf4.tar.gz | |
Fix NavigationMeshSourceGeometryData merge crash
Fixes crash when trying to merge with a null source geometry.
| -rw-r--r-- | scene/resources/navigation_mesh_source_geometry_data_2d.cpp | 2 | ||||
| -rw-r--r-- | scene/resources/navigation_mesh_source_geometry_data_3d.cpp | 2 |
2 files changed, 4 insertions, 0 deletions
diff --git a/scene/resources/navigation_mesh_source_geometry_data_2d.cpp b/scene/resources/navigation_mesh_source_geometry_data_2d.cpp index dfa3b598c8..d613b498a1 100644 --- a/scene/resources/navigation_mesh_source_geometry_data_2d.cpp +++ b/scene/resources/navigation_mesh_source_geometry_data_2d.cpp @@ -120,6 +120,8 @@ void NavigationMeshSourceGeometryData2D::add_obstruction_outline(const PackedVec } void NavigationMeshSourceGeometryData2D::merge(const Ref<NavigationMeshSourceGeometryData2D> &p_other_geometry) { + ERR_FAIL_NULL(p_other_geometry); + // No need to worry about `root_node_transform` here as the data is already xformed. traversable_outlines.append_array(p_other_geometry->traversable_outlines); obstruction_outlines.append_array(p_other_geometry->obstruction_outlines); diff --git a/scene/resources/navigation_mesh_source_geometry_data_3d.cpp b/scene/resources/navigation_mesh_source_geometry_data_3d.cpp index 1bd98fe1ac..39a17946fa 100644 --- a/scene/resources/navigation_mesh_source_geometry_data_3d.cpp +++ b/scene/resources/navigation_mesh_source_geometry_data_3d.cpp @@ -172,6 +172,8 @@ void NavigationMeshSourceGeometryData3D::add_faces(const PackedVector3Array &p_f } void NavigationMeshSourceGeometryData3D::merge(const Ref<NavigationMeshSourceGeometryData3D> &p_other_geometry) { + ERR_FAIL_NULL(p_other_geometry); + // No need to worry about `root_node_transform` here as the vertices are already xformed. const int64_t number_of_vertices_before_merge = vertices.size(); const int64_t number_of_indices_before_merge = indices.size(); |
