### 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)

}
					Size2 minsize = c->get_combined_minimum_size();
					child_room = MAX(child_room, minsize.width);
					height = MAX(height, minsize.height);
					no_children = false;
				}
				if (no_children) {
					text_size = size.width;
					rect = Rect2(size.width - 1, 0, 1, height);
				} else {
					text_size = MAX(0, size.width - (child_room + 4 * EDSCALE));
					if (is_layout_rtl()) {
						rect = Rect2(1, 0, child_room, height);
					} else {
						rect = Rect2(size.width - child_room, 0, child_room, height);
					}
				}
				if (bottom_editor) {
					int m = 0; 
					bottom_rect = Rect2(m, rect.size.height + get_theme_constant(SNAME("v_separation")), size.width - m, bottom_editor->get_combined_minimum_size().height);
				}
				if (keying) {
					Ref<Texture2D> key;
					if (use_keying_next()) {
						key = get_theme_icon(SNAME("KeyNext"), SNAME("EditorIcons"));
					} else {
						key = get_theme_icon(SNAME("Key"), SNAME("EditorIcons"));
					}
					rect.size.x -= key->get_width() + get_theme_constant(SNAME("hseparator"), SNAME("Tree"));
					if (is_layout_rtl()) {