瀏覽代碼

Merge pull request #76854 from CapitaineCookie/fix-change-type

Fix crash when changing node type from PopupMenu to ItemList
Yuri Sizov 2 年之前
父節點
當前提交
6a1d3198d1
共有 1 個文件被更改,包括 7 次插入2 次删除
  1. 7 2
      scene/gui/popup_menu.cpp

+ 7 - 2
scene/gui/popup_menu.cpp

@@ -2051,8 +2051,13 @@ bool PopupMenu::_get(const StringName &p_name, Variant &r_ret) const {
 			r_ret = get_item_icon(item_index);
 			return true;
 		} else if (property == "checkable") {
-			r_ret = this->items[item_index].checkable_type;
-			return true;
+			if (item_index >= 0 && item_index < items.size()) {
+				r_ret = items[item_index].checkable_type;
+				return true;
+			} else {
+				r_ret = Item::CHECKABLE_TYPE_NONE;
+				ERR_FAIL_V(true);
+			}
 		} else if (property == "checked") {
 			r_ret = is_item_checked(item_index);
 			return true;