### Godot version

v4.0.beta17.mono.official [c40020513]

### System information

Window 11, Forward+, GTX 1060

### Issue description

Adding two theme variations in a row result to a  crash.

https://user-images.githubusercontent.com/93253123/217037249-1ce1d56d-beb6-4435-83ad-9f8a07fe0e96.mp4



### Steps to reproduce

1. Create a project.
2. Create a theme.
3. Double click to go in the theme editor.
4. Click on manage items buttons.
5. In the add type field type a name to add a type.
6. type another name to add a second type.
7. Crash.

### Minimal reproduction project

[ThemeVariationCrash.zip](https://github.com/godotengine/godot/files/10665863/ThemeVariationCrash.zip)

String default_type = p_type_name;
		if (edited_theme->get_type_variation_base(p_type_name) != StringName()) {
			default_type = edited_theme->get_type_variation_base(p_type_name);
		}
		(ThemeDB::get_singleton()->get_default_theme().operator->()->*get_list_func)(default_type, &names);
		names.sort_custom<StringName::AlphCompare>();
		for (const StringName &E : names) {
			items[E] = false;
		}
	}
	{
		names.clear();
		(edited_theme.operator->()->*get_list_func)(p_type_name, &names);
		names.sort_custom<StringName::AlphCompare>();
		for (const StringName &E : names) {
			items[E] = true;
		}
	}
	List<StringName> keys;
	for (const KeyValue<StringName, bool> &E : items) {
		keys.push_back(E.key);
	}
	keys.sort_custom<StringName::AlphCompare>();
	HashMap<StringName, bool> ordered_items;
	for (const StringName &E : keys) {
		ordered_items[E] = items[E];
	}
	return ordered_items;
}
HBoxContainer *ThemeTypeEditor::_create_property_control(Theme::DataType p_data_type, String p_item_name, bool p_editable) {