MGR: If LOCKFILE doesn't already exist, core client isn't running so skip further testing

svn path=/branches/boinc_core_release_6_8/; revision=18423
This commit is contained in:
Charlie Fenton 2009-06-15 22:43:08 +00:00
parent 9e9179632b
commit 7ece32d0b2
2 changed files with 15 additions and 4 deletions

View File

@ -5692,3 +5692,12 @@ Rom 15 June 2009
ptp_boinc_cli.vcproj
ptp_boincmgr.vcproj
sim.vcproj
Charlie 15 June 2009
- MGR: If LOCKFILE doesn't already exist, core client isn't running so skip
further testing. This avoids a very rare possible race condition and is
more efficient.
clientgui/
BOINCClientManager.cpp

View File

@ -144,10 +144,12 @@ bool CBOINCClientManager::IsBOINCCoreRunning() {
static FILE_LOCK file_lock;
sprintf(path, "%s/%s", (char *)wxGetApp().GetDataDirectory().char_str(), LOCK_FILE_NAME);
if (file_lock.lock(path)) {
running = true;
} else {
file_lock.unlock(path);
if (boinc_file_exists(path)) { // If there is no lock file, core is not running
if (file_lock.lock(path)) {
running = true;
} else {
file_lock.unlock(path);
}
}
#endif
wxLogTrace(wxT("Function Status"), wxT("CBOINCClientManager::IsBOINCCoreRunning - Returning '%d'"), (int)running);