Description: Use Control.Exception.catch Author: Joachim Breitner Index: darcs-monitor-0.4.2/darcs-monitor.hs =================================================================== --- darcs-monitor-0.4.2.orig/darcs-monitor.hs 2013-05-18 15:43:35.000000000 +0200 +++ darcs-monitor-0.4.2/darcs-monitor.hs 2013-05-18 16:02:25.847617172 +0200 @@ -1,3 +1,4 @@ +{-# LANGUAGE ScopedTypeVariables #-} {- darcs-monitor - Darcs repository monitor Copyright © 2007 Antti-Juhani Kaijanaho Copyright © 2007 Benja Fallenstein @@ -36,6 +37,7 @@ import System.IO import Text.XML.HaXml hiding (when,version,x,tag,cdata) import Text.XML.HaXml.Posn +import Control.Exception (catch, IOException) import Config import Darcs @@ -182,9 +184,9 @@ readSeenPatches :: MonadIO m => String -> m SeenPatches readSeenPatches repo = - liftIO $ catch (do fc <- readFile (repo ++ seenPatchesFileName) - return (read fc) - ) $ \_ -> return Map.empty + liftIO $ Control.Exception.catch (do fc <- readFile (repo ++ seenPatchesFileName) + return (read fc) + ) $ \(_::IOException) -> return Map.empty processRepo :: (MonadConfig m, MonadIO m) => Bool -> Command m -> FilePath -> m ()