diff options
author | Hans Goudey <h.goudey@me.com> | 2022-02-09 20:06:10 +0300 |
---|---|---|
committer | Hans Goudey <h.goudey@me.com> | 2022-02-09 20:06:10 +0300 |
commit | d1202bd641ca2652fac9620bc06dad757584b1e0 (patch) | |
tree | 7d410e3844000cd35d5718fd5d038a6eb3a3bf96 /source/blender/blenkernel/intern | |
parent | c69ee218d786e6ae24804b00e7a7856c7638f7b0 (diff) |
Fix T95620: Crash When Entering Edit Mode on a Curve
Under some circumstances, simply adding a curve object and going
to edit mode would cause a crash. This is because the evaluated
`CurveEval` was accessed but also freed by the dependency graph.
The fix reverts the part of b76918717dbfd8363f that uses the
`CurveEval` for the curve object bounds. While this isn't ideal,
it was the previous behavior, and some unexpected behavior
with object bounds is much better than a crash. Plus, given the plans
of using the new "Curves" data-block for evaluated curves, this
situation will change relatively soon anyway.
Diffstat (limited to 'source/blender/blenkernel/intern')
-rw-r--r-- | source/blender/blenkernel/intern/curve.cc | 10 |
1 files changed, 0 insertions, 10 deletions
diff --git a/source/blender/blenkernel/intern/curve.cc b/source/blender/blenkernel/intern/curve.cc index f83a672b2ee..c611e280793 100644 --- a/source/blender/blenkernel/intern/curve.cc +++ b/source/blender/blenkernel/intern/curve.cc @@ -5072,16 +5072,6 @@ void BKE_curve_nurb_vert_active_validate(Curve *cu) bool BKE_curve_minmax(Curve *cu, bool use_radius, float min[3], float max[3]) { - if (cu->curve_eval != nullptr) { - float3 eval_min(FLT_MAX); - float3 eval_max(-FLT_MAX); - if (cu->curve_eval->bounds_min_max(eval_min, eval_max, false)) { - copy_v3_v3(min, eval_min); - copy_v3_v3(max, eval_max); - return true; - } - } - ListBase *nurb_lb = BKE_curve_nurbs_get(cu); ListBase temp_nurb_lb = {nullptr, nullptr}; const bool is_font = (BLI_listbase_is_empty(nurb_lb)) && (cu->len != 0); |