Commit Graph

10578 Commits

Author SHA1 Message Date
Qunxin Liu
c8cc1e378d fix issues in ClassDefFormat1 serialize:
glyph ids in Iterator may be non-consecutive,
so the number in classValue might be larger than length of the Iterator
2020-04-03 12:31:48 -07:00
Ebrahim Byagowi
4a49b36a9e [tests/macos] Adopt added Apple Chancery tests with older macos versions 2020-04-03 21:32:34 +04:30
Ebrahim Byagowi
75cae46dc2
[aat] minor spacing 2020-04-03 20:04:16 +04:30
Ebrahim Byagowi
3737776384
[aat] add the bug link, minor 2020-04-03 20:03:20 +04:30
Jonathan Kew
548a25259e Add a test for #2307. 2020-04-03 19:57:43 +04:30
Jonathan Kew
1faf0caae1 Special-case 'smcp' when checking for exposed AAT features.
This may be implemented by selectors under either LETTER_CASE or LOWER_CASE feature types
in AAT, so we need to check for the presence of either one.

Fixes #2307.
2020-04-03 19:57:43 +04:30
Jonathan Kew
120d86fa18 Add tests for #2305. 2020-04-03 19:20:48 +04:30
Jonathan Kew
b87cf6e8d4 Fix sense of comparsion in hb_aat_map_builder_t::feature_info_t.
This makes bsearch actually work for the features array.

Fixes #2305.
2020-04-03 19:20:48 +04:30
Jonathan Kew
b027cb518d Set sequence number when adding feature to aat map builder, to support stable sort.
Fixes #2288.
2020-04-03 03:22:06 +04:30
Ebrahim Byagowi
e0e7727064 [ci] Update macOS 10.15's version 2020-04-03 01:12:37 +04:30
Ebrahim Byagowi
89fa70f511 [aat] minor over previous feat related changes 2020-04-03 01:08:01 +04:30
Jonathan Kew
58b4d18b53 Add a couple testcases for issue 2285.
A few simple testcases to confirm that setting liga=0 does not break shaping with
the Tibetan AAT font Kokonor, but does still disable common ligatures in Times.
2020-04-02 23:58:32 +04:30
Jonathan Kew
b1c0b9da2f [AAT] Don't map OT tags to AAT feature types that are not exposed.
If an AAT feature type is not exposed in the 'feat' table, we assume it is not intended
to be user-controllable and so we should not map any OT feature tag requests to it.

Fixes #2285.
2020-04-02 23:58:32 +04:30
Qunxin Liu
e0c3979af1 typo fix 2020-04-02 12:05:57 +04:30
ariza
65f4136303 minor; fixes #2292 2020-04-01 19:49:18 -07:00
Garret Rieger
014e038b2c [subset] Bail out of context lookup expansion once the lookup limit is encountered. 2020-04-01 11:14:41 +04:30
Garret Rieger
5d345d0cd1 [subset] Limit the number of lookup indices processed subsetting Feature.
> Also, remove two unnessecary full iterations of the lookup index iterator during serialization of the index array. Fixes fuzzer found timeout.
2020-04-01 11:13:05 +04:30
Khaled Hosny
1b64b73080 Revert "Add messages for GPOS/GSUB phases"
This reverts commit b07714d6b5.
2020-03-30 16:49:23 +02:00
Ebrahim Byagowi
2e1bf61dd5 [gsubgpos] Use FeatureVariations::NOT_FOUND_INDEX instead Index::
As noted by https://github.com/harfbuzz/harfbuzz/issues/2280#issuecomment-604386389

Added on b143e34, fixed on 2571891

Closes #2280
2020-03-26 22:59:28 +04:30
Ebrahim Byagowi
96d792ae80 [avar] Prevent mul overflow
Fixes https://crbug.com/oss-fuzz/21350
2020-03-26 15:01:14 +00:00
Ebrahim Byagowi
18fc9197e2 [meson] Run check-symbols.sh and check-static-inits.sh correctly
* Search src/ build directory for objects in check-static-inits.sh
* Find .def files in src/ build directory in src/check-symbols.sh
* Pass builddir also in autotools also, we may just remove libs passing after autotools removal
* Move harfbuzz_subset_def target so can be referenced as a check-static-inits.sh dependency
2020-03-26 09:40:14 +00:00
Ebrahim Byagowi
9c2c9553eb [test] Check -subset also doesn't link to lib[std]c++ 2020-03-26 09:40:14 +00:00
Ebrahim Byagowi
25718913d4 [gsubgpos] minor build fix 2020-03-26 14:04:37 +04:30
Ebrahim Byagowi
b143e34ee1 [gsubgpos] Initialize variation index on HB_NO_VAR
hb_shape_plan_key_t::equal expects hb_ot_shape_plan_key_t be initialized by
hb_ot_layout_table_find_feature_variations calls but it won't get initialized
when HB_NO_VAR build config is used.

Related to https://github.com/harfbuzz/harfbuzz/issues/2280
2020-03-26 12:06:12 +04:30
Ebrahim Byagowi
071e2e345f minor 2020-03-26 12:03:07 +04:30
Ebrahim Byagowi
cc977b6e5c [gsubgpos] Minor simplification
Just changed the order, no functional change
2020-03-26 11:19:43 +04:30
Ebrahim Byagowi
1a48278511 [gsubgpos] Minor style improve 2020-03-26 11:15:09 +04:30
Garret Rieger
4ad686b9c0
[subset] fix fuzzer timeout in layout closure
Bail out of chain context lookup expansion once the lookup limit is encountered.
2020-03-26 06:32:28 +00:00
Ebrahim Byagowi
f0ce56bbd0 [meson] Don't compile test-bimap on msvc either
MSVC doens't like its NullPool,

test-bimap.cc.obj : error LNK2019: unresolved external symbol "unsigned __int64 const * const _hb_NullPool" (?_hb_NullPool@@3QB_KB) referenced in function
2020-03-24 19:06:09 +00:00
Ebrahim Byagowi
22f311e100 [meson] Don't compile noinst_programs in msvc for now 2020-03-24 19:06:09 +00:00
Ebrahim Byagowi
7054b12206 [meson] Mark rest of non-install executables explicitly 2020-03-24 19:06:09 +00:00
Ebrahim Byagowi
68df3f7dac [meson] test/api, separate subset tests 2020-03-24 19:06:09 +00:00
Ebrahim Byagowi
600bf21fbc [meson] Add draw-fuzzer runner 2020-03-24 19:06:09 +00:00
Ebrahim Byagowi
466dbaa258 [meson] Add a note on meson stability status 2020-03-24 19:06:09 +00:00
Ebrahim Byagowi
28deb6b718 [meson] test/fuzzing simplify 2020-03-24 19:06:09 +00:00
Ebrahim Byagowi
78622231ac [meson] More comment on tests are causing timeout failure 2020-03-24 19:06:09 +00:00
Ebrahim Byagowi
9bc792f416 [meson] Don't set MALLOC_PERTURB_ as it is already set by meson 2020-03-24 19:06:09 +00:00
Ebrahim Byagowi
e8808c1c20 [meson] Minor, replace tabs with spaces 2020-03-24 19:06:09 +00:00
Ebrahim Byagowi
4dfda9feaa [meson] Update and simplify test/shaping 2020-03-24 19:06:09 +00:00
Ebrahim Byagowi
f22e92bb30 [meson] Update test/api from autotools 2020-03-24 19:06:09 +00:00
Ebrahim Byagowi
e248a4e46c [make] Minor reordering on test/api/Makefile.am 2020-03-24 19:06:09 +00:00
Ebrahim Byagowi
2db8279162 [meson] Don't compile test-{algs,iter,meta} on msvc 2020-03-24 19:06:09 +00:00
Ebrahim Byagowi
3385afacd3 [meson] Don't run check-includes if is amalgam build 2020-03-24 19:06:09 +00:00
Ebrahim Byagowi
6a8a1dc5bb [meson] Port src/ binary artifacts to meson 2020-03-24 19:06:09 +00:00
Ebrahim Byagowi
d57fc627e9 [meson] raise timeout value of subset fuzzer 2020-03-24 19:06:09 +00:00
Ebrahim Byagowi
4738dff18e [make] minor move on Makefile.am 2020-03-24 19:06:09 +00:00
Simon Cozens
b07714d6b5 Add messages for GPOS/GSUB phases 2020-03-23 22:02:44 +02:00
Ebrahim Byagowi
748e1cf898 [subset] Avoid linking to libstdc++ in libharfbuzz-subset.so
Just like other targets (except harfbuzz-icu) avoid linking to libstdc++
2020-03-23 18:06:02 +00:00
Ebrahim Byagowi
761695264b [tests] Remove py2 workaround for lack of timeout in subprocess 2020-03-19 10:32:46 +00:00
Ebrahim Byagowi
b5526a09ff [tools] Remove in-house 'which' now that we have py3 2020-03-19 10:32:46 +00:00