From 54c330ceaf69640d7055494903f7e601ab7171b9 Mon Sep 17 00:00:00 2001 From: Ted Ross Date: Fri, 5 Jun 2009 21:39:50 +0000 Subject: 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 --- cpp/src/qpid/broker/RecoveryManagerImpl.cpp | 2 ++ 1 file changed, 2 insertions(+) (limited to 'cpp/src') 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) -- cgit v1.2.1