Commit Graph

11640 Commits

Author SHA1 Message Date
Garret Rieger 5ca353a2d0 [subset] fix heap buffer overflow found by fuzzer. 2021-02-16 12:43:02 -07:00
Behdad Esfahbod ae860db893
Merge pull request #2859 from harfbuzz/override-0b55
[indic] Fix shaping of U+0B55 ORIYA SIGN OVERLINE
2021-02-16 12:39:47 -07:00
David Corbett 751ed68fee [indic] Fix shaping of U+0B55 ORIYA SIGN OVERLINE
Fixes https://github.com/harfbuzz/harfbuzz/issues/2849
2021-02-14 12:47:34 -05:00
Behdad Esfahbod 7a60f4e3a4 [subset] Remove debug burden
Fixes https://github.com/harfbuzz/harfbuzz/issues/2360
2021-02-12 14:14:17 -07:00
Garret Rieger 00d9276343 Add gpos9 expected files to Makefile.am 2021-02-11 13:41:31 -07:00
Garret Rieger 08a4997fde [subset] Add subset support for Extension lookups (GPOS 9, GSUB 7). 2021-02-11 13:41:31 -07:00
Behdad Esfahbod bbbea3dbd8 [minor] Rewrite set operation in OS/2 subsetting
This patch could be nicer:
https://github.com/harfbuzz/harfbuzz/pull/2572/files

Just tiny touchup now.
2021-02-11 12:23:33 -07:00
Behdad Esfahbod cdb9197b41 [khmer] Remove more unused code
Prodded by https://github.com/harfbuzz/harfbuzz/pull/2583

These are leftovers from when we forked Khmer shaper from the Indic shaper.
2021-02-11 11:33:47 -07:00
Behdad Esfahbod dfa9d7acdc [minor] Use serializer->propagate_error() to simplify code 2021-02-11 11:19:51 -07:00
Behdad Esfahbod 5faae8260a [post] Remove unneeded error check 2021-02-11 10:58:02 -07:00
Behdad Esfahbod d7e2a51de2 [minor] Add unlikely() when checking for error 2021-02-11 10:55:03 -07:00
Behdad Esfahbod eb069f3948 [tests] Update expected output of recently-merged gpos5
The merged PR was from before landing this:

commit 7a72b20aa2
Author: Garret Rieger <grieger@google.com>
Date:   Thu Sep 24 15:58:48 2020 -0700

    [subset] Subset GDEF during layout subsetting tests.
2021-02-10 19:13:51 -07:00
Behdad Esfahbod c7d232ce4e
Merge pull request #2701 from googlefonts/Mark-To-Ligature_grieger
[subset] GPOS 5 MarkToLigature subsetting support
2021-02-10 18:13:38 -07:00
Behdad Esfahbod 68d576224f
Merge pull request #2853 from harfbuzz/fix-g-ir-scanner
[introspection] Fix g-ir-scanner syntax errors
2021-02-10 14:56:29 -07:00
Khaled Hosny 7b9e23f28b [introspection] Fix g-ir-scanner syntax errors
Fixes https://github.com/harfbuzz/harfbuzz/issues/2851
2021-02-10 23:37:43 +02:00
Khaled Hosny 094406b67b [ci] Disable failing Arch Linux job
Some g-ir-scanner failure that does not seem to be related to us. The
job does not seem to be testing anything interesting anyway.
2021-02-10 23:22:02 +02:00
Khaled Hosny 554aaa0c5d [build] Fix make distcheck
A regression from 7b77ce0507.
It was caught by the CI build in the PR, but apparently we are now used
to CI failures that they are effectively ignored.

Also, yay for multiple build systems.
2021-02-10 23:22:02 +02:00
Behdad Esfahbod 1da75afbe8 [minor] Add unlikely() 2021-02-10 00:03:41 -07:00
Behdad Esfahbod 6e1afac64b [minor] Rename internal variable
To address review comment:
https://github.com/harfbuzz/harfbuzz/pull/2699#discussion_r573370781
2021-02-09 18:48:46 -07:00
Behdad Esfahbod 836814a571 [array] Swap order of args to hb_equal()
Prioritizes Key::cmp() over table's cmp.
2021-02-09 18:48:05 -07:00
Behdad Esfahbod 98374cebe1 Conditionalize IntType::cmp() so it never fails to compile
Useful with lfind() since that calls hb_equal() which SFINAEs which
cmp() to use.
2021-02-09 18:48:05 -07:00
Behdad Esfahbod ed04174a64 Whitespace 2021-02-09 18:48:05 -07:00
Behdad Esfahbod 6a3fd94f3b
Merge pull request #2699 from googlefonts/gpos_8
[subset] Add a more complex layout subsetting test case and fix the issues it exposed.
2021-02-09 20:49:04 -05:00
Garret Rieger 8f47dd5779 [subset] don't set lookup visited in closure_lookups_context_t::recurse.
- Lookup::closure_lookups also checks if the lookups visited and sets the lookup to visited. If we set visited in 'recurse' then Lookup::closure_lookups will fail to recurse into the children of the lookup.
- Also when copying ChainRule's skip LookupRecord's that point to lookups which aren't retained. This matches FontTool's behaviour.
2021-02-09 20:34:52 -05:00
Behdad Esfahbod feeff5928b [docs] Add destroy() call to sample 2021-02-09 14:59:40 -07:00
Khaled Hosny 319e5b3200 [manual] Fix font functions section
Fixes https://github.com/harfbuzz/harfbuzz/issues/2731
2021-02-09 23:22:22 +02:00
Khaled Hosny 3583fce86d [manual] Give all chapters & sections pretty links 2021-02-09 23:22:22 +02:00
Khaled Hosny 84d4d9fc4d [manual] We don’t use ucdn library anymore 2021-02-09 23:22:22 +02:00
Khaled Hosny 68d2e1b221 [meson] Disable benchmark feature by default
It downloads a dependency from the internet, and in the same time not
used anywhere (one needs to explicitly call ninja benchmark), not even
on the CI (not sure if it that would make much sense since it does not
seem to ever fail).
2021-02-09 22:10:20 +02:00
Khaled Hosny b6f47af555 [meson] Report more options in the summary 2021-02-09 22:10:20 +02:00
Behdad Esfahbod 33a0f0b686 [test] Remove fuzzed test font that triggers virus alert
Fixes https://github.com/harfbuzz/harfbuzz/issues/2750
2021-02-09 12:55:45 -07:00
Khaled Hosny 99184fbe2b [ci] Add top level directory to win32 zip file
Fixes https://github.com/harfbuzz/harfbuzz/issues/2840
2021-02-03 15:00:23 +02:00
josephshen d9e0244cdf remove duplicate file names 2021-02-02 09:23:41 -08:00
Behdad Esfahbod dad41c07e4 [use] Typo 2021-02-01 11:30:39 -08:00
Behdad Esfahbod 63a716c540 [indic] Use lfind() 2021-02-01 11:30:39 -08:00
Behdad Esfahbod 921b4e46b0 [algs] Add hb_equal()
Use in hb_array_t::lfind()
2021-02-01 11:30:39 -08:00
Behdad Esfahbod f4ed3bf20b [indic] Remove categorization of Khmer Ra
Khmer goes through its own shaper these days.
2021-02-01 11:30:39 -08:00
Behdad Esfahbod 676d1e6adf [indic] Spell out INDIC_TABLE_ELEMENT_TYPE 2021-02-01 11:30:39 -08:00
Behdad Esfahbod 769c2b19a3 [indic/khmer/myanmar/use] Minor shuffling of found_syllable() macros 2021-02-01 11:30:39 -08:00
Behdad Esfahbod 59721c2f37 [use] Move data table into same compilation unit 2021-02-01 11:30:39 -08:00
Behdad Esfahbod d9b167da3d [use] Remove hb-ot-shape-complex-use.hh
Inline into ragel machine.
2021-02-01 11:30:39 -08:00
Behdad Esfahbod 3bb2653a5e [use] Reuse category numbers exported from ragel machine
Part of https://github.com/harfbuzz/harfbuzz/pull/2726
2021-02-01 11:30:39 -08:00
Behdad Esfahbod c417e0d2f9 [indic/khmer/myanmar/use] Move enum category around
Such that the generated -machine.hh headers are independent.
2021-02-01 11:30:39 -08:00
Behdad Esfahbod 675b6c2994 [indic/khmer/myanmar/use] Remove unused dump-*-data programs
In prep for streamlining tables.
2021-02-01 11:30:39 -08:00
Behdad Esfahbod 0a5c631140 [use] Rename internal enum joinint_form_t members
To ease upcoming change.
2021-02-01 11:30:39 -08:00
Behdad Esfahbod 880fdb7460 [indic/khmer/myanmar/use] Export categories from Ragel source
Not hooked up yet.

Part of alternative approach to
https://github.com/harfbuzz/harfbuzz/pull/2726
2021-02-01 11:30:39 -08:00
Garret Rieger f94bf9f06f [set fuzzer] limit the total number of set members in a fuzzing input.
Currently the fuzzer can create arbitarily long inputs which once big enough will trigger a timeout.
2021-01-26 10:22:07 -08:00
ckitagawa b198d94489 use {} rather than {0} 2021-01-25 14:07:52 -08:00
ckitagawa 2e50b517e1 Nicer more idiomatic fix 2021-01-25 14:07:52 -08:00
ckitagawa 8f6559a373 [subet/COLR] Default initialize firstLayerIdx 2021-01-25 14:07:52 -08:00