From 03f2c593d6b919716d44478087f0dec6d4648382 Mon Sep 17 00:00:00 2001 From: Jacob Rosenthal Date: Wed, 3 Nov 2021 18:56:02 -0700 Subject: [PATCH] fix slice_in_ram for arbitrary size types --- embassy-nrf/src/util.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/embassy-nrf/src/util.rs b/embassy-nrf/src/util.rs index d17ec503..2fd0bc5a 100644 --- a/embassy-nrf/src/util.rs +++ b/embassy-nrf/src/util.rs @@ -4,13 +4,13 @@ const SRAM_UPPER: usize = 0x3000_0000; /// Does this slice reside entirely within RAM? pub(crate) fn slice_in_ram(slice: &[T]) -> bool { let ptr = slice.as_ptr() as usize; - ptr >= SRAM_LOWER && (ptr + slice.len()) < SRAM_UPPER + ptr >= SRAM_LOWER && (ptr + slice.len() * core::mem::size_of::()) < SRAM_UPPER } /// Return an error if slice is not in RAM. #[cfg(not(feature = "nrf51"))] pub(crate) fn slice_in_ram_or(slice: &[T], err: E) -> Result<(), E> { - if slice.len() == 0 || slice_in_ram(slice) { + if slice.is_empty() || slice_in_ram(slice) { Ok(()) } else { Err(err)