summaryrefslogtreecommitdiff
path: root/CmdLine
diff options
context:
space:
mode:
Diffstat (limited to 'CmdLine')
-rw-r--r--CmdLine/GitAnnex/Options.hs7
1 files changed, 6 insertions, 1 deletions
diff --git a/CmdLine/GitAnnex/Options.hs b/CmdLine/GitAnnex/Options.hs
index b004e4239..7d8bcadee 100644
--- a/CmdLine/GitAnnex/Options.hs
+++ b/CmdLine/GitAnnex/Options.hs
@@ -9,6 +9,7 @@ module CmdLine.GitAnnex.Options where
import Options.Applicative
import Options.Applicative.Builder.Internal
+import Control.Concurrent
import Common.Annex
import qualified Git.Config
@@ -292,7 +293,11 @@ jobsOption = globalSetter set $
<> hidden
)
where
- set n = Annex.changeState $ \s -> s { Annex.concurrentjobs = Just n }
+ set n = do
+ Annex.changeState $ \s -> s { Annex.concurrentjobs = Just n }
+ c <- liftIO getNumCapabilities
+ when (n > c) $
+ liftIO $ setNumCapabilities n
timeLimitOption :: GlobalOption
timeLimitOption = globalSetter Limit.addTimeLimit $ strOption