From c422dd98fa868b6b33e12331afe3f9bdc9bcec22 Mon Sep 17 00:00:00 2001 From: Nora Date: Tue, 27 Aug 2019 21:23:30 +0200 Subject: [PATCH] fix SensorDataIter increase internal position at end of next function --- l0dable/src/bhi160.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/l0dable/src/bhi160.rs b/l0dable/src/bhi160.rs index 6308789..53cb9c2 100644 --- a/l0dable/src/bhi160.rs +++ b/l0dable/src/bhi160.rs @@ -136,8 +136,6 @@ impl<'a, S: SensorType> Iterator for SensorDataIter<'a, S> { fn next(&mut self) -> Option { while self.pos < self.data.n { - self.pos += 1; - let vec = &self.data.buf[self.pos]; if vec.data_type != DATA_TYPE_VECTOR { writeln!(crate::UART, "Sensor: skip type {}\r", vec.data_type).ok(); @@ -151,6 +149,8 @@ impl<'a, S: SensorType> Iterator for SensorDataIter<'a, S> { status: vec.status, }; + self.pos += 1; + return Some(item); } -- GitLab