[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [36204] trunk/blender/source/blender/ makesrna/intern/rna_object_force.c: fix [#26995] Crash on bpy.context. object.collision

Campbell Barton ideasman42 at gmail.com
Mon Apr 18 03:40:48 CEST 2011


Revision: 36204
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=36204
Author:   campbellbarton
Date:     2011-04-18 01:40:45 +0000 (Mon, 18 Apr 2011)
Log Message:
-----------
fix [#26995] Crash on bpy.context.object.collision
  use object.collision rather then object.modifiers[...].settings

Modified Paths:
--------------
    trunk/blender/source/blender/makesrna/intern/rna_object_force.c

Modified: trunk/blender/source/blender/makesrna/intern/rna_object_force.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_object_force.c	2011-04-18 00:36:48 UTC (rev 36203)
+++ trunk/blender/source/blender/makesrna/intern/rna_object_force.c	2011-04-18 01:40:45 UTC (rev 36204)
@@ -322,10 +322,21 @@
 
 static char *rna_CollisionSettings_path(PointerRNA *ptr)
 {
+	/* both methods work ok, but return the shorter path */
+#if 0
 	Object *ob= (Object*)ptr->id.data;
 	ModifierData *md = (ModifierData *)modifiers_findByType(ob, eModifierType_Collision);
-	
-	return BLI_sprintfN("modifiers[\"%s\"].settings", md->name);
+
+	if(md) {
+		return BLI_sprintfN("modifiers[\"%s\"].settings", md->name);
+	}
+	else {
+		return BLI_strdup("");
+	}
+#else
+	/* more reliable */
+	return BLI_strdup("collision");
+#endif
 }
 
 static int rna_SoftBodySettings_use_edges_get(PointerRNA *ptr)




More information about the Bf-blender-cvs mailing list