[Bf-blender-cvs] [8b8c3c34dd9] master: Fix T88900: Crash when setting Edge Weight/Crease

Germano Cavalcante noreply at git.blender.org
Mon Jun 7 12:52:42 CEST 2021


Commit: 8b8c3c34dd9f708210dad9ed014e56aa5c0d50b1
Author: Germano Cavalcante
Date:   Mon Jun 7 07:52:34 2021 -0300
Branches: master
https://developer.blender.org/rB8b8c3c34dd9f708210dad9ed014e56aa5c0d50b1

Fix T88900: Crash when setting Edge Weight/Crease

The `recalcData` of "convert_mesh_edge" did more
than it was supposed to.

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

M	source/blender/editors/transform/transform_convert.c
M	source/blender/editors/transform/transform_convert.h
M	source/blender/editors/transform/transform_convert_mesh_edge.c

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

diff --git a/source/blender/editors/transform/transform_convert.c b/source/blender/editors/transform/transform_convert.c
index b4175faacf4..9e285dd2d26 100644
--- a/source/blender/editors/transform/transform_convert.c
+++ b/source/blender/editors/transform/transform_convert.c
@@ -1698,9 +1698,11 @@ void recalcData(TransInfo *t)
       recalcData_mask_common(t);
       break;
     case TC_MESH_VERTS:
-    case TC_MESH_EDGES:
       recalcData_mesh(t);
       break;
+    case TC_MESH_EDGES:
+      recalcData_mesh_edge(t);
+      break;
     case TC_MESH_SKIN:
       recalcData_mesh_skin(t);
       break;
diff --git a/source/blender/editors/transform/transform_convert.h b/source/blender/editors/transform/transform_convert.h
index 11550ec8803..918ce0739ed 100644
--- a/source/blender/editors/transform/transform_convert.h
+++ b/source/blender/editors/transform/transform_convert.h
@@ -169,6 +169,7 @@ void special_aftertrans_update__mesh(bContext *C, TransInfo *t);
 
 /* transform_convert_mesh_edge.c */
 void createTransEdge(TransInfo *t);
+void recalcData_mesh_edge(TransInfo *t);
 
 /* transform_convert_mesh_skin.c */
 void createTransMeshSkin(TransInfo *t);
diff --git a/source/blender/editors/transform/transform_convert_mesh_edge.c b/source/blender/editors/transform/transform_convert_mesh_edge.c
index bb9296b4b90..3b1191a3401 100644
--- a/source/blender/editors/transform/transform_convert_mesh_edge.c
+++ b/source/blender/editors/transform/transform_convert_mesh_edge.c
@@ -123,4 +123,11 @@ void createTransEdge(TransInfo *t)
   }
 }
 
+void recalcData_mesh_edge(TransInfo *t)
+{
+  FOREACH_TRANS_DATA_CONTAINER (t, tc) {
+    DEG_id_tag_update(tc->obedit->data, ID_RECALC_GEOMETRY);
+  }
+}
+
 /** \} */



More information about the Bf-blender-cvs mailing list