summaryrefslogtreecommitdiff
path: root/cpp/src
diff options
context:
space:
mode:
authorGordon Sim <gsim@apache.org>2013-05-08 11:55:43 +0000
committerGordon Sim <gsim@apache.org>2013-05-08 11:55:43 +0000
commit9f0440980dd6a89065db473ffe6cc9999f75b4f0 (patch)
tree035cba9f83e89e279986c64d5fef856517bce6ca /cpp/src
parent12bff0eac8cc9ff6d1722511efa5be57a642eb09 (diff)
downloadqpid-python-9f0440980dd6a89065db473ffe6cc9999f75b4f0.tar.gz
QPID-4819: ensure exclusive lock is released when link is detached (allowing queue to be deleted
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1480238 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src')
-rw-r--r--cpp/src/qpid/broker/amqp/Outgoing.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/cpp/src/qpid/broker/amqp/Outgoing.cpp b/cpp/src/qpid/broker/amqp/Outgoing.cpp
index 7e98195a60..3b0836a453 100644
--- a/cpp/src/qpid/broker/amqp/Outgoing.cpp
+++ b/cpp/src/qpid/broker/amqp/Outgoing.cpp
@@ -148,6 +148,7 @@ void OutgoingFromQueue::detached()
for (size_t i = 0 ; i < deliveries.capacity(); ++i) {
if (deliveries[i].msg) queue->release(deliveries[i].cursor, true);
}
+ if (exclusive) queue->releaseExclusiveOwnership();
Queue::tryAutoDelete(*queue->getBroker(), queue, "", "");
}