diff options
author | Joey Hess <joeyh@joeyh.name> | 2015-01-20 19:35:50 -0400 |
---|---|---|
committer | Joey Hess <joeyh@joeyh.name> | 2015-01-20 19:35:50 -0400 |
commit | cb50de905ca5b63cbb972cf587f74ff563b2573b (patch) | |
tree | 6ecedc8ac397a6912133cca6c4fc8e023dc84807 /Annex | |
parent | 745525e80bb6915f3eb63554de9b735b75991f7d (diff) |
on second thought, InodeCache should use getFileSize
This is necessary for interop between inode caches created on unix and
windows. Which is more important than supporting inodecaches for large keys
with the wrong size, which are broken anyway.
There should be no slowdown from this change, except on Windows.
Diffstat (limited to 'Annex')
-rw-r--r-- | Annex/Content/Direct.hs | 6 | ||||
-rw-r--r-- | Annex/Direct.hs | 2 |
2 files changed, 4 insertions, 4 deletions
diff --git a/Annex/Content/Direct.hs b/Annex/Content/Direct.hs index c09a08f0d..4392b5198 100644 --- a/Annex/Content/Direct.hs +++ b/Annex/Content/Direct.hs @@ -174,10 +174,10 @@ sameInodeCache file old = go =<< withTSDelta (liftIO . genInodeCache file) go (Just curr) = elemInodeCaches curr old {- Checks if a FileStatus matches the recorded InodeCache of a file. -} -sameFileStatus :: Key -> FileStatus -> Annex Bool -sameFileStatus key status = do +sameFileStatus :: Key -> FilePath -> FileStatus -> Annex Bool +sameFileStatus key f status = do old <- recordedInodeCache key - curr <- withTSDelta $ \delta -> liftIO $ toInodeCache delta status + curr <- withTSDelta $ \delta -> liftIO $ toInodeCache delta f status case (old, curr) of (_, Just c) -> elemInodeCaches c old ([], Nothing) -> return True diff --git a/Annex/Direct.hs b/Annex/Direct.hs index df1c8f239..998849ad3 100644 --- a/Annex/Direct.hs +++ b/Annex/Direct.hs @@ -56,7 +56,7 @@ stageDirect = do go (file, Just sha, Just mode) = withTSDelta $ \delta -> do shakey <- catKey sha mode mstat <- liftIO $ catchMaybeIO $ getSymbolicLinkStatus file - mcache <- liftIO $ maybe (pure Nothing) (toInodeCache delta) mstat + mcache <- liftIO $ maybe (pure Nothing) (toInodeCache delta file) mstat filekey <- isAnnexLink file case (shakey, filekey, mstat, mcache) of (_, Just key, _, _) |