Repository : ssh://[email protected]/Cabal On branch : ghc-head Link : http://git.haskell.org/?p=packages/Cabal.git;a=commit;h=729cd551d93d4ce28e8a589d6b5ac638551e5fed
>--------------------------------------------------------------- commit 729cd551d93d4ce28e8a589d6b5ac638551e5fed Author: Reid Barton <[email protected]> Date: Sun Sep 8 18:07:39 2013 -0400 Catch exceptions in findUsableBranchers In the version of process that comes with GHC 7.7, readProcessWithExitCode raises an exception when the process could not be started (for example if the command to be run doesn't exist). >--------------------------------------------------------------- 729cd551d93d4ce28e8a589d6b5ac638551e5fed cabal-install/Distribution/Client/Get.hs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cabal-install/Distribution/Client/Get.hs b/cabal-install/Distribution/Client/Get.hs index 35c0b82..873a812 100644 --- a/cabal-install/Distribution/Client/Get.hs +++ b/cabal-install/Distribution/Client/Get.hs @@ -39,7 +39,7 @@ import Distribution.Client.IndexUtils as IndexUtils ( getSourcePackages ) import Control.Exception - ( finally ) + ( catch, finally ) import Control.Monad ( filterM, forM_, unless, when ) import Data.List @@ -204,7 +204,7 @@ allBranchers = -- exits successfully, that brancher is considered usable. findUsableBranchers :: IO (Data.Map.Map PD.RepoType Brancher) findUsableBranchers = do - let usable (_, brancher) = do + let usable (_, brancher) = flip catch (const (return False) :: IOError -> IO Bool) $ do let cmd = brancherBinary brancher (exitCode, _, _) <- readProcessWithExitCode cmd ["--help"] "" return (exitCode == ExitSuccess) _______________________________________________ ghc-commits mailing list [email protected] http://www.haskell.org/mailman/listinfo/ghc-commits
