diff options
Diffstat (limited to 'Annex/LockPool/PosixOrPid.hs')
-rw-r--r-- | Annex/LockPool/PosixOrPid.hs | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/Annex/LockPool/PosixOrPid.hs b/Annex/LockPool/PosixOrPid.hs index cc1411800..58e597f0e 100644 --- a/Annex/LockPool/PosixOrPid.hs +++ b/Annex/LockPool/PosixOrPid.hs @@ -24,9 +24,10 @@ import Common.Annex import qualified Annex import qualified Utility.LockPool.Posix as Posix import qualified Utility.LockPool.PidLock as Pid +import qualified Utility.LockPool.LockHandle as H +import Utility.LockPool.LockHandle (LockHandle, dropLock) import Utility.LockFile.Posix (openLockFile) import Utility.LockPool.STM (LockFile) -import Utility.LockPool.LockHandle import Utility.LockFile.LockStatus import System.Posix @@ -51,6 +52,10 @@ getLockStatus :: LockFile -> Annex LockStatus getLockStatus f = Posix.getLockStatus f `pidLockCheck` Pid.getLockStatus +checkSaneLock :: LockFile -> LockHandle -> Annex Bool +checkSaneLock f h = H.checkSaneLock f h + `pidLockCheck` flip Pid.checkSaneLock h + pidLockFile :: Annex (Maybe FilePath) pidLockFile = ifM (annexPidLock <$> Annex.getGitConfig) ( Just <$> fromRepo gitAnnexPidLockFile |