summaryrefslogtreecommitdiff
path: root/Annex
diff options
context:
space:
mode:
authorGravatar Joey Hess <id@joeyh.name>2013-05-12 17:18:48 -0500
committerGravatar Joey Hess <id@joeyh.name>2013-05-12 17:29:49 -0500
commitb02c68304aa5051086e29a0cb6547fdf856aa93d (patch)
tree104139431d5e4df6258a7b7f000ecd605a3bf096 /Annex
parentac86f7dbae96c5b813147bf8de5fe40df002671e (diff)
deal with git using / internally, even on DOS
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 ()