From c3c2671db45e8e600b4957d07bd2e6a09c338455 Mon Sep 17 00:00:00 2001 From: Phenom Date: Sun, 26 Feb 2017 15:42:32 +0100 Subject: [PATCH] Fix LocalDirectoryUpdater to take care if is Enabled in option. --- .../src/file_sharing/directory_updater.cc | 34 +++++++++++-------- libretroshare/src/file_sharing/p3filelists.cc | 2 +- 2 files changed, 20 insertions(+), 16 deletions(-) diff --git a/libretroshare/src/file_sharing/directory_updater.cc b/libretroshare/src/file_sharing/directory_updater.cc index 860c5e8e1..9ea578216 100644 --- a/libretroshare/src/file_sharing/directory_updater.cc +++ b/libretroshare/src/file_sharing/directory_updater.cc @@ -70,24 +70,28 @@ void LocalDirectoryUpdater::setEnabled(bool b) void LocalDirectoryUpdater::data_tick() { time_t now = time(NULL) ; - - if(now > mDelayBetweenDirectoryUpdates + mLastSweepTime) + if (mIsEnabled) { - if(sweepSharedDirectories()) - { - mNeedsFullRecheck = false ; - mLastSweepTime = now; - mSharedDirectories->notifyTSChanged() ; - } - else - std::cerr << "(WW) sweepSharedDirectories() failed. Will do it again in a short time." << std::endl; + + if(now > mDelayBetweenDirectoryUpdates + mLastSweepTime) + { + if(sweepSharedDirectories()) + { + mNeedsFullRecheck = false; + mLastSweepTime = now ; + mSharedDirectories->notifyTSChanged(); + } + else + std::cerr << "(WW) sweepSharedDirectories() failed. Will do it again in a short time." << std::endl; + } + + if(now > DELAY_BETWEEN_LOCAL_DIRECTORIES_TS_UPDATE + mLastTSUpdateTime) + { + mSharedDirectories->updateTimeStamps() ; + mLastTSUpdateTime = now ; + } } - if(now > DELAY_BETWEEN_LOCAL_DIRECTORIES_TS_UPDATE + mLastTSUpdateTime) - { - mSharedDirectories->updateTimeStamps() ; - mLastTSUpdateTime = now ; - } usleep(10*1000*1000); } diff --git a/libretroshare/src/file_sharing/p3filelists.cc b/libretroshare/src/file_sharing/p3filelists.cc index f87cb0d6e..71daca231 100644 --- a/libretroshare/src/file_sharing/p3filelists.cc +++ b/libretroshare/src/file_sharing/p3filelists.cc @@ -179,7 +179,7 @@ int p3FileDatabase::tick() #endif last_print_time = now ; -//#warning this should be removed, but it's necessary atm for updating the GUI +#warning mr-alice 2016-08-19: This should be removed, but it's necessary atm for updating the GUI RsServer::notify()->notifyListChange(NOTIFY_LIST_DIRLIST_LOCAL, 0); }