Commit Graph

11136 Commits

Author SHA1 Message Date
Garret Rieger
a5c0ec7516 [subset] For [Chain]ContextFormat3 make sure the sub table intersects the retained glyphset before recursing to its lookups.
Otherwise the lookup closure will potentially pull in lookups which cannot be accessed via the retained glyph set.
2020-09-25 14:57:20 -07:00
Garret Rieger
dc375559fd [subset] shrink the serialize buffer when pruning empty offsets in ChainContextFormat2.
Currently the code reduces the array length, but does not trim back the space allocated in the serializer for those empty offsets.
2020-09-25 13:08:46 -07:00
Garret Rieger
90eb1a40eb [subset] In ChainContextFormat3 don't skip subsetting if backtrack or lookahead are empty.
It's valid to have a ChainContextFormat3 with either an empty backtrack or lookahead. Only drop the lookup if the input sequence is empty.
2020-09-25 12:36:32 -07:00
Garret Rieger
7b77ce0507 [subset] Add subsetting integration test using Amiri.
Demonstrates a failure in subsetting GPOS 8/GSUB 6.
2020-09-24 16:35:59 -07:00
Garret Rieger
7a72b20aa2 [subset] Subset GDEF during layout subsetting tests. 2020-09-24 15:58:48 -07:00
Khaled Hosny
8c5d1332f1
Merge pull request #1664 from n8willis/docs-gtkdoc-otvar
[Docs] Add gtk-doc comments for hb-ot-var
2020-09-24 13:09:38 +02:00
Khaled Hosny
df00f45e26 Fix annotation in previous commits 2020-09-24 11:57:46 +02:00
Nathan Willis
5a695a79a0 Swap # for () in gtk-doc function mention. 2020-09-24 11:57:46 +02:00
n8willis
379be7b7c8 Update src/hb-ot-var.cc
Co-Authored-By: Khaled Hosny <khaledhosny@eglug.org>
2020-09-24 11:57:46 +02:00
Nathan Willis
938add712a Add GTK-Doc comments for hb-ot-var. 2020-09-24 11:55:09 +02:00
Khaled Hosny
82fe13182d
Merge pull request #1661 from n8willis/docs-gtkdoc-aat
[Docs] Add gtk-doc comments for hb-aat-layout
2020-09-22 17:40:38 +02:00
Khaled Hosny
9a1be3fed5 Fix enum documentation syntax 2020-09-22 16:46:03 +02:00
n8willis
3c9244e662 Update src/hb-aat-layout.cc
Co-Authored-By: Khaled Hosny <khaledhosny@eglug.org>
2020-09-22 15:59:42 +02:00
Nathan Willis
d619ba0681 Add gtk-doc documentation to AAT layout functions and enums. 2020-09-22 15:59:14 +02:00
Nathan Willis
514e6baaf0 [gtk-doc] document AAT functions and enums. 2020-09-22 15:59:11 +02:00
Behdad Esfahbod
a1f4d285e1 [buffer] Fix invalid write access in hb_buffer_deserialize_glyphs()
If buffer is immutable, we were trying to set content_type on it.
Ouch!
2020-09-21 16:50:11 -06:00
Caleb Maclennan
18b8046c6a
Merge pull request #2678 from alerque/post-artifacts 2020-09-21 17:32:34 +03:00
ebraminio
1f8b1e7f18
[ENOMEM] Return gracefully if stages isn't initialized correctly (#2639)
This happens if calls to 'm.lookups[table_index].push ()' has been
silently failed due to lack of memory.

This change just returns gracefully instead issuing the assert.

Fixes https://crbug.com/oss-fuzz/24494
2020-09-21 11:39:38 +03:30
Khaled Hosny
a0ebea5280
Merge pull request #2665 from khaledhosny/doc-default-features
[docs] Improve documentation for default features
2020-09-18 17:04:38 +02:00
Khaled Hosny
f9f473a4c4 [docs] Improve documentation for default features
Fixes https://github.com/harfbuzz/harfbuzz/issues/2213
2020-09-17 01:55:30 +02:00
Behdad Esfahbod
e40c0d82e2 [ENOMEM] Handle immutable buffer in shape_full()
Move the content_type changing to shape_plan_execute() where it belongs.
Skip setting if content type is UNKNOWN, which happens with empty buffers
only, including the immutable buffer.

Alternate fix to https://github.com/harfbuzz/harfbuzz/pull/2606
and https://github.com/harfbuzz/harfbuzz/pull/2625
2020-09-16 12:48:30 -06:00
Garret Rieger
bbbcad0dbb Revert "[ENOMEM] don't perform set process operations if the other set is in an error state."
This reverts commit f3929abafe.
2020-09-16 12:23:38 -06:00
Garret Rieger
f3929abafe [ENOMEM] don't perform set process operations if the other set is in an error state.
Running a process while the other set is in an error state can potentially corrupt this sets map map (for example by overwritting all of the major values with 0).
2020-09-16 10:36:30 -07:00
Simon Cozens
584d3a43b2
Merge pull request #2681 from khaledhosny/myanmar-liga
[myanmar] Don’t disable liga feature
2020-09-16 15:08:50 +01:00
Khaled Hosny
7d64b09765 [myanmar] Don’t disable liga feature
This seems to have been carried over from the Indic shaper, but
Uniscribe enables it by default.

See https://github.com/harfbuzz/harfbuzz/issues/2213#issuecomment-686062915
2020-09-12 21:45:19 +02:00
Garret Rieger
8c3d4de796 [subset] Fix integer underflow in ContextFormat2. 2020-09-11 15:52:46 -07:00
Caleb Maclennan
e43b9a29a9
[ci] Trigger dependencies of publish jobs on tags 2020-09-11 22:21:59 +03:00
Caleb Maclennan
deb09e0d75
[ci] Tweak job names so config is valid Circle 2.1 schema 2020-09-11 20:12:35 +03:00
Caleb Maclennan
f4dea33f6d
[ci] Move repeated artifact upload job code to script 2020-09-11 20:12:24 +03:00
Caleb Maclennan
65be538fff
[ci] Add job to publish autotools dist file to GitHub 2020-09-11 20:12:14 +03:00
Caleb Maclennan
42bcc47d01
[ci] Use executor with Circle's image for autotools job 2020-09-11 20:11:52 +03:00
Caleb Maclennan
c70f509022
[ci] Use ghr CLI tool to post Win32 artifact to GitHub 2020-09-11 20:11:38 +03:00
Caleb Maclennan
610ed3b42c
[ci] Add job to publish Win32 releases and pass it artifacts 2020-09-11 20:11:22 +03:00
Caleb Maclennan
a2d45cd5f7
[ci] Use Circle's customized image for workspace support 2020-09-11 20:10:43 +03:00
David Corbett
ac3f859a30 Demote unregistered vendor-specific language tags 2020-09-09 17:50:59 -04:00
Khaled Hosny
ee12c078ed
Merge pull request #2668 from rossburton/meson
meson: add hb-version.h to dependencies correctly
2020-09-08 15:37:30 +02:00
Khaled Hosny
695d85ca32
Merge pull request #2674 from rossburton/reprod
src/hb-gobject-enums.cc.tmpl: write out only the filename, not the full path
2020-09-08 15:37:00 +02:00
David Corbett
91fe20f0f5 Disambiguate OT tags when primary tag is not first 2020-09-08 09:20:00 -04:00
Alexander Kanavin
e876886d1e src/hb-gobject-enums.cc.tmpl: write out only the filename, not the full path
This is beneficial for reproducible builds, as build paths can vary
between builds.
2020-09-08 11:00:32 +01:00
Ross Burton
5aff83104e [build] generate hb-version.h once at configure time with Meson
Currently with Meson hb-version.h is generated during the build without
any explicit dependencies which can result in build failures due races
over the file.

Change this to be generated at configure time, so that the file is always
generated once before the build itself.

Closes #2667
2020-09-08 09:42:27 +01:00
Ross Burton
bc1c93fbe0 [build] No need to pass source directory to gen-hb-version
The input file is by definition in the source directory, so dirname()
that instead of needing the directory to be passed.

Needed because a follow-up commit will change when this is called, and the
source directory isn't trivially available at that point.
2020-09-08 09:40:56 +01:00
David Corbett
faf09f5466 [USE] Support hieroglyph clusters 2020-09-02 19:50:49 -04:00
David Corbett
06f49fc8ae [USE] Update to the 2020-08-13 USE specification
This also uses the data files from
<78b2134fdc/USE>.
2020-09-02 19:50:49 -04:00
David Corbett
e3db84a9d0 [use] Test CGJ and ZWNJ 2020-09-02 15:51:15 -07:00
David Corbett
6a38adeb57 [use] Skip most default ignorables when clustering 2020-09-02 15:51:15 -07:00
David Corbett
645f4e7cdd Unhide CGJ before ccc=0 characters
If a CGJ precedes a starter, then it cannot have blocked any reordering,
so it can safely be skipped.
2020-09-02 15:51:15 -07:00
Garret Rieger
9825e3dd2e [ENOMEM] fix access to unitialized memory.
If the serialize() call fails to write the object then we can't safely read varstore_prime fields. Fixes https://oss-fuzz.com/testcase-detail/5137462782066688.
2020-09-02 11:01:07 -07:00
Khaled Hosny
45de128930
Merge pull request #2661 from khaledhosny/failing-dw-build
[ci] Fix failing DirectWrite build
2020-09-01 04:58:50 +03:00
Khaled Hosny
fe6381d9f1 [build] Minor 2020-09-01 03:44:01 +02:00
ebraminio
a4f3a752dd [build] hb-directwrite needs a C++ linker 2020-09-01 03:21:12 +02:00