[Bf-blender-cvs] [70a8498cece] master: Cleanup/refactor: move init of Collection to proper place.
Bastien Montagne
noreply at git.blender.org
Thu Oct 8 16:12:28 CEST 2020
Commit: 70a8498cece0ec710b6e52d51591a15d4c094364
Author: Bastien Montagne
Date: Thu Oct 8 16:11:56 2020 +0200
Branches: master
https://developer.blender.org/rB70a8498cece0ec710b6e52d51591a15d4c094364
Cleanup/refactor: move init of Collection to proper place.
===================================================================
M source/blender/blenkernel/intern/collection.c
===================================================================
diff --git a/source/blender/blenkernel/intern/collection.c b/source/blender/blenkernel/intern/collection.c
index 9c4f46dac4b..ed89a964237 100644
--- a/source/blender/blenkernel/intern/collection.c
+++ b/source/blender/blenkernel/intern/collection.c
@@ -42,6 +42,8 @@
#include "BKE_rigidbody.h"
#include "BKE_scene.h"
+#include "DNA_defaults.h"
+
#include "DNA_ID.h"
#include "DNA_collection_types.h"
#include "DNA_layer_types.h"
@@ -81,6 +83,16 @@ static bool collection_find_child_recursive(Collection *parent, Collection *coll
/** \name Collection Data-Block
* \{ */
+static void collection_init_data(ID *id)
+{
+ Collection *collection = (Collection *)id;
+ BLI_assert(MEMCMP_STRUCT_AFTER_IS_ZERO(collection, id));
+
+ MEMCPY_STRUCT_AFTER(collection, DNA_struct_default_get(Collection), id);
+
+ collection->color_tag = COLLECTION_COLOR_NONE;
+}
+
/**
* Only copy internal data of Collection ID from source
* to already allocated/initialized destination.
@@ -168,7 +180,7 @@ IDTypeInfo IDType_ID_GR = {
.translation_context = BLT_I18NCONTEXT_ID_COLLECTION,
.flags = IDTYPE_FLAGS_NO_ANIMDATA,
- .init_data = NULL,
+ .init_data = collection_init_data,
.copy_data = collection_copy_data,
.free_data = collection_free_data,
.make_local = NULL,
@@ -204,7 +216,6 @@ static Collection *collection_add(Main *bmain,
/* Create new collection. */
Collection *collection = BKE_id_new(bmain, ID_GR, name);
- collection->color_tag = COLLECTION_COLOR_NONE;
/* We increase collection user count when linking to Collections. */
id_us_min(&collection->id);
More information about the Bf-blender-cvs
mailing list