summaryrefslogtreecommitdiff
path: root/Command
diff options
context:
space:
mode:
authorGravatar Joey Hess <joey@kitenet.net>2011-11-28 22:43:51 -0400
committerGravatar Joey Hess <joey@kitenet.net>2011-11-28 22:43:51 -0400
commitda9cd315beb03570b96f83063a39e799fe01b166 (patch)
tree61fdc79dd54dccf1792cf3ccadcc584e0119d077 /Command
parent2b3c120506f1f25b4c3d0e19342b9826bde0b3b5 (diff)
add support for using hashDirLower in addition to hashDirMixed
Supporting multiple directory hash types will allow converting to a different one, without a flag day. gitAnnexLocation now checks which of the possible locations have a file. This means more statting of files. Several places currently use gitAnnexLocation and immediately check if the returned file exists; those need to be optimised.
Diffstat (limited to 'Command')
-rw-r--r--Command/Add.hs2
-rw-r--r--Command/Fsck.hs4
-rw-r--r--Command/Migrate.hs2
-rw-r--r--Command/SendKey.hs2
-rw-r--r--Command/Unannex.hs2
-rw-r--r--Command/Unlock.hs2
6 files changed, 7 insertions, 7 deletions
diff --git a/Command/Add.hs b/Command/Add.hs
index 130f5e311..9fdbdcaa6 100644
--- a/Command/Add.hs
+++ b/Command/Add.hs
@@ -60,7 +60,7 @@ undo file key e = do
-- fromAnnex could fail if the file ownership is weird
tryharder :: IOException -> Annex ()
tryharder _ = do
- src <- fromRepo $ gitAnnexLocation key
+ src <- inRepo $ gitAnnexLocation key
liftIO $ moveFile src file
cleanup :: FilePath -> Key -> Bool -> CommandCleanup
diff --git a/Command/Fsck.hs b/Command/Fsck.hs
index 99dda99e5..a803207e2 100644
--- a/Command/Fsck.hs
+++ b/Command/Fsck.hs
@@ -87,7 +87,7 @@ verifyLocationLog key desc = do
-- Since we're checking that a key's file is present, throw
-- in a permission fixup here too.
when present $ do
- f <- fromRepo $ gitAnnexLocation key
+ f <- inRepo $ gitAnnexLocation key
liftIO $ do
preventWrite f
preventWrite (parentDir f)
@@ -118,7 +118,7 @@ verifyLocationLog key desc = do
- the key's metadata, if available. -}
checkKeySize :: Key -> Annex Bool
checkKeySize key = do
- file <- fromRepo $ gitAnnexLocation key
+ file <- inRepo $ gitAnnexLocation key
present <- liftIO $ doesFileExist file
case (present, Types.Key.keySize key) of
(_, Nothing) -> return True
diff --git a/Command/Migrate.hs b/Command/Migrate.hs
index 7a329080f..c85d7c2ac 100644
--- a/Command/Migrate.hs
+++ b/Command/Migrate.hs
@@ -49,7 +49,7 @@ upgradableKey key = isNothing $ Types.Key.keySize key
-}
perform :: FilePath -> Key -> Backend Annex -> CommandPerform
perform file oldkey newbackend = do
- src <- fromRepo $ gitAnnexLocation oldkey
+ src <- inRepo $ gitAnnexLocation oldkey
tmp <- fromRepo gitAnnexTmpDir
let tmpfile = tmp </> takeFileName file
cleantmp tmpfile
diff --git a/Command/SendKey.hs b/Command/SendKey.hs
index 573747867..7b1cd3eca 100644
--- a/Command/SendKey.hs
+++ b/Command/SendKey.hs
@@ -21,7 +21,7 @@ seek = [withKeys start]
start :: Key -> CommandStart
start key = do
- file <- fromRepo $ gitAnnexLocation key
+ file <- inRepo $ gitAnnexLocation key
whenM (inAnnex key) $
liftIO $ rsyncServerSend file -- does not return
warning "requested key is not present"
diff --git a/Command/Unannex.hs b/Command/Unannex.hs
index b9190ce04..e97b6d05d 100644
--- a/Command/Unannex.hs
+++ b/Command/Unannex.hs
@@ -55,7 +55,7 @@ cleanup file key = do
if fast
then do
-- fast mode: hard link to content in annex
- src <- fromRepo $ gitAnnexLocation key
+ src <- inRepo $ gitAnnexLocation key
liftIO $ do
createLink src file
allowWrite file
diff --git a/Command/Unlock.hs b/Command/Unlock.hs
index b6f39488d..673a7038a 100644
--- a/Command/Unlock.hs
+++ b/Command/Unlock.hs
@@ -37,7 +37,7 @@ perform dest key = do
checkDiskSpace key
- src <- fromRepo $ gitAnnexLocation key
+ src <- inRepo $ gitAnnexLocation key
tmpdest <- fromRepo $ gitAnnexTmpLocation key
liftIO $ createDirectoryIfMissing True (parentDir tmpdest)
showAction "copying"