src/autofit/afgsub.c

Branch


Log

Author Commit Date CI Message
Werner Lemberg 53b9319b 2025-09-10T14:10:23 * src/autofit/afgsub.c (af_map_lookup): Fix handling of lookup type 7. Fixes issue #1356.
Alexei Podtelezhnikov 508c30e0 2025-08-14T10:33:30 * src/autofit/afgsub.c: Fix a warning. Fixes [-Wunused-function] warning without HarfBuzz.
Werner Lemberg 0fd0cf33 2025-07-01T22:15:07 [autofit] Remove `globals->gsub_length`. We completely validate the accessed data from the 'GSUB' table, making this field unnecessary. * src/autofit/afglobal.h (AF_FaceGlobalsRec): Remove `gsub_length` field. * src/autofit/afglobal.c (af_face_globals_new), src/autofit/afgsub.c (af_parse_gsub): Updated.
Werner Lemberg 5e671510 2025-07-01T18:09:27 * src/autofit/afgsub.c: Include `tttables.h` and `afgsub.h`. This fixes 'make multi' compilation with clang. Reported as https://gitlab.freedesktop.org/freetype/freetype/-/merge_requests/381#note_2984610
Werner Lemberg f1be7392 2025-07-01T18:00:12 More signedness fixes. As reported by clang 19. * src/autofit/afadjust.c (add_substitute): Make first argument unsigned. Update all callers. Other minor signedness fixes. (af_reverse_character_map_new): Minor signedness fixes. * src/autofit/afgsub.c (af_hash_insert): Minor signedness fixes. * src/autofit/aflatin.c (af_glyph_hints_apply_vertical_separation_adjustments): Make third argument unsigned. Update all callers. Other minor signedness fixes. (af_latin_hints_apply): Minor signedness fixes. * src/bdf/bdflib.c (bdf_parse_bitmap_): Minor signedness fix. * src/truetype/ttobjs.c (tt_size_init_bytecode): Minor signedness fix.
Werner Lemberg 346d8fae 2025-07-01T05:16:54 Fix `make multi`. Reported as https://gitlab.freedesktop.org/freetype/freetype/-/merge_requests/381#note_2984253 * src/base/fthash.c: Include `ftobjs.h`. * src/autofit/afgsub.c: Include `afglobal.h`.
Werner Lemberg cda418a4 2025-06-13T11:23:14 [autofit] Speed up computation of `af_reverse_character_map_new`. (1/4) Using HarfBuzz's API functions to construct the reverse map is too slow; we have to call `hb_ot_layout_lookup_get_glyph_alternates` far too often because it can only handle a single glyph at a time. For this reason we are going to parse the GSUB table by ourselves. The new non-local functions are `af_parse_gsub` and `af_map_lookup`. * src/autofit/afgsub.c, src/autofit/afgsub.h: New files for parsing, validating, and mapping the `SingleSubst` and `AlternateSubst` subtable types of a GSUB table. * src/autofit/autofit.c, src/autofit/rules.mk (AUTOF_DRV_SRC): Updated.