[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [26340] trunk/blender/source/blender/ blenkernel/intern/modifier.c: Fix part of #20090: boolean modifier would lose link to object

Brecht Van Lommel brecht at blender.org
Wed Jan 27 15:13:01 CET 2010


Revision: 26340
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=26340
Author:   blendix
Date:     2010-01-27 15:13:01 +0100 (Wed, 27 Jan 2010)

Log Message:
-----------
Fix part of #20090: boolean modifier would lose link to object
if evaluation failed, it should display an error message instead.

Modified Paths:
--------------
    trunk/blender/source/blender/blenkernel/intern/modifier.c

Modified: trunk/blender/source/blender/blenkernel/intern/modifier.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/modifier.c	2010-01-27 13:55:00 UTC (rev 26339)
+++ trunk/blender/source/blender/blenkernel/intern/modifier.c	2010-01-27 14:13:01 UTC (rev 26340)
@@ -6577,7 +6577,6 @@
 		ModifierData *md, Object *ob, DerivedMesh *derivedData,
   int useRenderParams, int isFinalCalc)
 {
-	// XXX doesn't handle derived data
 	BooleanModifierData *bmd = (BooleanModifierData*) md;
 	DerivedMesh *dm = bmd->object->derivedFinal;
 
@@ -6587,20 +6586,14 @@
 		DerivedMesh *result = NewBooleanDerivedMesh(dm, bmd->object, derivedData, ob,
 				1 + bmd->operation);
 
-		if(dm)
-			dm->release(dm);
-
 		/* if new mesh returned, return it; otherwise there was
 		* an error, so delete the modifier object */
 		if(result)
 			return result;
 		else
-			bmd->object = NULL;
+			modifier_setError(md, "Can't execute boolean operation.");
 	}
 	
-	if(dm)
-			dm->release(dm);
-
 	return derivedData;
 }
 





More information about the Bf-blender-cvs mailing list