Merge pull request #8209 from JosJuice/filesystem-fix

Fix opening controller config when there is no profile directory
This commit is contained in:
spycrab 2019-06-20 18:40:28 +02:00 committed by GitHub
commit f08aa2d842
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 13 additions and 9 deletions

View File

@ -97,16 +97,20 @@ std::vector<std::string> DoFileSearch(const std::vector<std::string>& directorie
};
for (const auto& directory : directories)
{
if (recursive)
const fs::path directory_path = fs::u8path(directory);
if (fs::is_directory(directory_path)) // Can't create iterators for non-existant directories
{
// TODO use fs::directory_options::follow_directory_symlink ?
for (auto& entry : fs::recursive_directory_iterator(fs::u8path(directory)))
add_filtered(entry);
}
else
{
for (auto& entry : fs::directory_iterator(fs::u8path(directory)))
add_filtered(entry);
if (recursive)
{
// TODO use fs::directory_options::follow_directory_symlink ?
for (auto& entry : fs::recursive_directory_iterator(std::move(directory_path)))
add_filtered(entry);
}
else
{
for (auto& entry : fs::directory_iterator(std::move(directory_path)))
add_filtered(entry);
}
}
}