diff --git a/source/blender/editors/mesh/mesh_data.cc b/source/blender/editors/mesh/mesh_data.cc index 263f7164fe6..5f9af148015 100644 --- a/source/blender/editors/mesh/mesh_data.cc +++ b/source/blender/editors/mesh/mesh_data.cc @@ -1534,8 +1534,13 @@ void ED_mesh_split_faces(Mesh *mesh) const Span polys = mesh->polys(); const Span loops = mesh->loops(); const float split_angle = (mesh->flag & ME_AUTOSMOOTH) != 0 ? mesh->smoothresh : float(M_PI); + const bke::AttributeAccessor attributes = mesh->attributes(); + const VArray mesh_sharp_edges = attributes.lookup_or_default( + "sharp_edge", ATTR_DOMAIN_EDGE, false); + + Array sharp_edges(mesh->totedge); + mesh_sharp_edges.materialize(sharp_edges); - Array sharp_edges(mesh->totedge, false); BKE_edges_sharp_from_angle_set(mesh->totedge, loops.data(), loops.size(),