[Bf-blender-cvs] [97109b6] render-layers: Fix stupidest mistake (objects > filter_objects)

Dalai Felinto noreply at git.blender.org
Tue Dec 6 15:57:31 CET 2016


Commit: 97109b654e87911e943998e1e9344b6bd72e28bc
Author: Dalai Felinto
Date:   Tue Dec 6 15:57:04 2016 +0100
Branches: render-layers
https://developer.blender.org/rB97109b654e87911e943998e1e9344b6bd72e28bc

Fix stupidest mistake (objects > filter_objects)

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

M	source/blender/blenkernel/intern/layer.c
M	source/blender/blenloader/intern/readfile.c

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

diff --git a/source/blender/blenkernel/intern/layer.c b/source/blender/blenkernel/intern/layer.c
index 2e60902..309c969 100644
--- a/source/blender/blenkernel/intern/layer.c
+++ b/source/blender/blenkernel/intern/layer.c
@@ -141,6 +141,7 @@ static void scene_layer_object_base_unref(SceneLayer* sl, ObjectBase *base)
 static ObjectBase *object_base_add(SceneLayer *sl, Object *ob)
 {
 	ObjectBase *base = MEM_callocN(sizeof(ObjectBase), "Object Base");
+	/* don't bump user count */
 	base->object = ob;
 	BLI_addtail(&sl->object_bases, base);
 	return base;
diff --git a/source/blender/blenloader/intern/readfile.c b/source/blender/blenloader/intern/readfile.c
index 1cf9b26..4e9b74f 100644
--- a/source/blender/blenloader/intern/readfile.c
+++ b/source/blender/blenloader/intern/readfile.c
@@ -5237,7 +5237,7 @@ static void lib_link_scene_collection(FileData *fd, Library *lib, SceneCollectio
 		BLI_assert(link->data);
 	}
 
-	for (LinkData *link = sc->objects.first; link; link = link->next) {
+	for (LinkData *link = sc->filter_objects.first; link; link = link->next) {
 		link->data = newlibadr_us(fd, lib, link->data);
 		BLI_assert(link->data);
 	}
@@ -5400,7 +5400,8 @@ static void lib_link_scene(FileData *fd, Main *main)
 
 			for (sl = sce->render_layers.first; sl; sl = sl->next) {
 				for (ObjectBase *ob_base = sl->object_bases.first; ob_base; ob_base = ob_base->next) {
-					ob_base->object = newlibadr_us(fd, sce->id.lib, ob_base->object);
+					/* we only bump the use count for the collection objects */
+					ob_base->object = newlibadr(fd, sce->id.lib, ob_base->object);
 				}
 			}
 
@@ -5775,7 +5776,7 @@ static void direct_link_scene(FileData *fd, Scene *sce)
 	direct_link_curvemapping(fd, &sce->r.mblur_shutter_curve);
 
 	/* this runs before the very first doversion */
-	if (sce->collection != NULL) {
+	if (sce->collection) {
 		sce->collection = newdataadr(fd, sce->collection);
 		direct_link_scene_collection(fd, sce->collection);
 	}




More information about the Bf-blender-cvs mailing list