diff options
Diffstat (limited to 'src/rabbit_channel.erl')
-rw-r--r-- | src/rabbit_channel.erl | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/rabbit_channel.erl b/src/rabbit_channel.erl index d6c1e8c0..4a194047 100644 --- a/src/rabbit_channel.erl +++ b/src/rabbit_channel.erl @@ -1021,7 +1021,12 @@ handle_method(#'queue.declare'{queue = QueueNameBin, %% declare. Loop around again. handle_method(Declare, none, State); {absent, Q} -> - rabbit_misc:absent(Q) + rabbit_misc:absent(Q); + {owner_died, Q} -> + %% Presumably our own days are numbered since the + %% connection has died. Pretend the queue exists though, + %% just so nothing fails. + return_queue_declare_ok(QueueName, NoWait, 0, 0, State) end; {error, {absent, Q}} -> rabbit_misc:absent(Q) |