diff options
author | Joey Hess <joeyh@joeyh.name> | 2015-02-28 16:59:52 -0400 |
---|---|---|
committer | Joey Hess <joeyh@joeyh.name> | 2015-02-28 16:59:52 -0400 |
commit | a35208c5df555006431a66436288ce156af4fdb9 (patch) | |
tree | 5c07d4b504f56f7f1f58a9c186a0166be67b87d8 /Annex | |
parent | 037834477ef6ac97f9a50e02a529a4f6d2fc7b45 (diff) |
make programPath return FilePath not Maybe FilePath
Looking at the few current callers, it's ok to have programPath throw an
exception, in the unusual case where it cannot find git-annex.
Diffstat (limited to 'Annex')
-rw-r--r-- | Annex/Path.hs | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/Annex/Path.hs b/Annex/Path.hs index 6186a887b..ac4e77645 100644 --- a/Annex/Path.hs +++ b/Annex/Path.hs @@ -17,9 +17,10 @@ import System.Environment - - getExecutablePath is available since ghc 7.4.2. On OSs it supports - well, it returns the complete path to the program. But, on other OSs, - - it might return just the basename. + - it might return just the basename. Fall back to reading the programFile, + - or searching for the command name in PATH. -} -programPath :: IO (Maybe FilePath) +programPath :: IO FilePath programPath = do #if MIN_VERSION_base(4,6,0) exe <- getExecutablePath @@ -29,6 +30,4 @@ programPath = do #else p <- readProgramFile #endif - -- In case readProgramFile returned just the command name, - -- fall back to finding it in PATH. - searchPath p + maybe cannotFindProgram return =<< searchPath p |