Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source/blender/blenkernel/intern/attribute_access.cc5
1 files changed, 5 insertions, 0 deletions
diff --git a/source/blender/blenkernel/intern/attribute_access.cc b/source/blender/blenkernel/intern/attribute_access.cc
index 95a6628b1ae..21ab7f61447 100644
--- a/source/blender/blenkernel/intern/attribute_access.cc
+++ b/source/blender/blenkernel/intern/attribute_access.cc
@@ -1202,6 +1202,11 @@ WriteAttributePtr MeshComponent::attribute_try_get_for_write(const StringRef att
if (mesh_->dvert == nullptr) {
BKE_object_defgroup_data_create(&mesh_->id);
}
+ else {
+ /* Copy the data layer if it is shared with some other mesh. */
+ mesh_->dvert = (MDeformVert *)CustomData_duplicate_referenced_layer(
+ &mesh_->vdata, CD_MDEFORMVERT, mesh_->totvert);
+ }
return std::make_unique<blender::bke::VertexWeightWriteAttribute>(
mesh_->dvert, mesh_->totvert, vertex_group_index);
}