diff options
Diffstat (limited to 'Remote/Helper')
-rw-r--r-- | Remote/Helper/Git.hs | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/Remote/Helper/Git.hs b/Remote/Helper/Git.hs index 7c24ff2e7..d76cb2ee7 100644 --- a/Remote/Helper/Git.hs +++ b/Remote/Helper/Git.hs @@ -1,6 +1,6 @@ {- Utilities for git remotes. - - - Copyright 2011-2012 Joey Hess <joey@kitenet.net> + - Copyright 2011-2014 Joey Hess <joey@kitenet.net> - - Licensed under the GNU GPL version 3 or higher. -} @@ -9,18 +9,20 @@ module Remote.Helper.Git where import Common.Annex import qualified Git +import Types.Availability repoCheap :: Git.Repo -> Bool repoCheap = not . Git.repoIsUrl localpathCalc :: Git.Repo -> Maybe FilePath -localpathCalc r = if globallyAvailableCalc r - then Nothing - else Just $ Git.repoPath r +localpathCalc r + | availabilityCalc r == GloballyAvailable = Nothing + | otherwise = Just $ Git.repoPath r -globallyAvailableCalc :: Git.Repo -> Bool -globallyAvailableCalc r = not $ - Git.repoIsLocal r || Git.repoIsLocalUnknown r +availabilityCalc :: Git.Repo -> Availability +availabilityCalc r + | (Git.repoIsLocal r || Git.repoIsLocalUnknown r) = LocallyAvailable + | otherwise = GloballyAvailable {- Avoids performing an action on a local repository that's not usable. - Does not check that the repository is still available on disk. -} |