[Bf-blender-cvs] [263fa406cd2] master: Fix T90087: Assigning object data doesn't copy vertex groups

Hans Goudey noreply at git.blender.org
Fri Aug 6 01:27:34 CEST 2021


Commit: 263fa406cd2bc1aefe410fe735c22967ee052e22
Author: Hans Goudey
Date:   Thu Aug 5 18:27:07 2021 -0500
Branches: master
https://developer.blender.org/rB263fa406cd2bc1aefe410fe735c22967ee052e22

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

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

M	source/blender/blenkernel/intern/mesh_convert.c

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

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);



More information about the Bf-blender-cvs mailing list