diff options
author | Hans Goudey <h.goudey@me.com> | 2022-04-19 20:09:09 +0300 |
---|---|---|
committer | Hans Goudey <h.goudey@me.com> | 2022-04-19 20:09:29 +0300 |
commit | 5a069967222ebb9d439aecc6dd85d9a5286a2344 (patch) | |
tree | 5d4e8e5a0237290547b749e875555155b490825d /source/blender/editors/sculpt_paint | |
parent | 67962824e9f740cf4daf4c3328657e743c54258b (diff) |
Fix: Assert when sculpting empty curves
Diffstat (limited to 'source/blender/editors/sculpt_paint')
3 files changed, 9 insertions, 0 deletions
diff --git a/source/blender/editors/sculpt_paint/curves_sculpt_comb.cc b/source/blender/editors/sculpt_paint/curves_sculpt_comb.cc index 6a47f90d4ac..232d632aa3f 100644 --- a/source/blender/editors/sculpt_paint/curves_sculpt_comb.cc +++ b/source/blender/editors/sculpt_paint/curves_sculpt_comb.cc @@ -136,6 +136,9 @@ struct CombOperationExecutor { curves_id_ = static_cast<Curves *>(object_->data); curves_ = &CurvesGeometry::wrap(curves_id_->geometry); + if (curves_->curves_num() == 0) { + return; + } brush_pos_prev_re_ = self_->brush_pos_last_re_; brush_pos_re_ = stroke_extension.mouse_position; diff --git a/source/blender/editors/sculpt_paint/curves_sculpt_grow_shrink.cc b/source/blender/editors/sculpt_paint/curves_sculpt_grow_shrink.cc index 7cc5e524c30..6228a643a76 100644 --- a/source/blender/editors/sculpt_paint/curves_sculpt_grow_shrink.cc +++ b/source/blender/editors/sculpt_paint/curves_sculpt_grow_shrink.cc @@ -311,6 +311,9 @@ struct CurvesEffectOperationExecutor { curves_id_ = static_cast<Curves *>(object_->data); curves_ = &CurvesGeometry::wrap(curves_id_->geometry); + if (curves_->curves_num() == 0) { + return; + } CurvesSculpt &curves_sculpt = *scene_->toolsettings->curves_sculpt; brush_ = BKE_paint_brush(&curves_sculpt.paint); diff --git a/source/blender/editors/sculpt_paint/curves_sculpt_snake_hook.cc b/source/blender/editors/sculpt_paint/curves_sculpt_snake_hook.cc index b367c5bb6ec..6d930d35f04 100644 --- a/source/blender/editors/sculpt_paint/curves_sculpt_snake_hook.cc +++ b/source/blender/editors/sculpt_paint/curves_sculpt_snake_hook.cc @@ -116,6 +116,9 @@ struct SnakeHookOperatorExecutor { curves_id_ = static_cast<Curves *>(object_->data); curves_ = &CurvesGeometry::wrap(curves_id_->geometry); + if (curves_->curves_num() == 0) { + return; + } brush_pos_prev_re_ = self.last_mouse_position_re_; brush_pos_re_ = stroke_extension.mouse_position; |