diff options
Diffstat (limited to 'contrib/llvm-project/llvm/lib/Support/LockFileManager.cpp')
| -rw-r--r-- | contrib/llvm-project/llvm/lib/Support/LockFileManager.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/contrib/llvm-project/llvm/lib/Support/LockFileManager.cpp b/contrib/llvm-project/llvm/lib/Support/LockFileManager.cpp index 5c6508c3b007..10181192afbd 100644 --- a/contrib/llvm-project/llvm/lib/Support/LockFileManager.cpp +++ b/contrib/llvm-project/llvm/lib/Support/LockFileManager.cpp @@ -290,8 +290,7 @@ LockFileManager::~LockFileManager() { sys::DontRemoveFileOnSignal(UniqueLockFileName); } -LockFileManager::WaitForUnlockResult -LockFileManager::waitForUnlock(const unsigned MaxSeconds) { +LockFileManager::WaitForUnlockResult LockFileManager::waitForUnlock() { if (getState() != LFS_Shared) return Res_Success; @@ -302,6 +301,9 @@ LockFileManager::waitForUnlock(const unsigned MaxSeconds) { Interval.tv_sec = 0; Interval.tv_nsec = 1000000; #endif + // Don't wait more than 40s per iteration. Total timeout for the file + // to appear is ~1.5 minutes. + const unsigned MaxSeconds = 40; do { // Sleep for the designated interval, to allow the owning process time to // finish up and remove the lock file. |
