Author: chug
Date: Fri Nov 30 15:55:16 2012
New Revision: 1415709
URL: http://svn.apache.org/viewvc?rev=1415709&view=rev
Log:
NO-JIRA: Repair build for Windows VS2010
vector::push_back now has two signatures that confuse boost.
Use an explicit callback and do the push_back there.
Modified:
qpid/trunk/qpid/cpp/src/qpid/ha/BrokerReplicator.cpp
Modified: qpid/trunk/qpid/cpp/src/qpid/ha/BrokerReplicator.cpp
URL:
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/ha/BrokerReplicator.cpp?rev=1415709&r1=1415708&r2=1415709&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/ha/BrokerReplicator.cpp (original)
+++ qpid/trunk/qpid/cpp/src/qpid/ha/BrokerReplicator.cpp Fri Nov 30 15:55:16
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]