Fix Peekable::next_back

This commit is contained in:
Tim Vermeulen 2020-02-05 00:08:22 +01:00
parent a19edd6b16
commit 14bcf0aaa5
1 changed files with 5 additions and 1 deletions

View File

@ -1468,7 +1468,11 @@ where
{
#[inline]
fn next_back(&mut self) -> Option<Self::Item> {
self.iter.next_back().or_else(|| self.peeked.take().and_then(|x| x))
match self.peeked.as_mut() {
Some(v @ Some(_)) => self.iter.next_back().or_else(|| v.take()),
Some(None) => None,
None => self.iter.next_back(),
}
}
#[inline]