diff options
-rw-r--r-- | source/blender/blenkernel/intern/mesh.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/source/blender/blenkernel/intern/mesh.c b/source/blender/blenkernel/intern/mesh.c index 1b5b7101c71..f24a55dcc44 100644 --- a/source/blender/blenkernel/intern/mesh.c +++ b/source/blender/blenkernel/intern/mesh.c @@ -2463,10 +2463,11 @@ void BKE_mesh_vert_poly_map_create(MeshElemMap **r_map, int **r_mem, int totvert, int totpoly, int totloop) { MeshElemMap *map = MEM_callocN(sizeof(MeshElemMap) * totvert, "vert poly map"); - int *indices = MEM_mallocN(sizeof(int) * totloop, "vert poly map mem"); - + int *indices, *index_iter; int i, j; + indices = index_iter = MEM_mallocN(sizeof(int) * totloop, "vert poly map mem"); + /* Count number of polys for each vertex */ for (i = 0; i < totpoly; i++) { const MPoly *p = &mpoly[i]; @@ -2477,8 +2478,8 @@ void BKE_mesh_vert_poly_map_create(MeshElemMap **r_map, int **r_mem, /* Assign indices mem */ for (i = 0; i < totvert; i++) { - map[i].indices = indices; - indices += map[i].count; + map[i].indices = index_iter; + index_iter += map[i].count; /* Reset 'count' for use as index in last loop */ map[i].count = 0; |