Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2013-08-24 21:33:47 +0400
committerCampbell Barton <ideasman42@gmail.com>2013-08-24 21:33:47 +0400
commit09a52f18b6d8bd77cbffd746f72e866e1740505f (patch)
tree525d2cd2121cd5e7112bcb26ffcca0445d979328 /source/blender/bmesh/intern/bmesh_mesh.c
parent7bd422143e2ebab4f37fd8647206ec5d2235259e (diff)
ghash: reserve size when its known or can be guessed close enough.
also avoid allocs per node in pbvh_bmesh_node_limit_ensure()
Diffstat (limited to 'source/blender/bmesh/intern/bmesh_mesh.c')
-rw-r--r--source/blender/bmesh/intern/bmesh_mesh.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/source/blender/bmesh/intern/bmesh_mesh.c b/source/blender/bmesh/intern/bmesh_mesh.c
index 64368390444..5ab6fe72f77 100644
--- a/source/blender/bmesh/intern/bmesh_mesh.c
+++ b/source/blender/bmesh/intern/bmesh_mesh.c
@@ -674,7 +674,7 @@ void BM_mesh_remap(BMesh *bm, int *vert_idx, int *edge_idx, int *face_idx)
int *new_idx = NULL;
/* Init the old-to-new vert pointers mapping */
- vptr_map = BLI_ghash_ptr_new("BM_mesh_remap vert pointers mapping");
+ vptr_map = BLI_ghash_ptr_new_ex("BM_mesh_remap vert pointers mapping", bm->totvert);
/* Make a copy of all vertices. */
verts_pool = MEM_callocN(sizeof(BMVert *) * totvert, "BM_mesh_remap verts pool");
@@ -708,7 +708,7 @@ void BM_mesh_remap(BMesh *bm, int *vert_idx, int *edge_idx, int *face_idx)
int *new_idx = NULL;
/* Init the old-to-new vert pointers mapping */
- eptr_map = BLI_ghash_ptr_new("BM_mesh_remap edge pointers mapping");
+ eptr_map = BLI_ghash_ptr_new_ex("BM_mesh_remap edge pointers mapping", bm->totedge);
/* Make a copy of all vertices. */
edges_pool = MEM_callocN(sizeof(BMEdge *) * totedge, "BM_mesh_remap edges pool");
@@ -741,7 +741,7 @@ void BM_mesh_remap(BMesh *bm, int *vert_idx, int *edge_idx, int *face_idx)
int *new_idx = NULL;
/* Init the old-to-new vert pointers mapping */
- fptr_map = BLI_ghash_ptr_new("BM_mesh_remap face pointers mapping");
+ fptr_map = BLI_ghash_ptr_new_ex("BM_mesh_remap face pointers mapping", bm->totface);
/* Make a copy of all vertices. */
faces_pool = MEM_callocN(sizeof(BMFace *) * totface, "BM_mesh_remap faces pool");