diff --git a/UI/SavedataScreen.cpp b/UI/SavedataScreen.cpp index 3d8283c2e9..6d674cc8c5 100644 --- a/UI/SavedataScreen.cpp +++ b/UI/SavedataScreen.cpp @@ -273,11 +273,6 @@ SavedataBrowser::SavedataBrowser(std::string path, UI::LayoutParams *layoutParam Refresh(); } -SavedataBrowser::~SavedataBrowser() { - g_gameInfoCache->PurgeType(FILETYPE_PPSSPP_SAVESTATE); - g_gameInfoCache->PurgeType(FILETYPE_PSP_SAVEDATA_DIRECTORY); -} - void SavedataBrowser::Refresh() { using namespace UI; @@ -338,6 +333,13 @@ UI::EventReturn SavedataBrowser::SavedataButtonClick(UI::EventParams &e) { SavedataScreen::SavedataScreen(std::string gamePath) : UIDialogScreenWithGameBackground(gamePath) { } +SavedataScreen::~SavedataScreen() { + if (g_gameInfoCache) { + g_gameInfoCache->PurgeType(FILETYPE_PPSSPP_SAVESTATE); + g_gameInfoCache->PurgeType(FILETYPE_PSP_SAVEDATA_DIRECTORY); + } +} + void SavedataScreen::CreateViews() { using namespace UI; I18NCategory *sa = GetI18NCategory("Savedata"); diff --git a/UI/SavedataScreen.h b/UI/SavedataScreen.h index 44cb0a1c80..14e4afe4c0 100644 --- a/UI/SavedataScreen.h +++ b/UI/SavedataScreen.h @@ -29,7 +29,6 @@ class SavedataBrowser : public UI::LinearLayout { public: SavedataBrowser(std::string path, UI::LayoutParams *layoutParams = 0); - ~SavedataBrowser(); UI::Event OnChoice; @@ -45,6 +44,7 @@ class SavedataScreen : public UIDialogScreenWithGameBackground { public: // gamePath can be empty, in that case this screen will show all savedata in the save directory. SavedataScreen(std::string gamePath); + ~SavedataScreen(); void dialogFinished(const Screen *dialog, DialogResult result) override;