summaryrefslogtreecommitdiff
path: root/GitRepo.hs
diff options
context:
space:
mode:
Diffstat (limited to 'GitRepo.hs')
-rw-r--r--GitRepo.hs5
1 files changed, 4 insertions, 1 deletions
diff --git a/GitRepo.hs b/GitRepo.hs
index cd2c80691..fd69ec21a 100644
--- a/GitRepo.hs
+++ b/GitRepo.hs
@@ -79,7 +79,10 @@ repoFromPath dir = newFrom $ Dir dir
{- Remote Repo constructor. Throws exception on invalid url. -}
repoFromUrl :: String -> Repo
-repoFromUrl url = newFrom $ Url $ fromJust $ parseURI url
+repoFromUrl url
+ | startswith "file://" url = repoFromPath $ uriPath u
+ | otherwise = newFrom $ Url u
+ where u = fromJust $ parseURI url
{- User-visible description of a git repo. -}
repoDescribe Repo { remoteName = Just name } = name