[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [54062] trunk/blender/source/blender/ blenkernel/intern/rigidbody.c: rigidbody: Fix [#33971] Bullet Physics crash + patch

Sergej Reich sergej.reich at googlemail.com
Thu Jan 24 04:49:37 CET 2013


Revision: 54062
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=54062
Author:   sergof
Date:     2013-01-24 03:49:30 +0000 (Thu, 24 Jan 2013)
Log Message:
-----------
rigidbody: Fix [#33971] Bullet Physics crash + patch

BKE_rigidbody_aftertrans_update() can be called before rigid body is
validated so check before updating physics_object.

Thanks to Antony Riakiotakis (psy-fi) for the initial patch.

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

Modified: trunk/blender/source/blender/blenkernel/intern/rigidbody.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/rigidbody.c	2013-01-24 02:52:03 UTC (rev 54061)
+++ trunk/blender/source/blender/blenkernel/intern/rigidbody.c	2013-01-24 03:49:30 UTC (rev 54062)
@@ -1157,7 +1157,7 @@
 {
 	RigidBodyOb *rbo = ob->rigidbody_object;
 
-	/* return rigid body and objext to their initial states */
+	/* return rigid body and object to their initial states */
 	copy_v3_v3(rbo->pos, ob->loc);
 	copy_v3_v3(ob->loc, loc);
 
@@ -1174,7 +1174,8 @@
 		copy_qt_qt(rbo->orn, ob->quat);
 		copy_qt_qt(ob->quat, quat);
 	}
-	RB_body_set_loc_rot(rbo->physics_object, rbo->pos, rbo->orn);
+	if (rbo->physics_object)
+		RB_body_set_loc_rot(rbo->physics_object, rbo->pos, rbo->orn);
 	// RB_TODO update rigid body physics object's loc/rot for dynamic objects here as well (needs to be done outside bullet's update loop)
 }
 




More information about the Bf-blender-cvs mailing list