diff options
author | Joey Hess <id@joeyh.name> | 2013-05-12 17:18:48 -0500 |
---|---|---|
committer | Joey Hess <id@joeyh.name> | 2013-05-12 17:29:49 -0500 |
commit | b02c68304aa5051086e29a0cb6547fdf856aa93d (patch) | |
tree | 104139431d5e4df6258a7b7f000ecd605a3bf096 /Annex | |
parent | ac86f7dbae96c5b813147bf8de5fe40df002671e (diff) |
deal with git using / internally, even on DOS
Diffstat (limited to 'Annex')
-rwxr-xr-x[-rw-r--r--] | Annex/CatFile.hs | 3 | ||||
-rwxr-xr-x[-rw-r--r--] | Annex/Link.hs | 4 |
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 () |