platform/upstream/libHarfBuzzSharp.git
5 years ago[feat] Rename API uses of setting to selector
Ebrahim Byagowi [Fri, 23 Nov 2018 08:35:06 +0000 (12:05 +0330)]
[feat] Rename API uses of setting to selector

5 years ago[feat] Apply renamings and add documentation
Ebrahim Byagowi [Fri, 23 Nov 2018 08:14:53 +0000 (11:44 +0330)]
[feat] Apply renamings and add documentation

5 years ago[feat] Use bsearch
Ebrahim Byagowi [Sat, 17 Nov 2018 10:53:11 +0000 (14:23 +0330)]
[feat] Use bsearch

5 years ago[feat] Address Behdad comments
Ebrahim Byagowi [Sat, 17 Nov 2018 08:00:50 +0000 (11:30 +0330)]
[feat] Address Behdad comments

5 years ago[feat] Address @behdad comments
Ebrahim Byagowi [Fri, 16 Nov 2018 21:37:09 +0000 (01:07 +0330)]
[feat] Address @behdad comments

5 years ago[feat] Complete feature types list
Ebrahim Byagowi [Thu, 8 Nov 2018 21:20:10 +0000 (00:50 +0330)]
[feat] Complete feature types list

5 years ago[feat] Add feature iteration API
Ebrahim Byagowi [Thu, 1 Nov 2018 18:54:42 +0000 (22:24 +0330)]
[feat] Add feature iteration API

5 years ago[feat] Turn AAT feature id into enum
Ebrahim Byagowi [Thu, 1 Nov 2018 18:08:54 +0000 (21:38 +0330)]
[feat] Turn AAT feature id into enum

5 years ago[feat] Rename records to selectors as @drott
Ebrahim Byagowi [Thu, 1 Nov 2018 16:32:57 +0000 (20:02 +0330)]
[feat] Rename records to selectors as @drott

5 years ago[feat] Apply @behdad comments
Ebrahim Byagowi [Thu, 1 Nov 2018 16:26:16 +0000 (19:56 +0330)]
[feat] Apply @behdad comments

5 years ago[feat] Apply @drott and @jfkthame comments
Ebrahim Byagowi [Thu, 1 Nov 2018 15:50:20 +0000 (19:20 +0330)]
[feat] Apply @drott and @jfkthame comments

5 years ago[feat] Apply @jfkthame reviews
Ebrahim Byagowi [Thu, 1 Nov 2018 11:45:56 +0000 (15:15 +0330)]
[feat] Apply @jfkthame reviews

5 years ago[feat] Expose public API
Ebrahim Byagowi [Thu, 1 Nov 2018 09:44:29 +0000 (13:14 +0330)]
[feat] Expose public API

* hb_aat_get_feature_settings

5 years ago[test] Reorder test suites
Behdad Esfahbod [Sun, 25 Nov 2018 05:30:08 +0000 (00:30 -0500)]
[test] Reorder test suites

aots is less interesting.  Run text-rendering-tests before aots.

5 years ago[kerx] Fix crash
Behdad Esfahbod [Sun, 25 Nov 2018 05:27:23 +0000 (00:27 -0500)]
[kerx] Fix crash

5 years agoSimplify sanitize set_object() / fix bots
Behdad Esfahbod [Sun, 25 Nov 2018 05:21:13 +0000 (00:21 -0500)]
Simplify sanitize set_object() / fix bots

5 years ago[kerx] Port to hb_sanitize_with_object_t
Behdad Esfahbod [Sun, 25 Nov 2018 04:49:23 +0000 (23:49 -0500)]
[kerx] Port to hb_sanitize_with_object_t

5 years ago[morx] Port to hb_sanitize_with_object_t
Behdad Esfahbod [Sun, 25 Nov 2018 04:46:15 +0000 (23:46 -0500)]
[morx] Port to hb_sanitize_with_object_t

5 years agoAdd hb_sanitize_with_object_t
Behdad Esfahbod [Sun, 25 Nov 2018 04:38:06 +0000 (23:38 -0500)]
Add hb_sanitize_with_object_t

Context manager.

5 years agoSimplify sanitize set_object()
Behdad Esfahbod [Sun, 25 Nov 2018 04:34:34 +0000 (23:34 -0500)]
Simplify sanitize set_object()

5 years ago[aat] Skip terminator in VarSizedBinSearchArray<>
Behdad Esfahbod [Sun, 25 Nov 2018 04:12:28 +0000 (23:12 -0500)]
[aat] Skip terminator in VarSizedBinSearchArray<>

Fixes shaping with Apple Chancery on 10.13 again.  In that font,
there was a terminator segment, that was tripping off sanitize().

5 years agoMinor
Behdad Esfahbod [Sun, 25 Nov 2018 03:48:34 +0000 (22:48 -0500)]
Minor

5 years ago[debug] Print function in return_trace()
Behdad Esfahbod [Sun, 25 Nov 2018 03:32:17 +0000 (22:32 -0500)]
[debug] Print function in return_trace()

5 years agoRevert "[aat.morx] Remove set_object() business"
Behdad Esfahbod [Sun, 25 Nov 2018 03:16:59 +0000 (22:16 -0500)]
Revert "[aat.morx] Remove set_object() business"

This reverts commit ae8ed58a6e53441d9ccbf67afd8a00b815cde99e.

Apparently this broke Apple Chancery from OS X 10.12 :(.
Investigating...

5 years agoRevert "[aat.kerx] Remove kerx subtable boundary enforcement"
Behdad Esfahbod [Sun, 25 Nov 2018 03:16:53 +0000 (22:16 -0500)]
Revert "[aat.kerx] Remove kerx subtable boundary enforcement"

This reverts commit 15905a2a2998f7ddd964f920a4828602235d6b00.

5 years agoRevert "[sanitize] Remove now-unused set_object() machinery"
Behdad Esfahbod [Sun, 25 Nov 2018 03:16:47 +0000 (22:16 -0500)]
Revert "[sanitize] Remove now-unused set_object() machinery"

This reverts commit bbdb6edb3e1cea4c5b7076c4f6b3e6998ae36dae.

5 years ago[tests] Minor
Behdad Esfahbod [Sun, 25 Nov 2018 03:01:06 +0000 (22:01 -0500)]
[tests] Minor

5 years ago[arrays] Use hb_array_t<> in all places with sub_array()
Behdad Esfahbod [Sun, 25 Nov 2018 02:36:57 +0000 (21:36 -0500)]
[arrays] Use hb_array_t<> in all places with sub_array()

5 years ago[arrays] Merge ArrayOf's sub_array into hb_array_t's
Behdad Esfahbod [Sun, 25 Nov 2018 02:32:00 +0000 (21:32 -0500)]
[arrays] Merge ArrayOf's sub_array into hb_array_t's

5 years ago[test] Add the missed aots fonts
Ebrahim Byagowi [Sat, 24 Nov 2018 22:42:40 +0000 (02:12 +0330)]
[test] Add the missed aots fonts

5 years ago[test] Merge 10.12.6 and 10.13.6 tests, update to Apple Chancery fix
Ebrahim Byagowi [Sat, 24 Nov 2018 22:29:54 +0000 (01:59 +0330)]
[test] Merge 10.12.6 and 10.13.6 tests, update to Apple Chancery fix

5 years ago[sanitize] Remove now-unused set_object() machinery
Behdad Esfahbod [Sat, 24 Nov 2018 22:15:38 +0000 (17:15 -0500)]
[sanitize] Remove now-unused set_object() machinery

5 years ago[aat.kerx] Remove kerx subtable boundary enforcement
Behdad Esfahbod [Sat, 24 Nov 2018 22:14:39 +0000 (17:14 -0500)]
[aat.kerx] Remove kerx subtable boundary enforcement

Have not encountered fonts needing this, but same reasoning as
for morx (see previos commit.)

5 years ago[aat.morx] Remove set_object() business
Behdad Esfahbod [Sat, 24 Nov 2018 22:11:09 +0000 (17:11 -0500)]
[aat.morx] Remove set_object() business

With OS X 10.13 Apple Chancery fails to ligate if we limit each morx
sub-chain to its declared length.  Perhaps their newer compiler does
object-sharing across sub-chains.  Anyway, since that's a valid, if
unspecified, way to compile tables, remove enforcement.

Probably do the same with kern/kerx.

5 years agoAdd 10.13.6 aat fonts tests and bot (#1409)
Ebrahim Byagowi [Sat, 24 Nov 2018 22:09:00 +0000 (01:39 +0330)]
Add 10.13.6 aat fonts tests and bot (#1409)

5 years ago[aat] Add test for recent regression
Behdad Esfahbod [Sat, 24 Nov 2018 20:56:17 +0000 (15:56 -0500)]
[aat] Add test for recent regression

5 years ago[tests] Redo test runner logging a bit
Behdad Esfahbod [Sat, 24 Nov 2018 20:49:33 +0000 (15:49 -0500)]
[tests] Redo test runner logging a  bit

5 years ago[tests] Minor
Behdad Esfahbod [Sat, 24 Nov 2018 20:42:11 +0000 (15:42 -0500)]
[tests] Minor

5 years ago[tests/shaping] Allow comments in test files
Behdad Esfahbod [Sat, 24 Nov 2018 20:37:01 +0000 (15:37 -0500)]
[tests/shaping] Allow comments in test files

Line should start with "# ".

5 years ago[tests] Rename
Behdad Esfahbod [Sat, 24 Nov 2018 20:22:09 +0000 (15:22 -0500)]
[tests] Rename

5 years ago[morx/kerx] Fix sanitize regression
Behdad Esfahbod [Sat, 24 Nov 2018 19:52:34 +0000 (14:52 -0500)]
[morx/kerx] Fix sanitize regression

Broke in 8dcc1913a1670ede7b124f7b5b775d7ab8791386

If sanitizer is left with another object, it wouldn't work.

Better fix coming soon.

5 years ago[test] Enable more of aots tests (#1408)
Ebrahim Byagowi [Sat, 24 Nov 2018 17:19:21 +0000 (20:49 +0330)]
[test] Enable more of aots tests (#1408)

The ones commented out in this change should've be passed :/
a closer look is needed.

5 years agoAdd Adobe AOTS tests (#1395)
Ebrahim Byagowi [Sat, 24 Nov 2018 16:37:24 +0000 (20:07 +0330)]
Add Adobe AOTS tests (#1395)

Annotated OpenType Specification or aots, https://github.com/adobe-type-tools/aots
provides a set of tests for OpenType specification, this change add those tests in addition
to modified version of their HarfBuzz test runner for generating harfbuzz project specific tests.

5 years ago[color] Use SortedUnsizedArrayOf<>
Behdad Esfahbod [Sat, 24 Nov 2018 15:25:10 +0000 (10:25 -0500)]
[color] Use SortedUnsizedArrayOf<>

5 years ago[trak] Coment
Behdad Esfahbod [Sat, 24 Nov 2018 15:17:59 +0000 (10:17 -0500)]
[trak] Coment

5 years ago[arrays] Add not_found to reference bsearch as well
Behdad Esfahbod [Sat, 24 Nov 2018 15:09:17 +0000 (10:09 -0500)]
[arrays] Add not_found to reference bsearch as well

5 years ago[arrays] Improve bfind() interface
Behdad Esfahbod [Sat, 24 Nov 2018 15:06:13 +0000 (10:06 -0500)]
[arrays] Improve bfind() interface

Much more useful now. :)

5 years ago[fuzzing] Add tests for previous commit
Behdad Esfahbod [Sat, 24 Nov 2018 14:49:21 +0000 (09:49 -0500)]
[fuzzing] Add tests for previous commit

Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11526
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11522

5 years ago[kerx/morx] Make sure object length is sanitized before accessing it
Behdad Esfahbod [Sat, 24 Nov 2018 14:47:45 +0000 (09:47 -0500)]
[kerx/morx] Make sure object length is sanitized before accessing it

5 years ago[arrays] Port ArrayOf.qsort() and hb_vector_t.qsort() to hb_array_t
Behdad Esfahbod [Sat, 24 Nov 2018 06:59:50 +0000 (01:59 -0500)]
[arrays] Port ArrayOf.qsort() and hb_vector_t.qsort() to hb_array_t

5 years ago[arrays] Port ArrayOf.qsort() to hb_array_t's
Behdad Esfahbod [Sat, 24 Nov 2018 06:48:48 +0000 (01:48 -0500)]
[arrays] Port ArrayOf.qsort() to hb_array_t's

5 years ago[arrays] Add copy-constructor to hb_array_t and hb_sorted_array_t
Behdad Esfahbod [Sat, 24 Nov 2018 06:47:49 +0000 (01:47 -0500)]
[arrays] Add copy-constructor to hb_array_t and hb_sorted_array_t

5 years ago[arrays] Port hb_vector_t.qsort() to hb_array_t's
Behdad Esfahbod [Sat, 24 Nov 2018 06:45:58 +0000 (01:45 -0500)]
[arrays] Port hb_vector_t.qsort() to hb_array_t's

5 years ago[arrays] Remove one flavor of hb_vector_t.qsort()
Behdad Esfahbod [Sat, 24 Nov 2018 06:42:17 +0000 (01:42 -0500)]
[arrays] Remove one flavor of hb_vector_t.qsort()

5 years ago[arrays] Add (unused) SortedUnsizedArrayOf<>
Behdad Esfahbod [Sat, 24 Nov 2018 06:37:11 +0000 (01:37 -0500)]
[arrays] Add (unused) SortedUnsizedArrayOf<>

5 years ago[arrays] Port SortedArrayOf.bsearch/bfind to hb_sorted_array_t's
Behdad Esfahbod [Sat, 24 Nov 2018 06:31:00 +0000 (01:31 -0500)]
[arrays] Port SortedArrayOf.bsearch/bfind to hb_sorted_array_t's

5 years ago[arrays] Port hb_vector_t.bsearch/bfind to (new) hb_sorted_array_t's
Behdad Esfahbod [Sat, 24 Nov 2018 06:24:48 +0000 (01:24 -0500)]
[arrays] Port hb_vector_t.bsearch/bfind to (new) hb_sorted_array_t's

5 years ago[arrays] Port (unused) ArrayOf.lsearch() to hb_array_t's
Behdad Esfahbod [Sat, 24 Nov 2018 06:11:12 +0000 (01:11 -0500)]
[arrays] Port (unused) ArrayOf.lsearch() to hb_array_t's

5 years ago[arrays] Port hb_vector_t.lsearch() to hb_array_t's
Behdad Esfahbod [Sat, 24 Nov 2018 06:09:28 +0000 (01:09 -0500)]
[arrays] Port hb_vector_t.lsearch() to hb_array_t's

5 years ago[arrays] More
Behdad Esfahbod [Sat, 24 Nov 2018 06:07:15 +0000 (01:07 -0500)]
[arrays] More

5 years ago[arrays] Update ArrayOf.lsearch()
Behdad Esfahbod [Sat, 24 Nov 2018 05:58:44 +0000 (00:58 -0500)]
[arrays] Update ArrayOf.lsearch()

Currently unused apparently

5 years ago[arrays] Change argument type of cmp called by hb_vector_t.bsearch()
Behdad Esfahbod [Sat, 24 Nov 2018 05:53:19 +0000 (00:53 -0500)]
[arrays] Change argument type of cmp called by hb_vector_t.bsearch()

Towards consolidating all array bsearch/...

5 years agoUsermanual: clusters chapter; add brief grapheme definition and clarify monotonous...
Nathan Willis [Thu, 15 Nov 2018 23:40:21 +0000 (17:40 -0600)]
Usermanual: clusters chapter; add brief grapheme definition and clarify monotonous cluster handling.

5 years agoUsermanual: clusters chapter, minor updates.
Nathan Willis [Thu, 15 Nov 2018 21:47:03 +0000 (15:47 -0600)]
Usermanual: clusters chapter, minor updates.

5 years agoUsermanual: expand clusters chapter.
Nathan Willis [Mon, 12 Nov 2018 18:17:06 +0000 (12:17 -0600)]
Usermanual: expand clusters chapter.

5 years agoChange ArrayOf.bsearch() return semantics
Behdad Esfahbod [Sat, 24 Nov 2018 05:35:31 +0000 (00:35 -0500)]
Change ArrayOf.bsearch() return semantics

Towards consolidating all array bsearch/...

5 years agoMinor
Behdad Esfahbod [Sat, 24 Nov 2018 05:38:36 +0000 (00:38 -0500)]
Minor

5 years agoWhitespace
Behdad Esfahbod [Sat, 24 Nov 2018 05:45:55 +0000 (00:45 -0500)]
Whitespace

5 years agoAssert that item-type of arrays have static size
Behdad Esfahbod [Sat, 24 Nov 2018 05:31:40 +0000 (00:31 -0500)]
Assert that item-type of arrays have static size

5 years ago[vector] Rename
Behdad Esfahbod [Sat, 24 Nov 2018 05:29:22 +0000 (00:29 -0500)]
[vector] Rename

5 years ago[aat] Minor
Behdad Esfahbod [Sat, 24 Nov 2018 05:27:57 +0000 (00:27 -0500)]
[aat] Minor

5 years agoAdd hb_static_size(T)
Behdad Esfahbod [Sat, 24 Nov 2018 05:25:40 +0000 (00:25 -0500)]
Add hb_static_size(T)

5 years agoAdd template-function convenience macros
Behdad Esfahbod [Sat, 24 Nov 2018 05:22:21 +0000 (00:22 -0500)]
Add template-function convenience macros

5 years agoAdd null bytes for CmapSubtableLongGroup
Behdad Esfahbod [Sat, 24 Nov 2018 00:58:49 +0000 (19:58 -0500)]
Add null bytes for CmapSubtableLongGroup

5 years agoRemove lsearch for small TableDirectorys
Behdad Esfahbod [Fri, 23 Nov 2018 21:24:28 +0000 (16:24 -0500)]
Remove lsearch for small TableDirectorys

5 years ago[arrays] Add as_array() to hb_vector_t<>
Behdad Esfahbod [Fri, 23 Nov 2018 21:07:43 +0000 (16:07 -0500)]
[arrays] Add as_array() to hb_vector_t<>

5 years ago[arrays] Add as_array() to ArrayOf<>
Behdad Esfahbod [Fri, 23 Nov 2018 21:04:56 +0000 (16:04 -0500)]
[arrays] Add as_array() to ArrayOf<>

5 years ago[kern] Don't enforce length of last subtable
Behdad Esfahbod [Fri, 23 Nov 2018 20:24:17 +0000 (15:24 -0500)]
[kern] Don't enforce length of last subtable

5 years agoMerge pull request #1407 from harfbuzz/at-sign
Behdad Esfahbod [Fri, 23 Nov 2018 18:49:34 +0000 (13:49 -0500)]
Merge pull request #1407 from harfbuzz/at-sign

Don't canonicalize '@' to '-' in language tags

5 years agoDon't canonicalize '@' to '-' in language tags
David Corbett [Fri, 23 Nov 2018 18:21:22 +0000 (13:21 -0500)]
Don't canonicalize '@' to '-' in language tags

Fixes #1406.

5 years ago[aat] Update expectation
Ebrahim Byagowi [Fri, 23 Nov 2018 16:28:56 +0000 (19:58 +0330)]
[aat] Update expectation

5 years ago[aat] Disable mark advance zeroing if kern table has state-machines
Behdad Esfahbod [Fri, 23 Nov 2018 16:10:17 +0000 (11:10 -0500)]
[aat] Disable mark advance zeroing if kern table has state-machines

Geeza Pro for example, relies on that for fancy mark positioning.

Fixes https://github.com/harfbuzz/harfbuzz/issues/1405

5 years agoMinor
Behdad Esfahbod [Fri, 23 Nov 2018 15:45:44 +0000 (10:45 -0500)]
Minor

5 years ago[aat] Add macOS specific tests (#1404)
Ebrahim Byagowi [Fri, 23 Nov 2018 12:10:05 +0000 (15:40 +0330)]
[aat] Add macOS specific tests (#1404)

5 years ago[use] Minor clarification
Behdad Esfahbod [Fri, 23 Nov 2018 03:47:51 +0000 (22:47 -0500)]
[use] Minor clarification

5 years agoMinor tweak to FLAG64
Behdad Esfahbod [Fri, 23 Nov 2018 03:40:57 +0000 (22:40 -0500)]
Minor tweak to FLAG64

5 years agoMerge pull request #1291 from harfbuzz/use-reordering
Behdad Esfahbod [Fri, 23 Nov 2018 03:39:12 +0000 (22:39 -0500)]
Merge pull request #1291 from harfbuzz/use-reordering

[use] Fix reordering

5 years ago[cmap] Move code around
Behdad Esfahbod [Fri, 23 Nov 2018 03:17:49 +0000 (22:17 -0500)]
[cmap] Move code around

5 years ago[morx/kerx] Limit range to subtable when sanitizing
Behdad Esfahbod [Fri, 23 Nov 2018 03:16:12 +0000 (22:16 -0500)]
[morx/kerx] Limit range to subtable when sanitizing

5 years ago[sanitizer] Add reset_object(), make set_object() do bounds-check
Behdad Esfahbod [Fri, 23 Nov 2018 03:12:36 +0000 (22:12 -0500)]
[sanitizer] Add reset_object(), make set_object() do bounds-check

Affects morx/kerx run-time only currently.  Will adjust their sanitize next.

5 years ago[kerx] Make sure subtables are non-zero-length
Behdad Esfahbod [Fri, 23 Nov 2018 03:02:19 +0000 (22:02 -0500)]
[kerx] Make sure subtables are non-zero-length

Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11400

5 years ago[GSUB] Don't flush glyphset during recursion in closure()
Behdad Esfahbod [Fri, 23 Nov 2018 02:30:04 +0000 (21:30 -0500)]
[GSUB] Don't flush glyphset during recursion in closure()

See comment.

Supercedes https://github.com/harfbuzz/harfbuzz/pull/1401
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11366

5 years ago[subset] add fuzzer testcase.
Garret Rieger [Mon, 19 Nov 2018 21:00:24 +0000 (13:00 -0800)]
[subset] add fuzzer testcase.

5 years ago[set] Rename
Behdad Esfahbod [Fri, 23 Nov 2018 02:20:39 +0000 (21:20 -0500)]
[set] Rename

5 years agoEnforce requiring null_size even if min_size is 0
Behdad Esfahbod [Thu, 22 Nov 2018 23:07:59 +0000 (18:07 -0500)]
Enforce requiring null_size even if min_size is 0

This concludes null-size enforcement changes

5 years agoAllow non-nullable OffsetTo<> to non-Null'able objects
Behdad Esfahbod [Thu, 22 Nov 2018 23:07:36 +0000 (18:07 -0500)]
Allow non-nullable OffsetTo<> to non-Null'able objects

5 years ago[glyf] Don't mark structs UNBOUNDED
Behdad Esfahbod [Thu, 22 Nov 2018 22:56:51 +0000 (17:56 -0500)]
[glyf] Don't mark structs UNBOUNDED

See comments.

5 years agoMark UnsizedArrayOf<> as UNBOUNDED
Behdad Esfahbod [Thu, 22 Nov 2018 22:53:29 +0000 (17:53 -0500)]
Mark UnsizedArrayOf<> as UNBOUNDED

Since min_size is 0, Null() still accepts this type.

5 years ago[ot-shape] Simplify logic
Behdad Esfahbod [Thu, 22 Nov 2018 22:31:07 +0000 (17:31 -0500)]
[ot-shape] Simplify logic

5 years agoMove
Behdad Esfahbod [Thu, 22 Nov 2018 21:21:49 +0000 (16:21 -0500)]
Move