diff options
author | Simon Marlow <marlowsd@gmail.com> | 2009-11-03 16:05:47 +0000 |
---|---|---|
committer | Simon Marlow <marlowsd@gmail.com> | 2009-11-03 16:05:47 +0000 |
commit | 3501ac6af749ada0afcaf84f112ab2e4bf9120b9 (patch) | |
tree | 2afe6473e18531985cd92d872b45f4267c6158cb /rts/posix/Signals.h | |
parent | 7068f60cc7aefef514f02d5927d5abbdcd5c94d4 (diff) | |
download | haskell-3501ac6af749ada0afcaf84f112ab2e4bf9120b9.tar.gz |
Fix #1185 (RTS part, also needs corresponding change to libraries/base)
GHC.Conc.ensureIOManagerIsRunning now creates an IO manager thread if
one does not exist or has died/exited.
Unfortunately this exposed a problem caused by the fact that we have
two base packages, and hence two IO managers, in GHCi: see NOTE
[io-manager-ghci] in rts/Linker.c. The workaround can go away if/when
we switch to a dynamically linked GHCi.
Diffstat (limited to 'rts/posix/Signals.h')
-rw-r--r-- | rts/posix/Signals.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/rts/posix/Signals.h b/rts/posix/Signals.h index 4d0a5a5fc7..b80f711b17 100644 --- a/rts/posix/Signals.h +++ b/rts/posix/Signals.h @@ -24,6 +24,8 @@ extern siginfo_t *next_pending_handler; void startSignalHandlers(Capability *cap); #endif +Capability *ioManagerStartCap (Capability *cap); + extern StgInt *signal_handlers; END_RTS_PRIVATE |