diff options
-rw-r--r-- | Annex/UUID.hs | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/Annex/UUID.hs b/Annex/UUID.hs index 6fc04c0f0..3b64bf3d8 100644 --- a/Annex/UUID.hs +++ b/Annex/UUID.hs @@ -39,10 +39,11 @@ genUUID = pOpen ReadFromPipe command params $ liftM toUUID . hGetLine -- uuidgen generates random uuid by default else [] +{- Get current repository's UUID. -} getUUID :: Annex UUID getUUID = getRepoUUID =<< gitRepo -{- Looks up a repo's UUID. May return "" if none is known. -} +{- Looks up a repo's UUID, caching it in .git/config if it's not already. -} getRepoUUID :: Git.Repo -> Annex UUID getRepoUUID r = do c <- fromRepo cached @@ -54,7 +55,7 @@ getRepoUUID r = do return u else return c where - cached g = toUUID $ Git.configGet cachekey "" g + cached = toUUID . Git.configGet cachekey "" updatecache u = do g <- gitRepo when (g /= r) $ storeUUID cachekey u |