diff --git a/frontend/src/app/render_wasm/api.cljs b/frontend/src/app/render_wasm/api.cljs index be87a809e9..c49bd05f6d 100644 --- a/frontend/src/app/render_wasm/api.cljs +++ b/frontend/src/app/render_wasm/api.cljs @@ -739,7 +739,7 @@ (when (and (some? content) (or (= type :path) (= type :bool))) - (when (some? svg-attrs) + (when (seq svg-attrs) (set-shape-path-attrs svg-attrs)) (set-shape-path-content content)) (when (and (some? content) (= type :svg-raw)) diff --git a/render-wasm/src/render.rs b/render-wasm/src/render.rs index e042bc2d74..ccfe71c8cf 100644 --- a/render-wasm/src/render.rs +++ b/render-wasm/src/render.rs @@ -457,7 +457,15 @@ impl RenderState { s.canvas().concat(&matrix); }); - if shape.fills.is_empty() && !matches!(shape.shape_type, Type::Group(_)) { + let has_fill_none = matches!( + shape.svg_attrs.get("fill").map(String::as_str), + Some("none") + ); + + if shape.fills.is_empty() + && !matches!(shape.shape_type, Type::Group(_)) + && !has_fill_none + { if let Some(fills_to_render) = self.nested_fills.last() { let fills_to_render = fills_to_render.clone(); for fill in fills_to_render.iter() {