From 7b1c406b5431ce65d84ddb5f2c53977c25c18373 Mon Sep 17 00:00:00 2001 From: Bastien Montagne Date: Thu, 9 Jul 2020 15:33:34 +0200 Subject: Implement T77959: Never duplicate linked data during deep-copy. Note that this behavior is enforced on user level for now, but on code side it is controlled with a flag, which should make it easy to refine that behavior if needed. Only exception is when we duplicate a linked ID directly (then we assume user wants a local deep-copy of that linked data, and we always also duplicate linked sub-data-blocks). Note that this commit also slightly refactor the handling of actions of animdata, by simplifying `BKE_animdata_copy_id_action()` and adding an explicit new `BKE_animdata_duplicate_id_action()` to be used during ID duplication (deep copy). This also allows us to get rid of the special case for liboverrides. --- source/blender/blenkernel/BKE_object.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'source/blender/blenkernel/BKE_object.h') diff --git a/source/blender/blenkernel/BKE_object.h b/source/blender/blenkernel/BKE_object.h index d830a35dda0..f2a022c84a3 100644 --- a/source/blender/blenkernel/BKE_object.h +++ b/source/blender/blenkernel/BKE_object.h @@ -139,7 +139,7 @@ bool BKE_object_obdata_is_libdata(const struct Object *ob); struct Object *BKE_object_duplicate(struct Main *bmain, struct Object *ob, - const uint dupflag, + uint dupflag, const uint duplicate_options); void BKE_object_obdata_size_init(struct Object *ob, const float scale); -- cgit v1.2.3