Browse Source

Fix crash when changing node type from PopMenu to ItemList

Clement C 2 years ago
parent
commit
999a1fffec
1 changed files with 7 additions and 2 deletions
  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;