[Bf-blender-cvs] [9fa8c01f6bd] blender2.8: Fix (unreported, related to T58210) LaplacianDeform binding state incorrectly reported by RNA.

Bastien Montagne noreply at git.blender.org
Wed Dec 5 20:54:22 CET 2018


Commit: 9fa8c01f6bdce150da750a53f59f947d65707ccc
Author: Bastien Montagne
Date:   Wed Dec 5 18:37:29 2018 +0100
Branches: blender2.8
https://developer.blender.org/rB9fa8c01f6bdce150da750a53f59f947d65707ccc

Fix (unreported, related to T58210) LaplacianDeform binding state incorrectly reported by RNA.

LaplacianDeform binding handling is a catastrophee in CoW context,
because half of the binding (the laplacian solver cache thingy) is not
saved, and can be re-generated on the fly from stored vcos.

This means that binding is not only done when hitting 'bind' button, but
also at file load, and when some things change.

And this utterly breaks with CoW design, not sure how to fix, will add a
task about that.

But this also means that NULL laplacian solver cache pointer is not a
good check to know whether it is binded or not, only stored vcos are
relevant for that (and the binding flag, of course).

===================================================================

M	source/blender/makesrna/intern/rna_modifier.c

===================================================================

diff --git a/source/blender/makesrna/intern/rna_modifier.c b/source/blender/makesrna/intern/rna_modifier.c
index 5e69f8a32f3..fb70d3b86a0 100644
--- a/source/blender/makesrna/intern/rna_modifier.c
+++ b/source/blender/makesrna/intern/rna_modifier.c
@@ -781,7 +781,7 @@ static void rna_OceanModifier_ocean_chop_set(PointerRNA *ptr, float value)
 static bool rna_LaplacianDeformModifier_is_bind_get(PointerRNA *ptr)
 {
 	LaplacianDeformModifierData *lmd = (LaplacianDeformModifierData *)ptr->data;
-	return ((lmd->flag & MOD_LAPLACIANDEFORM_BIND) && (lmd->cache_system != NULL));
+	return ((lmd->flag & MOD_LAPLACIANDEFORM_BIND) && (lmd->vertexco != NULL));
 }
 
 /* NOTE: Curve and array modifiers requires curve path to be evaluated,



More information about the Bf-blender-cvs mailing list