aboutsummaryrefslogtreecommitdiff
path: root/RemoteDaemon/Core.hs
diff options
context:
space:
mode:
authorGravatar Joey Hess <joeyh@joeyh.name>2016-11-20 15:45:01 -0400
committerGravatar Joey Hess <joeyh@joeyh.name>2016-11-20 15:48:12 -0400
commitdce8e76ef443e33d88b8301c86ebf080fceff511 (patch)
tree204d7f7b2eaaeaa4acd7ed2e1182fb208b829c2c /RemoteDaemon/Core.hs
parent8e28135b26db1c920ebde7438db9bad87d3026ee (diff)
remotedaemon: serve tor hidden service
Diffstat (limited to 'RemoteDaemon/Core.hs')
-rw-r--r--RemoteDaemon/Core.hs9
1 files changed, 7 insertions, 2 deletions
diff --git a/RemoteDaemon/Core.hs b/RemoteDaemon/Core.hs
index 3b3f6d98d..446948da6 100644
--- a/RemoteDaemon/Core.hs
+++ b/RemoteDaemon/Core.hs
@@ -45,7 +45,9 @@ runInteractive = do
let controller = runController ichan ochan
-- If any thread fails, the rest will be killed.
- void $ tryIO $ reader `concurrently` writer `concurrently` controller
+ void $ tryIO $ reader
+ `concurrently` writer
+ `concurrently` controller
runNonInteractive :: IO ()
runNonInteractive = do
@@ -59,7 +61,9 @@ runNonInteractive = do
void $ atomically $ readTChan ochan
let controller = runController ichan ochan
- void $ tryIO $ reader `concurrently` writer `concurrently` controller
+ void $ tryIO $ reader
+ `concurrently` writer
+ `concurrently` controller
type RemoteMap = M.Map Git.Repo (IO (), TChan Consumed)
@@ -70,6 +74,7 @@ runController ichan ochan = do
h <- genTransportHandle
m <- genRemoteMap h ochan
startrunning m
+ mapM_ (\s -> async (s h)) remoteServers
go h False m
where
go h paused m = do