|
ffe06c8f
|
2020-08-08T13:17:34
|
|
[glyf] Guard all the public APIs against null pool runs
Fixes https://crbug.com/oss-fuzz/24575 and https://crbug.com/oss-fuzz/24737
|
|
01ac32aa
|
2020-08-02T11:35:55
|
|
Remove autotools build support
|
|
679fac87
|
2020-07-30T15:29:43
|
|
Skip hb_shape if buffer object is immutable
|
|
ec17b624
|
2020-08-06T20:16:11
|
|
[var] Apply variations on empty glyphs
It was ignoring empty glyphs for no good reason, this fixes it.
Fixes #2618
|
|
18ab8029
|
2020-07-31T14:40:49
|
|
[ENOMEM] check vector status in cmap subsetting.
|
|
06dbb6ac
|
2020-07-31T15:56:14
|
|
[ENOMEM] in GSUB ChainContext subsetting check maps for allocation errors.
|
|
fb147779
|
2020-07-31T14:00:38
|
|
[ENOMEM] Check result of vector resize in CBDT subsetting.
|
|
efd716de
|
2020-07-31T08:58:53
|
|
[cff] Check for scalars array resize result
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=24504
|
|
040ed094
|
2020-07-30T15:14:02
|
|
[ENOMEM] popragate packed/packed_map errors to the serializer.
Will disable further modifications based on a bad state.
|
|
7f358a55
|
2020-07-30T13:57:30
|
|
[ENOMEM] unchecked resize in CFF2.
|
|
32f052b0
|
2020-07-30T13:45:04
|
|
[ENOMEM] Fix several instances of not checking resize in CFF.
|
|
15644ee6
|
2020-07-29T16:37:39
|
|
[ENOMEM] fix memory leak if allocation fails during pop_pack().
|
|
42237adf
|
2020-07-29T15:18:25
|
|
[ENOMEM] make serializer modification operations no-ops if it's in an error state.
|
|
4ba8e3c6
|
2020-07-29T12:33:42
|
|
[ENOMEM] Fix failure to check calloc return.
Fixes https://oss-fuzz.com/testcase-detail/6246465148813312.
|
|
d307c24a
|
2020-07-29T12:23:37
|
|
[ENOMEM] check resize() return.
Fixes https://oss-fuzz.com/testcase-detail/5641892164009984.
|
|
48ad7459
|
2020-07-29T08:09:08
|
|
[ENOMEM] Fix buffer's content check logic
So now rest of shape fuzzer also can be enabled.
Fixes #2571
|
|
c33e8006
|
2020-07-14T19:29:58
|
|
[fuzz] Implement failing allocator
|
|
d38d6331
|
2020-07-27T09:19:29
|
|
[tests] minor
|
|
322426f8
|
2020-07-27T09:03:35
|
|
[tests] Use TTFont of fonttools to avoid temp files
|
|
08fef158
|
2020-07-26T17:16:07
|
|
Use fonttools's python package instead of cli
|
|
5c46683a
|
2020-07-22T17:23:22
|
|
[fuzz] increase shape fuzzer timeout
as https://circleci.com/gh/harfbuzz/harfbuzz/149203
|
|
945bcd72
|
2020-07-15T09:54:32
|
|
minor
|
|
fa0436dd
|
2020-07-15T09:52:40
|
|
[ENOMEM][fuzzer/subset] early return if the result is null
I don't see _or_fail APIs idiomatic for the project but since it is there, let's have this
|
|
11d583a9
|
2020-07-14T06:23:06
|
|
[aat] Consume glyph insertion from buffer's max_ops (#2223)
Glyph insertion is an expensive operation and we like to have it limited
based on buffer's input size which is handled by buffer's max_ops.
clusterfuzz-testcase-minimized-harfbuzz_fuzzer-5754958982021120:
Before the change: 0.67s user 0.00s system 99% cpu 0.674 total
After the change: 0.02s user 0.00s system 98% cpu 0.024 total
Which takes much longer on valgrind and tsan bots.
|
|
cd6f62d9
|
2020-07-12T23:05:11
|
|
[meson] Raise timeout value of subset fuzzer testcases
happens when tsan is enabled
|
|
e4f99691
|
2020-07-08T15:10:25
|
|
[ci] migrate to meson
two bots, one bot here (distcheck) and one in travis still run autotools and
won't be removed till we decide about autotools
|
|
e04050e3
|
2020-07-08T01:06:30
|
|
[meson] split fuzzer_ldflags before use
|
|
c5def347
|
2020-07-06T23:29:56
|
|
[meson] don't underscorify fuzzers names
|
|
d608f2ac
|
2020-07-06T22:40:51
|
|
[meson] Add fuzzer_ldflags
As ots, https://github.com/khaledhosny/ots/commit/4d37b9b
|
|
694a0c6b
|
2020-07-06T18:28:31
|
|
[meson] Always add icu deps
|
|
ba810ce8
|
2020-04-05T22:51:58
|
|
[tests] Replace space with colon in batch mode
|
|
2013babc
|
2020-07-06T11:57:45
|
|
[tests] Use HAVE_FREETYPE itself instead NO_FT_FUNCS
|
|
1e6027e2
|
2020-07-05T22:44:10
|
|
[aat] Correct array indexing when looking up actions in KerxSubTableFormat4 (#2539)
* [aat] Correct array indexing when looking up actions in KerxSubTableFormat4.
- For action_type 0 and 1, there are 2 values per action record; for action_type 2, there are 4. So we need to account for these factors when indexing into the ankrData array.
Fixes https://github.com/harfbuzz/harfbuzz/issues/2531.
|
|
aa732e45
|
2020-07-06T00:10:16
|
|
[tests] minor, ligcarets is fetched from gdef not gsub
|
|
122a2897
|
2020-07-05T22:45:11
|
|
[aat] Remove lcar support
Very low use, only two distinct font files, Apple Chancery.ttf and Hoefler Text.ttc
have it so it really doesn't worth the size addition and so, but one may argue that
whole ligature caret is low use but guess we better to encourage GDEF one anyway.
|
|
a3b9b94b
|
2020-07-06T00:05:21
|
|
[style] Remove fdsc support (#2541)
It isn't exposed yet and low use between Apple fonts,
32 fdsc table vs 767 OS/2 tables, even Apple doesn't
support it anymore per Ned.
|
|
a470b0b2
|
2020-07-04T23:56:10
|
|
Minor, disable strict-aliasing warning in set fuzzer
../test/fuzzing/hb-set-fuzzer.cc: In function ‘int LLVMFuzzerTestOneInput(const uint8_t*, size_t)’:
../test/fuzzing/hb-set-fuzzer.cc:38:82: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
38 | const instructions_t &instructions = reinterpret_cast<const instructions_t &> (data);
|
And it is already disabled at project level so let's disable it here also.
|
|
4db1b4f1
|
2020-07-04T15:02:19
|
|
[tests] rename no_ft_funcs to NO_FT_FUNCS
|
|
a07672d3
|
2020-07-04T14:12:55
|
|
[py] minor, replace os.environ.get with os.getenv
|
|
43e3ab01
|
2020-07-02T17:34:24
|
|
[tests] make tests work when ft isn't present
|
|
c4b6bad7
|
2020-07-02T18:07:01
|
|
[tests] revert da95a8c and use the shared hb-shape process
|
|
831b0900
|
2020-06-28T14:31:21
|
|
rebase draw test as recent roundf changes
|
|
cb7fb3cf
|
2020-06-28T13:41:33
|
|
Add test for a783840789c93add42e4d70fdb407eb4ad6e062e
|
|
47a0fbec
|
2020-06-21T02:34:59
|
|
[meson] Mark longer tests with slow
So one can skip them easily by `meson test -Cbuild --no-suite slow`
|
|
08816117
|
2020-06-20T01:02:50
|
|
[fuzzer] Make some use for test_font API calls
Making some use for result of some of the test_font calls to make
sure compilers in fuzzers aren't just optimizing the calls.
|
|
b4f34539
|
2020-06-20T00:47:00
|
|
[fuzzer] test more of ot-layout APIs
|
|
675854b2
|
2020-06-19T23:27:39
|
|
[test] Add one more test for hb_ot_layout_feature_get_characters
|
|
1bac8582
|
2020-06-18T22:56:07
|
|
[layout] Rename _get_alternates to _get_glyph_alternates
|
|
1348a2c8
|
2020-06-16T21:05:16
|
|
[layout] hb_ot_layout_lookup_get_alternates, a new API
An API to retrieve one-to-one alternates from a given GSUB lookup index.
|
|
09dedb1b
|
2020-06-18T02:29:12
|
|
[tests] I’m an idiot
|
|
25988554
|
2020-06-18T02:15:59
|
|
[tests] Add test for ReverseChainSingleSubstFormat1 missing substitute
https://github.com/harfbuzz/harfbuzz/issues/2467
|
|
b86bfe52
|
2020-06-12T01:42:27
|
|
minor, fix lists sorting
|
|
4e7cb7e2
|
2020-06-12T01:38:16
|
|
minor, fix lists sorting
|
|
973c47f6
|
2020-06-11T11:27:57
|
|
[subset] Move 2 experimental public api methods to be private methods in GSUB/GPOS.
2 methods are: hb_ot_layout_closure_lookups and hb_ot_layout_closure_features
|
|
2d916622
|
2020-06-11T19:04:08
|
|
[meson] move tests lists to their directories
We had to do so for text-rendering-tests list, let's apply the same for the rest also.
|
|
03bd6ead
|
2020-06-03T23:52:10
|
|
[meson] Only pass required dependencies to everything
Instead of passing dependencies as required we used one giant shared
dependency list containing all dependencies for every library/executable.
While this kinda works, the specified deps are also used for generating
the pkg-config files and this leads to lots of Requires.private and Libs.private
entries which aren't really needed.
This removes the "deps" array and replaces it with a few smaller ones and
makes sure the public libraries only get passed the dependencies actually
needed.
Fixes #2441
|
|
759df465
|
2020-06-04T15:49:54
|
|
[style] Hide behind HB_EXPERIMENTAL_API compile flag
|
|
d54de568
|
2020-04-21T16:33:50
|
|
[style] Adopt with meson
|
|
de0ec5f4
|
2020-02-08T14:09:09
|
|
[style] give ptem value when asked for opsz
ptem, used for AAT's tracking/`trak` table is equivalent to opsz of variable fonts.
For variable AAT fonts, such as SFNS, ideally variable axis of the hb_font_t
should be set and equivalent to ptem, https://crbug.com/1005969#c37
|
|
22037499
|
2019-08-04T11:31:31
|
|
[style] New experimental API, hb_style_get_value
Searches variation axes of a hb_font_t object for a specific axis first,
if not set, then tries to get default style values from different
tables of the font.
|
|
6f7048b9
|
2020-06-04T10:18:35
|
|
[meson] Update subset tests list from autotools
|
|
bb719915
|
2020-05-31T12:57:26
|
|
[tests/aots] move the update script to update.py
|
|
b3182299
|
2020-05-31T12:52:53
|
|
[tests/test-rendering-tests] run git pull on correct dir
|
|
8a9a8026
|
2020-05-31T10:51:24
|
|
minor, fix extra dist list
|
|
419c2d0a
|
2020-05-31T02:33:36
|
|
[test/text-rendering-tests] Adopt the update script with meson
|
|
26816560
|
2020-05-31T02:23:49
|
|
[test/text-rendering-tests] Update from upstream
|
|
ff89ba6e
|
2020-05-31T02:20:53
|
|
[tests] Port text-rendering-tests update script to python
|
|
a9d13463
|
2020-05-30T14:17:56
|
|
[meson] Categorize tests using `suite: [...]`
So one can run a category of interested tests like
meson test -Cbuild --suite aots --suite src --print-errorlogs
Intead issuing particular tests which also is possible like
meson test -Cbuild test-shape --print-errorlogs
|
|
0d8442a5
|
2020-05-29T16:11:32
|
|
[meson] minor, find run-tests.py only once
|
|
3c5bdd9b
|
2020-02-18T10:02:19
|
|
[subset] GDEF AttachList subsetting support
|
|
368ca306
|
2020-05-29T00:42:32
|
|
minor on python scripts
* remove not needed imports
* remove semicolons
|
|
ad87155f
|
2020-05-29T00:11:19
|
|
minor, use py3's open(encoding=)
|
|
cd5580e2
|
2020-05-28T23:43:55
|
|
minor, enable printing to stderr in run-tests.py
As was originally intended https://github.com/harfbuzz/harfbuzz/blob/3ce6c7b/test/shaping/run-tests.sh
|
|
7554f618
|
2020-05-28T22:51:29
|
|
minor, use sys.exit print shorthand
|
|
593e58c8
|
2020-05-20T18:00:25
|
|
[subset] ChainContext subsetting fix: add lookup index remapping
|
|
b32d169d
|
2020-05-23T13:03:06
|
|
[test] run aat APIs in shape fuzzer
|
|
2264a701
|
2020-05-23T12:14:40
|
|
[tests] some more ligature carets tests
|
|
d7c012a0
|
2020-02-26T13:11:42
|
|
[subset] GDEF Variation Store: step 2
do subset based on variation indices collected in step 1
|
|
887aa021
|
2020-05-21T20:02:47
|
|
[meson] Use find_program for locating python script
Apparently that is the simplest and supported way of finding python scripts.
|
|
cc53fd15
|
2020-05-21T19:33:18
|
|
[meson] Normalize options names
As https://github.com/harfbuzz/harfbuzz/pull/2412#discussion_r426275027
|
|
f7562672
|
2020-05-21T17:01:04
|
|
[meson] Use / instead join_paths
We need some of the very recent features of meson, let's use the new features also
|
|
b8d1760b
|
2020-05-21T14:45:41
|
|
[meson/ci] Increase cmap fuzzer timeout even more
|
|
4b12b846
|
2020-05-21T14:23:36
|
|
[meson] Increase timeout in hope to resolve Actions' bot timeout
|
|
1c4dd79c
|
2020-05-21T08:49:14
|
|
[ci] Increase timeout as gh bot issue isn't resolved by serial test
|
|
759ab4fe
|
2020-05-21T08:24:15
|
|
[meson] Use subdir_done to simplify test/api/meson.build
|
|
8667df55
|
2020-05-21T07:19:37
|
|
[meson] Unbreak the build, oops
|
|
37f9cccc
|
2020-05-21T07:17:18
|
|
[meson] Don't run subset tests in parallel
Hopefully resolves https://github.com/harfbuzz/harfbuzz/runs/695051808#step:6:700 for now
|
|
791debdc
|
2020-05-21T07:15:09
|
|
[meson][ci] Don't run subset fuzzer test in parallel
resolves https://github.com/harfbuzz/harfbuzz/runs/695051808#step:6:595 failure
|
|
8a5368e2
|
2020-05-21T07:00:40
|
|
[tests] Enable more gid misc calls on draw fuzzer
|
|
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.
|
|
57886e21
|
2020-05-21T06:29:33
|
|
[test] Enable tests fixed by 461cd5a which was regressed by b986fea
|
|
8b5d3ebd
|
2020-04-17T11:58:31
|
|
[subset] GSUB5/GPOS7 Contextual Subst/Pos Subtbale Subsetting support
|
|
ca2705f1
|
2020-05-21T00:05:42
|
|
[tests] Add more tests for _get_ligature_carets
|
|
b207eab8
|
2020-04-30T11:53:21
|
|
Round-trip OpenType tags through BCP 47
|
|
0722889a
|
2020-05-15T10:10:27
|
|
[meson] increase subset tests timeout
https://github.com/harfbuzz/harfbuzz/runs/676665822#step:6:570
fails because meson runs the tests in parallel, correct fix will be making the tests smaller
|
|
c1514644
|
2020-05-14T19:12:41
|
|
Merge pull request #2264 from harfbuzz/unicode-13
Update to Unicode 13.0.0
|
|
b2a965df
|
2020-04-22T15:58:41
|
|
[subset] Add support for "--gids" option
cmap subsetting now retains entries associated with any glyph ids explicitly requested
|
|
100d40c8
|
2020-05-06T01:48:24
|
|
[aat] Fix implementation of AAT kerning for Geeza Pro. (#2388)
* [aat] Fix implementation of AAT kerning for Geeza Pro.
Despite what the comment in the code used to say, it appears that Geeza Pro
does rely on accumulating kerning values from successive subtables. With
this change, the results now match Core Text rendering (and avoid the clear
visual breakage reported in #2358).
Testcase: U+0644,U+064E,U+0645,U+064E,U+0651,U+0627
Fixes #2358.
* [aat] Update test expectations, add new testcase.
|
|
fd748fac
|
2020-03-15T15:59:31
|
|
Update to Unicode 13.0.0
|
|
e53c44e3
|
2020-04-24T14:06:13
|
|
[subset] temporarily revert previous cmap commit
Required in https://github.com/harfbuzz/harfbuzz/issues/2356
|