diff options
Diffstat (limited to 'src/filters/merge.rs')
-rw-r--r-- | src/filters/merge.rs | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/filters/merge.rs b/src/filters/merge.rs index 56292406..f76f9dd0 100644 --- a/src/filters/merge.rs +++ b/src/filters/merge.rs @@ -145,13 +145,13 @@ impl FilterEffect for FeMerge { &self, _acquired_nodes: &mut AcquiredNodes<'_>, node: &Node, - ) -> Result<ResolvedPrimitive, FilterResolveError> { - Ok(ResolvedPrimitive { + ) -> Result<Vec<ResolvedPrimitive>, FilterResolveError> { + Ok(vec![ResolvedPrimitive { primitive: self.base.clone(), params: PrimitiveParams::Merge(Merge { merge_nodes: resolve_merge_nodes(node)?, }), - }) + }]) } } @@ -199,7 +199,8 @@ mod tests { let node = document.lookup_internal_node("merge").unwrap(); let merge = borrow_element_as!(node, FeMerge); - let ResolvedPrimitive { params, .. } = merge.resolve(&mut acquired_nodes, &node).unwrap(); + let resolved = merge.resolve(&mut acquired_nodes, &node).unwrap(); + let ResolvedPrimitive { params, .. } = resolved.first().unwrap(); let params = match params { PrimitiveParams::Merge(m) => m, _ => unreachable!(), |