static std::list<UString> recursiveFindFilesInDirectory(const FileSystem &fs, UString path, const UString &extension) { std::list<UString> foundFiles; auto list = fs.enumerateDirectory(path, ""); for (auto &entry : list) { if (entry.endsWith(extension)) { foundFiles.push_back(path + "/" + entry); } else { auto subdirFiles = recursiveFindFilesInDirectory(fs, path + "/" + entry, extension); foundFiles.insert(foundFiles.end(), subdirFiles.begin(), subdirFiles.end()); } } return foundFiles; }