diff options
| author | coco875 <pereira.jannin@gmail.com> | 2025-05-16 23:14:40 +0200 |
|---|---|---|
| committer | Lywx <kiritodev01@gmail.com> | 2025-05-16 17:13:19 -0600 |
| commit | 129d06597d7da59acaa09d7a28abd438996b48ba (patch) | |
| tree | e3a207b062b4a80c68decff173978269c2383da0 /src | |
| parent | df5fa5d3e276dc099943258a824cada1183fa1ac (diff) | |
fix wrong order of file
Diffstat (limited to 'src')
| -rw-r--r-- | src/utils/TorchUtils.cpp | 18 |
1 files changed, 4 insertions, 14 deletions
diff --git a/src/utils/TorchUtils.cpp b/src/utils/TorchUtils.cpp index 497b545..bf8b92a 100644 --- a/src/utils/TorchUtils.cpp +++ b/src/utils/TorchUtils.cpp @@ -27,22 +27,12 @@ int getFileDepth(const fs::path& base, const fs::path& p) { } std::vector<fs::directory_entry> Torch::getRecursiveEntries(const fs::path baseDir) { - std::vector<fs::directory_entry> result; + std::set<fs::directory_entry> result; for (const auto& entry : fs::recursive_directory_iterator(baseDir)) { - result.push_back(entry); + result.insert(entry); } - std::sort(result.begin(), result.end(), [](const fs::directory_entry& a, const fs::directory_entry& b) { - std::string nameA = a.path().parent_path().string(); - std::string nameB = b.path().parent_path().string(); - int depthA = std::distance(a.path().begin(), a.path().end()); - int depthB = std::distance(b.path().begin(), b.path().end()); - - if (nameA != nameB) - return nameA < nameB; - return depthA < depthB; - }); - - return result; + std::vector<fs::directory_entry> sortedEntries(result.begin(), result.end()); + return sortedEntries; }
\ No newline at end of file |
