diff --git a/core/embed/rust/src/ui/shape/cache/jpeg_cache.rs b/core/embed/rust/src/ui/shape/cache/jpeg_cache.rs index c3ad3cccd5..76544b4e23 100644 --- a/core/embed/rust/src/ui/shape/cache/jpeg_cache.rs +++ b/core/embed/rust/src/ui/shape/cache/jpeg_cache.rs @@ -115,7 +115,10 @@ impl<'a> JpegCacheSlot<'a> { } fn is_for<'i: 'a>(&self, jpeg: &'i [u8], scale: u8) -> bool { - jpeg == self.jpeg && scale == self.scale && self.decoder.is_some() + jpeg.as_ptr() == self.jpeg.as_ptr() + && jpeg.len() == self.jpeg.len() + && scale == self.scale + && self.decoder.is_some() } pub fn get_size<'i: 'a>(&mut self, jpeg: &'i [u8], scale: u8) -> Result { diff --git a/core/embed/rust/src/ui/shape/cache/zlib_cache.rs b/core/embed/rust/src/ui/shape/cache/zlib_cache.rs index e992d74f27..a380393916 100644 --- a/core/embed/rust/src/ui/shape/cache/zlib_cache.rs +++ b/core/embed/rust/src/ui/shape/cache/zlib_cache.rs @@ -92,7 +92,9 @@ impl<'a> ZlibCacheSlot<'a> { } fn is_for(&self, zdata: &[u8], offset: usize) -> bool { - self.zdata == zdata && self.offset == offset + self.zdata.as_ptr() == zdata.as_ptr() + && self.zdata.len() == zdata.len() + && self.offset == offset } }