Commit Graph

11132 Commits

Author SHA1 Message Date
Ebrahim Byagowi
eac2c3bdb1 [ci] Enable sanitizer bots again 2020-05-21 08:41:02 +04:30
Ebrahim Byagowi
f9b31ddaaa [build] State encoding explicitly for hb-version.h.in
As https://circleci.com/gh/harfbuzz/harfbuzz/140481
  Traceback (most recent call last):
    File "./gen-hb-version.py", line 14, in <module>
      output_file.write (input_file.read ()
    File "/usr/lib/python3.4/encodings/ascii.py", line 26, in decode
      return codecs.ascii_decode(input, self.errors)[0]
  UnicodeDecodeError: 'ascii' codec can't decode byte 0xc2 in position 16: ordinal not in range(128)
2020-05-21 08:39:22 +04:30
Ebrahim Byagowi
759ab4fe56 [meson] Use subdir_done to simplify test/api/meson.build 2020-05-21 08:24:15 +04:30
Ebrahim Byagowi
a79d0e405b
[subset] minor, use a better type in iteration
In file included from hb-ot-face.cc:34:
In file included from ./hb-ot-kern-table.hh:30:
In file included from ./hb-aat-layout-kerx-table.hh:31:
In file included from ./hb-kern.hh:32:
In file included from ./hb-ot-layout-gpos-table.hh:32:
./hb-ot-layout-gsubgpos.hh:1878:63: error: loop variable '_' binds to a temporary value produced by a range of type 'decltype((hb_forward<hb_filter_iter_factory_t<hb_map_t &, const (anonymous struct at ./hb-algs.hh:331:1) &>>(rhs)(hb_forward<hb_zip_iter_t<hb_iota_iter_t<unsigned int, unsigned int>, hb_array_t<const OT::OffsetTo<OT::RuleSet, OT::IntType<unsigned short, 2>, true>>>>(lhs))))' (aka 'hb_filter_iter_t<hb_zip_iter_t<hb_iota_iter_t<unsigned int, unsigned int>, hb_array_t<const OT::OffsetTo<OT::RuleSet, OT::IntType<unsigned short, 2>, true>>>, hb_map_t &, const (anonymous struct at ./hb-algs.hh:331:1) &>') [-Werror,-Wrange-loop-bind-reference]
    for (const hb_pair_t<unsigned, const OffsetTo<RuleSet>&>& _ : + hb_enumerate (ruleSet)
                                                              ^
./hb-ot-layout-gsubgpos.hh:1878:10: note: use non-reference type 'hb_pair_t<unsigned int, const OffsetTo<OT::RuleSet> &>'
    for (const hb_pair_t<unsigned, const OffsetTo<RuleSet>&>& _ : + hb_enumerate (ruleSet)
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2020-05-21 07:32:58 +04:30
Ebrahim Byagowi
8667df552c [meson] Unbreak the build, oops 2020-05-21 07:19:37 +04:30
Ebrahim Byagowi
37f9cccc21
[meson] Don't run subset tests in parallel
Hopefully resolves https://github.com/harfbuzz/harfbuzz/runs/695051808#step:6:700 for now
2020-05-21 07:17:18 +04:30
Ebrahim Byagowi
791debdc4a
[meson][ci] Don't run subset fuzzer test in parallel
resolves https://github.com/harfbuzz/harfbuzz/runs/695051808#step:6:595 failure
2020-05-21 07:15:09 +04:30
Ebrahim Byagowi
8a5368e2d6 [tests] Enable more gid misc calls on draw fuzzer 2020-05-21 07:00:40 +04:30
Ebrahim Byagowi
c68ab4b52b Fix _get_ligature_caret's oob read issue
AAT::Lookup has no other way to detect whether it is returned from
a real and sanitized font data or from a null pool, this checks if
the table has been recognized valid by sanitizer by checking
table's major version which is zero if returned from a null pool and
non-zero if is from a sanitized font data, it is expected the other
calls of the table (unlikely to have more calls however) also do a
similar version check before calling the lookups used on the table.
2020-05-21 06:56:09 +04:30
Ebrahim Byagowi
57886e2162 [test] Enable tests fixed by 461cd5a which was regressed by b986fea 2020-05-21 06:29:56 +04:30
Qunxin Liu
8b5d3ebd96 [subset] GSUB5/GPOS7 Contextual Subst/Pos Subtbale Subsetting support 2020-05-20 15:12:54 -07:00
Ebrahim Byagowi
00aba82a6d
Merge pull request #2415 from pipcet/fix-ligature-carets
minor: fix hb_ot_layout_get_ligature_carets
2020-05-21 00:10:33 +04:30
Ebrahim Byagowi
ca2705f1fb [tests] Add more tests for _get_ligature_carets 2020-05-21 00:05:54 +04:30
Pip Cet
461cd5a158 minor: fix hb_ot_layout_get_ligature_carets 2020-05-20 10:01:24 +00:00
Tim-Philipp Müller
3dd7b2105b meson: build documentation with gtk-doc
Fixes https://github.com/harfbuzz/harfbuzz/issues/2409
2020-05-18 13:56:46 +04:30
Ebrahim Byagowi
4fc6189a32 [meson] Generate harfbuzz.cc, hb-version.h and ragel artifacts 2020-05-18 13:54:42 +04:30
Christoph Reiter
b19f927f96 meson: error out if introspection is enabled but gobject isn't
In case a user passed -Dintrospection=enabled the build would just ignore
it by default because gobject defaults to disabled and the introspection build
gets skipped.

Instead, if introspection is explicitly enabled but gobject is for some reason
missing error out.

Fixes #2404
2020-05-17 11:10:08 +04:30
David Corbett
b207eab842 Round-trip OpenType tags through BCP 47 2020-05-15 15:00:15 -07:00
Qunxin Liu
10d6605bbe [subset] don't use << operator in collect_mapping 2020-05-15 11:04:59 -07:00
Ebrahim Byagowi
ba3c77ef23
[docs] minor update on releasing 2020-05-15 12:14:23 +04:30
Ebrahim Byagowi
0722889a6e
[meson] increase subset tests timeout
https://github.com/harfbuzz/harfbuzz/runs/676665822#step:6:570

fails because meson runs the tests in parallel, correct fix will be making the tests smaller
2020-05-15 10:10:27 +04:30
Behdad Esfahbod
c15146448b
Merge pull request #2264 from harfbuzz/unicode-13
Update to Unicode 13.0.0
2020-05-14 19:12:41 -07:00
Behdad Esfahbod
069c5de9f8 [util/hb-view] Add --font-extents
Fixes https://github.com/harfbuzz/harfbuzz/issues/2402
2020-05-14 19:00:37 -07:00
David Corbett
7a961692e9 Update IANA Language Subtag Registry to 2020-05-12 2020-05-14 10:34:42 -04:00
Qunxin Liu
b2a965df5e [subset] Add support for "--gids" option
cmap subsetting now retains entries associated with any glyph ids explicitly requested
2020-05-11 15:28:58 -07:00
Qunxin Liu
44d88cff95 [subset] fix intersects () for Context/ChainContext tables
return true only when all values in array are intersected with input
2020-05-11 15:25:17 -07:00
Ebrahim Byagowi
42025680cb 2.6.6 2020-05-12 00:17:44 +04:30
Ebrahim Byagowi
57d67f1775 [RELEASE] minor update 2020-05-12 00:03:33 +04:30
Khaled Hosny
b169a52c1e [blob] Fix build when HAVE_MMAP is not defined 2020-05-11 17:21:41 +04:30
Ebrahim Byagowi
a2ce96881b [cff] remove the not used member 2020-05-11 17:15:37 +04:30
Ebrahim Byagowi
2cc78a58c3 [number] minor 2020-05-11 15:56:54 +04:30
Ebrahim Byagowi
bb095e1bdd [meson] make -subset target dependent to deps to get libm dependency 2020-05-10 22:00:05 +04:30
Ebrahim Byagowi
dca8ba6b6d [number] Make hb_parse_double simpler now that we don't have to mimic strtod 2020-05-10 21:49:00 +04:30
Ebrahim Byagowi
44fe1c8ff1 Remove xlocale use now that isn't available in most distros
Our CI bots don't detect it in Alpine, ArchLinux, Ubuntu and Fedora
so let's get rid of it use the fallback we are using anyway for a
long time.
2020-05-10 14:51:35 +04:30
Ebrahim Byagowi
eea99d7b72 [meson] Let name_prefix of exported libraries the default
meson complains about this and it is the default per #2256

Fixes #2256
2020-05-10 14:46:19 +04:30
Ebrahim Byagowi
2ac4222022 [meson] specify preferred linker to avoid stdc++ linking 2020-05-10 14:35:20 +04:30
Ebrahim Byagowi
15083c24ee [meson] Reenable make check-symbols compatible with gcov 2020-05-10 14:35:20 +04:30
Khaled Hosny
68855e4a6d [docs] Don’t recommend outdated FDO releases pages 2020-05-08 13:05:32 +04:30
Ebrahim Byagowi
1ec77522d8 [docs] Simplify logo's SVG source, down scale png version
* SVG version is simplified using SVGO and some hand tweak
* PNG result of SVG logo is optimized using pngwolf-zopfli
* Down scaled to fit visually a little better on docs page
2020-05-07 14:10:36 +04:30
Ebrahim Byagowi
0b261c5d0b
[ci] disable clang-{everthing,*san} bots
are flaky, will enable them somewhere else
2020-05-07 10:28:24 +04:30
Ebrahim Byagowi
385d64eef1 Add a not discardable bool type, hb_success_t 2020-05-07 10:26:45 +04:30
jfkthame
1026b3d0b6
[subset] Check vector resize() call for failure (#2389)
Other .resize() calls are checked, presumably this one should be as well.
2020-05-06 13:32:24 -07:00
jfkthame
100d40c827
[aat] Fix implementation of AAT kerning for Geeza Pro. (#2388)
* [aat] Fix implementation of AAT kerning for Geeza Pro.

Despite what the comment in the code used to say, it appears that Geeza Pro
does rely on accumulating kerning values from successive subtables. With
this change, the results now match Core Text rendering (and avoid the clear
visual breakage reported in #2358).

Testcase: U+0644,U+064E,U+0645,U+064E,U+0651,U+0627

Fixes #2358.

* [aat] Update test expectations, add new testcase.
2020-05-05 17:48:24 -07:00
Ebrahim Byagowi
9fc774ab00 minor spacing 2020-04-30 23:14:54 +04:30
Khaled Hosny
09b9d63e56 [blob] Try to support resource fork fonts on macOS
If the size of opened file is zero, try opening resource fork by
appending "/..namedfork/rsrc" to the file name. This is guarded with
__APPLE__ ifdef and uses _PATH_RSRCFORKSPEC macro from sys/paths.h.

Defining HB_NO_RESOURCE_FORK will disable this fallback.

Fixes https://github.com/harfbuzz/harfbuzz/issues/2383
2020-04-30 22:22:10 +04:30
David Corbett
fd748fac41 Update to Unicode 13.0.0 2020-04-29 17:17:03 -04:00
Behdad Esfahbod
28633b1979 [vowel-constraints] Simplify generated code
Fixes https://github.com/harfbuzz/harfbuzz/issues/2385
2020-04-29 17:16:24 -04:00
David Corbett
665483c979 Recognize Elymaic as a right-to-left script 2020-04-29 16:47:44 -04:00
René Meusel
d6ddb232fc FIX: -Wextra-semi-stmt in Clang9 2020-04-29 02:35:05 +04:30
Ebrahim Byagowi
8ba8980222
[ci] enable experimental apis in coverity scan 2020-04-28 20:14:17 +04:30