From 2781e270c7f388d4d0e252240b84b4a299d040fd Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Sat, 18 Apr 2015 14:23:34 -0400 Subject: fsck --from remote: Avoid downloading a key if it would go over the annex.diskreserve limit. --- Command/Fsck.hs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'Command/Fsck.hs') diff --git a/Command/Fsck.hs b/Command/Fsck.hs index 74cff7491..39dba08dd 100644 --- a/Command/Fsck.hs +++ b/Command/Fsck.hs @@ -135,14 +135,16 @@ performRemote key file backend numcopies remote = let cleanup = liftIO $ catchIO (removeFile tmp) (const noop) cleanup cleanup `after` a tmp - getfile tmp = - ifM (Remote.retrieveKeyFileCheap remote key tmp) + getfile tmp = ifM (checkDiskSpace (Just tmp) key 0) + ( ifM (Remote.retrieveKeyFileCheap remote key tmp) ( return True , ifM (Annex.getState Annex.fast) ( return False , Remote.retrieveKeyFile remote key Nothing tmp dummymeter ) ) + , return False + ) dummymeter _ = noop startKey :: Incremental -> Key -> NumCopies -> CommandStart -- cgit v1.2.3