[Bf-blender-cvs] [61678ca8ae8] blender2.8: Fix T57076: Remove property from favourites menu fails

Campbell Barton noreply at git.blender.org
Tue Dec 4 05:23:20 CET 2018


Commit: 61678ca8ae8013a572b343bb772f2fd8e52243ad
Author: Campbell Barton
Date:   Tue Dec 4 15:11:26 2018 +1100
Branches: blender2.8
https://developer.blender.org/rB61678ca8ae8013a572b343bb772f2fd8e52243ad

Fix T57076: Remove property from favourites menu fails

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

M	source/blender/editors/interface/interface_context_menu.c

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

diff --git a/source/blender/editors/interface/interface_context_menu.c b/source/blender/editors/interface/interface_context_menu.c
index 5f7cd68a875..111aa64e771 100644
--- a/source/blender/editors/interface/interface_context_menu.c
+++ b/source/blender/editors/interface/interface_context_menu.c
@@ -235,9 +235,21 @@ static bUserMenuItem *ui_but_user_menu_find(bContext *C, uiBut *but, bUserMenu *
 	}
 	else if (but->rnaprop) {
 		const char *member_id = WM_context_member_from_ptr(C, &but->rnapoin);
+		const char *data_path = RNA_path_from_ID_to_struct(&but->rnapoin);
+		const char *member_id_data_path = member_id;
+		if (data_path) {
+			member_id_data_path = BLI_sprintfN("%s.%s", member_id, data_path);
+		}
 		const char *prop_id = RNA_property_identifier(but->rnaprop);
-		return (bUserMenuItem *)ED_screen_user_menu_item_find_prop(
-		        &um->items, member_id, prop_id, but->rnaindex);
+		bUserMenuItem *umi = (bUserMenuItem *)ED_screen_user_menu_item_find_prop(
+		        &um->items, member_id_data_path, prop_id, but->rnaindex);
+		if (data_path) {
+			MEM_freeN((void *)data_path);
+		}
+		if (member_id != member_id_data_path) {
+			MEM_freeN((void *)member_id_data_path);
+		}
+		return umi;
 	}
 	else if ((mt = UI_but_menutype_get(but))) {
 		return (bUserMenuItem *)ED_screen_user_menu_item_find_menu(



More information about the Bf-blender-cvs mailing list