summaryrefslogtreecommitdiff
path: root/Annex
diff options
context:
space:
mode:
Diffstat (limited to 'Annex')
-rwxr-xr-x[-rw-r--r--]Annex/CatFile.hs3
-rwxr-xr-x[-rw-r--r--]Annex/Link.hs4
2 files changed, 5 insertions, 2 deletions
diff --git a/Annex/CatFile.hs b/Annex/CatFile.hs
index 292d62460..c7c01b40c 100644..100755
--- a/Annex/CatFile.hs
+++ b/Annex/CatFile.hs
@@ -21,6 +21,7 @@ import qualified Git
import qualified Git.CatFile
import qualified Annex
import Git.Types
+import Git.FilePath
catFile :: Git.Branch -> FilePath -> Annex L.ByteString
catFile branch file = do
@@ -48,7 +49,7 @@ catFileHandle = maybe startup return =<< Annex.getState Annex.catfilehandle
{- From the Sha or Ref of a symlink back to the key. -}
catKey :: Ref -> Annex (Maybe Key)
catKey ref = do
- l <- encodeW8 . L.unpack <$> catObject ref
+ l <- fromInternalGitPath . encodeW8 . L.unpack <$> catObject ref
return $ if isLinkToAnnex l
then fileKey $ takeFileName l
else Nothing
diff --git a/Annex/Link.hs b/Annex/Link.hs
index 931836d31..24ec6c7c9 100644..100755
--- a/Annex/Link.hs
+++ b/Annex/Link.hs
@@ -18,6 +18,7 @@ import qualified Git.HashObject
import qualified Git.UpdateIndex
import qualified Annex.Queue
import Git.Types
+import Git.FilePath
type LinkTarget = String
@@ -74,7 +75,8 @@ addAnnexLink linktarget file = do
{- Injects a symlink target into git, returning its Sha. -}
hashSymlink :: LinkTarget -> Annex Sha
-hashSymlink linktarget = inRepo $ Git.HashObject.hashObject BlobObject linktarget
+hashSymlink linktarget = inRepo $ Git.HashObject.hashObject BlobObject $
+ toInternalGitPath linktarget
{- Stages a symlink to the annex, using a Sha of its target. -}
stageSymlink :: FilePath -> Sha -> Annex ()