[Bf-blender-cvs] [a33cc08] free-refcount-ids: Fix for object freeing.

Bastien Montagne noreply at git.blender.org
Mon Oct 5 13:58:35 CEST 2015


Commit: a33cc08a99a173762c20c68a26a898f4da8f5708
Author: Bastien Montagne
Date:   Mon Oct 5 13:58:21 2015 +0200
Branches: free-refcount-ids
https://developer.blender.org/rBa33cc08a99a173762c20c68a26a898f4da8f5708

Fix for object freeing.

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

M	source/blender/blenkernel/intern/object.c

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

diff --git a/source/blender/blenkernel/intern/object.c b/source/blender/blenkernel/intern/object.c
index 36dc954..6dbbee5 100644
--- a/source/blender/blenkernel/intern/object.c
+++ b/source/blender/blenkernel/intern/object.c
@@ -389,6 +389,9 @@ void BKE_object_free_caches(Object *object)
  */
 void BKE_object_free(Object *ob, const bool do_id_user)
 {
+	/* Needs valid obdata pointer... */
+	BKE_object_free_derived_caches(ob);
+
 	if (do_id_user) {
 		/* Note: This totally ignores indirectly-'linked' datablocks (through constraints, modifiers...).
 		 *       That’s fine for now (none of them actually refcount IDs), remap project will rework this deeply anyway. */
@@ -420,8 +423,6 @@ void BKE_object_free(Object *ob, const bool do_id_user)
 
 	BKE_animdata_free((ID *)ob);
 
-	BKE_object_free_derived_caches(ob);
-
 	MEM_SAFE_FREE(ob->mat);
 	MEM_SAFE_FREE(ob->matbits);
 	MEM_SAFE_FREE(ob->iuser);




More information about the Bf-blender-cvs mailing list