From 673178b70c5a78a95b19029ad0cfab2da9a6ce2c Mon Sep 17 00:00:00 2001 From: FredApps <153173854+FredApps@users.noreply.github.com> Date: Fri, 30 Oct 2026 13:21:04 +0100 Subject: [PATCH] fix(edit): require intact streams when identifying page backdrops --- crates/edit/src/backdrop.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/crates/edit/src/backdrop.rs b/crates/edit/src/backdrop.rs index a7973d887a..cc0092174a 100644 --- a/crates/edit/src/backdrop.rs +++ b/crates/edit/src/backdrop.rs @@ -379,7 +379,9 @@ fn scan(doc: &Document, p: &pdfcraft_model::Page, swap: Option<(ObjRef, &[u8])>) } let bytes = match swap { Some((with, b)) if with == *r => b.to_vec(), - _ => s.decoded().ok()?, + // Tolerant decoding can return an empty or partial stream after corruption. + // That cannot prove which paint preceded the candidate backdrop. + _ => s.decoded_strict().ok()?, }; starts.push(total); total = total.saturating_add(bytes.len()).saturating_add(1);