Commit Graph

11279 Commits

Author SHA1 Message Date
Khaled Hosny ea4476d738 [autotools] Don’t fallback to icu-config
ICU pkg-config support have been available for a long time, and
icu-config often breaks cross-compiling when the one from host system is
found.
2020-12-21 14:46:35 -08:00
Chun-wei Fan 2953a66ab6 CMake: Define HAVE_GOBJECT when harfbuzz-gobject is built
Without this, the built library for harfbuzz-gobject is unuseful.
2020-12-11 14:00:10 +03:30
Behdad Esfahbod 25c0a792e3 Remove unused+wrong UnsizedArrayOf<> operators
Said compiler is wrong to err since they are unused. But yeah, they
didn't make sense and were copy/paste leftover.

Fixes https://github.com/harfbuzz/harfbuzz/issues/2763
2020-12-10 14:29:47 -07:00
Khaled Hosny 07e304b2a4
Merge pull request #2755 from Myaamori/master
meson: use meson.current_source_dir() instead of @CURRENT_SOURCE_DIR@
2020-12-01 22:32:19 +02:00
Behdad Esfahbod 7c241651ac [algs] Don't forward rvalue twice
Part of https://github.com/harfbuzz/harfbuzz/issues/2293
2020-11-30 16:38:53 -07:00
Behdad Esfahbod 53806e5b83 Tiny improvement on previous commit
Functionally the same.
2020-11-25 11:51:37 -07:00
Dominik Röttsches a5f6f869e8 Drop layout table if layout lookup accelerator allocation failed
If the table is kept, when the table is present but only the accelerator
allocation failed, then we run into nullptr dereferences downstream in
hb_ot_map_t::apply when trying to access proxy.accels[i].

To fix this, instead of only setting lookup_count of accelerator_t
itself, drop the whole table to avoid hb-ot-map construction assuming
that the lookups will work correctly despite accelerator allocation
having failed.

Fixes:
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=24490
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=24490
2020-11-25 10:18:04 -08:00
Myaamori 5f32fdff11 meson: use meson.current_source_dir() instead of @CURRENT_SOURCE_DIR@
@CURRENT_SOURCE_DIR@ is not listed as a valid string substitution
for custom targets in the Meson reference, and in practice
it does not get substituted when using the vs2019 backend.
2020-11-24 01:29:24 +00:00
David Corbett b2e7bb2a7c Don’t map BCP 47 to coincidentally similar OT tag 2020-11-22 19:35:47 -08:00
David Corbett e1df2c5277 Map ISO 639 code qul to language system tag 'QUH ' 2020-11-22 11:52:23 -07:00
Khaled Hosny bac8a856f8 Revert "[CI] Don’t install ragel on circleci jobs"
This reverts commit 9a9da110a5.
2020-11-21 08:41:06 -07:00
Khaled Hosny f579c66108 Mark variable unused
Hopefully fixes build with newer ragel.

https://github.com/adrian-thurston/ragel/issues/56

Fixes https://github.com/harfbuzz/harfbuzz/issues/2752
2020-11-21 08:41:06 -07:00
David Corbett f83496a910 [use] Remove workaround for reserved code points
See <https://github.com/microsoft/font-tools/issues/12>.
2020-11-20 15:37:37 -07:00
David Corbett 17da41bd06 Update language system tag registry to OT 1.8.4 2020-11-18 11:13:35 -08:00
Khaled Hosny 385d9c08d8
Merge pull request #2700 from xclaesse/cairo-ft
meson: Fix cairo_ft_dep when fontconfig is a subproject
2020-11-17 19:43:22 +02:00
Xavier Claessens 9722b4b269 Meson: Update all wrap files to latest version 2020-11-17 11:56:52 -05:00
Xavier Claessens a082fe400d ci: Install meson 0.56.0 in crossbuild-win32
It is required for using cairo as subproject.
2020-11-17 11:52:35 -05:00
Xavier Claessens e2ba0e009e meson: Fix check for cairo and cairo-ft dependencies
When cairo comes from a subproject fallback it should still take
cairo-ft dependency, otherwise it miss freetype2 cflags.

Also update wrap file to use upstream repository now that meson support
has been merged.

This requires Meson >= 0.54.0 because cairo itself requires that version
and we use the new `fallback: 'cairo'` syntax without specifying a
variable name because cairo does not provide a variable name for
cairo-ft.
2020-11-17 11:52:35 -05:00
Khaled Hosny c4ade4fdd6
Merge pull request #2686 from simoncozens/more-tracing
More tracing
2020-11-17 14:32:04 +02:00
Simon Cozens fd8f4ffcc6 Trace reorder, not normalize 2020-11-17 09:05:40 +00:00
Simon Cozens 2e0193d741 Add more cast spaces 2020-11-17 09:05:40 +00:00
Simon Cozens 4bb6d54e3b Missing cast 2020-11-17 09:05:40 +00:00
Simon Cozens 8e1bedc50b Keep phase names 2020-11-17 09:05:40 +00:00
Simon Cozens 428c111f13 Fix spacing around casts 2020-11-17 09:05:40 +00:00
Simon Cozens f19018da41 Smaller issues from review 2020-11-17 09:05:40 +00:00
Simon Cozens 8b3b835a0a Trace normalization and preprocessing stages 2020-11-17 09:05:40 +00:00
Simon Cozens b50099bff2 Trace reordering in pause functions 2020-11-17 09:05:40 +00:00
Khaled Hosny e6c21d7b58
Merge pull request #2692 from ffontaine/master
src/meson.build: allow introspection when cross-compiling
2020-11-17 08:53:32 +02:00
Fabrice Fontaine 0c3dcfae19 Merge remote-tracking branch 'upstream/master' 2020-11-17 07:31:07 +01:00
David Corbett 3bd43bd023 Map more ISO 15924 variants to `hb_script_t`s 2020-11-16 22:18:15 -08:00
David Corbett 27170e058d Fix names for language tag in gen-tag-table.py
A BCP 47 language tag with both a script subtag and a region subtag
would be printed as a human-readable name in hb-ot-tag-table.hh as if it
only had its language subtag.
2020-11-16 10:59:07 -08:00
Khaled Hosny 5091ea7e24
Merge pull request #2733 from astiob/buffer-context-doc
[docs] Describe buffer context applicability more explicitly
2020-10-24 22:37:52 +02:00
Oleg Oshmyan 07961daed0 [docs] Describe buffer context applicability more explicitly
Make it abundantly clear that the context's script etc. don't matter.

Fixes https://github.com/harfbuzz/harfbuzz/issues/2730
2020-10-24 21:58:02 +03:00
Khaled Hosny 69cc214c9a
Merge pull request #2729 from khaledhosny/autotools-pkg-config
[autotools] Require pkg-config 0.28
2020-10-24 10:41:33 +02:00
Khaled Hosny 5adc1344a4 [ci] Upload meason logs on some CircleCI jobs 2020-10-23 19:02:54 +02:00
Khaled Hosny 71376f88ef [ci] CircleCI removed xcode:9.0.1 image
The replacement run newer versions of macOS (10.13.3), making this job
obsolete as it tests nothing the other jobs don’t test.
2020-10-23 19:02:41 +02:00
Khaled Hosny 05403a07b5 [autotools] Require pkg-config 0.28
Follow up 0615c7b64b, which fixes #1565.
This seems to be the version that fixed the circular dependency, based
on the ChangeLog:
https://cgit.freedesktop.org/pkg-config/commit/?h=pkg-config-0.28&id=74ceac54ef6f9247c00f08eecd8cca811a3c5934
2020-10-23 17:29:43 +02:00
David Corbett 49ebb9ebdd [use] Remove redundant O entries from the table 2020-10-17 22:07:34 +02:00
David Corbett 79fd5ce22e [use] Merge IND and Rsv classes into O 2020-10-17 22:07:34 +02:00
Khaled Hosny c2cdcd4901 [tests] warning: unused variable 'num_glyphs' 2020-10-17 21:57:27 +02:00
David Corbett e25aa49a1b Fix a dead link in CMakeLists.txt 2020-10-17 12:32:41 -04:00
Khaled Hosny 9a9da110a5 [CI] Don’t install ragel on circleci jobs
Latest ragel version is broken (https://github.com/adrian-thurston/ragel/issues/56), but we also don’t need to regenerate state machine on CI jobs.
2020-10-17 09:24:54 -07:00
Behdad Esfahbod cde2cf84c0 [use] Minor clean-up of unused categories 2020-10-17 11:22:19 -04:00
David Corbett 0792690b73 [use] Skip WJ and ZWJ when clustering 2020-10-16 22:39:46 -07:00
Laurenz 3fcf466b7b [hb-shape-fallback] Use signed int for correction 2020-10-16 17:57:38 -07:00
Behdad Esfahbod 77e704d1db [buffer] Add assert_unicode()/assert_glyphs() and use internally 2020-10-15 02:02:04 -06:00
Behdad Esfahbod 5ef0613909 [buffer] Add ensure_glyphs()/ensure_unicode()
Use in deserialize. To be used more.
2020-10-15 01:54:28 -06:00
Khaled Hosny 84dd65a874 [test] Remove timeout from test runners
See https://github.com/harfbuzz/harfbuzz/issues/2707#issuecomment-707744079

This wasn’t inconsistent as well, HB_TEST_SUBSET_FUZZER_TIMEOUT defaulted
to 12 in the test runner, but it was overridden to 50 in meson.build,
and then meson has its own test timeout.
2020-10-15 00:49:02 -07:00
Behdad Esfahbod 3232e6f2a9 [buffer] Add hb_buffer_has_positions()
Fixes https://github.com/harfbuzz/harfbuzz/issues/2716
2020-10-15 00:20:17 -06:00
Khaled Hosny 97a093c52f [hb-subset] Improve error handling a bit
* Check that output-file option is actually set before trying to open
  it.
* Print file name and errno when opening the output file fails.
* Be more resilient when writing output file and use ferror() to check
  for errors.

Fixes https://github.com/harfbuzz/harfbuzz/issues/2711
2020-10-13 11:18:59 -07:00