diff options
| -rw-r--r-- | apps/rabbitmq_prelaunch/src/rabbit_prelaunch_sighandler.erl | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/apps/rabbitmq_prelaunch/src/rabbit_prelaunch_sighandler.erl b/apps/rabbitmq_prelaunch/src/rabbit_prelaunch_sighandler.erl index a6b5d3c2f7..12716a31fb 100644 --- a/apps/rabbitmq_prelaunch/src/rabbit_prelaunch_sighandler.erl +++ b/apps/rabbitmq_prelaunch/src/rabbit_prelaunch_sighandler.erl @@ -36,14 +36,19 @@ -define(SERVER, erl_signal_server). setup() -> - case whereis(?SERVER) of - undefined -> - ok; + case os:type() of + {unix, _} -> + case whereis(?SERVER) of + undefined -> + ok; + _ -> + case lists:member(?MODULE, gen_event:which_handlers(?SERVER)) of + true -> ok; + false -> gen_event:add_handler(?SERVER, ?MODULE, []) + end + end; _ -> - case lists:member(?MODULE, gen_event:which_handlers(?SERVER)) of - true -> ok; - false -> gen_event:add_handler(?SERVER, ?MODULE, []) - end + ok end. init(_Args) -> |
