[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [56703] trunk/blender/source/blender/bmesh /operators/bmo_utils.c: remove wanton use of array reallocation for mesh smoothing.

Campbell Barton ideasman42 at gmail.com
Sun May 12 14:06:09 CEST 2013


Revision: 56703
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=56703
Author:   campbellbarton
Date:     2013-05-12 12:06:08 +0000 (Sun, 12 May 2013)
Log Message:
-----------
remove wanton use of array reallocation for mesh smoothing.

Modified Paths:
--------------
    trunk/blender/source/blender/bmesh/operators/bmo_utils.c

Modified: trunk/blender/source/blender/bmesh/operators/bmo_utils.c
===================================================================
--- trunk/blender/source/blender/bmesh/operators/bmo_utils.c	2013-05-12 11:41:19 UTC (rev 56702)
+++ trunk/blender/source/blender/bmesh/operators/bmo_utils.c	2013-05-12 12:06:08 UTC (rev 56703)
@@ -420,8 +420,7 @@
 	BMIter iter;
 	BMVert *v;
 	BMEdge *e;
-	BLI_array_declare(cos);
-	float (*cos)[3] = NULL;
+	float (*cos)[3] = MEM_mallocN(sizeof(*cos) * BMO_slot_buffer_count(op->slots_in, "verts"), __func__);
 	float *co, *co2, clip_dist = BMO_slot_float_get(op->slots_in, "clip_dist");
 	int i, j, clipx, clipy, clipz;
 	int xaxis, yaxis, zaxis;
@@ -436,7 +435,6 @@
 
 	i = 0;
 	BMO_ITER (v, &siter, op->slots_in, "verts", BM_VERT) {
-		BLI_array_grow_one(cos);
 
 		co = cos[i];
 		zero_v3(co);
@@ -479,7 +477,7 @@
 		i++;
 	}
 
-	BLI_array_free(cos);
+	MEM_freeN(cos);
 }
 
 /**************************************************************************** *




More information about the Bf-blender-cvs mailing list