Commit Graph

6 Commits

Author SHA1 Message Date
Dan Gohman 29193d18cc Handle multiple starters in the stream-safe fuzzer.
NFC compositions can involve multiple starters, such as `\u{11347}` and
`\u{11357}`. Adjust the counting iterator in the streaming fuzzer to
only count non-starters, so that it doesn't over-count.

Fixes #76.
2021-05-17 21:20:24 -07:00
Manish Goregaokar fade74174a Merge pull request #64 from sunfishcode/sunfishcode/nfd-buffering
Make the decompose iterator avoid buffering elements past a starter.
2020-11-18 13:32:05 -08:00
Dan Gohman a94c6e163d Make the decompose iterator avoid buffering elements past a starter.
Once the decompose iterator sees a starter, it should immediately start
returning characters from the preceeding sequence. If the input happens
to be stream-safe, it should never get more than MAX_NONSTARTERS + plus
boundary values ahead of its inner iterator.
2020-11-18 11:16:13 -08:00
Dan Gohman ac07605138 Use a local path dependency for unicode-normalization.
And update the libfuzzer-sys dependency while here.
2020-11-18 10:30:11 -08:00
Dan Gohman 1de63cea0f Use assert_ne! instead of assert! and !=. 2020-11-18 10:29:32 -08:00
Dan Gohman 387bcb6474 Add a fuzz target. 2020-11-17 21:58:20 -08:00