Browse Source

Merge pull request #69562 from timothyqiu/tileset-editor

Fix heap-use-after-free when exiting editor after editing TileSet
Rémi Verschelde 2 years ago
parent
commit
12775703ba
1 changed files with 9 additions and 0 deletions
  1. 9 0
      editor/plugins/tiles/tile_set_atlas_source_editor.cpp

+ 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;
 				tile_set_changed_needs_update = false;
 			}
 			}
 		} break;
 		} 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;
 	}
 	}
 }
 }