Fix T81865, T81860: CustomData Correction can fail on non standard names

Caused by rBaafd71a8a160.

In the process of CustomData Correction, we need to make sure we also
have matching layer names [as was done before above commit], otherwise
this will create layers with default names, applying
(mesh_customdatacorrect_apply and friends) will fail then.

Maniphest Tasks: T81865

Differential Revision: https://developer.blender.org/D9278
This commit is contained in:
Philipp Oeser 2020-10-20 10:48:05 +02:00
parent 1c08ab4535
commit 239eb95ef8
Notes: blender-bot 2023-02-14 05:36:11 +01:00
Referenced by issue #81865, Vertex Color layer corrupted after edge operations in EDIT mode
Referenced by issue #81860, UV edge loop issue if UV map is not called 'UVMap'
1 changed files with 2 additions and 1 deletions

View File

@ -641,7 +641,8 @@ void BM_mesh_copy_init_customdata_all_layers(BMesh *bm_dst,
const int size = *(&allocsize->totvert + i);
for (int l = 0; l < src->totlayer; l++) {
CustomData_add_layer(dst, src->layers[l].type, CD_CALLOC, NULL, 0);
CustomData_add_layer_named(
dst, src->layers[l].type, CD_CALLOC, NULL, 0, src->layers[l].name);
}
CustomData_bmesh_init_pool(dst, size, htypes[i]);
}