From 4d679b7e3e70ac0a54037faf818d9bdcc58de028 Mon Sep 17 00:00:00 2001 From: Tulio Leao Date: Sun, 19 Apr 2020 16:28:01 -0300 Subject: [PATCH] Fix #11361: rct_object_filters leak in EditorObjectSelection.cpp (#11364) --- src/openrct2-ui/windows/EditorObjectSelection.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/openrct2-ui/windows/EditorObjectSelection.cpp b/src/openrct2-ui/windows/EditorObjectSelection.cpp index 6a2f41e579..940b5fe106 100644 --- a/src/openrct2-ui/windows/EditorObjectSelection.cpp +++ b/src/openrct2-ui/windows/EditorObjectSelection.cpp @@ -260,7 +260,7 @@ struct list_item { const ObjectRepositoryItem* repositoryItem; rct_object_entry* entry; - rct_object_filters* filter; + std::unique_ptr filter; uint8_t* flags; }; @@ -310,7 +310,7 @@ static void visible_list_refresh(rct_window* w) if (objectType == get_selected_object_type(w) && !(selectionFlags & OBJECT_SELECTION_FLAG_6) && filter_source(item) && filter_string(item) && filter_chunks(item) && filter_selected(selectionFlags)) { - rct_object_filters* filter = new rct_object_filters; + auto filter = std::make_unique(); filter->ride.category[0] = 0; filter->ride.category[1] = 0; filter->ride.ride_type = 0; @@ -318,7 +318,7 @@ static void visible_list_refresh(rct_window* w) list_item currentListItem; currentListItem.repositoryItem = item; currentListItem.entry = const_cast(&item->ObjectEntry); - currentListItem.filter = filter; + currentListItem.filter = std::move(filter); currentListItem.flags = &_objectSelectionFlags[i]; _listItems.push_back(std::move(currentListItem)); }