summaryrefslogtreecommitdiff
path: root/Backend
diff options
context:
space:
mode:
Diffstat (limited to 'Backend')
-rw-r--r--Backend/SHA.hs15
1 files changed, 5 insertions, 10 deletions
diff --git a/Backend/SHA.hs b/Backend/SHA.hs
index 29f4e2e94..3adac65d8 100644
--- a/Backend/SHA.hs
+++ b/Backend/SHA.hs
@@ -9,7 +9,6 @@ module Backend.SHA (backends) where
import Common.Annex
import qualified Annex
-import Annex.Content
import Types.Backend
import Types.Key
import qualified Build.SysConfig as SysConfig
@@ -97,18 +96,14 @@ keyValueE size file = keyValue size file >>= maybe (return Nothing) addE
| otherwise = naiveextension
{- A key's checksum is checked during fsck. -}
-checkKeyChecksum :: SHASize -> Key -> Annex Bool
-checkKeyChecksum size key = do
+checkKeyChecksum :: SHASize -> Key -> FilePath -> Annex Bool
+checkKeyChecksum size key file = do
fast <- Annex.getState Annex.fast
- file <- inRepo $ gitAnnexLocation key
present <- liftIO $ doesFileExist file
if not present || fast
then return True
- else check =<< shaN size file
+ else check <$> shaN size file
where
check s
- | s == dropExtension (keyName key) = return True
- | otherwise = do
- dest <- moveBad key
- warning $ "Bad file content; moved to " ++ dest
- return False
+ | s == dropExtension (keyName key) = True
+ | otherwise = False