diff options
author | Philipp Oeser <info@graphics-engineer.com> | 2020-08-07 19:28:43 +0300 |
---|---|---|
committer | Philipp Oeser <info@graphics-engineer.com> | 2020-08-12 16:53:22 +0300 |
commit | 21118fb610c2cf693b2884086f3d5c1fe5183ea4 (patch) | |
tree | 4a8f94bfc8fe9ba9544af08d44c37c648e26b3ee /source/blender | |
parent | 08286ef8ba5c880fd9761b397d00ac81e993a657 (diff) |
Fix T79622: Mesh Filter on a locked Shape crashes
For a locked shapekey, a SculptSession's orig_cos / deform_cos /
deform_imats are not initialized (they only are when
deform_modifiers_active is true -- this in turn is only true for
shapekeys if they are //not// locked [and for deforming modifiers of
course])
We can just update that keyblock with sculpt_update_keyblock() in case
of a locked shapekey
Maniphest Tasks: T79622
Differential Revision: https://developer.blender.org/D8499
Diffstat (limited to 'source/blender')
-rw-r--r-- | source/blender/editors/sculpt_paint/sculpt.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/source/blender/editors/sculpt_paint/sculpt.c b/source/blender/editors/sculpt_paint/sculpt.c index e838d87aeff..13b576f0402 100644 --- a/source/blender/editors/sculpt_paint/sculpt.c +++ b/source/blender/editors/sculpt_paint/sculpt.c @@ -5895,7 +5895,7 @@ void SCULPT_flush_stroke_deform(Sculpt *sd, Object *ob, bool is_proxy_used) SculptSession *ss = ob->sculpt; Brush *brush = BKE_paint_brush(&sd->paint); - if (is_proxy_used) { + if (is_proxy_used && ss->deform_modifiers_active) { /* This brushes aren't using proxies, so sculpt_combine_proxies() wouldn't propagate needed * deformation to original base. */ |