feConvolveMatrix should be an identity function if the kernelMatrix is not of the correct size
The spec says that if the
kernelMatrix (a list of numbers) in a
feConvolveMatrix element does not have
order_x * order_y elements, the whole primitive should act as a pass-through filter, i.e. an identity function.
By extension, I think this should also apply if the
kernelMatrix is not specified, although this is debatable.
In both cases the code currently returns an Err, thus invalidating the filter. We should fix at least the first case.
While we are at it, it would be good to have limits for the
order. Maybe 20x20? Big convolution matrices get incredibly slow and no one uses them anyway.