From 35f40b3ce9c5761cd23ead8b5478cc38f1cca339 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niklas=20Hamb=C3=BCchen?= Date: Fri, 23 Aug 2013 11:30:07 +0900 Subject: [PATCH] Exit with status 1 on error --- src/GHCMod.hs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/GHCMod.hs b/src/GHCMod.hs index 275bd73..e6ef000 100644 --- a/src/GHCMod.hs +++ b/src/GHCMod.hs @@ -12,6 +12,7 @@ import Prelude import System.Console.GetOpt import System.Directory import System.Environment (getArgs) +import System.Exit (exitFailure) import System.IO (hPutStr, hPutStrLn, stdout, stderr, hSetEncoding, utf8) ---------------------------------------------------------------- @@ -113,7 +114,8 @@ main = flip catches handlers $ do cmd -> throw (NoSuchCommand cmd) putStr res where - handlers = [Handler handler1, Handler handler2] + handlers = [Handler (handleThenExit handler1), Handler (handleThenExit handler2)] + handleThenExit handler = \e -> handler e >> exitFailure handler1 :: ErrorCall -> IO () handler1 = print -- for debug handler2 :: GHCModError -> IO ()