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>2014-02-02 10:08:26 +0400
committerCampbell Barton <ideasman42@gmail.com>2014-02-02 10:08:26 +0400
commitc4345a808c727e4a7052872bce91e35b74c9eea3 (patch)
treed864ab027e91d3881c633461a043a7bc9f26b515 /source/blender/editors/mesh
parentdcd90d67c8a6e6beae37fc02515b8c75942332ca (diff)
Smallhash: add reserve option to avoid resizing when size is known
Diffstat (limited to 'source/blender/editors/mesh')
-rw-r--r--source/blender/editors/mesh/editmesh_knife.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/source/blender/editors/mesh/editmesh_knife.c b/source/blender/editors/mesh/editmesh_knife.c
index 0d1e43a709b..1fb3741380a 100644
--- a/source/blender/editors/mesh/editmesh_knife.c
+++ b/source/blender/editors/mesh/editmesh_knife.c
@@ -1293,9 +1293,6 @@ static void knife_find_line_hits(KnifeTool_OpData *kcd)
/* First use bvh tree to find faces, knife edges, and knife verts that might
* intersect the cut plane with rays v1-v3 and v2-v4.
* This deduplicates the candidates before doing more expensive intersection tests. */
- BLI_smallhash_init(&faces);
- BLI_smallhash_init(&kfes);
- BLI_smallhash_init(&kfvs);
tree = BKE_bmbvh_tree_get(kcd->bmbvh);
planetree = BLI_bvhtree_new(4, FLT_EPSILON * 4, 8, 8);
@@ -1308,13 +1305,14 @@ static void knife_find_line_hits(KnifeTool_OpData *kcd)
results = BLI_bvhtree_overlap(tree, planetree, &tot);
if (!results) {
- BLI_smallhash_release(&faces);
- BLI_smallhash_release(&kfes);
- BLI_smallhash_release(&kfvs);
BLI_bvhtree_free(planetree);
return;
}
+ BLI_smallhash_init(&faces);
+ BLI_smallhash_init(&kfes);
+ BLI_smallhash_init(&kfvs);
+
for (i = 0, result = results; i < tot; i++, result++) {
ls = (BMLoop **)kcd->em->looptris[result->indexA];
f = ls[0]->f;