diff options
author | Joey Hess <joey@kitenet.net> | 2011-10-02 11:42:34 -0400 |
---|---|---|
committer | Joey Hess <joey@kitenet.net> | 2011-10-02 11:42:34 -0400 |
commit | 61fbea992da0f2a1ed49e2e862ef937b25d8430b (patch) | |
tree | 1e24d2f7ae4de66161b1d88e31e2abbd879d5c82 /Crypto.hs | |
parent | 49f21dd9ba4819aedf04ebbc0c12fafdb3dc8ab5 (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 'Crypto.hs')
-rw-r--r-- | Crypto.hs | 3 |
1 files changed, 2 insertions, 1 deletions
@@ -218,7 +218,7 @@ gpgCipherHandle params c a b = do params' <- gpgParams $ passphrase ++ params (pid, fromh, toh) <- hPipeBoth "gpg" params' - _ <- forkProcess $ do + pid2 <- forkProcess $ do L.hPut toh =<< a hClose toh exitSuccess @@ -227,6 +227,7 @@ gpgCipherHandle params c a b = do -- cleanup forceSuccess pid + _ <- getProcessStatus True False pid2 closeFd frompipe return ret |