2
1
Fork 0
mirror of https://github.com/yuzu-emu/yuzu.git synced 2024-07-04 23:31:19 +01:00

AddFstEntriesToGameList - prevent loading a directory

This commit is contained in:
LFsWang 2016-06-01 14:04:58 +08:00
parent 552018c50a
commit d24d047d45

View file

@ -130,9 +130,7 @@ void GameListWorker::AddFstEntriesToGameList(const std::string& dir_path, unsign
if (stop_processing) if (stop_processing)
return false; // Breaks the callback loop. return false; // Breaks the callback loop.
if (recursion > 0 && FileUtil::IsDirectory(physical_name)) { if (!FileUtil::IsDirectory(physical_name)) {
AddFstEntriesToGameList(physical_name, recursion - 1);
} else {
std::unique_ptr<Loader::AppLoader> loader = Loader::GetLoader(physical_name); std::unique_ptr<Loader::AppLoader> loader = Loader::GetLoader(physical_name);
if (!loader) if (!loader)
return true; return true;
@ -145,6 +143,8 @@ void GameListWorker::AddFstEntriesToGameList(const std::string& dir_path, unsign
new GameListItem(QString::fromStdString(Loader::GetFileTypeString(loader->GetFileType()))), new GameListItem(QString::fromStdString(Loader::GetFileTypeString(loader->GetFileType()))),
new GameListItemSize(FileUtil::GetSize(physical_name)), new GameListItemSize(FileUtil::GetSize(physical_name)),
}); });
} else if (recursion > 0) {
AddFstEntriesToGameList(physical_name, recursion - 1);
} }
return true; return true;