diff options
| author | crueter <crueter@eden-emu.dev> | 2026-04-26 03:26:04 +0200 |
|---|---|---|
| committer | crueter <crueter@eden-emu.dev> | 2026-04-26 03:26:04 +0200 |
| commit | 91058d738389490cfb31e9fb4932717f807f6179 (patch) | |
| tree | bde9e0103a818c5fa9d571cfff04aa67d49a2de1 /src/frontend_common/mod_manager.cpp | |
| parent | 048d02e5b4e3d86ea86754cc26bd18bab0ec459d (diff) | |
[desktop] Fix 2 mod manager bugs (#3884)
- Multi-import would show duplicates of a mod if it had both exefs and
romfs
- Import from folder would crash on some single mods
Signed-off-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3884
Reviewed-by: Lizzie <lizzie@eden-emu.dev>
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
Diffstat (limited to 'src/frontend_common/mod_manager.cpp')
| -rw-r--r-- | src/frontend_common/mod_manager.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/frontend_common/mod_manager.cpp b/src/frontend_common/mod_manager.cpp index ddb196cf1a..35d7068f2f 100644 --- a/src/frontend_common/mod_manager.cpp +++ b/src/frontend_common/mod_manager.cpp @@ -3,6 +3,7 @@ #include <algorithm> #include <filesystem> +#include <iostream> #include <fmt/format.h> #include "common/fs/fs.h" #include "common/fs/fs_types.h" @@ -25,7 +26,10 @@ std::vector<std::filesystem::path> GetModFolder(const std::string& root) { "romfslite"}; if (std::ranges::find(valid_names, name) != valid_names.end()) { - paths.emplace_back(entry.path().parent_path()); + const auto parent = entry.path().parent_path(); + if (std::ranges::find(paths, parent) == paths.end()) { + paths.emplace_back(parent); + } } return true; |
