Commit Graph

6639 Commits

Author SHA1 Message Date
Garret Rieger 95eb0f3baf [subset] Switch to a non-log using implementation of caculating searchRangeZ, entrySelectorZ, and rangeShiftZ in cmap4. 2018-05-04 11:20:03 -07:00
Garret Rieger b0d7971be0 [subset] Updated expected files for japanese subset integration tests to include cmap4. 2018-05-04 11:20:03 -07:00
Garret Rieger 7947927317 [subset] Update expected files for subset integration tests to include cmap4. 2018-05-04 11:20:03 -07:00
Garret Rieger a8e7f9b958 [subset] Get cmap tests passing again. 2018-05-04 11:20:03 -07:00
Garret Rieger c817992f49 [subset] Write out a format 4, plat 0 encoding record to match fontTools. 2018-05-04 11:20:03 -07:00
Garret Rieger 9ef55a4c13 [subset] A few bug fixes for cmap format 4 subsetting. 2018-05-04 11:20:03 -07:00
Garret Rieger 81ea75f5c8 [subset] Complete implementation of cmap4 subsetting. 2018-05-04 11:20:03 -07:00
Garret Rieger 4195a52b04 [subset] WIP implementation of serialize for cmap format 4. 2018-05-04 11:20:03 -07:00
Garret Rieger cfa592d31c [subset] Add an implement for cmap format 4 create_sub_table_plan. 2018-05-04 11:20:03 -07:00
Garret Rieger 295d67ea7d [subset] WIP cmap format 4 subsetting. 2018-05-04 11:20:03 -07:00
Garret Rieger 0053d13283 [subset] Refactor cmap subsetting to make it possible to add support for more sub tables. 2018-05-04 11:20:03 -07:00
Garret Rieger 03b2754812 [subset] Add const to the hb_subset_plan_t input to a couple functions in hb-subset-plan. 2018-05-04 11:18:25 -07:00
Behdad Esfahbod 5b93f69169 Rename some X-terminated members to Z-terminated
X-terminated means don't access this, it's not located correctly.
Z-terminated means this is a C array with no bound checking.
2018-05-02 14:59:14 -04:00
Behdad Esfahbod f1f6bc0a6f [set] Fix init/fini of set on the stack to call object init/fini
Part of https://github.com/harfbuzz/harfbuzz/issues/1017
2018-05-02 12:56:45 -04:00
Behdad Esfahbod 37b95612d4 Remove hb_auto_array_t
Part of https://github.com/harfbuzz/harfbuzz/issues/1017
2018-05-01 19:09:00 -04:00
Behdad Esfahbod 5c3112aec8 s/hb_prealloced_array_t/hb_vector_t/g
Part of https://github.com/harfbuzz/harfbuzz/issues/1017
2018-05-01 19:07:04 -04:00
Behdad Esfahbod 4a01eb1234 Add hb_auto_t
Part of https://github.com/harfbuzz/harfbuzz/issues/1017
2018-05-01 19:05:58 -04:00
Behdad Esfahbod a60ba7964e s/finish/fini
For consistency.
2018-05-01 19:01:25 -04:00
Behdad Esfahbod 17618ee2ec Add hb_object_fini() 2018-05-01 18:39:25 -04:00
Behdad Esfahbod bd5f918e2f [set] Cache population
Part of https://github.com/harfbuzz/harfbuzz/issues/1017
2018-05-01 18:27:41 -04:00
violet-sippial 93b03119da [subset] Do not compare ttx progress output in the tests
Suppress progress messages of ttx. This avoids comparing this output to the reference file which lets the test fail.
2018-04-30 17:28:02 -07:00
Ebrahim Byagowi a57f5a1a18
[dwrite] Minor, enable the original code assertions 2018-04-28 13:58:55 +04:30
Ebrahim Byagowi 9925030f19 Don't decompose Bengali Rra and Rha
Fixes #779 and follow up to b01d9b3d90
2018-04-26 13:54:09 -07:00
Ebrahim Byagowi 5ad87a93fe
Minor, improve file reading failing condition comment
https://bugzilla.gnome.org/show_bug.cgi?id=659212 for more context
2018-04-25 16:44:04 +04:30
Ebrahim Byagowi 2eaba80cbd
Minor, re-add unused mark to some of ragel defined state machines (#1005) 2018-04-24 09:04:15 +04:30
Ebrahim Byagowi 48f0204cfe
Minor, re-add unused mark for two TRACE_ macros
To revive Travis CI bot
2018-04-24 08:11:13 +04:30
Ebrahim Byagowi 816b8169a9 Resolve some of clang's double-promotion warnings 2018-04-23 11:38:45 -07:00
Ebrahim Byagowi 24b8b9b227 Resolve clang's used-but-marked-unused warnings 2018-04-23 11:38:45 -07:00
Ebrahim Byagowi eaf649450a Resolve clang's conditional-uninitialize warnings 2018-04-23 11:38:45 -07:00
Ebrahim Byagowi 8b0d642e66 Resolve some of clang's zero-as-null-pointer-constant warnings 2018-04-23 11:38:45 -07:00
Ebrahim Byagowi 8100380d9e
Minor, fix calloc call order 2018-04-22 10:58:37 +04:30
Ebrahim Byagowi 2a4cdfad20
[aat/kerx] Minor (#1003) 2018-04-20 21:12:58 +04:30
Ebrahim Byagowi ce17340b23 Add hb_blob_create_from_file, a new API (#926) 2018-04-20 07:59:06 +02:00
Garret Rieger 4fa1c6705a [subset] Check instruction offsets in glyph to ensure they are in bounds. 2018-04-19 17:19:38 -06:00
Garret Rieger 3c97614598 [subset] In subset fuzzer run through drop hints and keep hints pathways. 2018-04-19 17:19:38 -06:00
Khaled Hosny 6fdeeb2ae3 [util] Check all specified shapers are known (#993)
A bit brute force and requires all shapers to be known, not just one.

Fixes https://github.com/harfbuzz/harfbuzz/issues/956
2018-04-19 22:41:37 +02:00
Garret Rieger 535fb23c02 [subset] Add integration tests for cmap breakge. 2018-04-19 12:51:51 -06:00
Garret Rieger e29c8e33f3 [subset] Add a test for previous cmap breakage. 2018-04-19 12:51:51 -06:00
Garret Rieger 5e318e09ba [subset] Fix broken cmap creation.
It was ignoring the restriction that gids must be consecutive to be placed into a single group.
2018-04-19 12:51:51 -06:00
Ebrahim Byagowi a47070cd40
Minor, annotate the added tables with likely/unlikely (#997) 2018-04-18 12:09:37 +04:30
Garret Rieger 1a309dcd72 [subset] Remove printf's from fuzzing targets. 2018-04-17 19:37:36 -06:00
Ebrahim Byagowi c55aa147c3
Do sanitization before the use on 'main' mini-program (#994) 2018-04-18 00:01:20 +04:30
Garret Rieger c02b40e58f [subset] add a fuzzer target for subset_get_all_codepoints method. (#987) 2018-04-17 16:21:22 +02:00
Behdad Esfahbod 924803166e [colr] Check layer record access 2018-04-17 15:32:02 +02:00
Garret Rieger 5dadbb0fa0 [subset] Add implementation of cmap format 12 codepoint listing. (#988) 2018-04-17 15:00:23 +02:00
Ebrahim Byagowi 6771e79bcc
Add pre-opentype font pages detection code (#986)
As Khaled's finding on #981 this is the way Uniscribe detects those fonts. This is its detection part.
2018-04-17 09:36:52 +04:30
Ebrahim Byagowi 277e328986
Make some of implicit header uses explicit (#989)
Splitted from #950 and #986 IIRC Chromium had a policy about this encouraging it,
not sure about automated way to detect and add them but for now lets have the needed
ones of them.
2018-04-17 09:13:35 +04:30
Ebrahim Byagowi f5811bad04
Add round to F2DOT14 inner store setter (#990)
It uses floor implicitly without it but explicit use of round will be more correct.
2018-04-17 09:13:03 +04:30
Garret Rieger 39754fb659 [subset] Don't assume the last segment in cmap 4 can be skipped, actually check it. 2018-04-16 16:29:26 -06:00
Garret Rieger 21a181af2b [subset] sketch out support for a call that lists all codepoints present in a font. Implement support for it in format 4 cmap sub table. 2018-04-16 16:29:26 -06:00