Sculpt: Fix T101464: Crash in mask from cavity
This commit is contained in:
parent
f998fa2732
commit
6a9b45995d
Notes:
blender-bot
2023-02-14 09:48:23 +01:00
Referenced by issue #101464, "Mask From Cavity" operator crashes Blender
|
@ -1034,7 +1034,7 @@ static void sculpt_bake_cavity_exec_task_cb(void *__restrict userdata,
|
|||
SCULPT_undo_push_node(tdata->ob, node, SCULPT_UNDO_MASK);
|
||||
|
||||
AutomaskingNodeData automask_data;
|
||||
SCULPT_automasking_node_begin(tdata->ob, ss, ss->cache->automasking, &automask_data, node);
|
||||
SCULPT_automasking_node_begin(tdata->ob, ss, tdata->automasking, &automask_data, node);
|
||||
|
||||
BKE_pbvh_vertex_iter_begin (ss->pbvh, node, vd, PBVH_ITER_UNIQUE) {
|
||||
SCULPT_automasking_node_update(ss, &automask_data, &vd);
|
||||
|
@ -1136,6 +1136,8 @@ static int sculpt_bake_cavity_exec(bContext *C, wmOperator *op)
|
|||
brush2.automasking_boundary_edges_propagation_steps = 1;
|
||||
brush2.automasking_cavity_curve = sd2.automasking_cavity_curve;
|
||||
|
||||
SCULPT_stroke_id_next(ob);
|
||||
|
||||
tdata.ob = ob;
|
||||
tdata.mode = mode;
|
||||
tdata.factor = factor;
|
||||
|
@ -1143,8 +1145,6 @@ static int sculpt_bake_cavity_exec(bContext *C, wmOperator *op)
|
|||
tdata.nodes = nodes;
|
||||
tdata.automasking = SCULPT_automasking_cache_init(&sd2, &brush2, ob);
|
||||
|
||||
SCULPT_stroke_id_next(ob);
|
||||
|
||||
TaskParallelSettings settings;
|
||||
BKE_pbvh_parallel_range_settings(&settings, true, totnode);
|
||||
BLI_task_parallel_range(0, totnode, &tdata, sculpt_bake_cavity_exec_task_cb, &settings);
|
||||
|
|
Loading…
Reference in New Issue