Detect bad content in ~/.config/git-annex/program and look in PATH instead.

This commit is contained in:
Joey Hess 2013-05-20 17:42:40 -04:00
parent ccdedfae36
commit e0327eaafc
2 changed files with 10 additions and 2 deletions

View file

@ -46,7 +46,7 @@ removeAutoStartFile path = modifyAutoStartFile $
filter (not . equalFilePath path)
{- The path to git-annex is written here; which is useful when cabal
- has installed it to some aweful non-PATH location. -}
- has installed it to some awful non-PATH location. -}
programFile :: IO FilePath
programFile = userConfigFile "program"
@ -54,7 +54,14 @@ programFile = userConfigFile "program"
readProgramFile :: IO FilePath
readProgramFile = do
programfile <- programFile
catchDefaultIO cmd $
p <- catchDefaultIO cmd $
fromMaybe cmd . headMaybe . lines <$> readFile programfile
ifM (inPath p)
( return p
, ifM (inPath cmd)
( return cmd
, error $ "cannot find git-annex program in PATH or in the location listed in " ++ programfile
)
)
where
cmd = "git-annex"

1
debian/changelog vendored
View file

@ -18,6 +18,7 @@ git-annex (4.20130517) UNRELEASED; urgency=low
* Fix a bug in the git-annex branch handling code that could
cause info from a remote to not be merged and take effect immediately.
* Direct mode is now fully tested by the test suite.
* Detect bad content in ~/.config/git-annex/program and look in PATH instead.
-- Joey Hess <joeyh@debian.org> Fri, 17 May 2013 11:17:03 -0400