summaryrefslogtreecommitdiff
path: root/CmdLine.hs
diff options
context:
space:
mode:
authorGravatar Joey Hess <joey@kitenet.net>2011-10-02 11:42:34 -0400
committerGravatar Joey Hess <joey@kitenet.net>2011-10-02 11:42:34 -0400
commit61fbea992da0f2a1ed49e2e862ef937b25d8430b (patch)
tree1e24d2f7ae4de66161b1d88e31e2abbd879d5c82 /CmdLine.hs
parent49f21dd9ba4819aedf04ebbc0c12fafdb3dc8ab5 (diff)
when all you have is a zombie, everything looks like a shotgun
Actually, let's do a targeted fix of the actual forkProcess that was not waited on. The global reap is moved back to the end, after the long-running git processes actually exit.
Diffstat (limited to 'CmdLine.hs')
-rw-r--r--CmdLine.hs5
1 files changed, 2 insertions, 3 deletions
diff --git a/CmdLine.hs b/CmdLine.hs
index 0ee0c6adb..38d4754da 100644
--- a/CmdLine.hs
+++ b/CmdLine.hs
@@ -85,9 +85,7 @@ tryRun' :: Integer -> Annex.AnnexState -> [Annex Bool] -> IO ()
tryRun' errnum state (a:as) = do
result <- try $ Annex.run state $ do
AnnexQueue.flushWhenFull
- r <- a
- liftIO Git.reap
- return r
+ a
case result of
Left err -> do
Annex.eval state $ do
@@ -106,4 +104,5 @@ startup = return True
shutdown :: Annex Bool
shutdown = do
saveState
+ liftIO Git.reap -- zombies from long-running git processes
return True