summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Annex.hs9
-rw-r--r--CmdLine/Action.hs7
2 files changed, 9 insertions, 7 deletions
diff --git a/Annex.hs b/Annex.hs
index 1c8618cc0..07da2a17b 100644
--- a/Annex.hs
+++ b/Annex.hs
@@ -5,7 +5,7 @@
- Licensed under the GNU GPL version 3 or higher.
-}
-{-# LANGUAGE CPP, GeneralizedNewtypeDeriving, PackageImports #-}
+{-# LANGUAGE CPP, GeneralizedNewtypeDeriving, PackageImports, BangPatterns #-}
module Annex (
Annex,
@@ -32,6 +32,7 @@ module Annex (
getRemoteGitConfig,
withCurrentState,
changeDirectory,
+ incError,
) where
import Common
@@ -309,3 +310,9 @@ changeDirectory d = do
liftIO $ setCurrentDirectory d
r' <- liftIO $ Git.relPath r
changeState $ \s -> s { repo = r' }
+
+incError :: Annex ()
+incError = changeState $ \s ->
+ let ! c = errcounter s + 1
+ ! s' = s { errcounter = c }
+ in s'
diff --git a/CmdLine/Action.hs b/CmdLine/Action.hs
index 57e1fa60b..a32abbbee 100644
--- a/CmdLine/Action.hs
+++ b/CmdLine/Action.hs
@@ -5,8 +5,6 @@
- Licensed under the GNU GPL version 3 or higher.
-}
-{-# LANGUAGE BangPatterns #-}
-
module CmdLine.Action where
import Common.Annex
@@ -49,10 +47,7 @@ commandAction a = account =<< tryIO go
showEndFail
incerr
incerr = do
- Annex.changeState $ \s ->
- let ! c = Annex.errcounter s + 1
- ! s' = s { Annex.errcounter = c }
- in s'
+ Annex.incError
return False
{- Runs a single command action through the start, perform and cleanup