diff --git a/src/network/transportsender.cc b/src/network/transportsender.cc
index 1564d84..86fb31c 100644
--- a/src/network/transportsender.cc
+++ b/src/network/transportsender.cc
@@ -16,7 +16,6 @@
along with this program. If not, see .
*/
-#include
#include
#include
#include
@@ -26,7 +25,6 @@
#include "transportsender.h"
#include "transportfragment.h"
-using namespace boost::lambda;
using namespace Network;
using namespace std;
@@ -312,9 +310,10 @@ void TransportSender::process_acknowledgment_through( uint64_t ack_num
{
/* Ignore ack if we have culled the state it's acknowledging */
- if ( sent_states.end() != find_if( sent_states.begin(), sent_states.end(),
- (&_1)->*&TimestampedState::num == ack_num ) ) {
- sent_states.remove_if( (&_1)->*&TimestampedState::num < ack_num );
+ if ( sent_states.end() !=
+ find_if( sent_states.begin(), sent_states.end(),
+ bind2nd( mem_fun_ref( &TimestampedState::num_eq ), ack_num ) ) ) {
+ sent_states.remove_if( bind2nd( mem_fun_ref( &TimestampedState::num_lt ), ack_num ) );
}
assert( !sent_states.empty() );
diff --git a/src/network/transportstate.h b/src/network/transportstate.h
index d88efef..09a3a75 100644
--- a/src/network/transportstate.h
+++ b/src/network/transportstate.h
@@ -31,6 +31,10 @@ namespace Network {
TimestampedState( uint64_t s_timestamp, uint64_t s_num, State &s_state )
: timestamp( s_timestamp ), num( s_num ), state( s_state )
{}
+
+ /* For use with find_if, remove_if */
+ bool num_eq( uint64_t v ) const { return num == v; }
+ bool num_lt( uint64_t v ) const { return num < v; }
};
}