aboutsummaryrefslogtreecommitdiff
path: root/embassy-sync/src
diff options
context:
space:
mode:
authorOliver Rockstedt <[email protected]>2024-10-06 17:39:47 +0200
committerOliver Rockstedt <[email protected]>2024-10-06 17:39:47 +0200
commitf3ed0c60265c84ddcc11e4dea980bdc0b8343985 (patch)
tree70b49883fdc2d1dfdd54024f3d1bcffdf3ec217b /embassy-sync/src
parent383ad72b63b11ed1fc50ad5803534ac69996aff6 (diff)
embassy-sync: fix len calculation for zerocopy_channel
Diffstat (limited to 'embassy-sync/src')
-rw-r--r--embassy-sync/src/zerocopy_channel.rs10
1 files changed, 9 insertions, 1 deletions
diff --git a/embassy-sync/src/zerocopy_channel.rs b/embassy-sync/src/zerocopy_channel.rs
index a2c763294..a669cbd09 100644
--- a/embassy-sync/src/zerocopy_channel.rs
+++ b/embassy-sync/src/zerocopy_channel.rs
@@ -290,7 +290,15 @@ impl State {
290 } 290 }
291 291
292 fn len(&self) -> usize { 292 fn len(&self) -> usize {
293 self.len 293 if !self.full {
294 if self.back >= self.front {
295 self.back - self.front
296 } else {
297 self.len + self.back - self.front
298 }
299 } else {
300 self.len
301 }
294 } 302 }
295 303
296 fn is_full(&self) -> bool { 304 fn is_full(&self) -> bool {