diff options
| author | Felix S. Klock II <pnkfelix@pnkfx.org> | 2015-02-18 23:01:48 +0100 |
|---|---|---|
| committer | Felix S. Klock II <pnkfelix@pnkfx.org> | 2015-03-03 12:10:19 +0100 |
| commit | eadc8a7b45b6897640c44b14e81c2c272d364bb7 (patch) | |
| tree | 93d65e766bdf9cc3b520d9017a47d38b2fe822c1 /src | |
| parent | 6d6038a1944394fc5e64048aea6fdbad4f59ee15 (diff) | |
| download | rust-eadc8a7b45b6897640c44b14e81c2c272d364bb7.tar.gz rust-eadc8a7b45b6897640c44b14e81c2c272d364bb7.zip | |
fix Iter::rposition for new arith-overflow checking.
Diffstat (limited to 'src')
| -rw-r--r-- | src/libcore/iter.rs | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/libcore/iter.rs b/src/libcore/iter.rs index 518ec05f5b9..edc67fbf8c9 100644 --- a/src/libcore/iter.rs +++ b/src/libcore/iter.rs @@ -728,10 +728,11 @@ pub trait IteratorExt: Iterator + Sized { P: FnMut(Self::Item) -> bool, Self: ExactSizeIterator + DoubleEndedIterator { - let mut i = self.len() - 1; + let mut i = self.len(); + while let Some(v) = self.next_back() { if predicate(v) { - return Some(i); + return Some(i - 1); } i -= 1; } |
