From 296782e864c54bec6ebe57690ee21b72387a990d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim=20Vo=C3=9Fhenrich?= <94936637+T1mVo@users.noreply.github.com> Date: Tue, 21 Jul 2026 23:11:42 +0200 Subject: [PATCH] Fix `fr` (focal radius) not resolved from referenced radial gradients When a `` references another gradient via `href`, the `resolve_rg_attr` function was missing `AId::Fr` in its coordinate attribute match arm. This caused `fr` to silently fall back to 0 instead of being inherited from the base gradient, making radial gradients with focal radius render incorrectly after `href` resolution. --- crates/usvg/src/parser/paint_server.rs | 1 + 1 file changed, 1 insertion(+) diff --git a/crates/usvg/src/parser/paint_server.rs b/crates/usvg/src/parser/paint_server.rs index 4ac3115bf..3102899b7 100644 --- a/crates/usvg/src/parser/paint_server.rs +++ b/crates/usvg/src/parser/paint_server.rs @@ -476,6 +476,7 @@ fn resolve_rg_attr<'a, 'input>(node: SvgNode<'a, 'input>, name: AId) -> SvgNode< | (AId::R, EId::RadialGradient) | (AId::Fx, EId::RadialGradient) | (AId::Fy, EId::RadialGradient) + | (AId::Fr, EId::RadialGradient) // Other attributes can be resolved // from any kind of gradient. | (AId::GradientUnits, EId::LinearGradient)