diff --git a/es-app/src/guis/GuiOrphanedDataCleanup.cpp b/es-app/src/guis/GuiOrphanedDataCleanup.cpp index b925bf649..b30943614 100644 --- a/es-app/src/guis/GuiOrphanedDataCleanup.cpp +++ b/es-app/src/guis/GuiOrphanedDataCleanup.cpp @@ -22,7 +22,6 @@ GuiOrphanedDataCleanup::GuiOrphanedDataCleanup(std::function reloadCallb , mGrid {glm::ivec2 {4, 11}} , mReloadCallback {reloadCallback} , mCursorPos {0} - , mMediaDirectory {FileData::getMediaDirectory()} , mMediaTypes {"3dboxes", "backcovers", "covers", "fanart", "manuals", "marquees", "miximages", "physicalmedia", "screenshots", "titlescreens", "videos"} @@ -36,6 +35,23 @@ GuiOrphanedDataCleanup::GuiOrphanedDataCleanup(std::function reloadCallb , mCaseSensitiveFilesystem {true} , mCleanupType {CleanupType::MEDIA} { + // Make sure we always have a single trailing directory separator for the media directory. + mMediaDirectory = FileData::getMediaDirectory(); + mMediaDirectory.erase(std::find_if(mMediaDirectory.rbegin(), mMediaDirectory.rend(), + [](char c) { return c != '/'; }) + .base(), + mMediaDirectory.end()); + + mMediaDirectory.erase(std::find_if(mMediaDirectory.rbegin(), mMediaDirectory.rend(), + [](char c) { return c != '\\'; }) + .base(), + mMediaDirectory.end()); +#if defined(_WIN64) + mMediaDirectory.append("\\"); +#else + mMediaDirectory.append("/"); +#endif + addChild(&mBackground); addChild(&mGrid);