[Bf-blender-cvs] [c05fe45] soc-2016-layer_manager: Fix crash adding object after opening saved .blend

Julian Eisel noreply at git.blender.org
Tue Jul 12 16:11:56 CEST 2016


Commit: c05fe4524a1f38bc41531ce24c1e8a6afe1954b2
Author: Julian Eisel
Date:   Tue Jul 12 15:59:08 2016 +0200
Branches: soc-2016-layer_manager
https://developer.blender.org/rBc05fe4524a1f38bc41531ce24c1e8a6afe1954b2

Fix crash adding object after opening saved .blend

And move stuff into own function.

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

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

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

diff --git a/source/blender/blenloader/intern/readfile.c b/source/blender/blenloader/intern/readfile.c
index d2f57fa..1c91002 100644
--- a/source/blender/blenloader/intern/readfile.c
+++ b/source/blender/blenloader/intern/readfile.c
@@ -5837,6 +5837,7 @@ static void direct_link_view_settings(FileData *fd, ColorManagedViewSettings *vi
 }
 
 #ifdef WITH_ADVANCED_LAYERS
+
 /**
  * \note Recursive.
  */
@@ -5868,6 +5869,15 @@ static void direct_link_layeritems(FileData *fd, ListBase *layeritems, LayerTree
 		direct_link_layeritems(fd, &litem->childs, ltree, counter);
 	}
 }
+
+static void direct_link_layertree(FileData *fd, LayerTree *ltree)
+{
+	int counter = 0;
+	ltree->items_all = newdataadr(fd, ltree->items_all);
+	ltree->active_layer = newdataadr(fd, ltree->active_layer);
+	direct_link_layeritems(fd, &ltree->items, ltree, &counter);
+}
+
 #endif
 
 static void direct_link_scene(FileData *fd, Scene *sce)
@@ -6103,9 +6113,7 @@ static void direct_link_scene(FileData *fd, Scene *sce)
 #ifdef WITH_ADVANCED_LAYERS
 	sce->object_layers = newdataadr(fd, sce->object_layers);
 	if (sce->object_layers) {
-		int counter = 0;
-		sce->object_layers->items_all = newdataadr(fd, sce->object_layers->items_all);
-		direct_link_layeritems(fd, &sce->object_layers->items, sce->object_layers, &counter);
+		direct_link_layertree(fd, sce->object_layers);
 	}
 #endif




More information about the Bf-blender-cvs mailing list