diff options
author | Haoyu Qiu <timothyqiu32@gmail.com> | 2021-09-27 20:35:56 +0800 |
---|---|---|
committer | Haoyu Qiu <timothyqiu32@gmail.com> | 2021-09-27 20:35:56 +0800 |
commit | ab280de765131d7723b4d3f1a3066d26d63d79a7 (patch) | |
tree | 3802d32acb4250d0241b4561ada6ca7cf867da51 | |
parent | a98453670c8afd33af779782bfa904f838f13e43 (diff) |
Validate before passing indices to meshoptimizer
-rw-r--r-- | scene/resources/surface_tool.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/scene/resources/surface_tool.cpp b/scene/resources/surface_tool.cpp index d5e370568d..a8cd872408 100644 --- a/scene/resources/surface_tool.cpp +++ b/scene/resources/surface_tool.cpp @@ -1176,6 +1176,7 @@ Vector<int> SurfaceTool::generate_lod(float p_threshold, int p_target_index_coun ERR_FAIL_COND_V(simplify_func == nullptr, lod); ERR_FAIL_COND_V(vertex_array.size() == 0, lod); ERR_FAIL_COND_V(index_array.size() == 0, lod); + ERR_FAIL_COND_V(index_array.size() % 3 != 0, lod); lod.resize(index_array.size()); LocalVector<float> vertices; //uses floats |