summaryrefslogtreecommitdiff
path: root/Command/Sync.hs
diff options
context:
space:
mode:
authorGravatar Joey Hess <joey@kitenet.net>2012-10-04 19:56:32 -0400
committerGravatar Joey Hess <joey@kitenet.net>2012-10-04 19:56:32 -0400
commitcd699ff50b8434b52e2f51d06414e8431b407482 (patch)
tree77291f6d6f6c340c41f9da5b3bbfeae4117d7764 /Command/Sync.hs
parentbdbfe36e945e97d66c965bc7227d1457372bce32 (diff)
fix last zombies in the assistant
Made Git.LsFiles return cleanup actions, and everything waits on processes now, except of course for Seek.
Diffstat (limited to 'Command/Sync.hs')
-rw-r--r--Command/Sync.hs4
1 files changed, 3 insertions, 1 deletions
diff --git a/Command/Sync.hs b/Command/Sync.hs
index bbe6a98b3..11ea30a52 100644
--- a/Command/Sync.hs
+++ b/Command/Sync.hs
@@ -196,11 +196,13 @@ mergeFrom branch = do
resolveMerge :: Annex Bool
resolveMerge = do
top <- fromRepo Git.repoPath
- merged <- all id <$> (mapM resolveMerge' =<< inRepo (LsFiles.unmerged [top]))
+ (fs, cleanup) <- inRepo (LsFiles.unmerged [top])
+ merged <- all id <$> mapM resolveMerge' fs
when merged $ do
Annex.Queue.flush
void $ inRepo $ Git.Command.runBool "commit"
[Param "-m", Param "git-annex automatic merge conflict fix"]
+ void $ liftIO cleanup
return merged
resolveMerge' :: LsFiles.Unmerged -> Annex Bool