Panic with invalid viewBox size
Found by AFL. Minimized:
<svg width="8" viewBox="0 0 9E80.7"></svg>
Backtrace:
thread '<unnamed>' panicked at 'Cairo error "invalid matrix (not invertible)"', /home/yalter/.cargo/registry/src/github.com-1ecc6299db9ec823/cairo-sys-rs-0.6.0/src/enums.rs:75:13
stack backtrace:
0: std::sys::unix::backtrace::tracing::imp::unwind_backtrace
at libstd/sys/unix/backtrace/tracing/gcc_s.rs:49
1: std::sys_common::backtrace::print
at libstd/sys_common/backtrace.rs:71
at libstd/sys_common/backtrace.rs:59
2: std::panicking::default_hook::{{closure}}
at libstd/panicking.rs:211
3: std::panicking::default_hook
at libstd/panicking.rs:227
4: std::panicking::rust_panic_with_hook
at libstd/panicking.rs:475
5: std::panicking::continue_panic_fmt
at libstd/panicking.rs:390
6: std::panicking::begin_panic_fmt
at libstd/panicking.rs:345
7: cairo_sys::enums::Status::ensure_valid
at /home/yalter/.cargo/registry/src/github.com-1ecc6299db9ec823/cairo-sys-rs-0.6.0/src/enums.rs:75
8: cairo::context::Context::ensure_status
at /home/yalter/.cargo/registry/src/github.com-1ecc6299db9ec823/cairo-rs-0.4.1/src/context.rs:126
9: cairo::context::Context::restore
at /home/yalter/.cargo/registry/src/github.com-1ecc6299db9ec823/cairo-rs-0.4.1/src/context.rs:152
10: rsvg_internals::drawing_ctx::DrawingCtx::with_discrete_layer
at rsvg_internals/src/drawing_ctx.rs:509
11: rsvg_internals::viewport::draw_in_viewport
at rsvg_internals/src/viewport.rs:44
12: <rsvg_internals::structure::NodeSvg as rsvg_internals::node::NodeTrait>::draw
at rsvg_internals/src/structure.rs:206
13: rsvg_internals::node::Node::draw
at rsvg_internals/src/node.rs:560
14: rsvg_internals::drawing_ctx::DrawingCtx::draw_node_from_stack
at rsvg_internals/src/drawing_ctx.rs:800
15: rsvg_drawing_ctx_draw_node_from_stack
at rsvg_internals/src/drawing_ctx.rs:1052
16: rsvg_handle_render_cairo_sub
at librsvg/rsvg-handle.c:1105
17: main
at ./rsvg-convert.c:472
18: __libc_start_main
19: _start
This is close to falling into the "huge values and Cairo" category, however this is a matrix not invertible while, for instance, huge stroke-width
gives Cairo out of memory, so I guess this is different enough?