diff --git a/doomsday/apps/server/src/remotefeeduser.cpp b/doomsday/apps/server/src/remotefeeduser.cpp index 41a43d96e6..3574b09ad1 100644 --- a/doomsday/apps/server/src/remotefeeduser.cpp +++ b/doomsday/apps/server/src/remotefeeduser.cpp @@ -157,7 +157,7 @@ DENG2_PIMPL(RemoteFeedUser) try { // Make sure the file system is ready for use. - Folder::waitForPopulation(); + FS::get().waitForIdle(); std::unique_ptr response; diff --git a/doomsday/sdk/libcore/src/data/bank.cpp b/doomsday/sdk/libcore/src/data/bank.cpp index c2fad616c7..e1a661808f 100644 --- a/doomsday/sdk/libcore/src/data/bank.cpp +++ b/doomsday/sdk/libcore/src/data/bank.cpp @@ -570,9 +570,9 @@ DENG2_PIMPL(Bank) { DENG2_ASSERT(serialCache); + FS::get().waitForIdle(); if (Folder *folder = serialCache->folder()) { - Folder::waitForPopulation(Folder::BlockingMainThread); folder->destroyAllFilesRecursively(); } } diff --git a/doomsday/sdk/libcore/src/filesys/folder.cpp b/doomsday/sdk/libcore/src/filesys/folder.cpp index 6e00c1e0dc..f836c413fa 100644 --- a/doomsday/sdk/libcore/src/filesys/folder.cpp +++ b/doomsday/sdk/libcore/src/filesys/folder.cpp @@ -541,8 +541,15 @@ void Folder::waitForPopulation(WaitBehavior waitBehavior) DENG2_ASSERT(!App::inMainThread()); throw Error("Folder::waitForPopulation", "Not allowed to block the main thread"); } - LOG_MSG("Waiting until folders have been populated"); - internal::populateTasks.waitForDone(); + Time startedAt; + { + internal::populateTasks.waitForDone(); + } + const auto elapsed = startedAt.since(); + if (elapsed > .01) + { + LOG_MSG("Waited for %.3f seconds for file system to be ready") << elapsed; + } } AsyncTask *Folder::afterPopulation(std::function func)