diff options
author | Simon Marlow <marlowsd@gmail.com> | 2014-05-14 21:10:06 +0100 |
---|---|---|
committer | Austin Seipp <austin@well-typed.com> | 2014-06-03 07:30:52 -0500 |
commit | 145632625651deb4a6f8758e838cfbefc32c9096 (patch) | |
tree | 3ece6aae76f217b09ff99e6c87c8490b50b347be | |
parent | 92d08a6977c3357a47f6061bb71b2ae8d98dae6d (diff) | |
download | haskell-145632625651deb4a6f8758e838cfbefc32c9096.tar.gz |
Only uninstall signal handlers if they were actually installed (#9068)
Submitted by: tomgr
(cherry picked from commit bc7d49a658a516679cc264502e72560c1d2c2314)
-rw-r--r-- | rts/RtsStartup.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/rts/RtsStartup.c b/rts/RtsStartup.c index aa7306f88a..15e48a690d 100644 --- a/rts/RtsStartup.c +++ b/rts/RtsStartup.c @@ -355,8 +355,12 @@ hs_exit_(rtsBool wait_foreign) resetTerminalSettings(); #endif - // uninstall signal handlers - resetDefaultHandlers(); +#if defined(RTS_USER_SIGNALS) + if (RtsFlags.MiscFlags.install_signal_handlers) { + // uninstall signal handlers + resetDefaultHandlers(); + } +#endif /* stop timing the shutdown, we're about to print stats */ stat_endExit(); |