1
Fork 0

fix Iter::rposition for new arith-overflow checking.

This commit is contained in:
Felix S. Klock II 2015-02-18 23:01:48 +01:00
parent 6d6038a194
commit eadc8a7b45

View file

@ -728,10 +728,11 @@ pub trait IteratorExt: Iterator + Sized {
P: FnMut(Self::Item) -> bool, P: FnMut(Self::Item) -> bool,
Self: ExactSizeIterator + DoubleEndedIterator Self: ExactSizeIterator + DoubleEndedIterator
{ {
let mut i = self.len() - 1; let mut i = self.len();
while let Some(v) = self.next_back() { while let Some(v) = self.next_back() {
if predicate(v) { if predicate(v) {
return Some(i); return Some(i - 1);
} }
i -= 1; i -= 1;
} }