diff options
author | psi29a <psi29a@gmail.com> | 2023-02-11 10:50:55 +0000 |
---|---|---|
committer | psi29a <psi29a@gmail.com> | 2023-02-11 10:50:55 +0000 |
commit | 5f1da2988165237995818b7382f6244c85cf4cf4 (patch) | |
tree | 2460a564a97b24ae285cdbdcf6199dc470355c02 | |
parent | f87b9e7bcba52c240b6727564fb571b591f5b598 (diff) | |
parent | 536370c76df34330bc7b18a9f589578cb8875bf2 (diff) |
Merge branch 'bsapriority' into 'master'7220-lua-add-a-general-purpose-lexical-parser
Files::Collections: prefer files from highest priority folders (bug #7092)
Closes #7092
See merge request OpenMW/openmw!2716
-rw-r--r-- | CHANGELOG.md | 1 | ||||
-rw-r--r-- | components/files/collections.cpp | 8 |
2 files changed, 5 insertions, 4 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md index f587fffcc9..9185e2d49e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -35,6 +35,7 @@ Bug #7054: Quests aren't sorted by name Bug #7084: Resurrecting an actor doesn't take into account base record changes Bug #7088: Deleting last save game of last character doesn't clear character name/details + Bug #7092: BSA archives from higher priority directories don't take priority Bug #7122: Teleportation to underwater should cancel active water walking effect Bug #7172: Current music playlist continues playing indefinitely if next playlist is empty Feature #5492: Let rain and snow collide with statics diff --git a/components/files/collections.cpp b/components/files/collections.cpp index b556ab06b0..47734bb084 100644 --- a/components/files/collections.cpp +++ b/components/files/collections.cpp @@ -37,9 +37,9 @@ namespace Files std::filesystem::path Collections::getPath(const std::string& file) const { - for (const auto& mDirectorie : mDirectories) + for (auto iter = mDirectories.rbegin(); iter != mDirectories.rend(); iter++) { - for (const auto& iter2 : std::filesystem::directory_iterator(mDirectorie)) + for (const auto& iter2 : std::filesystem::directory_iterator(*iter)) { const auto& path = iter2.path(); const auto str = Files::pathToUnicodeString(path.filename()); @@ -59,9 +59,9 @@ namespace Files bool Collections::doesExist(const std::string& file) const { - for (const auto& mDirectorie : mDirectories) + for (auto iter = mDirectories.rbegin(); iter != mDirectories.rend(); iter++) { - for (const auto& iter2 : std::filesystem::directory_iterator(mDirectorie)) + for (const auto& iter2 : std::filesystem::directory_iterator(*iter)) { const auto& path = iter2.path(); const auto str = Files::pathToUnicodeString(path.filename()); |