test/fuzzing/hb-draw-fuzzer.cc


Log

Author Commit Date CI Message
Ebrahim Byagowi 057769b1 2020-08-12T02:30:33 [fuzzer] minor
Ebrahim Byagowi c33e8006 2020-07-14T19:29:58 [fuzz] Implement failing allocator
Ebrahim Byagowi 8a5368e2 2020-05-21T07:00:40 [tests] Enable more gid misc calls on draw fuzzer
Ebrahim Byagowi c68ab4b5 2020-05-21T00:25:17 Fix _get_ligature_caret's oob read issue AAT::Lookup has no other way to detect whether it is returned from a real and sanitized font data or from a null pool, this checks if the table has been recognized valid by sanitizer by checking table's major version which is zero if returned from a null pool and non-zero if is from a sanitized font data, it is expected the other calls of the table (unlikely to have more calls however) also do a similar version check before calling the lookups used on the table.
Ebrahim Byagowi 755a77d6 2020-01-29T22:26:04 Move outline draw API behind HB_EXPERIMENTAL_API directive
Ebrahim Byagowi cb65150f 2020-02-29T16:12:54 [draw] minor
Ebrahim Byagowi 86c40b3a 2020-02-29T14:11:46 [fuzz/draw] Call _get_glyph_extents Other render related APIs also may be added also later such as ot-color and future rendering things.
Ebrahim Byagowi 1b8b8638 2020-02-26T16:36:48 minor
Ebrahim Byagowi 84163c83 2020-02-26T15:58:11 [draw] Skip commands and paths not contributing anything They aren't contributing to rendering and making issue for stroking, let's skip them ourselves as Skia does also https://skia-review.googlesource.com/c/skia/+/268166 They are useful for extracting extents and so which that functionality won't be effected by this change.
Ebrahim Byagowi 036d8689 2020-02-24T10:34:51 [draw] Add a fuzzer Specially checks correctness of the API semantics: * no move happens when a path is already opened with move-to. * no path will be left open and close-path will happen at the end of opened paths. * no path opens with a move-to and will be closed with no length. * paths start and ending points matches. * no line/quadratic/cubic command will be issued when no path is started.