Behdad Esfahbod
5020affc38
[tests] Minor
2018-11-24 15:42:11 -05:00
Behdad Esfahbod
ee3a3e10d4
[tests/shaping] Allow comments in test files
...
Line should start with "# ".
2018-11-24 15:40:50 -05:00
Behdad Esfahbod
ed900ee9af
[tests] Rename
2018-11-24 15:22:09 -05:00
Ebrahim Byagowi
3cc14e78ae
[test] Enable more of aots tests ( #1408 )
...
The ones commented out in this change should've be passed :/
a closer look is needed.
2018-11-24 20:49:21 +03:30
Ebrahim Byagowi
24887d1115
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.
2018-11-24 20:07:24 +03:30
Behdad Esfahbod
1204a247a5
[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
2018-11-24 09:49:21 -05:00
David Corbett
018ba46e4d
Don't canonicalize '@' to '-' in language tags
...
Fixes #1406 .
2018-11-23 13:21:22 -05:00
Ebrahim Byagowi
c9cc96c0cf
[aat] Update expectation
2018-11-23 19:58:56 +03:30
Ebrahim Byagowi
341851efe1
[aat] Add macOS specific tests ( #1404 )
2018-11-23 15:40:05 +03:30
Behdad Esfahbod
8280459e74
Merge pull request #1291 from harfbuzz/use-reordering
...
[use] Fix reordering
2018-11-22 22:39:12 -05:00
Behdad Esfahbod
2c8188bf59
[kerx] Make sure subtables are non-zero-length
...
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11400
2018-11-22 22:02:19 -05:00
Garret Rieger
8982830d3e
[subset] add fuzzer testcase.
2018-11-22 21:30:01 -05:00
David Corbett
264439c6c3
Test U+111C9 SHARADA SANDHI MARK
2018-11-21 16:33:45 -05:00
Behdad Esfahbod
f48bb9a393
[var] Deprecated axis enumeration API and add new version
...
New version has axis flags.
New API:
+hb_ot_var_axis_info_t
+hb_ot_var_find_axis_info()
+hb_ot_var_get_axis_infos()
Deprecated API:
-HB_OT_VAR_NO_AXIS_INDEX
-hb_ot_var_axis_t
-hb_ot_var_find_axis()
-hb_ot_var_get_axes()
2018-11-20 20:46:14 -05:00
Michiharu Ariza
1ecbf4d3e3
Merge branch 'master' into cff-subset
2018-11-20 17:19:05 -08:00
Behdad Esfahbod
831ba74382
Fix Codacy "issues"
2018-11-20 01:16:08 -05:00
David Corbett
3c7792ca32
[use] Fix reordering
...
Fixes #1235 .
2018-11-19 16:49:40 -05:00
Michiharu Ariza
515f1a1614
Merge branch 'master' into cff-subset
2018-11-16 17:38:47 -08:00
Behdad Esfahbod
cff4c6087f
Fix vertical fallback space sign
...
Ouch!
Follow-up to cf203af8a3
Fixes https://github.com/harfbuzz/harfbuzz/issues/1343
2018-11-16 15:04:41 -08:00
Michiharu Ariza
b67a7c731f
drop dotsection as hint along with test case
2018-11-16 12:28:24 -08:00
Michiharu Ariza
072c7aba92
use 2-byte offset instead of 4-byte for local subrs
...
more than enough since local subrs immediately follow its corresponding private dict, as the result 2-byte redunction for each font dict with local subrs
updated api test expected subset fonts accordingly
2018-11-15 15:41:46 -08:00
Michiharu Ariza
892ab37e7c
Merge branch 'master' into cff-subset
2018-11-14 13:54:07 -08:00
Michiharu Ariza
3787c07856
Implemented seac for extents & subset along with API tests
2018-11-14 13:38:03 -08:00
punchcutter
e543e1a085
Add Grantha test
2018-11-13 20:44:27 -08:00
Behdad Esfahbod
5212cd8af2
[fuzzing] Add new test
2018-11-12 14:25:18 -05:00
Behdad Esfahbod
d6666b3866
[fuzzing] Remove limited-edition build of libraries
...
Use normal, production, shared libraries.
Fixes https://github.com/harfbuzz/harfbuzz/issues/1237
2018-11-12 13:21:14 -05:00
Behdad Esfahbod
a549aa14a0
[kerx] Protect against stack underflow
...
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11367
2018-11-12 13:02:39 -05:00
Michiharu Ariza
41a8bc7fd9
Merge branch 'master' into cff-subset
2018-11-12 08:49:00 -08:00
Michiharu Ariza
0dfa584cb4
changed Adobe company name
2018-11-12 08:47:07 -08:00
Behdad Esfahbod
752bd8a192
[kerx] Fix Format1 tupleKern sanitization
...
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11312
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11305
2018-11-10 21:13:32 -05:00
Behdad Esfahbod
f9e0552deb
[fuzzing] Make "make lib" faster and more usable
2018-11-10 21:06:56 -05:00
Michiharu Ariza
fb2a037f54
Merge branch 'master' into cff-subset
2018-11-10 16:23:11 -08:00
Behdad Esfahbod
3a9fa8c026
[qsort] Fix O(N^2) behavior if all array elements are the same
...
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11327
Reported as https://github.com/noporpoise/sort_r/issues/7
2018-11-10 01:58:26 -05:00
Behdad Esfahbod
f51bb6ee7b
Merge pull request #1358 from ebraminio/lcar
...
Hook AAT's lcar to _get_ligature_carets
2018-11-08 14:42:40 -05:00
Ebrahim Byagowi
b986fead0a
Hook AAT's lcar to _get_ligature_carets
2018-11-08 23:06:26 +03:30
Behdad Esfahbod
9fae611740
[test/text-rendering-tests] Update from upstream
2018-11-08 12:26:38 -05:00
Michiharu Ariza
26c291aaa0
Merge branch 'master' into cff-subset
2018-11-08 09:06:49 -08:00
Behdad Esfahbod
0bf76154f1
[fuzzing] Take whatever text we can
2018-11-07 19:12:27 -05:00
Michiharu Ariza
0996c0ff62
implented no-desubroutinize with CFF2 along with API test
...
replaced AdobeVFPrototype.abc.otf with a hinted (maually) & subroutinized copy
replaced expected results as well
2018-11-07 14:48:37 -08:00
Michiharu Ariza
43ee0e4d00
Merge branch 'master' into cff-subset
2018-11-06 09:57:17 -08:00
Khaled Hosny
5c3ccbc634
Another missing backlash
...
Did this ever work?
2018-11-06 18:10:56 +02:00
Khaled Hosny
d29602b962
Add missing backslash
2018-11-06 18:07:47 +02:00
Behdad Esfahbod
8790b2740a
[fuzzing] Fix test
2018-11-06 10:24:54 -05:00
Behdad Esfahbod
3af0a7edd0
[fuzzing] Add make check-valgrind
2018-11-06 10:20:57 -05:00
Behdad Esfahbod
b062378ce6
[test] Minor
2018-11-06 10:20:36 -05:00
Ebrahim Byagowi
b6112e5ea4
[test] Fix -Weverything bot complain
2018-11-06 11:42:47 +03:30
Ebrahim Byagowi
a49df419f0
[test] Test hb_ot_name_{list_names,get_utf8} on test-ot-name
2018-11-06 11:26:30 +03:30
Behdad Esfahbod
6482fda519
[fuzzing] Fuzz glyph-id etc in test-ot-face
2018-11-05 15:03:18 -05:00
Michiharu Ariza
1682d1bbec
Merge branch 'master' into cff-subset
2018-11-04 13:25:41 -08:00
Michiharu Ariza
d8fadec098
added desubroutinize full font test profiles & expected fonts
...
modified subset_test_suite.py to apply desubroutinize profiles to CFF only (not to TT)
2018-11-04 13:12:20 -08:00
Behdad Esfahbod
bce437cf0b
[test] Call test-ot-face.c test from hb-shape-fuzzer
...
Should increase coverage...
2018-11-04 02:53:25 -05:00
Behdad Esfahbod
777c22425c
[test] More funcs in test-ot-face
2018-11-04 02:40:20 -05:00
Behdad Esfahbod
9779e602ed
[test] Add test for empty face
2018-11-03 20:50:56 -04:00
Ebrahim Byagowi
b8a78ce201
[BASE] Improvements ( #1347 )
2018-11-03 22:28:30 +03:30
Ebrahim Byagowi
c560ca9251
[fuzz] A new testcase
2018-11-03 13:03:36 +03:30
Michiharu Ariza
34b06d994a
fixed FDSelect size calcluation
2018-11-02 16:40:20 -07:00
Michiharu Ariza
481fdfdc23
Merge branch 'cff-subset' of https://github.com/harfbuzz/harfbuzz into cff-subset
2018-11-02 15:28:09 -07:00
Michiharu Ariza
1bc710a8c9
added CFF1 desubr api test cases & bug fixes
2018-11-02 15:28:01 -07:00
Michiharu Ariza
e600e5440b
Merge branch 'master' into cff-subset
2018-11-01 16:13:56 -07:00
Ebrahim Byagowi
cad90be4ea
[test] minor
2018-11-01 13:39:06 +03:30
Behdad Esfahbod
f928931948
[test] Minor
2018-10-31 18:27:09 -07:00
Behdad Esfahbod
cf203af8a3
Implement space fallback in vertical direction
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/1343
2018-10-31 18:27:09 -07:00
Behdad Esfahbod
69297bb216
[fuzzing] Call hb-ot-color API
2018-10-30 19:07:38 -07:00
Behdad Esfahbod
a7aba99baa
[name] Rename hb_name_id_t to hb_ot_name_id_t
...
https://github.com/harfbuzz/harfbuzz/pull/1254
2018-10-30 14:04:09 -07:00
Khaled Hosny
0af3d176a6
[sbix] Fix memory leak in early return
...
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11210
2018-10-30 17:05:28 +02:00
Behdad Esfahbod
56738429d6
[test] Fix warnings
2018-10-30 01:33:22 -07:00
Behdad Esfahbod
64e41d2c89
[test] Fix Python3
2018-10-30 01:08:34 -07:00
Behdad Esfahbod
422debb830
[test/shaping] Spawn one hb-shape per test file
...
Speeds up runnings in-house tests from over 20s to 2s.
2018-10-30 00:52:22 -07:00
Behdad Esfahbod
ad3cededdd
[fuzzing] Make test runners less verbose
2018-10-29 22:53:16 -07:00
Ebrahim Byagowi
7170e35096
Rename deprecated symbols list file name and clean it up ( #1328 )
2018-10-29 13:11:01 +03:30
Behdad Esfahbod
0aa90271fd
[tests] Fix for recent rounding change in CBDT
2018-10-28 23:03:20 -07:00
Ebrahim Byagowi
c929ccfcea
[ot-color/png] Consider strike ppem on scaling
2018-10-28 22:40:40 -07:00
Ebrahim Byagowi
307d61867a
[ot-color] Make PNGHeader reading actually work
2018-10-28 18:33:10 -07:00
Ebrahim Byagowi
632e9af862
[ot-color] Implement PNGHeader and test it, it doesn't work however
2018-10-28 18:33:10 -07:00
Ebrahim Byagowi
3d4c1f6a41
[ot-color] Apply Behdad reviews
2018-10-28 18:33:10 -07:00
Ebrahim Byagowi
8ef0d2ef92
[ot-color] Apply Behdad comment
2018-10-28 18:33:10 -07:00
Ebrahim Byagowi
dbd419bede
[ot-color] Add public API for CBDT/sbix/SVG color Emojis
2018-10-28 18:33:10 -07:00
Ebrahim Byagowi
524e854c15
Merge pull request #1318 from ebraminio/png
...
Add a non-hooked _png _svg get emoji blob
2018-10-27 15:04:43 +03:30
Ebrahim Byagowi
8180c37df0
[ot-color] Remove _png and _svg public APIs
2018-10-27 14:54:08 +03:30
Ebrahim Byagowi
9435fb24da
[ot-color/png] Implement CBDT part
2018-10-27 13:47:11 +03:30
Ebrahim Byagowi
265ad408ca
[ot-color/png] Implement sbix part
2018-10-27 10:43:46 +03:30
Behdad Esfahbod
12058e44d1
[fuzzing] Add more test
2018-10-26 21:22:26 -07:00
Ebrahim Byagowi
143ffe65aa
[fuzz] Add a new testcase
2018-10-26 12:14:30 +03:30
Ebrahim Byagowi
30f18039b3
[svg] Rename _svg_create_blob to _glyph_reference_blob_svg
2018-10-26 09:34:34 +03:30
Ebrahim Byagowi
5cb1ce8681
[svg] Collapse SVGDocumentIndex into SVG
2018-10-26 09:31:01 +03:30
Ebrahim Byagowi
4ceabb8c21
[svg] Hide start_glyph and end_glyph from API
2018-10-26 09:16:44 +03:30
Ebrahim Byagowi
c7a4e3dfb5
[svg] Add public API
...
* hb_ot_color_has_svg
* hb_ot_color_glyph_svg_create_blob
2018-10-26 09:16:44 +03:30
Behdad Esfahbod
e3ceb2dde3
Fix again
2018-10-25 14:30:36 -07:00
Michiharu Ariza
be746009e9
dropped support of legacy CFF CharString ops
...
along with test & font
2018-10-25 13:40:40 -07:00
Behdad Esfahbod
1cfe702872
Fixup
2018-10-25 13:37:08 -07:00
Behdad Esfahbod
5739c876d0
[test] Rename some fonts
...
If we have duplicae font files in different directories, that would
break the oss-fuzz build currently. So, rename some to avoid
name class with text-rendering-test. Would be better to find
another solution.
2018-10-25 13:23:33 -07:00
Michiharu Ariza
2ebf360102
Merge branch 'master' into cff-subset
2018-10-25 13:05:06 -07:00
Behdad Esfahbod
ba502dea1e
[morx] Fix cluster-merging when ligating
...
Only merge when actual ligature happened.
Fixes https://github.com/harfbuzz/harfbuzz/issues/1305
2018-10-23 16:50:31 -07:00
Michiharu Ariza
e1241636d6
Merge branch 'master' into cff-subset
2018-10-23 11:25:51 -07:00
Behdad Esfahbod
cf92d6579e
[trak] Allow disabling tracking for ranges of text
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/1303
2018-10-23 03:10:56 -07:00
Ebrahim Byagowi
22ecefd88e
Make tracking optout possible using 'trak' ot feature
...
So '--features=-trak' or 'font-feature-settings: 'trak' 0;' can prevent
applying of tracking if used.
2018-10-23 02:57:55 -07:00
David Corbett
205737acdc
[use] Prohibit visually ambiguous vowel sequences
2018-10-23 02:25:08 -07:00
Behdad Esfahbod
48ed598a35
[VORG] Hook up to hb-ot-font's v_origin
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/544
Test added with NotoSansCJK, eg. with U+FF38.
2018-10-23 02:21:27 -07:00
Behdad Esfahbod
1bfb96a9c8
[test/text-rendering-tests] Update from upstream
2018-10-22 23:41:47 -07:00
Michiharu Ariza
ba055a8d53
fix build attempt ^3
2018-10-22 16:20:04 -07:00
Michiharu Ariza
b11032afae
fix build attempt ^2
2018-10-22 15:52:37 -07:00
Michiharu Ariza
3d3df5575c
fix build attempt
2018-10-22 15:23:39 -07:00
Behdad Esfahbod
7997144b5f
[color] Revamp palette API
2018-10-22 14:22:31 -07:00
Behdad Esfahbod
1de17bdb80
[colr] Add hb_ot_color_layer_t
...
We never return parallel arrays from functions. That's inconvenient
and hard to bind.
2018-10-22 14:21:23 -07:00
Behdad Esfahbod
3b3668acc8
[color] Rename / reorder a bit
...
Implement has_data() for realz.
2018-10-22 14:21:23 -07:00
Michiharu Ariza
570b77f7d2
Merge branch 'master' into cff-subset
2018-10-22 13:06:47 -07:00
Behdad Esfahbod
9085a72deb
[cpal] Touch up palette flags
2018-10-22 13:03:29 -07:00
Ebrahim Byagowi
d440c8d3fb
Add chromacheck Emoji test fonts and minor preparations ( #1294 )
2018-10-22 22:07:59 +03:30
Michiharu Ariza
857c58279e
Merge branch 'master' into cff-subset
2018-10-22 09:57:20 -07:00
Ebrahim Byagowi
44f79b4bf8
Remove _palette_entry_count as can be done with _palette_colors
2018-10-22 10:17:31 +02:00
Ebrahim Byagowi
6795dcfc08
[test] Test hb_ot_color_has_{colr,cpal}_data
2018-10-22 10:17:31 +02:00
Ebrahim Byagowi
b8ee3a0ec8
[CPAL] Add palette entry and enable palette flag API
2018-10-22 10:17:31 +02:00
Ebrahim Byagowi
d4261b4bb6
Add API test for hb_ot_color_get_color_layers
2018-10-22 10:17:31 +02:00
Ebrahim Byagowi
456978d408
Address COLR/CPAL reviews and revive cpal_v1 tests
2018-10-22 10:17:31 +02:00
Ebrahim Byagowi
e9d798dc12
[test] Use hb_test_open_font_file
2018-10-22 10:17:31 +02:00
Ebrahim Byagowi
e8a6f5b803
Add three macros for separating color channels
2018-10-22 10:17:31 +02:00
Ebrahim Byagowi
0e33467e52
Make ot-color tests pass
2018-10-22 10:17:31 +02:00
Khaled Hosny
d4e928b142
[color] Minimal API for COLR/CPAL
2018-10-22 10:17:31 +02:00
Ebrahim Byagowi
0229eaea29
[fuzz] Add a found hb-subset testcase
2018-10-22 10:51:37 +03:30
Ebrahim Byagowi
9b3461574f
[fuzz] Add more testcases
...
Fixed already but better to have anyway.
One didn't have minimized but it was only 164 B, so
2018-10-21 11:37:38 +03:30
Ebrahim Byagowi
c110878cb6
[test] Unify font file opening across the tests
2018-10-21 11:27:05 +03:30
Behdad Esfahbod
217a3728b4
[fuzzing] Add more font
2018-10-20 20:39:56 -07:00
Ebrahim Byagowi
8931bc4a6b
[test] Fix -Wunused-parameter on test-font.c
2018-10-20 23:23:32 +03:30
Behdad Esfahbod
f11c557662
[test] Fix leak
2018-10-20 12:20:57 -07:00
Ebrahim Byagowi
d39acc5a95
[fuzzing] Add new testcases
2018-10-20 12:20:30 +03:30
Ebrahim Byagowi
964ae32aac
Run valgrind on run-shape-fuzzer only when RUN_VALGRIND is set ( #1285 )
2018-10-20 07:39:18 +03:30
Behdad Esfahbod
f70f994112
Minor
2018-10-19 20:00:36 -07:00
Behdad Esfahbod
4e09fb8f7a
Oops. Fix build
2018-10-19 19:59:41 -07:00
Behdad Esfahbod
9e288d29d8
[test-map] Cosmetic
2018-10-19 19:47:27 -07:00
Behdad Esfahbod
77d5c3df07
[font] Add failing test amongst font-func parallels infinite-looping
...
Reported by Nona while updating Android to HarfBuzz 2.0.0.
2018-10-19 19:01:01 -07:00
Behdad Esfahbod
257ded1f9e
[trak] Fix test for previous fix
2018-10-19 11:20:14 -07:00
Ebrahim Byagowi
114f66dda6
Fix hb_map_is_empty logic
...
This needs reviewing
2018-10-19 20:23:36 +03:30
Ebrahim Byagowi
9df2fb1611
Add API tests for hb_map_t
2018-10-19 20:23:36 +03:30
Ebrahim Byagowi
8a5eba7110
[test] cosmetic, use g_assert_cmpint
2018-10-19 20:23:36 +03:30
Ebrahim Byagowi
c6eb5e852c
Don't report deprecated symbols as unused symbols
2018-10-19 20:23:36 +03:30
Ebrahim Byagowi
34f357c78a
Add test for hb_set_del
2018-10-19 20:23:36 +03:30
Ebrahim Byagowi
b7cef8cb1d
Enable valgrind and dedicate a bot to it
2018-10-19 09:39:36 +03:30
Ebrahim Byagowi
bccd09d6c7
Minor, tweak spaces on hb-shape-fuzzer.cc
2018-10-19 09:39:36 +03:30
Ebrahim Byagowi
fbf665b307
[fuzz] Add more found cases ( #1275 )
2018-10-19 08:09:53 +03:30
Michiharu Ariza
51fba41cc9
Merge branch 'master' into cff-subset
2018-10-18 13:08:42 -07:00
Michiharu Ariza
e555ed961e
added flex extents test
2018-10-18 13:04:41 -07:00
Behdad Esfahbod
535ca678bf
[test] Don't use newer glib API
2018-10-18 05:58:04 -07:00
Behdad Esfahbod
b9478e28ac
Revert "[test] Remove not-fixed yet testcases ( #1268 )"
...
This reverts commit 191eef823f
.
2018-10-17 22:11:49 -07:00
Ebrahim Byagowi
191eef823f
[test] Remove not-fixed yet testcases ( #1268 )
...
I added them but now that I think, it is a bad idea to have them as
fuzzing bots will find good seeds to tweak in order to find easy new
testcases which causes duplicated issues.
2018-10-18 08:04:18 +03:30
Ebrahim Byagowi
392e1f4ddd
[test/shape-fuzzer] fail on timeout and ubsan errors ( #1267 )
2018-10-18 07:42:20 +03:30
Ebrahim Byagowi
751c10e55e
[fuzz] Add more new testcases
2018-10-18 06:36:48 +03:30
Ebrahim Byagowi
fd282eb328
[fuzz] Add a new testcase
2018-10-18 06:33:39 +03:30
Behdad Esfahbod
3341c7fbfb
[fuzzing] Move fuzzing fonts from api/ here
2018-10-17 15:04:35 -07:00
Michiharu Ariza
1f34388e8b
Merge branch 'master' into cff-subset
2018-10-17 09:34:48 -07:00
Behdad Esfahbod
5842756b13
[fuzzing] Delete blink fuzzed data
...
These are text, not font.
2018-10-16 18:28:55 -07:00
Behdad Esfahbod
ba42651608
Fix indent
2018-10-16 17:35:46 -07:00
Behdad Esfahbod
c0c190c16a
[fuzzing] Run tests against fuzzing fonts
...
Some disable.
2018-10-16 16:39:55 -07:00
Behdad Esfahbod
7b37705fb5
[fuzzing] Rename
2018-10-16 16:33:06 -07:00
Behdad Esfahbod
3676c685d4
[fuzzing] Move rest of fuzzing tests here
2018-10-16 16:32:26 -07:00
Behdad Esfahbod
1487173dcf
[fuzzing] Delete duplicate fonts
2018-10-16 16:30:38 -07:00
Behdad Esfahbod
49c041f7c5
Minor
2018-10-16 16:25:24 -07:00
Behdad Esfahbod
1147ce2392
[fuzzing] Add more tests
2018-10-16 16:18:32 -07:00
Behdad Esfahbod
1aa353e4fc
Fix tests
2018-10-16 15:26:51 -07:00
Behdad Esfahbod
98d4ad02b9
[fuzzing] One more
2018-10-16 15:17:31 -07:00
Behdad Esfahbod
e6f267c3df
[fuzzing] Add more clusterfuzz tests I had lying around
2018-10-16 15:16:20 -07:00
Ebrahim Byagowi
e53206271d
Add all the fonts found by fuzzers to the repo ( #1258 )
2018-10-17 01:42:04 +03:30
Behdad Esfahbod
2137582c96
[morx] Reword ligation
...
Still fails MORX-41. Am talking to Sascha to better understand what CoreText
is doing.
2018-10-16 14:46:07 -07:00
Behdad Esfahbod
c46d42f8f2
[test/text-rendering-tests] Update from upstream
2018-10-16 13:39:54 -07:00
Ebrahim Byagowi
61510b63c1
[test] Minor cleanup in test-multithread and test-ot-name ( #1256 )
2018-10-16 14:17:21 +03:30
Michiharu Ariza
9ade3e7bb8
Merge branch 'master' into cff-subset
2018-10-15 14:03:23 -07:00
Behdad Esfahbod
8dc6296818
[ot-font] Implement TrueType v_origin
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/537
2018-10-15 01:09:05 -07:00
Michiharu Ariza
db0d83ddc7
Merge branch 'master' into cff-subset
2018-10-13 17:25:38 -07:00
Michiharu Ariza
9228db06f4
added CFF1 Expert Encoding subset test & bug fixes
2018-10-13 17:25:09 -07:00
Behdad Esfahbod
c0a6814b49
Touch up new API
...
New API:
+hb_ot_layout_feature_get_name_ids()
+hb_ot_layout_feature_get_characters()
2018-10-12 16:06:39 -04:00
Ebrahim Byagowi
dc49bd8d81
Add two APIs for getting stylistic set labels
...
* hb_ot_layout_feature_get_characters
* hb_ot_layout_feature_get_name_ids
However HarfBuzz currently doesn't expose an API for retrieving the actual
information associated with NameId from the `name` table and that should be
done separately.
2018-10-12 16:06:39 -04:00
Michiharu Ariza
fc0153a1d4
Merge branch 'master' into cff-subset
2018-10-12 12:16:50 -07:00
Behdad Esfahbod
bf8469be9a
Attach CursivePositioning backwards, not forward
...
This is how Uniscribe does it. So, adjust. This is only relevant
to fonts that apply cursive positioning from a contextual lookup.
Fixes https://github.com/harfbuzz/harfbuzz/issues/1181
2018-10-11 20:45:40 -04:00
Behdad Esfahbod
bdb53ca24a
[myanmar] Implement Zawgyi shaper
...
Enabled if script tag 'Qaag' is passed to HarfBuzz. Disables mark
advance-zeroing and fallback mark-positioning.
Fixes https://github.com/harfbuzz/harfbuzz/issues/1162
2018-10-11 20:20:29 -04:00
Behdad Esfahbod
788e147855
[test] Add test for USE indic3
2018-10-11 19:24:52 -04:00
Behdad Esfahbod
a11972787a
Minor
2018-10-11 19:23:36 -04:00
David Corbett
28d091d045
Parse Indic3 tags
2018-10-11 17:44:13 -04:00
Behdad Esfahbod
211cd3691b
Remove remains of get-codepoint-fuzzer
2018-10-11 17:31:29 -04:00
Behdad Esfahbod
120ed02725
[fuzzing] Fold get-codepoints-fuzzer into subset-fuzzer
2018-10-11 17:08:12 -04:00
Behdad Esfahbod
1d995a340b
Minor
2018-10-11 15:42:54 -04:00
Behdad Esfahbod
57b05210b1
[test] Fix use of deprecated symbols
2018-10-11 15:03:21 -04:00
Michiharu Ariza
ca37172ee3
fixed leak
2018-10-11 11:55:55 -07:00
David Corbett
7f1fbfe2e3
Add hb_ot_tags_to_script_and_language
2018-10-11 13:54:28 -04:00
David Corbett
65d01f7755
Test deprecated tag fallback in a font
...
The font supports the deprecated tag 'DHV ' instead of 'DIV '. dv is
mapped to 'DIV ' and 'DHV ', in that order. The test specifies
`--language=dv`, demonstrating that if a font does not support the first
OpenType tag mapped to a BCP 47 tag, it will fall back to the next tag.
2018-10-11 13:54:28 -04:00
David Corbett
7c7cb2a989
Match extlang subtags
...
If the second subtag of a BCP 47 tag is three letters long, it denotes
an extended language. The tag converter ignores the language subtag and
uses the extended language instead.
There are some grandfathered exceptions, which are handled earlier.
2018-10-11 13:54:28 -04:00
David Corbett
2f1f961cc0
Autogenerate the BCP 47 to OpenType mappings
...
The new script, gen-tag-table.py, generates `ot_languages` automatically
from the [OpenType language system tag registry][ot] and the [IANA
Language Subtag Registry][bcp47] with some manual modifications. If an
OpenType tag maps to a BCP 47 macrolanguage, all the macrolanguage's
individual languages are mapped to the same OpenType tag, except for
individual languages with their own OpenType mappings. Deprecated
BCP 47 tags are canonicalized.
[ot]: https://docs.microsoft.com/en-us/typography/opentype/spec/languagetags
[bcp47]: https://www.iana.org/assignments/language-subtag-registry/language-subtag-registry
Some OpenType tags correspond to multiple ISO 639 codes. The mapping
from ISO 639 codes lists OpenType tags in priority order, such that more
specific or more likely tags appear first.
Some OpenType tags have no corresponding ISO 639 code in the registry so
their mappings use BCP 47 subtags besides the language. For example, any
BCP 47 tag with a fonipa variant subtag is mapped to 'IPPH', and 'IPPH'
is mapped back to und-fonipa.
Other OpenType tags have no corresponding ISO 639 code because it is not
clear what they are for. HarfBuzz just ignores these tags.
One such ignored tag is 'ZHP ' (Chinese Phonetic). It probably means
zh-Latn. However, it is used in Microsoft JhengHei and Microsoft YaHei
with the script tag 'hani', implying that it is not a romanization
scheme after all. It would be simple enough to add this mapping to
gen-tag-table.py once a definitive mapping is determined.
The manual modifications are mainly either obvious mappings that the
OpenType registry omits or mappings for compatibility with previous
versions of HarfBuzz. Some of the old mappings were discarded, though,
for homophonous language names. For example, OpenType maps 'KUI ' to
kxu; previous versions of HarfBuzz also mapped it to kvd, because kvd
and kxu both happen to be called "Kui".
gen-tag-table.py also generates a function to convert multi-subtag tags
like el-polyton and zh-HK to OpenType tags, replacing `ot_languages_zh`
and the hard-coded list of special cases in `hb_ot_tags_from_language`.
It also generates a function to convert OpenType tags to BCP 47,
replacing the hard-coded list of special cases in
`hb_ot_tag_to_language`.
2018-10-11 13:54:28 -04:00
David Corbett
91067716f5
Refactor the selection of script and language tags
...
The old hb-ot-tag.cc functions, `hb_ot_tags_from_script` and
`hb_ot_tag_from_language`, are now wrappers around a new function:
`hb_ot_tags`. It converts a script and a language to arrays of script
tags and language tags. This will make it easier to add new script tags
to scripts, like 'dev3'. It also allows for language fallback chains;
nothing produces more than one language yet though.
Where the old functions return the default tags 'DFLT' and 'dflt',
`hb_ot_tags` returns an empty array. The caller is responsible for
using the default tag in that case.
The new function also adds a new private use subtag syntax for script
overrides: "x-hbscabcd" requests a script tag of 'abcd'.
The old hb-ot-layout.cc functions,`hb_ot_layout_table_choose_script` and
`hb_ot_layout_script_find_language` are now wrappers around the new
functions `hb_ot_layout_table_select_script` and
`hb_ot_layout_script_select_language`. They are essentially the same as
the old ones plus a tag count parameter.
Closes #495 .
2018-10-11 13:54:28 -04:00
Michiharu Ariza
ce6639cd27
Merge branch 'master' into cff-subset
2018-10-11 10:53:48 -07:00
Michiharu Ariza
a6b6faf2b8
Replaced CFF1 J subset font for better coverage
...
in api test-ot-extents-cff
2018-10-11 10:53:44 -07:00
Behdad Esfahbod
100e95f48e
[trak] Add tests
2018-10-11 11:30:45 -04:00
Michiharu Ariza
b5aa5dbb11
Merge branch 'master' into cff-subset
2018-10-10 18:36:35 -07:00
Michiharu Ariza
af61c3b10f
added vsindex test & fixed process_vsindex
2018-10-10 18:35:12 -07:00
Behdad Esfahbod
1e8fdd285f
Remove HAVE_OT
...
We never tested compiling without it. Just kill it. We always build
our own shaper.
2018-10-10 16:32:35 -04:00
Michiharu Ariza
c06a5dff0b
Merge branch 'master' into cff-subset
2018-10-09 22:00:10 -07:00
Michiharu Ariza
83c5298f33
added cff1_legacyops.otf as test-ot-extents-cff test case
...
fixed roll operator bugs uncovered by the test
2018-10-09 21:59:36 -07:00
Michiharu Ariza
588518ea51
fixed test-ot-extents-cff failure on some platforms
2018-10-09 14:48:04 -07:00
Behdad Esfahbod
be2f148da4
[ft] Use mutex to lock access to FT_Face
...
Makes our FT-backed hb_font_t safe to use from multiple threads. Still,
the underlying FT_Face should NOT be used from other threads by client
or other libraries.
Maybe I add a lock()/unlock() public API ala PangoFT2 and cairo-ft.
Maybe not.
2018-10-09 16:24:50 -04:00
Behdad Esfahbod
9f79365c3b
Fix warning
...
How come this one is not generated by clang everything bot?!
../../../test/api/test-multithread.c:37:26: warning: initialization discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
static char *font_path = "fonts/Inconsolata-Regular.abc.ttf";
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../test/api/test-multithread.c:38:21: warning: initialization discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
2018-10-09 14:36:25 -04:00
Michiharu Ariza
f5f505b512
Merge branch 'master' into cff-subset
2018-10-09 10:10:35 -07:00
Chun-wei Fan
4035158de4
test/api/test-subset-*.c: Fix build on pre-C99
...
Ensure that we have the variables at the beginning of the block. These
are the only fixes that we need for building HarfBuzz on older
compilers.
2018-10-09 09:43:36 -04:00
Behdad Esfahbod
eb2be97f86
Port test off deprecated API
2018-10-09 07:48:52 -04:00