From 085a0e9452b13bbb5de9c64d38402507fa893e37 Mon Sep 17 00:00:00 2001 From: Hielke Morsink Date: Sat, 17 Oct 2020 16:18:23 +0200 Subject: [PATCH] Reduce branching and duplicated lines in limit_autosave_count --- src/openrct2/Game.cpp | 28 ++++++++++------------------ 1 file changed, 10 insertions(+), 18 deletions(-) diff --git a/src/openrct2/Game.cpp b/src/openrct2/Game.cpp index 9602326ca4..45208988c0 100644 --- a/src/openrct2/Game.cpp +++ b/src/openrct2/Game.cpp @@ -686,20 +686,19 @@ static void limit_autosave_count(const size_t numberOfFilesToKeep, bool processL size_t autosavesCount = 0; size_t numAutosavesToDelete = 0; - utf8 filter[MAX_PATH]; + char const* folderDirectory = "save"; + char const* fileFilter = "autosave_*.sv6"; if (processLandscapeFolder) { - platform_get_user_directory(filter, "landscape", sizeof(filter)); - safe_strcat_path(filter, "autosave", sizeof(filter)); - safe_strcat_path(filter, "autosave_*.sc6", sizeof(filter)); - } - else - { - platform_get_user_directory(filter, "save", sizeof(filter)); - safe_strcat_path(filter, "autosave", sizeof(filter)); - safe_strcat_path(filter, "autosave_*.sv6", sizeof(filter)); + folderDirectory = "landscape"; + fileFilter = "autosave_*.sc6"; } + utf8 filter[MAX_PATH]; + safe_strcpy(filter, folderDirectory, sizeof(filter)); + safe_strcat_path(filter, "autosave", sizeof(filter)); + safe_strcat_path(filter, fileFilter, sizeof(filter)); + // At first, count how many autosaves there are { auto scanner = std::unique_ptr(Path::ScanDirectory(filter, false)); @@ -723,14 +722,7 @@ static void limit_autosave_count(const size_t numberOfFilesToKeep, bool processL autosaveFiles[i].resize(MAX_PATH, 0); if (scanner->Next()) { - if (processLandscapeFolder) - { - platform_get_user_directory(autosaveFiles[i].data(), "landscape", sizeof(utf8) * MAX_PATH); - } - else - { - platform_get_user_directory(autosaveFiles[i].data(), "save", sizeof(utf8) * MAX_PATH); - } + platform_get_user_directory(autosaveFiles[i].data(), folderDirectory, sizeof(utf8) * MAX_PATH); safe_strcat_path(autosaveFiles[i].data(), "autosave", sizeof(utf8) * MAX_PATH); safe_strcat_path(autosaveFiles[i].data(), scanner->GetPathRelative(), sizeof(utf8) * MAX_PATH); }