# HG changeset patch # User unc0rr # Date 1298826909 -10800 # Node ID 705c6186ad9d7c57b2d62cab0a21d92b98b78ad5 # Parent 9075d7effdf2895ae0b4963f15a6082bdc03bb1f Start new server on RestartException diff -r 9075d7effdf2 -r 705c6186ad9d gameServer/Actions.hs --- a/gameServer/Actions.hs Sun Feb 27 19:32:44 2011 +0300 +++ b/gameServer/Actions.hs Sun Feb 27 20:15:09 2011 +0300 @@ -416,6 +416,6 @@ processAction (RestartServer force) = do if force then do - throw ShutdownException + throw RestartException else processAction $ ModifyServerInfo (\s -> s{restartPending=True}) diff -r 9075d7effdf2 -r 705c6186ad9d gameServer/hedgewars-server.hs --- a/gameServer/hedgewars-server.hs Sun Feb 27 19:32:44 2011 +0300 +++ b/gameServer/hedgewars-server.hs Sun Feb 27 20:15:09 2011 +0300 @@ -7,6 +7,7 @@ import Control.Concurrent.Chan import qualified Control.Exception as E import System.Log.Logger +import System.Process ----------------------------------- import Opts import CoreTypes @@ -43,7 +44,7 @@ handleRestart :: ShutdownException -> IO () handleRestart ShutdownException = return () handleRestart RestartException = do - + _ <- createProcess (proc "./hedgewars-server" []) return () main :: IO ()