[Bf-blender-cvs] [b15cbe0] gsoc2016-improved_extrusion: Curves: Trim operator
João Araújo
noreply at git.blender.org
Mon Jul 25 01:00:57 CEST 2016
Commit: b15cbe09a72eabe57c1f6c71c44eaca0e11f58dd
Author: João Araújo
Date: Mon Jul 25 00:00:38 2016 +0100
Branches: gsoc2016-improved_extrusion
https://developer.blender.org/rBb15cbe09a72eabe57c1f6c71c44eaca0e11f58dd
Curves: Trim operator
Fixed a few memory issues.
===================================================================
M source/blender/editors/curve/editcurve.c
===================================================================
diff --git a/source/blender/editors/curve/editcurve.c b/source/blender/editors/curve/editcurve.c
index 5bd8010..c9b13af 100644
--- a/source/blender/editors/curve/editcurve.c
+++ b/source/blender/editors/curve/editcurve.c
@@ -6799,7 +6799,7 @@ static ListBase *spline_X_shape(Object *obedit, int selected_spline)
/* get the full coord_array for nu */
float *original_first_coord_array;
- original_first_coord_array = (float *)MEM_callocN(3 * (nu->resolu + 1) * sizeof(float), "splineXshape7");
+ // original_first_coord_array = (float *)MEM_callocN(3 * (nu->resolu + 1) * sizeof(float), "splineXshape7");
original_first_coord_array = ((LinkData *)all_segments->first)->data;
for (segment = all_segments->first; segment; segment = segment->next) {
coord_array = segment->data;
@@ -7230,7 +7230,6 @@ static int trim_curve_exec(bContext *C, wmOperator *op)
/* first endpoint selected */
else if (len_low == 0 && len_high > 0) {
int high_first_order = ((XShape *)((LinkData *)high->first)->data)->order;
- int low_last_order = 0;
Nurb *new_spl = BKE_nurb_duplicate(nu);
// new_spl->bezt = (BezTriple *)MEM_callocN((nu->pntsu - high_first_order -1) * sizeof(BezTriple), "trimexec5");
new_spl->pntsu = nu->pntsu - high_first_order;
@@ -7341,11 +7340,15 @@ static int trim_curve_exec(bContext *C, wmOperator *op)
BLI_freelistN(spl_int);
MEM_freeN(spl_int);
- for (xshape = low->first; xshape; xshape = xshape->next) {
- MEM_freeN(xshape->intersections);
+ if (len_low > 0) {
+ BLI_freelistN(low);
+ MEM_freeN(low);
+ }
+ if (len_high > 0) {
+ BLI_freelistN(high);
+ MEM_freeN(high);
}
- BLI_freelistN(low);
- MEM_freeN(low);
+
MEM_freeN(s1);
MEM_freeN(s2);
More information about the Bf-blender-cvs
mailing list