From f2b401b4f5b285342785527d6f04408127e1bb03 Mon Sep 17 00:00:00 2001 From: "Dylan M. Taylor" Date: Fri, 13 Nov 2026 05:24:44 -0500 Subject: [PATCH] Report unsupported embedded raster images --- crates/svg/src/tree.rs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/crates/svg/src/tree.rs b/crates/svg/src/tree.rs index ec0c594bd..71a6df206 100644 --- a/crates/svg/src/tree.rs +++ b/crates/svg/src/tree.rs @@ -486,7 +486,10 @@ fn image_resolver_for(limits: Limits, used: Arc) -> usvg::ImageHrefResolve if let Some(format) = format { return raster_image(&used, &limits, data, format); } - if matches!(mime, "image/jpg" | "image/jpeg" | "image/png" | "image/gif" | "image/webp") { + // usvg can decode only the raster variants above. Count every other declared + // image as an invalid raster so strict consumers can reject it instead of + // silently accepting a document after the image was omitted (for example BMP). + if mime.starts_with("image/") && mime != "image/svg+xml" { used.invalid_raster.fetch_add(1, Ordering::Relaxed); } match mime {