X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=rts%2Fsm%2FGC.c;h=1fee3941395cc45d4f2b671844e0899e8c47dc09;hb=8a2809c29de9f23eba7ca682b48390033a9d40f6;hp=270784e45703a463304d1f83867f086e540817f4;hpb=63b6c9338c67278da8d1d7d8e7e7ce7373ac52da;p=ghc-hetmet.git diff --git a/rts/sm/GC.c b/rts/sm/GC.c index 270784e..1fee394 100644 --- a/rts/sm/GC.c +++ b/rts/sm/GC.c @@ -208,8 +208,10 @@ GarbageCollect ( rtsBool force_major_gc ) debugTrace(DEBUG_gc, "starting GC"); #if defined(RTS_USER_SIGNALS) - // block signals - blockUserSignals(); + if (RtsFlags.MiscFlags.install_signal_handlers) { + // block signals + blockUserSignals(); + } #endif // tell the STM to discard any cached closures its hoping to re-use @@ -1014,8 +1016,10 @@ GarbageCollect ( rtsBool force_major_gc ) stat_endGC(allocated, live, copied, scavd_copied, N); #if defined(RTS_USER_SIGNALS) - // unblock signals again - unblockUserSignals(); + if (RtsFlags.MiscFlags.install_signal_handlers) { + // unblock signals again + unblockUserSignals(); + } #endif RELEASE_SM_LOCK;