From 4d50d07959c9373bf0eeffc579cc3a25bcd3fe98 Mon Sep 17 00:00:00 2001 From: Philipp Oeser Date: Wed, 31 Jan 2024 11:49:51 +0100 Subject: [PATCH] Fix #117679: operator_menu_enum crashes for an unfound property Caused by d6a6c3e1fc. Code from d6a6c3e1fc was trying to get enum items for a property even if the property itself was not found. Now return early here (same as to how an early return happens if the operator was not found). --- source/blender/editors/interface/interface_layout.cc | 3 +++ 1 file changed, 3 insertions(+) diff --git a/source/blender/editors/interface/interface_layout.cc b/source/blender/editors/interface/interface_layout.cc index 82f76c2f106..0cf35db848c 100644 --- a/source/blender/editors/interface/interface_layout.cc +++ b/source/blender/editors/interface/interface_layout.cc @@ -3602,6 +3602,9 @@ static int menu_item_enum_opname_menu_active(bContext *C, uiBut *but, MenuItemLe /* so the context is passed to itemf functions (some need it) */ WM_operator_properties_sanitize(&ptr, false); PropertyRNA *prop = RNA_struct_find_property(&ptr, lvl->propname); + if (!prop) { + return -1; + } RNA_property_enum_items_gettexted(C, &ptr, prop, &item_array, &totitem, &free); int active = RNA_enum_from_name(item_array, but->str.c_str()); if (free) { -- 2.30.2