[Bf-blender-cvs] [eac7faa] master: Use new generic BKE_id_expand_local() for make_local() for nodetree.

Bastien Montagne noreply at git.blender.org
Mon Jul 11 22:35:15 CEST 2016


Commit: eac7faa0e6a91ba17dcaad78c581e2061fd000e6
Author: Bastien Montagne
Date:   Mon Jul 11 19:44:14 2016 +0200
Branches: master
https://developer.blender.org/rBeac7faa0e6a91ba17dcaad78c581e2061fd000e6

Use new generic BKE_id_expand_local() for make_local() for nodetree.

Did not changed ntree copy for now, this func is a mess of expand/non-expand/bmain/non-bmain cases...
Keep it for later!

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

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

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

diff --git a/source/blender/blenkernel/intern/node.c b/source/blender/blenkernel/intern/node.c
index b188272..75c323a 100644
--- a/source/blender/blenkernel/intern/node.c
+++ b/source/blender/blenkernel/intern/node.c
@@ -1950,21 +1950,6 @@ bNodeTree *ntreeFromID(ID *id)
 	}
 }
 
-static int extern_local_ntree_callback(
-        void *UNUSED(user_data), struct ID *UNUSED(id_self), struct ID **id_pointer, int cd_flag)
-{
-	/* We only tag usercounted ID usages as extern... Why? */
-	if ((cd_flag & IDWALK_USER) && *id_pointer) {
-		id_lib_extern(*id_pointer);
-	}
-	return IDWALK_RET_NOP;
-}
-
-static void extern_local_ntree(bNodeTree *ntree)
-{
-	BKE_library_foreach_ID_link(&ntree->id, extern_local_ntree_callback, NULL, 0);
-}
-
 void ntreeMakeLocal(Main *bmain, bNodeTree *ntree, bool id_in_mainlist)
 {
 	bool is_lib = false, is_local = false;
@@ -1983,7 +1968,7 @@ void ntreeMakeLocal(Main *bmain, bNodeTree *ntree, bool id_in_mainlist)
 	if (is_local) {
 		if (!is_lib) {
 			id_clear_lib_data_ex(bmain, (ID *)ntree, id_in_mainlist);
-			extern_local_ntree(ntree);
+			BKE_id_expand_local(&ntree->id, false);
 		}
 		else {
 			bNodeTree *ntree_new = ntreeCopyTree(bmain, ntree);




More information about the Bf-blender-cvs mailing list