[Bf-blender-cvs] [f72b86d] master: Fix T37906: Adding force field settings to boids gives hard crash

Sergey Sharybin noreply at git.blender.org
Sat Dec 21 15:36:32 CET 2013


Commit: f72b86da8cab4bff482fc58095d14c97823fa39f
Author: Sergey Sharybin
Date:   Sat Dec 21 20:35:47 2013 +0600
http://developer.blender.org/rBf72b86da8cab4bff482fc58095d14c97823fa39f

Fix T37906: Adding force field settings to boids gives hard crash

Was a regression since fix for another bug T37189.

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

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

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

diff --git a/source/blender/makesrna/intern/rna_object_force.c b/source/blender/makesrna/intern/rna_object_force.c
index b8cf7a1..cab9287 100644
--- a/source/blender/makesrna/intern/rna_object_force.c
+++ b/source/blender/makesrna/intern/rna_object_force.c
@@ -525,13 +525,19 @@ static void rna_FieldSettings_shape_update(Main *bmain, Scene *scene, PointerRNA
 
 static void rna_FieldSettings_type_set(PointerRNA *ptr, int value)
 {
-	Object *ob = (Object *)ptr->id.data;
-	ob->pd->forcefield = value;
-	if (ELEM(value, PFIELD_WIND, PFIELD_VORTEX)) {
-		ob->empty_drawtype = OB_SINGLE_ARROW;
-	}
-	else {
-		ob->empty_drawtype = OB_PLAINAXES;
+	PartDeflect *part_deflect = (PartDeflect *) ptr->data;
+
+	part_deflect->forcefield = value;
+
+	if (!particle_id_check(ptr)) {
+		Object *ob = (Object *)ptr->id.data;
+		ob->pd->forcefield = value;
+		if (ELEM(value, PFIELD_WIND, PFIELD_VORTEX)) {
+			ob->empty_drawtype = OB_SINGLE_ARROW;
+		}
+		else {
+			ob->empty_drawtype = OB_PLAINAXES;
+		}
 	}
 }




More information about the Bf-blender-cvs mailing list