summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAlexey Lebedeff <alebedev@mirantis.com>2016-11-29 17:52:10 +0300
committerAlexey Lebedeff <alebedev@mirantis.com>2016-11-29 17:52:10 +0300
commitdeafa581a8ac73bef86a8ba5d9c198b9e03ef054 (patch)
tree70bcf7f2dcb9ce24b1025de4ac65be0a75871b69 /src
parentee793bd498ff8e7ea29a94725dba5b808c01995f (diff)
downloadrabbitmq-server-git-deafa581a8ac73bef86a8ba5d9c198b9e03ef054.tar.gz
Properly handle systemd notify errors
Diffstat (limited to 'src')
-rw-r--r--src/rabbit.erl9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/rabbit.erl b/src/rabbit.erl
index 4906999a4f..cfb92eb843 100644
--- a/src/rabbit.erl
+++ b/src/rabbit.erl
@@ -348,15 +348,16 @@ sd_open_port() ->
use_stdio, out]).
sd_notify_socat(Unit) ->
- case sd_open_port() of
- {'EXIT', Exit} ->
- io:format(standard_error, "Failed to start socat ~p~n", [Exit]),
- false;
+ try sd_open_port() of
Port ->
Port ! {self(), {command, sd_notify_data()}},
Result = sd_wait_activation(Port, Unit),
port_close(Port),
Result
+ catch
+ Class:Reason ->
+ io:format(standard_error, "Failed to start socat ~p:~p~n", [Class, Reason]),
+ false
end.
sd_current_unit() ->