summaryrefslogtreecommitdiff
path: root/Utility
diff options
context:
space:
mode:
Diffstat (limited to 'Utility')
-rw-r--r--Utility/Exception.hs5
1 files changed, 1 insertions, 4 deletions
diff --git a/Utility/Exception.hs b/Utility/Exception.hs
index 7b6c9c999..a6726945c 100644
--- a/Utility/Exception.hs
+++ b/Utility/Exception.hs
@@ -25,10 +25,7 @@ catchDefaultIO a def = catchIO a (const $ return def)
{- Catches IO errors and returns the error message. -}
catchMsgIO :: IO a -> IO (Either String a)
-catchMsgIO a = dispatch <$> tryIO a
- where
- dispatch (Left e) = Left $ show e
- dispatch (Right v) = Right v
+catchMsgIO a = either (Left . show) Right <$> tryIO a
{- catch specialized for IO errors only -}
catchIO :: IO a -> (IOException -> IO a) -> IO a