Behdad Esfahbod
9985ca6491
Merge pull request #3057 from harfbuzz/ci-coverage-macos
...
[ci] Add macOS GitHub workflow
3 years ago
Khaled Hosny
2c7ef0db0b
[ci] Generate only XML coverage data
...
That is the one we are uploading, and HTML coverage seems broken on
macOS.
3 years ago
Behdad Esfahbod
f51384d375
Merge pull request #3027 from harfbuzz/buffer-sync
...
Improving buffer synchronization
3 years ago
Behdad Esfahbod
95b04f7409
[buffer] Remove unnecessary have_separate_output()
3 years ago
Behdad Esfahbod
3e266e5f64
[buffer] Update comments
3 years ago
Behdad Esfahbod
3807061d63
[ot-layout] Don't remove_output() before reverse substitution
...
No need anymore, because of new swap_buffers() semantics.
Just assert instead.
3 years ago
Behdad Esfahbod
10a9960f0a
[buffer] Restructure swap_buffers()
...
Is more of a "commit" operation now. Will rename when ready.
3 years ago
Khaled Hosny
f6c9fcfd3e
[ci] Add macOS GitHub workflow
...
To collect codecov coverage on macOS as well (hopefully it will run the
macOS-specific tests).
3 years ago
Khaled Hosny
d56afb750a
[tests] Ignore more symbols
...
These seem to be exported when building with code coverage on macOS.
3 years ago
Behdad Esfahbod
a7f4c985a8
[ot-layout] Always swap_buffers() even if no substitutions happened
3 years ago
Behdad Esfahbod
62b441e6ff
[layout] Use Proxy::inplace instead of table index check
...
Equivalent.
3 years ago
Behdad Esfahbod
431f164003
[layout] Don't call clear_output() before pause-func
3 years ago
Behdad Esfahbod
a623446a34
[shape] Remove stray clear_output() call in hb_shape()
3 years ago
Behdad Esfahbod
05c17787c4
[buffer] Rewind cursor in clear_output()
3 years ago
Behdad Esfahbod
1cb0ca1f2c
Whitespace
3 years ago
Khaled Hosny
5f5a8b4dd7
[ci] Use the latest stable XCode image
3 years ago
Khaled Hosny
13187d29ef
[ci] Drop macOS job using deprecated XCode image
3 years ago
Behdad Esfahbod
69310f14a6
[buffer] Change nil buffer have_output to false
...
Seems like a historical artefact that it was true.
3 years ago
Behdad Esfahbod
40884af17e
[ot-layout] Narrow down random feature logic vs safe-to-break
3 years ago
Behdad Esfahbod
33b579d0ad
[ot-layout] Clear random flag for subsequent flags
...
Ouch!
3 years ago
Behdad Esfahbod
29c9833e57
Remove Offset::serialize()
...
Finishing https://github.com/harfbuzz/harfbuzz/pull/2355
3 years ago
Khaled Hosny
63e15eac4f
2.8.2
3 years ago
Caleb Maclennan
eee36bbea3
[releasing] Format notes as Markdown checklist for pasting in GH PR/Issue
3 years ago
Caleb Maclennan
eda5dcdb3e
[releasing] Drop obsolete release process items
3 years ago
Behdad Esfahbod
2337f0d047
Internally use hb_malloc/.../hb_free instead of malloc/.../free
...
Redefining those stock names as macros was conflicting with gcc 10
headers.
Fixes https://github.com/harfbuzz/harfbuzz/issues/3044
3 years ago
Behdad Esfahbod
bb48bf52a4
Rename misc uses of "free"
...
In preparation for fixing https://github.com/harfbuzz/harfbuzz/issues/3044
3 years ago
Qunxin Liu
7416faceeb
[subset] fuzzer fix: https://oss-fuzz.com/testcase-detail/5715464591376384
3 years ago
Khaled Hosny
895acdf7c7
[ci] Don’t build Cairo subproject with FontConfig on win32 cross-build
...
We don’t need it and it breaks the build because FontConfig renamed its
master branch and the released version of Cairo wants to build
FontConfig from master branch.
3 years ago
Garret Rieger
0da9158f62
[subset] Remove OffsetTo::serialize().
...
Convert remaining uses of it to serialize_serialize() which correctly uses the object packer.
3 years ago
Behdad Esfahbod
0969614865
[ot-shape] Rewrite loop without foreach_grapheme()
...
We were not using the graphemes, and that's costlier than just for().
3 years ago
Qunxin Liu
eee7b459ee
[subset] add option --no-prune-unicode-ranges
3 years ago
Khaled Hosny
c3be28ea26
[ot-shape] Numeric runs native direction is LTR
...
See inline comments. Slightly modified version of the code from Jonathan
Kew on the linked issue.
Fixes https://github.com/harfbuzz/harfbuzz/issues/501
3 years ago
Khaled Hosny
71a6296620
[tests] Make record-test.sh work with .otf files
...
It hard-codes the file extension, but fonttools sunset will use .otf for
CFF fonts, so hard-code the output file from subset as well.
3 years ago
Behdad Esfahbod
cc9bb29491
[blob] Fix-up recent mistake in hb_blob_create() destroy(user_data)
...
https://github.com/harfbuzz/harfbuzz/pull/3026#discussion_r653437491
3 years ago
Garret Rieger
bc06af977f
[subset] speed up feature collection when tags are specified.
...
Precompute a feature index filter to avoid needing to iterate the feature tag list for each encountered feature index. For this particular fuzzer case speeds up feature collection from 50s to 2s.
3 years ago
Khaled Hosny
14f220b761
[directwrite] Support feature ranges
...
Code copied from hb-uniscribe.cc and adapted to use DirectWrite types.
May be there is a better way to de-duplicate the code, though I'm not
exactly sure how or if it is worth it.
3 years ago
Garret Rieger
d2397d91f3
[subset] Add additional colrv1 subsetting tests that has a glyph with components.
3 years ago
Garret Rieger
26c80adb61
[subset] do colrv1 glyph closure before glyf composite closure.
3 years ago
Qunxin Liu
d07f789ae3
[subset] support option "--notdef-outline"
3 years ago
Garret Rieger
10ad185932
[subset] add comment to copy_bytes().
3 years ago
Garret Rieger
675ebbeb3a
[subset] don't alloc zero bytes.
...
It will be leaked later since hb_blob_create() won't set up the blob to cleanup since it has length zero.
3 years ago
Behdad Esfahbod
93e6a9bc4e
Revert "Remove unneeded buffer clear_output / remove_output calls"
...
This reverts commit 06175b7143
.
One of the sanitizers is failing. Pushing again as PR to debug.
I have suspicions.
3 years ago
Behdad Esfahbod
06175b7143
Remove unneeded buffer clear_output / remove_output calls
...
Made sure clear_output is always paired with swap_buffers.
Trying to see if we can move towards RAII-like buffer iterators
instead of the buffer keeping an iterator internally.
3 years ago
Behdad Esfahbod
bdfed8f113
[blob] Add failing versions of create API
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/2567
New API:
+hb_blob_create_or_fail()
+hb_blob_create_from_file_or_fail()
Use these in util/ to distinguish empty file from not-found file.
Only err on the latter.
3 years ago
Behdad Esfahbod
2fc8d0e6f0
Merge pull request #3020 from googlefonts/serialize_serialize
...
[subset] Always serialize objects point to by OffsetTo to a new serializer object.
3 years ago
Garret Rieger
085aa65e09
[subset] Convert offset serialization in gsubgpos and gdef to serialize_serialize().
3 years ago
Garret Rieger
cc96c4e87e
[shaping] Update shaping substituion lookup serialization to use serializer pop()/pack().
3 years ago
Behdad Esfahbod
d3dd936309
[coretext] Round position info
...
Test:
Before:
$ ./hb-shape /System/Library/Fonts/ヒラギノ丸ゴ\ ProN\ W4.ttc 1 --features="+palt" --shaper=coretext
[gid781=0@-78,0+841]
$ ./hb-shape /System/Library/Fonts/ヒラギノ丸ゴ\ ProN\ W4.ttc 1 --features="+palt" --shaper=ot
[gid781=0@-78,0+842]
After:
$ ./hb-shape /System/Library/Fonts/ヒラギノ丸ゴ\ ProN\ W4.ttc 1 --features="+palt" --shaper=coretext
[gid781=0@-78,0+842]
$ ./hb-shape /System/Library/Fonts/ヒラギノ丸ゴ\ ProN\ W4.ttc 1 --features="+palt" --shaper=ot
[gid781=0@-78,0+842]
I've verified in the font that 842 is correct.
3 years ago
Garret Rieger
8443cc85cb
[subset] Correct OffsetTo serialization in GPOS to use serialize_serialize ().
3 years ago
Garret Rieger
5ba46ed067
[subset] Correct OffsetTo serialization in GSUB to use serialize_serialize ().
3 years ago