diff options
Diffstat (limited to 'src/usvfsconnector.cpp')
| -rw-r--r-- | src/usvfsconnector.cpp | 34 |
1 files changed, 33 insertions, 1 deletions
diff --git a/src/usvfsconnector.cpp b/src/usvfsconnector.cpp index 4a54f9fd..7b75b870 100644 --- a/src/usvfsconnector.cpp +++ b/src/usvfsconnector.cpp @@ -160,6 +160,21 @@ UsvfsConnector::UsvfsConnector() usvfsBlacklistExecutable(buf.data()); } + usvfsClearSkipFileSuffixes(); + for (auto& suffix : s.skipFileSuffixes()) { + if (suffix.isEmpty()) { + continue; + } + std::wstring buf = suffix.toStdWString(); + usvfsAddSkipFileSuffix(buf.data()); + } + + usvfsClearSkipDirectories(); + for (auto& dir : s.skipDirectories()) { + std::wstring buf = dir.toStdWString(); + usvfsAddSkipDirectory(buf.data()); + } + usvfsClearLibraryForceLoads(); m_LogWorker.moveToThread(&m_WorkerThread); @@ -228,7 +243,9 @@ void UsvfsConnector::updateParams(MOBase::log::Levels logLevel, env::CoreDumpTypes coreDumpType, const QString& crashDumpsPath, std::chrono::seconds spawnDelay, - QString executableBlacklist) + QString executableBlacklist, + const QStringList& skipFileSuffixes, + const QStringList& skipDirectories) { using namespace std::chrono; @@ -248,6 +265,21 @@ void UsvfsConnector::updateParams(MOBase::log::Levels logLevel, std::wstring buf = exec.toStdWString(); usvfsBlacklistExecutable(buf.data()); } + + usvfsClearSkipFileSuffixes(); + for (auto& suffix : skipFileSuffixes) { + if (suffix.isEmpty()) { + continue; + } + std::wstring buf = suffix.toStdWString(); + usvfsAddSkipFileSuffix(buf.data()); + } + + usvfsClearSkipDirectories(); + for (auto& dir : skipDirectories) { + std::wstring buf = dir.toStdWString(); + usvfsAddSkipDirectory(buf.data()); + } } void UsvfsConnector::updateForcedLibraries( |
