[Bf-blender-cvs] [21e3b89634d] blender-v2.90-release: Fix T80516: Hook modifier crashes without vertex group data

Campbell Barton noreply at git.blender.org
Mon Sep 21 09:50:34 CEST 2020


Commit: 21e3b89634d3d517518dc340b8b26775aff500d2
Author: Campbell Barton
Date:   Thu Sep 10 17:58:05 2020 +1000
Branches: blender-v2.90-release
https://developer.blender.org/rB21e3b89634d3d517518dc340b8b26775aff500d2

Fix T80516: Hook modifier crashes without vertex group data

Checks for existence of a vertex group must check the array isn't NULL.

Regression in c1386795a922.

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

M	source/blender/modifiers/intern/MOD_hook.c

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

diff --git a/source/blender/modifiers/intern/MOD_hook.c b/source/blender/modifiers/intern/MOD_hook.c
index 083348dfb26..a55be041c91 100644
--- a/source/blender/modifiers/intern/MOD_hook.c
+++ b/source/blender/modifiers/intern/MOD_hook.c
@@ -313,10 +313,19 @@ static void deformVerts_do(HookModifierData *hmd,
   MOD_get_vgroup(ob, mesh, hmd->name, &dvert, &hd.defgrp_index);
   int cd_dvert_offset = -1;
 
-  if ((em != NULL) && (hd.defgrp_index != -1)) {
-    cd_dvert_offset = CustomData_get_offset(&em->bm->vdata, CD_MDEFORMVERT);
-    if (cd_dvert_offset == -1) {
-      hd.defgrp_index = -1;
+  if (hd.defgrp_index != -1) {
+    /* Edit-mesh. */
+    if (em != NULL) {
+      cd_dvert_offset = CustomData_get_offset(&em->bm->vdata, CD_MDEFORMVERT);
+      if (cd_dvert_offset == -1) {
+        hd.defgrp_index = -1;
+      }
+    }
+    else {
+      /* Regular mesh. */
+      if (dvert == NULL) {
+        hd.defgrp_index = -1;
+      }
     }
   }



More information about the Bf-blender-cvs mailing list