You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by tr...@apache.org on 2009/06/05 23:39:50 UTC

svn commit: r782146 - /qpid/trunk/qpid/cpp/src/qpid/broker/RecoveryManagerImpl.cpp

Author: tross
Date: Fri Jun  5 21:39:50 2009
New Revision: 782146

URL: http://svn.apache.org/viewvc?rev=782146&view=rev
Log:
QPID-1892 - Fixed a memory leak where recovered durable queues are never deleted.

Modified:
    qpid/trunk/qpid/cpp/src/qpid/broker/RecoveryManagerImpl.cpp

Modified: qpid/trunk/qpid/cpp/src/qpid/broker/RecoveryManagerImpl.cpp
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/broker/RecoveryManagerImpl.cpp?rev=782146&r1=782145&r2=782146&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/broker/RecoveryManagerImpl.cpp (original)
+++ qpid/trunk/qpid/cpp/src/qpid/broker/RecoveryManagerImpl.cpp Fri Jun  5 21:39:50 2009
@@ -118,6 +118,7 @@
         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 @@
 {
     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)



---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:commits-subscribe@qpid.apache.org