From 358ce4f52b58e3ab60519cd83c8b56da112e55d1 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Sun, 30 Apr 2023 15:21:10 +1000 Subject: [PATCH] Fix more crashes attempting to run operators in unexpected contexts Add missing NULL checks for: - OBJECT_OT_transform_to_mouse - GPENCIL_OT_time_segment_remove --- source/blender/editors/object/object_add.cc | 2 +- source/blender/editors/object/object_gpencil_modifier.c | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/source/blender/editors/object/object_add.cc b/source/blender/editors/object/object_add.cc index 830647e67a5..7e26d156208 100644 --- a/source/blender/editors/object/object_add.cc +++ b/source/blender/editors/object/object_add.cc @@ -4031,7 +4031,7 @@ static int object_transform_to_mouse_exec(bContext *C, wmOperator *op) MEM_freeN(objects); } - else { + else if (CTX_wm_region_view3d(C)) { int mval[2]; if (object_add_drop_xy_get(C, op, &mval)) { float cursor[3]; diff --git a/source/blender/editors/object/object_gpencil_modifier.c b/source/blender/editors/object/object_gpencil_modifier.c index 2f38f83f7b2..7e8963e171d 100644 --- a/source/blender/editors/object/object_gpencil_modifier.c +++ b/source/blender/editors/object/object_gpencil_modifier.c @@ -1024,6 +1024,9 @@ static int time_segment_remove_exec(bContext *C, wmOperator *op) TimeGpencilModifierData *gpmd = (TimeGpencilModifierData *)gpencil_edit_modifier_property_get( op, ob, eGpencilModifierType_Time); + if (gpmd == NULL) { + return OPERATOR_CANCELLED; + } if (gpmd->segment_active_index < 0 || gpmd->segment_active_index >= gpmd->segments_len) { return OPERATOR_CANCELLED; }