Prevent crash in ImmediateMesh.create_outline by ensuring

that when no indices are specified, the number of vertices is
at least a factor of 3. Fixes #73201
This commit is contained in:
Chris Hutchinson 2023-02-13 19:35:16 -05:00
parent 4848877b80
commit d842d215df

View file

@ -526,6 +526,9 @@ Ref<Mesh> Mesh::create_outline(float p_margin) const {
vc = indices.size();
ir = indices.ptrw();
has_indices = true;
} else {
// Ensure there are enough vertices to construct at least one triangle.
ERR_FAIL_COND_V(vertices.size() % 3 != 0, Ref<ArrayMesh>());
}
HashMap<Vector3, Vector3> normal_accum;