summaryrefslogtreecommitdiff
path: root/src/shared/directoryentry.h
diff options
context:
space:
mode:
authorisanae <14251494+isanae@users.noreply.github.com>2020-02-14 01:28:50 -0500
committerisanae <14251494+isanae@users.noreply.github.com>2020-02-18 17:25:03 -0500
commitc8fc7abade6e28507f2a1590007a098e647026a9 (patch)
tree13eaab40225ec292633c005f5e49b76ec5bb3f3d /src/shared/directoryentry.h
parent763a5d6c08006c319ed92f4088a4d3c211f80cf6 (diff)
thread-safe OriginConnection
ThreadPool now keeps threads running keep ModThreads around so avoid reallocating buffers
Diffstat (limited to 'src/shared/directoryentry.h')
-rw-r--r--src/shared/directoryentry.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/shared/directoryentry.h b/src/shared/directoryentry.h
index 8f6afbb1..2a70d486 100644
--- a/src/shared/directoryentry.h
+++ b/src/shared/directoryentry.h
@@ -410,6 +410,10 @@ public:
const std::wstring &originName,
const std::wstring &directory, int priority, DirectoryStats& stats);
+ void addFromOrigin(
+ env::DirectoryWalker& walker, const std::wstring &originName,
+ const std::wstring &directory, int priority, DirectoryStats& stats);
+
void addFromBSA(
const std::wstring &originName, std::wstring &directory,
const std::wstring &fileName, int priority, int order);
@@ -556,6 +560,7 @@ private:
bool m_TopLevel;
std::mutex m_SubDirMutex;
std::mutex m_FilesMutex;
+ std::mutex m_OriginsMutex;
DirectoryEntry(const DirectoryEntry &reference);
@@ -569,7 +574,8 @@ private:
std::wstring_view archive, int order, DirectoryStats& stats);
void addFiles(
- FilesOrigin &origin, const std::wstring& path, DirectoryStats& stats);
+ env::DirectoryWalker& walker, FilesOrigin &origin,
+ const std::wstring& path, DirectoryStats& stats);
void addFiles(
FilesOrigin &origin, BSA::Folder::Ptr archiveFolder, FILETIME &fileTime,