diff --git a/include/boost/algorithm/string/detail/finder.hpp b/include/boost/algorithm/string/detail/finder.hpp index 8be82f1..5229cde 100644 --- a/include/boost/algorithm/string/detail/finder.hpp +++ b/include/boost/algorithm/string/detail/finder.hpp @@ -325,14 +325,10 @@ namespace boost { typedef ForwardIteratorT input_iterator_type; typedef iterator_range result_type; - if(std::distance(Begin,End) >= m_N) - { - return result_type(Begin,End); - } - else - { - return result_type(Begin,Begin+m_N); - } + if ( (End<=Begin) || (End < (Begin+m_N) ) ) + return result_type( Begin, End ); + + return result_type(Begin,Begin+m_N); } private: