From daf977dcff780b70897d4e64d6594ecdaa3f3282 Mon Sep 17 00:00:00 2001 From: datdenkikniet Date: Thu, 13 Mar 2025 22:11:08 +0100 Subject: [PATCH] Blah --- rtic-sync/src/channel.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/rtic-sync/src/channel.rs b/rtic-sync/src/channel.rs index a7888808677..d5574d0bd21 100644 --- a/rtic-sync/src/channel.rs +++ b/rtic-sync/src/channel.rs @@ -363,7 +363,8 @@ impl Sender<'_, T, N> { } // SAFETY: `free_slot_ptr` is valid for writes, as `free_slot_ptr` is still alive. - let slot = unsafe { free_slot_ptr.replace(None, cs) }; + let slot = unsafe { free_slot_ptr.replace(None, cs) } + .or_else(|| self.0.access(cs).freeq.pop_back()); if let Some(slot) = slot { Poll::Ready(Ok(slot))