diff options
author | Haoyu Qiu <timothyqiu32@gmail.com> | 2021-08-02 23:07:18 +0800 |
---|---|---|
committer | Haoyu Qiu <timothyqiu32@gmail.com> | 2021-08-02 23:07:18 +0800 |
commit | 0c879ab28828afdffe0f6a8effb1830fd814868e (patch) | |
tree | a7a82cdd946f04c019f1ac4d4499fcf0f84d799b /scene | |
parent | b9d544b404bfcfbaf797b97b540961510595cd29 (diff) |
Fix crash when number of indices to optimize is not a multiple of 3
Diffstat (limited to 'scene')
-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 9f8c35b668..875aa30824 100644 --- a/scene/resources/surface_tool.cpp +++ b/scene/resources/surface_tool.cpp @@ -1120,6 +1120,7 @@ SurfaceTool::CustomFormat SurfaceTool::get_custom_format(int p_index) const { void SurfaceTool::optimize_indices_for_cache() { ERR_FAIL_COND(optimize_vertex_cache_func == nullptr); ERR_FAIL_COND(index_array.size() == 0); + ERR_FAIL_COND(index_array.size() % 3 != 0); LocalVector old_index_array = index_array; memset(index_array.ptr(), 0, index_array.size() * sizeof(int)); |