Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrecht Van Lommel <brechtvanlommel@pandora.be>2009-12-14 16:20:47 +0300
committerBrecht Van Lommel <brechtvanlommel@pandora.be>2009-12-14 16:20:47 +0300
commitf922d5d454593258586eae1c5390e913e0fa044d (patch)
tree15506e0392a5b66191c2a77c4af008600941f4da /source/blender
parentd612fdcdec006ea6229b0731f58e884c8e2cc4df (diff)
Fix #20376: crash with layer sculpt and multires. This is not working
yet, at least prevents the crash for now.
Diffstat (limited to 'source/blender')
-rw-r--r--source/blender/editors/sculpt_paint/sculpt.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/source/blender/editors/sculpt_paint/sculpt.c b/source/blender/editors/sculpt_paint/sculpt.c
index 8b705ff5b5e..0dd41fb559a 100644
--- a/source/blender/editors/sculpt_paint/sculpt.c
+++ b/source/blender/editors/sculpt_paint/sculpt.c
@@ -1104,7 +1104,7 @@ static void do_layer_brush(Sculpt *sd, SculptSession *ss, PBVHNode **nodes, int
int n;
/* XXX not working yet for multires */
- if(!ss->mvert)
+ if(ss->multires)
return;
if(ss->cache->flip)
@@ -1683,7 +1683,7 @@ static void sculpt_update_cache_invariants(Sculpt *sd, SculptSession *ss, bConte
view3d_get_transformation(vc->ar, vc->rv3d, vc->obact, cache->mats);
/* Initialize layer brush displacements and persistent coords */
- if(brush->sculpt_tool == SCULPT_TOOL_LAYER) {
+ if(brush->sculpt_tool == SCULPT_TOOL_LAYER && !ss->multires) {
if(!ss->layer_disps || !(brush->flag & BRUSH_PERSISTENT)) {
if(ss->layer_disps)
MEM_freeN(ss->layer_disps);
@@ -1958,7 +1958,7 @@ static void sculpt_restore_mesh(Sculpt *sd, SculptSession *ss)
copy_v3_v3(fn, cache->face_norms[i]);
}
- if(brush->sculpt_tool == SCULPT_TOOL_LAYER)
+ if(brush->sculpt_tool == SCULPT_TOOL_LAYER && !ss->multires)
memset(ss->layer_disps, 0, sizeof(float) * ss->totvert);
}
}