[Bf-blender-cvs] [d77b87eb93e] master: Fix invalid versioning code for meshes

Sergey Sharybin noreply at git.blender.org
Thu Feb 2 13:10:50 CET 2023


Commit: d77b87eb93ee264856c17eba4989789af2d9e458
Author: Sergey Sharybin
Date:   Thu Feb 2 13:02:41 2023 +0100
Branches: master
https://developer.blender.org/rBd77b87eb93ee264856c17eba4989789af2d9e458

Fix invalid versioning code for meshes

The issue was introduced in d92edca8622: one shall not use
polygon index to index polygon custom data layer.

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

M	source/blender/blenkernel/intern/mesh_legacy_convert.cc

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

diff --git a/source/blender/blenkernel/intern/mesh_legacy_convert.cc b/source/blender/blenkernel/intern/mesh_legacy_convert.cc
index 46de138fde7..c380a61dce2 100644
--- a/source/blender/blenkernel/intern/mesh_legacy_convert.cc
+++ b/source/blender/blenkernel/intern/mesh_legacy_convert.cc
@@ -1238,7 +1238,8 @@ void BKE_mesh_legacy_face_set_from_generic(Mesh *mesh,
     }
   }
   if (faceset_data != nullptr) {
-    CustomData_add_layer(&mesh->pdata, CD_SCULPT_FACE_SETS, CD_ASSIGN, faceset_data, mesh->totpoly);
+    CustomData_add_layer(
+        &mesh->pdata, CD_SCULPT_FACE_SETS, CD_ASSIGN, faceset_data, mesh->totpoly);
   }
 }
 
@@ -1249,7 +1250,7 @@ void BKE_mesh_legacy_face_set_to_generic(Mesh *mesh)
     return;
   }
   void *faceset_data = nullptr;
-  for (const int i : IndexRange(mesh->totpoly)) {
+  for (const int i : IndexRange(mesh->pdata.totlayer)) {
     if (mesh->pdata.layers[i].type == CD_SCULPT_FACE_SETS) {
       faceset_data = mesh->pdata.layers[i].data;
       mesh->pdata.layers[i].data = nullptr;
@@ -1258,7 +1259,8 @@ void BKE_mesh_legacy_face_set_to_generic(Mesh *mesh)
     }
   }
   if (faceset_data != nullptr) {
-    CustomData_add_layer_named(&mesh->pdata, CD_PROP_INT32, CD_ASSIGN, faceset_data, mesh->totpoly, ".sculpt_face_set");
+    CustomData_add_layer_named(
+        &mesh->pdata, CD_PROP_INT32, CD_ASSIGN, faceset_data, mesh->totpoly, ".sculpt_face_set");
   }
 }



More information about the Bf-blender-cvs mailing list