diff options
Diffstat (limited to 'source/blender/blenkernel/intern/group.c')
-rw-r--r-- | source/blender/blenkernel/intern/group.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/source/blender/blenkernel/intern/group.c b/source/blender/blenkernel/intern/group.c index 95c7730431a..5a51d4797bb 100644 --- a/source/blender/blenkernel/intern/group.c +++ b/source/blender/blenkernel/intern/group.c @@ -86,18 +86,19 @@ Group *BKE_group_add(Main *bmain, const char *name) return group; } -Group *BKE_group_copy(Group *group) +Group *BKE_group_copy(Main *bmain, Group *group) { Group *groupn; - groupn = BKE_libblock_copy(&group->id); + groupn = BKE_libblock_copy(bmain, &group->id); BLI_duplicatelist(&groupn->gobject, &group->gobject); /* Do not copy group's preview (same behavior as for objects). */ groupn->preview = NULL; - if (group->id.lib) { - BKE_id_lib_local_paths(G.main, group->id.lib, &groupn->id); + if (ID_IS_LINKED_DATABLOCK(group)) { + BKE_id_expand_local(&groupn->id); + BKE_id_lib_local_paths(bmain, group->id.lib, &groupn->id); } return groupn; |