diff options
author | Campbell Barton <ideasman42@gmail.com> | 2013-08-24 18:40:15 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2013-08-24 18:40:15 +0400 |
commit | 25ffb79a0b4861293c08a8230fc45fb72a7f230e (patch) | |
tree | 63f542a395f39d02523336a8768e7bf9f68b4a10 /source/blender/blenkernel/intern/mesh.c | |
parent | 8811e521c06c0b057f0a6308051fa2e106eeafc1 (diff) |
use reserve argument for more edgehashs
Diffstat (limited to 'source/blender/blenkernel/intern/mesh.c')
-rw-r--r-- | source/blender/blenkernel/intern/mesh.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/source/blender/blenkernel/intern/mesh.c b/source/blender/blenkernel/intern/mesh.c index 687fa35fd82..e4c0adcc24e 100644 --- a/source/blender/blenkernel/intern/mesh.c +++ b/source/blender/blenkernel/intern/mesh.c @@ -1241,10 +1241,12 @@ static void make_edges_mdata_extend(MEdge **r_alledge, int *r_totedge, int totedge = *r_totedge; int totedge_new; EdgeHash *eh; + unsigned int eh_reserve; const MPoly *mp; int i; - eh = BLI_edgehash_new(__func__); + eh_reserve = max_ii(totedge, BLI_EDGEHASH_SIZE_GUESS_FROM_POLYS(totpoly)); + eh = BLI_edgehash_new_ex(__func__, eh_reserve); for (i = 0, mp = mpoly; i < totpoly; i++, mp++) { BKE_mesh_poly_edgehash_insert(eh, mp, mloop + mp->loopstart); @@ -2308,7 +2310,7 @@ void BKE_mesh_convert_mfaces_to_mpolys_ex(ID *id, CustomData *fdata, CustomData CustomData_external_read(fdata, id, CD_MASK_MDISPS, totface_i); } - eh = BLI_edgehash_new(__func__); + eh = BLI_edgehash_new_ex(__func__, totedge_i); /* build edge hash */ me = medge; |