From 280400152d1fe8a7d2e99995dbb14f69f9a407a1 Mon Sep 17 00:00:00 2001 From: Keegan McAllister Date: Wed, 11 Apr 2012 23:37:56 -0400 Subject: [PATCH] Replace one find_if with a loop g++/libstdc++ 4.1.2 is unhappy with this use of bind2nd, possibly because the argument is a reference. This is a problem for EL5. --- src/frontend/terminaloverlay.cc | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/frontend/terminaloverlay.cc b/src/frontend/terminaloverlay.cc index aaec324..971ef96 100644 --- a/src/frontend/terminaloverlay.cc +++ b/src/frontend/terminaloverlay.cc @@ -88,9 +88,11 @@ Validity ConditionalOverlayCell::get_validity( const Framebuffer &fb, int row, } if ( current.contents_match( replacement ) ) { - vector::const_iterator it = - find_if( original_contents.begin(), original_contents.end(), - bind2nd( mem_fun_ref( &Cell::contents_match ), replacement ) ); + vector::const_iterator it = original_contents.begin(); + for ( ; it != original_contents.end(); it++ ) { + if ( it->contents_match( replacement ) ) + break; + } if ( it == original_contents.end() ) { return Correct; } else {