Procházet zdrojové kódy

Merge pull request #69562 from timothyqiu/tileset-editor

Fix heap-use-after-free when exiting editor after editing TileSet
Rémi Verschelde před 2 roky
rodič
revize
12775703ba

+ 9 - 0
editor/plugins/tiles/tile_set_atlas_source_editor.cpp

@@ -2345,6 +2345,15 @@ void TileSetAtlasSourceEditor::_notification(int p_what) {
 				tile_set_changed_needs_update = false;
 			}
 		} break;
+
+		case NOTIFICATION_EXIT_TREE: {
+			for (KeyValue<String, TileDataEditor *> &E : tile_data_editors) {
+				Control *toolbar = E.value->get_toolbar();
+				if (toolbar->get_parent() == tool_settings_tile_data_toolbar_container) {
+					tool_settings_tile_data_toolbar_container->remove_child(toolbar);
+				}
+			}
+		} break;
 	}
 }