René Kijewski d47b791957 parser: fix check_expr() recursion
`check_expr()` did not recurse for all recursive `Expr`s. This PR fixes
the problem.

Resolves <https://issues.oss-fuzz.com/issues/429130577>.
2025-07-05 21:08:44 +02:00
..
2025-07-05 21:08:44 +02:00
2025-03-11 19:31:06 +01:00
2025-03-11 19:31:06 +01:00
2025-01-31 21:22:33 +01:00
2025-03-11 19:31:06 +01:00

Askama Fuzzing

First install cargo-fuzz and rust-nightly (once):

cargo install cargo-fuzz
rustup install nightly

Then execute in this folder:

RUST_BACKTRACE=1 nice cargo +nightly fuzz run <fuzz_target>

fuzz_target is one out of all, filters, html or parser.

The execution won't stop, but continue until you kill it with ctrl+c. Or until it finds a panic. If the execution found a panic, then a file with the input scenario is written, e.g. fuzz/artifacts/parser/crash-b91ab…. To get more information about the failed scenario, run or debug this command with the given path:

cargo run -- <fuzz_target> fuzz/artifacts/parser/crash-b91ab…

Find more information about fuzzing here: