[Bf-blender-cvs] [101c3d4ce45] blender-v2.91-release: Fix T60517: "Fix Deforms" crashes for meshes without vgroup data

Campbell Barton noreply at git.blender.org
Wed Nov 4 01:25:11 CET 2020


Commit: 101c3d4ce4554a4d00ff89830c6b500f3e986365
Author: Campbell Barton
Date:   Wed Nov 4 11:13:39 2020 +1100
Branches: blender-v2.91-release
https://developer.blender.org/rB101c3d4ce4554a4d00ff89830c6b500f3e986365

Fix T60517: "Fix Deforms" crashes for meshes without vgroup data

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

M	source/blender/editors/object/object_vgroup.c

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

diff --git a/source/blender/editors/object/object_vgroup.c b/source/blender/editors/object/object_vgroup.c
index 26863fd0848..e92b3323441 100644
--- a/source/blender/editors/object/object_vgroup.c
+++ b/source/blender/editors/object/object_vgroup.c
@@ -2692,6 +2692,22 @@ static bool vertex_group_mesh_poll(bContext *C)
   return (vertex_group_poll(C) && ob->type == OB_MESH);
 }
 
+static bool vertex_group_mesh_with_dvert_poll(bContext *C)
+{
+  Object *ob = ED_object_context(C);
+
+  if (!vertex_group_mesh_poll(C)) {
+    return false;
+  }
+
+  Mesh *me = ob->data;
+  if (me->dvert == NULL) {
+    return false;
+  }
+
+  return true;
+}
+
 static bool UNUSED_FUNCTION(vertex_group_mesh_supported_poll)(bContext *C)
 {
   Object *ob = ED_object_context(C);
@@ -3313,7 +3329,7 @@ void OBJECT_OT_vertex_group_fix(wmOperatorType *ot)
       "groups' weights (this tool may be slow for many vertices)";
 
   /* api callbacks */
-  ot->poll = vertex_group_mesh_poll;
+  ot->poll = vertex_group_mesh_with_dvert_poll;
   ot->exec = vertex_group_fix_exec;
 
   /* flags */



More information about the Bf-blender-cvs mailing list