summaryrefslogtreecommitdiff
path: root/cpp/src
diff options
context:
space:
mode:
authorTed Ross <tross@apache.org>2009-06-05 21:39:50 +0000
committerTed Ross <tross@apache.org>2009-06-05 21:39:50 +0000
commit54c330ceaf69640d7055494903f7e601ab7171b9 (patch)
tree5f78fd898a32270bb7913800852238e1a7c6740d /cpp/src
parent6efddffd3c04fc16d2e63ccfa9db6c6ad0798825 (diff)
downloadqpid-python-54c330ceaf69640d7055494903f7e601ab7171b9.tar.gz
QPID-1892 - Fixed a memory leak where recovered durable queues are never deleted.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@782146 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src')
-rw-r--r--cpp/src/qpid/broker/RecoveryManagerImpl.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/cpp/src/qpid/broker/RecoveryManagerImpl.cpp b/cpp/src/qpid/broker/RecoveryManagerImpl.cpp
index 1e8dcd9868..ae5faf9dc5 100644
--- a/cpp/src/qpid/broker/RecoveryManagerImpl.cpp
+++ b/cpp/src/qpid/broker/RecoveryManagerImpl.cpp
@@ -118,6 +118,7 @@ RecoverableQueue::shared_ptr RecoveryManagerImpl::recoverQueue(framing::Buffer&
Exchange::shared_ptr exchange = exchanges.getDefault();
if (exchange) {
exchange->bind(queue, queue->getName(), 0);
+ queue->bound(exchange->getName(), queue->getName(), framing::FieldTable());
}
} catch (const framing::NotFoundException& /*e*/) {
//assume no default exchange has been declared
@@ -226,6 +227,7 @@ void RecoverableExchangeImpl::bind(string& queueName, string& key, framing::Fiel
{
Queue::shared_ptr queue = queues.find(queueName);
exchange->bind(queue, key, &args);
+ queue->bound(exchange->getName(), key, args);
}
void RecoverableMessageImpl::dequeue(DtxBuffer::shared_ptr buffer, Queue::shared_ptr queue)