From faa56834d282c6bb9b3338ed7514f2e0665d166f Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Thu, 8 Dec 2016 15:47:49 -0400 Subject: convert P2P runners from Maybe to Either String So we get some useful error messages when things fail. This commit was sponsored by Peter Hogg on Patreon. --- CmdLine/GitRemoteTorAnnex.hs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'CmdLine') diff --git a/CmdLine/GitRemoteTorAnnex.hs b/CmdLine/GitRemoteTorAnnex.hs index c4bf26c85..5208a47ca 100644 --- a/CmdLine/GitRemoteTorAnnex.hs +++ b/CmdLine/GitRemoteTorAnnex.hs @@ -34,8 +34,8 @@ run (_remotename:address:[]) = forever $ do | otherwise = parseAddressPort address go service = do ready - res <- connectService onionaddress onionport service - exitWith (fromMaybe (ExitFailure 1) res) + either giveup exitWith + =<< connectService onionaddress onionport service ready = do putStrLn "" hFlush stdout @@ -50,7 +50,7 @@ parseAddressPort s = Nothing -> giveup "onion address must include port number" Just p -> (OnionAddress a, p) -connectService :: OnionAddress -> OnionPort -> Service -> IO (Maybe ExitCode) +connectService :: OnionAddress -> OnionPort -> Service -> IO (Either String ExitCode) connectService address port service = do state <- Annex.new =<< Git.CurrentRepo.get Annex.eval state $ do -- cgit v1.2.3