diff options
author | Campbell Barton <ideasman42@gmail.com> | 2015-01-26 10:21:44 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2015-01-26 10:22:54 +0300 |
commit | 5d61cbf008ab4676b4d71a155c8b85c57e54b58b (patch) | |
tree | a2b78b13f37ce22048ae7f3f8d807357327fb196 | |
parent | 8db4a24e4efc6d94e69e790a1ce3179f2e9948e7 (diff) |
Curves: BKE_nurb_copy left duplicate arrays
While callers accounted for this, its quite error prone. Just NULL instead.
-rw-r--r-- | source/blender/blenkernel/intern/curve.c | 4 | ||||
-rw-r--r-- | source/blender/editors/curve/editcurve.c | 2 |
2 files changed, 4 insertions, 2 deletions
diff --git a/source/blender/blenkernel/intern/curve.c b/source/blender/blenkernel/intern/curve.c index 3abe3c58562..f1e9f2b19d7 100644 --- a/source/blender/blenkernel/intern/curve.c +++ b/source/blender/blenkernel/intern/curve.c @@ -593,6 +593,10 @@ Nurb *BKE_nurb_copy(Nurb *src, int pntsu, int pntsv) newnu->pntsu = pntsu; newnu->pntsv = pntsv; + /* caller can manually handle these arrays */ + newnu->knotsu = NULL; + newnu->knotsv = NULL; + if (src->bezt) { newnu->bezt = (BezTriple *)MEM_mallocN(pntsu * pntsv * sizeof(BezTriple), "copyNurb2"); } diff --git a/source/blender/editors/curve/editcurve.c b/source/blender/editors/curve/editcurve.c index 99c64be5797..25dedee4630 100644 --- a/source/blender/editors/curve/editcurve.c +++ b/source/blender/editors/curve/editcurve.c @@ -2368,7 +2368,6 @@ static void adduplicateflagNurb(Object *obedit, ListBase *newnurb, } else { /* knots done after duplicate as pntsu may change */ - nu->knotsu = nu->knotsv = NULL; BKE_nurb_order_clamp_u(nu); BKE_nurb_knot_calc_u(nu); @@ -6543,7 +6542,6 @@ static int curve_delete_segments(Object *obedit, const bool split) } } - nu->knotsu = nu->knotsv = NULL; BKE_nurb_order_clamp_u(nu); BKE_nurb_knot_calc_u(nu); |