[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [25362] trunk/blender/source/blender/ editors/sculpt_paint/sculpt.c: Fix #20376: crash with layer sculpt and multires.

Brecht Van Lommel brecht at blender.org
Mon Dec 14 14:20:47 CET 2009


Revision: 25362
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=25362
Author:   blendix
Date:     2009-12-14 14:20:47 +0100 (Mon, 14 Dec 2009)

Log Message:
-----------
Fix #20376: crash with layer sculpt and multires. This is not working
yet, at least prevents the crash for now.

Modified Paths:
--------------
    trunk/blender/source/blender/editors/sculpt_paint/sculpt.c

Modified: trunk/blender/source/blender/editors/sculpt_paint/sculpt.c
===================================================================
--- trunk/blender/source/blender/editors/sculpt_paint/sculpt.c	2009-12-14 13:15:23 UTC (rev 25361)
+++ trunk/blender/source/blender/editors/sculpt_paint/sculpt.c	2009-12-14 13:20:47 UTC (rev 25362)
@@ -1104,7 +1104,7 @@
 	int n;
 
 	/* XXX not working yet for multires */
-	if(!ss->mvert)
+	if(ss->multires)
 		return;
 
 	if(ss->cache->flip)
@@ -1683,7 +1683,7 @@
 	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 @@
 				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);
 	}
 }





More information about the Bf-blender-cvs mailing list