[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [37026] trunk/blender/source/gameengine/ Converter/BL_BlenderDataConversion.cpp: BGE: fix bug #26775, crash when physics constraint is defined on non-active objects.
Benoit Bolsee
benoit.bolsee at online.be
Mon May 30 17:40:01 CEST 2011
Revision: 37026
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=37026
Author: ben2610
Date: 2011-05-30 15:40:01 +0000 (Mon, 30 May 2011)
Log Message:
-----------
BGE: fix bug #26775, crash when physics constraint is defined on non-active objects. Patch provided by Sergey Sharybin, verified and applied.
Modified Paths:
--------------
trunk/blender/source/gameengine/Converter/BL_BlenderDataConversion.cpp
Modified: trunk/blender/source/gameengine/Converter/BL_BlenderDataConversion.cpp
===================================================================
--- trunk/blender/source/gameengine/Converter/BL_BlenderDataConversion.cpp 2011-05-30 14:55:35 UTC (rev 37025)
+++ trunk/blender/source/gameengine/Converter/BL_BlenderDataConversion.cpp 2011-05-30 15:40:01 UTC (rev 37026)
@@ -2608,6 +2608,9 @@
bConstraint *curcon;
conlist = get_active_constraints2(blenderobject);
+ if((gameobj->GetLayer()&activeLayerBitInfo)==0)
+ continue;
+
if (conlist) {
for (curcon = (bConstraint *)conlist->first; curcon; curcon=(bConstraint *)curcon->next) {
if (curcon->type==CONSTRAINT_TYPE_RIGIDBODYJOINT){
@@ -2621,7 +2624,7 @@
if (dat->tar)
{
KX_GameObject *gotar=getGameOb(dat->tar->id.name+2,sumolist);
- if (gotar && gotar->GetPhysicsController())
+ if (gotar && ((gotar->GetLayer()&activeLayerBitInfo)!=0) && gotar->GetPhysicsController())
physctr2 = (PHY_IPhysicsController*) gotar->GetPhysicsController()->GetUserData();
}
More information about the Bf-blender-cvs
mailing list