Author: chug
Date: Fri Dec  7 22:59:55 2012
New Revision: 1418544

URL: http://svn.apache.org/viewvc?rev=1418544&view=rev
Log:
NO-JIRA repair build for VisualStudio 2010
vector::push_back now has two signatures that confuse boost.
Use an explicit callback and do the push_back there.


Modified:
    qpid/branches/0.20/qpid/cpp/src/qpid/ha/BrokerReplicator.cpp

Modified: qpid/branches/0.20/qpid/cpp/src/qpid/ha/BrokerReplicator.cpp
URL: 
http://svn.apache.org/viewvc/qpid/branches/0.20/qpid/cpp/src/qpid/ha/BrokerReplicator.cpp?rev=1418544&r1=1418543&r2=1418544&view=diff
==============================================================================
--- qpid/branches/0.20/qpid/cpp/src/qpid/ha/BrokerReplicator.cpp (original)
+++ qpid/branches/0.20/qpid/cpp/src/qpid/ha/BrokerReplicator.cpp Fri Dec  7 
22:59:55 2012
@@ -837,6 +837,13 @@ void BrokerReplicator::autoDeleteCheck(b
     }
 }
 
+// Callback function for accumulating exchange candidates
+namespace {
+       void exchangeAccumulatorCallback(vector<boost::shared_ptr<Exchange> >& 
c, const Exchange::shared_ptr& i) {
+               c.push_back(i);
+       }
+}
+
 void BrokerReplicator::disconnected() {
     QPID_LOG(info, logPrefix << "Disconnected");
     connection = 0;
@@ -844,7 +851,7 @@ void BrokerReplicator::disconnected() {
     vector<boost::shared_ptr<Exchange> > collect;
     // Make a copy so we can work outside the ExchangeRegistry lock
     exchanges.eachExchange(
-        boost::bind(&vector<boost::shared_ptr<Exchange> >::push_back, 
ref(collect), _1));
+        boost::bind(&exchangeAccumulatorCallback, boost::ref(collect), _1));
     for_each(collect.begin(), collect.end(),
              boost::bind(&BrokerReplicator::autoDeleteCheck, this, _1));
 }



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to