# HG changeset patch # User unc0rr # Date 1243447986 0 # Node ID 8664554d5547324c69005a1fb389512db9a9193b # Parent 903fdb9f44b09c55eda2f7f206ffd3c3abc01e60 Another approach to zombies problem (set SIGCHLD handler to SIG_IGN) diff -r 903fdb9f44b0 -r 8664554d5547 gameServer/OfficialServer/DBInteraction.hs --- a/gameServer/OfficialServer/DBInteraction.hs Wed May 27 15:55:14 2009 +0000 +++ b/gameServer/OfficialServer/DBInteraction.hs Wed May 27 18:13:06 2009 +0000 @@ -75,7 +75,7 @@ Control.Exception.handle (\e -> warningM "Database" (show e) >> return accountsCache) $ bracket (createProcess (proc "./OfficialServer/extdbinterface" []) {std_in = CreatePipe, std_out = CreatePipe}) - (\(_, _, _, processHandle) -> getProcessExitCode processHandle >> return (accountsCache)) + (\(_, _, _, processHandle) -> return accountsCache) (\(Just hIn, Just hOut, _, _) -> do hSetBuffering hIn LineBuffering hSetBuffering hOut LineBuffering diff -r 903fdb9f44b0 -r 8664554d5547 gameServer/hedgewars-server.hs --- a/gameServer/hedgewars-server.hs Wed May 27 15:55:14 2009 +0000 +++ b/gameServer/hedgewars-server.hs Wed May 27 18:13:06 2009 +0000 @@ -28,6 +28,7 @@ main = withSocketsDo $ do #if !defined(mingw32_HOST_OS) installHandler sigPIPE Ignore Nothing; + installHandler sigCHLD Ignore Nothing; #endif setupLoggers