summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon MacMullen <simon@lshift.net>2010-05-26 12:47:01 +0100
committerSimon MacMullen <simon@lshift.net>2010-05-26 12:47:01 +0100
commit56c8b07c2296ccc67688711f81355486e3adb305 (patch)
tree5526b8ae99cd9d35509dc7bcf1b397df495d2b82
parent9ecd9112a63ee568840bfc56da92d997434e586d (diff)
downloadrabbitmq-server-56c8b07c2296ccc67688711f81355486e3adb305.tar.gz
Move our protocol_error outside the with_or_die to stop it being eaten.
-rw-r--r--src/rabbit_channel.erl27
1 files changed, 12 insertions, 15 deletions
diff --git a/src/rabbit_channel.erl b/src/rabbit_channel.erl
index 2d7bfd4e..39a43e60 100644
--- a/src/rabbit_channel.erl
+++ b/src/rabbit_channel.erl
@@ -299,21 +299,18 @@ check_read_permitted(Resource, #ch{ username = Username}) ->
check_resource_access(Username, Resource, read).
with_exclusive_access_or_die(QName, ReaderPid, F) ->
- rabbit_amqqueue:with_or_die(
- QName,
- fun(Q) ->
- case Q of
- #amqqueue{exclusive_owner = none} ->
- F(Q);
- #amqqueue{exclusive_owner = ReaderPid} ->
- F(Q);
- _ ->
- rabbit_misc:protocol_error(
- resource_locked,
- "cannot obtain exclusive access to locked ~s",
- [rabbit_misc:rs(Q#amqqueue.name)])
- end
- end).
+ Q = rabbit_amqqueue:with_or_die(QName, fun(Q1) -> Q1 end),
+ case Q of
+ #amqqueue{exclusive_owner = none} ->
+ F(Q);
+ #amqqueue{exclusive_owner = ReaderPid} ->
+ F(Q);
+ _ ->
+ rabbit_misc:protocol_error(
+ resource_locked,
+ "cannot obtain exclusive access to locked ~s",
+ [rabbit_misc:rs(Q#amqqueue.name)])
+ end.
expand_queue_name_shortcut(<<>>, #ch{ most_recently_declared_queue = <<>> }) ->
rabbit_misc:protocol_error(