summaryrefslogtreecommitdiff
path: root/rts/posix
diff options
context:
space:
mode:
Diffstat (limited to 'rts/posix')
-rw-r--r--rts/posix/Signals.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/rts/posix/Signals.c b/rts/posix/Signals.c
index c1ffb5d2cf..ace58c2f98 100644
--- a/rts/posix/Signals.c
+++ b/rts/posix/Signals.c
@@ -95,7 +95,9 @@ setIOManagerPipe (int fd)
{
// only called when THREADED_RTS, but unconditionally
// compiled here because GHC.Conc depends on it.
- io_manager_pipe = fd;
+ if (io_manager_pipe < 0) {
+ io_manager_pipe = fd;
+ }
}
#if defined(THREADED_RTS)