Behdad Esfahbod [Sat, 24 Nov 2018 17:08:36 +0000 (12:08 -0500)]
[aat.feat] Add _MAX_VALUE to enums
Behdad Esfahbod [Sat, 24 Nov 2018 16:02:04 +0000 (11:02 -0500)]
[aat.feat] Minor
Behdad Esfahbod [Sat, 24 Nov 2018 16:00:42 +0000 (11:00 -0500)]
[aat.feat] Whitespace
Behdad Esfahbod [Sat, 24 Nov 2018 15:54:40 +0000 (10:54 -0500)]
[aat.feat] Port to SortedUnsizedArrayOf.bsearch()
Behdad Esfahbod [Sat, 24 Nov 2018 15:46:56 +0000 (10:46 -0500)]
[AAT.feat] Use lsearch for looking up SettingName's
They are not sorted.
Behdad Esfahbod [Sat, 24 Nov 2018 15:30:35 +0000 (10:30 -0500)]
[aat] Fix include issues
Behdad Esfahbod [Fri, 23 Nov 2018 19:05:11 +0000 (14:05 -0500)]
[aat] Move contents of hb-aat.h to hb-aat-layout.h
Since it was pages and pages...
Behdad Esfahbod [Fri, 23 Nov 2018 17:23:35 +0000 (12:23 -0500)]
[aat.feat] Fix enum namespace
Behdad Esfahbod [Fri, 23 Nov 2018 17:21:02 +0000 (12:21 -0500)]
Minor
Behdad Esfahbod [Fri, 23 Nov 2018 16:57:42 +0000 (11:57 -0500)]
[aat] Rename feat API a bit more
Ebrahim Byagowi [Fri, 23 Nov 2018 08:35:06 +0000 (12:05 +0330)]
[feat] Rename API uses of setting to selector
Ebrahim Byagowi [Fri, 23 Nov 2018 08:14:53 +0000 (11:44 +0330)]
[feat] Apply renamings and add documentation
Ebrahim Byagowi [Sat, 17 Nov 2018 10:53:11 +0000 (14:23 +0330)]
[feat] Use bsearch
Ebrahim Byagowi [Sat, 17 Nov 2018 08:00:50 +0000 (11:30 +0330)]
[feat] Address Behdad comments
Ebrahim Byagowi [Fri, 16 Nov 2018 21:37:09 +0000 (01:07 +0330)]
[feat] Address @behdad comments
Ebrahim Byagowi [Thu, 8 Nov 2018 21:20:10 +0000 (00:50 +0330)]
[feat] Complete feature types list
Ebrahim Byagowi [Thu, 1 Nov 2018 18:54:42 +0000 (22:24 +0330)]
[feat] Add feature iteration API
Ebrahim Byagowi [Thu, 1 Nov 2018 18:08:54 +0000 (21:38 +0330)]
[feat] Turn AAT feature id into enum
Ebrahim Byagowi [Thu, 1 Nov 2018 16:32:57 +0000 (20:02 +0330)]
[feat] Rename records to selectors as @drott
Ebrahim Byagowi [Thu, 1 Nov 2018 16:26:16 +0000 (19:56 +0330)]
[feat] Apply @behdad comments
Ebrahim Byagowi [Thu, 1 Nov 2018 15:50:20 +0000 (19:20 +0330)]
[feat] Apply @drott and @jfkthame comments
Ebrahim Byagowi [Thu, 1 Nov 2018 11:45:56 +0000 (15:15 +0330)]
[feat] Apply @jfkthame reviews
Ebrahim Byagowi [Thu, 1 Nov 2018 09:44:29 +0000 (13:14 +0330)]
[feat] Expose public API
* hb_aat_get_feature_settings
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.
Behdad Esfahbod [Sun, 25 Nov 2018 05:27:23 +0000 (00:27 -0500)]
[kerx] Fix crash
Behdad Esfahbod [Sun, 25 Nov 2018 05:21:13 +0000 (00:21 -0500)]
Simplify sanitize set_object() / fix bots
Behdad Esfahbod [Sun, 25 Nov 2018 04:49:23 +0000 (23:49 -0500)]
[kerx] 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
Behdad Esfahbod [Sun, 25 Nov 2018 04:38:06 +0000 (23:38 -0500)]
Add hb_sanitize_with_object_t
Context manager.
Behdad Esfahbod [Sun, 25 Nov 2018 04:34:34 +0000 (23:34 -0500)]
Simplify sanitize set_object()
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().
Behdad Esfahbod [Sun, 25 Nov 2018 03:48:34 +0000 (22:48 -0500)]
Minor
Behdad Esfahbod [Sun, 25 Nov 2018 03:32:17 +0000 (22:32 -0500)]
[debug] Print function in return_trace()
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...
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.
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.
Behdad Esfahbod [Sun, 25 Nov 2018 03:01:06 +0000 (22:01 -0500)]
[tests] Minor
Behdad Esfahbod [Sun, 25 Nov 2018 02:36:57 +0000 (21:36 -0500)]
[arrays] Use hb_array_t<> in all places with sub_array()
Behdad Esfahbod [Sun, 25 Nov 2018 02:32:00 +0000 (21:32 -0500)]
[arrays] Merge ArrayOf's sub_array into hb_array_t's
Ebrahim Byagowi [Sat, 24 Nov 2018 22:42:40 +0000 (02:12 +0330)]
[test] Add the missed aots fonts
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
Behdad Esfahbod [Sat, 24 Nov 2018 22:15:38 +0000 (17:15 -0500)]
[sanitize] Remove now-unused set_object() machinery
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.)
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.
Ebrahim Byagowi [Sat, 24 Nov 2018 22:09:00 +0000 (01:39 +0330)]
Add 10.13.6 aat fonts tests and bot (#1409)
Behdad Esfahbod [Sat, 24 Nov 2018 20:56:17 +0000 (15:56 -0500)]
[aat] Add test for recent regression
Behdad Esfahbod [Sat, 24 Nov 2018 20:49:33 +0000 (15:49 -0500)]
[tests] Redo test runner logging a bit
Behdad Esfahbod [Sat, 24 Nov 2018 20:42:11 +0000 (15:42 -0500)]
[tests] Minor
Behdad Esfahbod [Sat, 24 Nov 2018 20:37:01 +0000 (15:37 -0500)]
[tests/shaping] Allow comments in test files
Line should start with "# ".
Behdad Esfahbod [Sat, 24 Nov 2018 20:22:09 +0000 (15:22 -0500)]
[tests] Rename
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.
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.
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.
Behdad Esfahbod [Sat, 24 Nov 2018 15:25:10 +0000 (10:25 -0500)]
[color] Use SortedUnsizedArrayOf<>
Behdad Esfahbod [Sat, 24 Nov 2018 15:17:59 +0000 (10:17 -0500)]
[trak] Coment
Behdad Esfahbod [Sat, 24 Nov 2018 15:09:17 +0000 (10:09 -0500)]
[arrays] Add not_found to reference bsearch as well
Behdad Esfahbod [Sat, 24 Nov 2018 15:06:13 +0000 (10:06 -0500)]
[arrays] Improve bfind() interface
Much more useful now. :)
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
Behdad Esfahbod [Sat, 24 Nov 2018 14:47:45 +0000 (09:47 -0500)]
[kerx/morx] Make sure object length is sanitized before accessing it
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
Behdad Esfahbod [Sat, 24 Nov 2018 06:48:48 +0000 (01:48 -0500)]
[arrays] Port ArrayOf.qsort() to hb_array_t's
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
Behdad Esfahbod [Sat, 24 Nov 2018 06:45:58 +0000 (01:45 -0500)]
[arrays] Port hb_vector_t.qsort() to hb_array_t's
Behdad Esfahbod [Sat, 24 Nov 2018 06:42:17 +0000 (01:42 -0500)]
[arrays] Remove one flavor of hb_vector_t.qsort()
Behdad Esfahbod [Sat, 24 Nov 2018 06:37:11 +0000 (01:37 -0500)]
[arrays] Add (unused) SortedUnsizedArrayOf<>
Behdad Esfahbod [Sat, 24 Nov 2018 06:31:00 +0000 (01:31 -0500)]
[arrays] Port SortedArrayOf.bsearch/bfind to 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
Behdad Esfahbod [Sat, 24 Nov 2018 06:11:12 +0000 (01:11 -0500)]
[arrays] Port (unused) ArrayOf.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
Behdad Esfahbod [Sat, 24 Nov 2018 06:07:15 +0000 (01:07 -0500)]
[arrays] More
Behdad Esfahbod [Sat, 24 Nov 2018 05:58:44 +0000 (00:58 -0500)]
[arrays] Update ArrayOf.lsearch()
Currently unused apparently
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/...
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.
Nathan Willis [Thu, 15 Nov 2018 21:47:03 +0000 (15:47 -0600)]
Usermanual: clusters chapter, minor updates.
Nathan Willis [Mon, 12 Nov 2018 18:17:06 +0000 (12:17 -0600)]
Usermanual: expand clusters chapter.
Behdad Esfahbod [Sat, 24 Nov 2018 05:35:31 +0000 (00:35 -0500)]
Change ArrayOf.bsearch() return semantics
Towards consolidating all array bsearch/...
Behdad Esfahbod [Sat, 24 Nov 2018 05:38:36 +0000 (00:38 -0500)]
Minor
Behdad Esfahbod [Sat, 24 Nov 2018 05:45:55 +0000 (00:45 -0500)]
Whitespace
Behdad Esfahbod [Sat, 24 Nov 2018 05:31:40 +0000 (00:31 -0500)]
Assert that item-type of arrays have static size
Behdad Esfahbod [Sat, 24 Nov 2018 05:29:22 +0000 (00:29 -0500)]
[vector] Rename
Behdad Esfahbod [Sat, 24 Nov 2018 05:27:57 +0000 (00:27 -0500)]
[aat] Minor
Behdad Esfahbod [Sat, 24 Nov 2018 05:25:40 +0000 (00:25 -0500)]
Add hb_static_size(T)
Behdad Esfahbod [Sat, 24 Nov 2018 05:22:21 +0000 (00:22 -0500)]
Add template-function convenience macros
Behdad Esfahbod [Sat, 24 Nov 2018 00:58:49 +0000 (19:58 -0500)]
Add null bytes for CmapSubtableLongGroup
Behdad Esfahbod [Fri, 23 Nov 2018 21:24:28 +0000 (16:24 -0500)]
Remove lsearch for small TableDirectorys
Behdad Esfahbod [Fri, 23 Nov 2018 21:07:43 +0000 (16:07 -0500)]
[arrays] Add as_array() to hb_vector_t<>
Behdad Esfahbod [Fri, 23 Nov 2018 21:04:56 +0000 (16:04 -0500)]
[arrays] Add as_array() to ArrayOf<>
Behdad Esfahbod [Fri, 23 Nov 2018 20:24:17 +0000 (15:24 -0500)]
[kern] Don't enforce length of last subtable
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
David Corbett [Fri, 23 Nov 2018 18:21:22 +0000 (13:21 -0500)]
Don't canonicalize '@' to '-' in language tags
Fixes #1406.
Ebrahim Byagowi [Fri, 23 Nov 2018 16:28:56 +0000 (19:58 +0330)]
[aat] Update expectation
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
Behdad Esfahbod [Fri, 23 Nov 2018 15:45:44 +0000 (10:45 -0500)]
Minor
Ebrahim Byagowi [Fri, 23 Nov 2018 12:10:05 +0000 (15:40 +0330)]
[aat] Add macOS specific tests (#1404)
Behdad Esfahbod [Fri, 23 Nov 2018 03:47:51 +0000 (22:47 -0500)]
[use] Minor clarification
Behdad Esfahbod [Fri, 23 Nov 2018 03:40:57 +0000 (22:40 -0500)]
Minor tweak to FLAG64
Behdad Esfahbod [Fri, 23 Nov 2018 03:39:12 +0000 (22:39 -0500)]
Merge pull request #1291 from harfbuzz/use-reordering
[use] Fix reordering
Behdad Esfahbod [Fri, 23 Nov 2018 03:17:49 +0000 (22:17 -0500)]
[cmap] Move code around
Behdad Esfahbod [Fri, 23 Nov 2018 03:16:12 +0000 (22:16 -0500)]
[morx/kerx] Limit range to subtable when sanitizing
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.