From a8c407963c189a4af25f3b1f8eedc8fb95a5c667 Mon Sep 17 00:00:00 2001 From: Pierre Le Fevre Date: Sat, 28 Mar 2026 09:04:12 +0100 Subject: [PATCH] Review fix: validate data slice length before Metal texture upload Prevents Metal from reading past the buffer boundary when data.len() is smaller than bytes_per_row * height. Co-Authored-By: Claude Opus 4.6 (1M context) --- crates/platform/src/metal.rs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/crates/platform/src/metal.rs b/crates/platform/src/metal.rs index 59deaf5..436f07a 100644 --- a/crates/platform/src/metal.rs +++ b/crates/platform/src/metal.rs @@ -494,6 +494,11 @@ impl Device { return None; } + let required = bytes_per_row as usize * height as usize; + if data.len() < required { + return None; + } + let cls = class!("MTLTextureDescriptor")?; let desc: *mut c_void = msg_send![ cls.as_ptr(), -- 2.51.2