[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [54017] trunk/blender/source/blender/ modifiers/intern/MOD_boolean.c: workaround [#32866] Crash by cyclic use of Boolean Modifier
Campbell Barton
ideasman42 at gmail.com
Wed Jan 23 06:42:49 CET 2013
Revision: 54017
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=54017
Author: campbellbarton
Date: 2013-01-23 05:42:45 +0000 (Wed, 23 Jan 2013)
Log Message:
-----------
workaround [#32866] Crash by cyclic use of Boolean Modifier
officially - modifiers shouldn't calc other objects derived mesh, but in some cases its needed at the moment for certain scenes, so just disallow booleans depending on booleans.
Modified Paths:
--------------
trunk/blender/source/blender/modifiers/intern/MOD_boolean.c
Modified: trunk/blender/source/blender/modifiers/intern/MOD_boolean.c
===================================================================
--- trunk/blender/source/blender/modifiers/intern/MOD_boolean.c 2013-01-23 04:55:34 UTC (rev 54016)
+++ trunk/blender/source/blender/modifiers/intern/MOD_boolean.c 2013-01-23 05:42:45 UTC (rev 54017)
@@ -135,7 +135,13 @@
* in some cases the depsgraph fails us - especially for objects
* in other scenes when compositing */
if (bmd->object != ob) {
- dm = mesh_get_derived_final(md->scene, bmd->object, CD_MASK_MESH);
+ /* weak! - but we can too easy end up with circular dep crash otherwise */
+ if (modifiers_findByType(bmd->object, eModifierType_Boolean) == false) {
+ dm = mesh_get_derived_final(md->scene, bmd->object, CD_MASK_MESH);
+ }
+ else {
+ dm = bmd->object->derivedFinal;
+ }
}
else {
dm = NULL;
More information about the Bf-blender-cvs
mailing list