[Bf-blender-cvs] [9d38a2d21c9] blender-v3.2-release: Fix T99678: Crash applying non-existent modifiers

Campbell Barton noreply at git.blender.org
Thu Jul 21 11:57:49 CEST 2022


Commit: 9d38a2d21c97e30321b911ec1f1843f9d0ad87c2
Author: Campbell Barton
Date:   Thu Jul 21 12:52:24 2022 +1000
Branches: blender-v3.2-release
https://developer.blender.org/rB9d38a2d21c97e30321b911ec1f1843f9d0ad87c2

Fix T99678: Crash applying non-existent modifiers

Regression in [0] accessed the modifier type before NULL check.

[0]: 78fc5ea1c398f70d22cda72be33c105146c0d542

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

M	source/blender/editors/object/object_modifier.cc

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

diff --git a/source/blender/editors/object/object_modifier.cc b/source/blender/editors/object/object_modifier.cc
index 175d5039e9c..2aba73f177b 100644
--- a/source/blender/editors/object/object_modifier.cc
+++ b/source/blender/editors/object/object_modifier.cc
@@ -1440,7 +1440,6 @@ static int modifier_apply_exec_ex(bContext *C, wmOperator *op, int apply_as, boo
   Scene *scene = CTX_data_scene(C);
   Object *ob = ED_object_active_context(C);
   ModifierData *md = edit_modifier_property_get(op, ob, 0);
-  const ModifierTypeInfo *mti = BKE_modifier_get_info((ModifierType)md->type);
   const bool do_report = RNA_boolean_get(op->ptr, "report");
   const bool do_single_user = RNA_boolean_get(op->ptr, "single_user");
   const bool do_merge_customdata = RNA_boolean_get(op->ptr, "merge_customdata");
@@ -1449,6 +1448,8 @@ static int modifier_apply_exec_ex(bContext *C, wmOperator *op, int apply_as, boo
     return OPERATOR_CANCELLED;
   }
 
+  const ModifierTypeInfo *mti = BKE_modifier_get_info((ModifierType)md->type);
+
   if (do_single_user && ID_REAL_USERS(ob->data) > 1) {
     ED_object_single_obdata_user(bmain, scene, ob);
     BKE_main_id_newptr_and_tag_clear(bmain);



More information about the Bf-blender-cvs mailing list