From 263fa406cd2bc1aefe410fe735c22967ee052e22 Mon Sep 17 00:00:00 2001 From: Hans Goudey Date: Thu, 5 Aug 2021 18:27:07 -0500 Subject: Fix T90087: Assigning object data doesn't copy vertex groups Assigning a mesh seems to do its own parameter copying, which means we need to manual copy its vertex groups here, which was just overlooked in rB3b6ee8cee708. Differential Revision: https://developer.blender.org/D12110 --- source/blender/blenkernel/intern/mesh_convert.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'source') diff --git a/source/blender/blenkernel/intern/mesh_convert.c b/source/blender/blenkernel/intern/mesh_convert.c index 0e4fe91e577..fbcd916a0df 100644 --- a/source/blender/blenkernel/intern/mesh_convert.c +++ b/source/blender/blenkernel/intern/mesh_convert.c @@ -38,6 +38,7 @@ #include "BLI_utildefines.h" #include "BKE_DerivedMesh.h" +#include "BKE_deform.h" #include "BKE_displist.h" #include "BKE_editmesh.h" #include "BKE_key.h" @@ -1665,6 +1666,9 @@ void BKE_mesh_nomain_to_mesh(Mesh *mesh_src, /* skip the listbase */ MEMCPY_STRUCT_AFTER(mesh_dst, &tmp, id.prev); + BKE_defgroup_copy_list(&mesh_dst->vertex_group_names, &mesh_src->vertex_group_names); + mesh_dst->vertex_group_active_index = mesh_src->vertex_group_active_index; + if (take_ownership) { if (alloctype == CD_ASSIGN) { CustomData_free_typemask(&mesh_src->vdata, mesh_src->totvert, ~mask->vmask); -- cgit v1.2.3