[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [60311] branches/soc-2013-rigid_body_sim/ source/blender/makesrna/intern/rna_rigidbody.c: rigidbody: Flag bodies for validation when changing shape

Sergej Reich sergej.reich at googlemail.com
Sun Sep 22 15:22:52 CEST 2013


Revision: 60311
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=60311
Author:   sergof
Date:     2013-09-22 13:22:52 +0000 (Sun, 22 Sep 2013)
Log Message:
-----------
rigidbody: Flag bodies for validation when changing shape

This fixes a pretty old crash that occurs when changing the collision
shape to a mesh shape during simulation.

Thanks to Thomas Beck (plasmasolutions) for the report.

Modified Paths:
--------------
    branches/soc-2013-rigid_body_sim/source/blender/makesrna/intern/rna_rigidbody.c

Modified: branches/soc-2013-rigid_body_sim/source/blender/makesrna/intern/rna_rigidbody.c
===================================================================
--- branches/soc-2013-rigid_body_sim/source/blender/makesrna/intern/rna_rigidbody.c	2013-09-22 11:32:26 UTC (rev 60310)
+++ branches/soc-2013-rigid_body_sim/source/blender/makesrna/intern/rna_rigidbody.c	2013-09-22 13:22:52 UTC (rev 60311)
@@ -182,6 +182,14 @@
 	rbo->flag |= RBO_FLAG_NEEDS_VALIDATE;
 }
 
+static void rna_RigidBodyOb_shape_set(PointerRNA *ptr, int value)
+{
+	RigidBodyOb *rbo = (RigidBodyOb *)ptr->data;
+
+	rbo->shape = value;
+	rbo->flag |= RBO_FLAG_NEEDS_VALIDATE;
+}
+
 static void rna_RigidBodyOb_disabled_set(PointerRNA *ptr, int value)
 {
 	RigidBodyOb *rbo = (RigidBodyOb *)ptr->data;
@@ -800,6 +808,7 @@
 	prop = RNA_def_property(srna, "collision_shape", PROP_ENUM, PROP_NONE);
 	RNA_def_property_enum_sdna(prop, NULL, "shape");
 	RNA_def_property_enum_items(prop, rigidbody_object_shape_items);
+	RNA_def_property_enum_funcs(prop, NULL, "rna_RigidBodyOb_shape_set", NULL);
 	RNA_def_property_ui_text(prop, "Collision Shape", "Collision Shape of object in Rigid Body Simulations");
 	RNA_def_property_clear_flag(prop, PROP_ANIMATABLE);
 	RNA_def_property_update(prop, NC_SPACE | ND_SPACE_VIEW3D, "rna_RigidBodyOb_reset");




More information about the Bf-blender-cvs mailing list