summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon MacMullen <simon@rabbitmq.com>2011-08-04 13:02:27 +0100
committerSimon MacMullen <simon@rabbitmq.com>2011-08-04 13:02:27 +0100
commite770bab34dee193a5ed3b9904741144622b45ec4 (patch)
tree4c6c6715a45ff2a78e7732c6e60f91a75c488776
parent6d40a193d6c8e73216c8fc640533329669b7e859 (diff)
downloadrabbitmq-server-git-e770bab34dee193a5ed3b9904741144622b45ec4.tar.gz
Return the value of Fun(), and make sure we always restore the group leader.
-rw-r--r--src/rabbit_misc.erl7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/rabbit_misc.erl b/src/rabbit_misc.erl
index 0d77ffeaa2..a5c475b758 100644
--- a/src/rabbit_misc.erl
+++ b/src/rabbit_misc.erl
@@ -611,8 +611,11 @@ format_stderr(Fmt, Args) ->
with_local_io(Fun) ->
GL = group_leader(),
group_leader(whereis(user), self()),
- Fun(),
- group_leader(GL, self()).
+ try
+ Fun()
+ after
+ group_leader(GL, self())
+ end.
manage_applications(Iterate, Do, Undo, SkipError, ErrorTag, Apps) ->
Iterate(fun (App, Acc) ->