platform/upstream/libHarfBuzzSharp.git
7 years ago[indic] Add support for Grantha marks that may be used in Tamil to th… (#401)
jfkthame [Thu, 16 Feb 2017 17:40:21 +0000 (17:40 +0000)]
[indic] Add support for Grantha marks that may be used in Tamil to th… (#401)

* [indic] Add support for Grantha marks that may be used in Tamil to the Indic table.

See https://bugzilla.mozilla.org/show_bug.cgi?id=1331339.

Testcase: U+0BA4,U+0BC6,U+1133c,U+0BAA,U+1133c,U+0BC6,U+1133c

* [indic] Add test for Grantha nukta that is allowed in Tamil by ScriptExtensions.txt

7 years agoUnbreak hb-coretext build
Behdad Esfahbod [Thu, 9 Feb 2017 22:13:25 +0000 (14:13 -0800)]
Unbreak hb-coretext build

7 years agoMerge pull request #357 from khaledhosny/graphite-scale
Behdad Esfahbod [Wed, 8 Feb 2017 22:36:18 +0000 (14:36 -0800)]
Merge pull request #357 from khaledhosny/graphite-scale

[graphite] Fix shaping with varying font sizes

7 years agoSet LC_ALL instead of LANG when creating harfbuzz.def
Behdad Esfahbod [Wed, 8 Feb 2017 22:33:28 +0000 (14:33 -0800)]
Set LC_ALL instead of LANG when creating harfbuzz.def

Hopefully fixes Travis faliure?
https://github.com/behdad/harfbuzz/pull/413#issuecomment-278481882
https://travis-ci.org/khaledhosny/harfbuzz/jobs/199785332#L1065

7 years agohb-font: Fix a potentially undefined use of memcmp() (#413)
Philip Withnall [Wed, 8 Feb 2017 21:56:57 +0000 (21:56 +0000)]
hb-font: Fix a potentially undefined use of memcmp() (#413)

While it’s fine to call memcmp(x, 0, 0) in practice, the C99 standard
explicitly says that this is not allowed: even if the length is zero,
the pointer arguments must be valid.

http://stackoverflow.com/a/16363034

Coverity ID: 141178

Signed-off-by: Philip Withnall <withnall@endlessm.com>
7 years agoUpdate ax_pthread.m4 to latest upstream version
Behdad Esfahbod [Wed, 8 Feb 2017 02:25:12 +0000 (18:25 -0800)]
Update ax_pthread.m4 to latest upstream version

Might help with https://github.com/behdad/harfbuzz/issues/399

7 years agotest: Fix some memory leaks in test-font.c (#409)
Philip Withnall [Wed, 8 Feb 2017 02:18:33 +0000 (02:18 +0000)]
test: Fix some memory leaks in test-font.c (#409)

Coverity IDs: 141039, 141040, 141041

7 years agoutil: Add missing field initialisers in constructor (#410)
Philip Withnall [Wed, 8 Feb 2017 02:17:48 +0000 (02:17 +0000)]
util: Add missing field initialisers in constructor (#410)

Coverity ID: 141042

7 years agoSilence Coverity warning
Behdad Esfahbod [Wed, 8 Feb 2017 00:53:21 +0000 (16:53 -0800)]
Silence Coverity warning

Fixes https://github.com/behdad/harfbuzz/issues/408

7 years agoShuffle things around a bit
Behdad Esfahbod [Sat, 4 Feb 2017 00:43:25 +0000 (16:43 -0800)]
Shuffle things around a bit

7 years agoMinor
Behdad Esfahbod [Sat, 4 Feb 2017 00:17:08 +0000 (16:17 -0800)]
Minor

7 years agoAdd dirty-state tracking to hb_face_t
Behdad Esfahbod [Fri, 3 Feb 2017 23:42:03 +0000 (15:42 -0800)]
Add dirty-state tracking to hb_face_t

7 years agoAdd dirty-state tracking to hb_font_t
Behdad Esfahbod [Fri, 3 Feb 2017 18:58:09 +0000 (10:58 -0800)]
Add dirty-state tracking to hb_font_t

7 years agoAdd new API hb_font_set_face()
Behdad Esfahbod [Fri, 3 Feb 2017 18:39:40 +0000 (10:39 -0800)]
Add new API hb_font_set_face()

For completeness.

7 years agoAdd Win10 Anniversary Update version of Tahoma to GDEF blacklist. (#412)
jfkthame [Thu, 2 Feb 2017 18:48:23 +0000 (18:48 +0000)]
Add Win10 Anniversary Update version of Tahoma to GDEF blacklist. (#412)

7 years agoMinor
Behdad Esfahbod [Wed, 1 Feb 2017 19:57:21 +0000 (11:57 -0800)]
Minor

Fixes https://github.com/behdad/harfbuzz/issues/411

7 years agoRoute Adlam through Arabic shaper
Behdad Esfahbod [Thu, 26 Jan 2017 22:50:14 +0000 (14:50 -0800)]
Route Adlam through Arabic shaper

Fixes joined Adlam rendering.

Fixes https://github.com/googlei18n/noto-fonts/issues/828

7 years agoAdd Win7 version of himalaya.ttf to the GDEF table blacklist. (#407)
jfkthame [Thu, 26 Jan 2017 22:35:41 +0000 (22:35 +0000)]
Add Win7 version of himalaya.ttf to the GDEF table blacklist. (#407)

7 years ago[var] Implement MVAR table
Behdad Esfahbod [Tue, 24 Jan 2017 07:42:53 +0000 (23:42 -0800)]
[var] Implement MVAR table

Unhooked. Untested.

7 years ago[var] Whitespace
Behdad Esfahbod [Tue, 24 Jan 2017 07:21:30 +0000 (23:21 -0800)]
[var] Whitespace

7 years ago1.4.2
Behdad Esfahbod [Tue, 24 Jan 2017 02:35:00 +0000 (18:35 -0800)]
1.4.2

7 years ago[var] Hook up advance variations to hb-ot-font
Behdad Esfahbod [Tue, 24 Jan 2017 01:55:31 +0000 (17:55 -0800)]
[var] Hook up advance variations to hb-ot-font

Yay, works!

7 years ago[var] Fix bug in HVAR/VVAR impl
Behdad Esfahbod [Tue, 24 Jan 2017 01:55:16 +0000 (17:55 -0800)]
[var] Fix bug in HVAR/VVAR impl

7 years ago[var] Prepare for hooking up advance variations to hb-ot-font
Behdad Esfahbod [Tue, 24 Jan 2017 01:34:44 +0000 (17:34 -0800)]
[var] Prepare for hooking up advance variations to hb-ot-font

7 years ago[var] Implement DeltaSetIndexMap and advance delta fetching
Behdad Esfahbod [Mon, 23 Jan 2017 19:56:08 +0000 (11:56 -0800)]
[var] Implement DeltaSetIndexMap and advance delta fetching

Not hooked up to hb-ot-font yet.

7 years ago[var] Start adding HVAR/VVAR
Behdad Esfahbod [Mon, 23 Jan 2017 19:41:43 +0000 (11:41 -0800)]
[var] Start adding HVAR/VVAR

7 years agoAdd LArrayOf<>
Behdad Esfahbod [Mon, 23 Jan 2017 04:31:53 +0000 (20:31 -0800)]
Add LArrayOf<>

7 years agoAdd LOffsetTo<>
Behdad Esfahbod [Mon, 23 Jan 2017 04:28:56 +0000 (20:28 -0800)]
Add LOffsetTo<>

7 years ago[var] Remove HB_OT_TAG_fvar/avar
Behdad Esfahbod [Mon, 23 Jan 2017 04:16:51 +0000 (20:16 -0800)]
[var] Remove HB_OT_TAG_fvar/avar

We're not going to define public macros for tags for tables.
There's little use to those and they are implementation detail.

7 years agoMinor
Behdad Esfahbod [Mon, 23 Jan 2017 04:09:47 +0000 (20:09 -0800)]
Minor

7 years ago[var] Add macros for standard axes
Behdad Esfahbod [Mon, 23 Jan 2017 03:52:09 +0000 (19:52 -0800)]
[var] Add macros for standard axes

7 years ago[var] Implement 'avar' table mapping
Behdad Esfahbod [Mon, 23 Jan 2017 03:41:33 +0000 (19:41 -0800)]
[var] Implement 'avar' table mapping

Untested!

7 years ago[var] Flesh out --variations documentation
Behdad Esfahbod [Mon, 23 Jan 2017 03:01:07 +0000 (19:01 -0800)]
[var] Flesh out --variations documentation

7 years ago[var] Adjust API in prep for 'avar' implementation
Behdad Esfahbod [Mon, 23 Jan 2017 02:52:00 +0000 (18:52 -0800)]
[var] Adjust API in prep for 'avar' implementation

The 'avar' table does not allow random access to axis maps,
so change API to avoid quadratic-time implementation.

Removed -hb_ot_var_normalize_axis_value(), added
+hb_ot_var_normalize_variations() and
+hb_ot_var_normalize_coords() instead.

7 years ago[var] Stub implementation of avar table
Behdad Esfahbod [Mon, 23 Jan 2017 02:22:40 +0000 (18:22 -0800)]
[var] Stub implementation of avar table

7 years agoMinor
Behdad Esfahbod [Mon, 23 Jan 2017 01:47:49 +0000 (17:47 -0800)]
Minor

7 years agoStub out doc comments for new symbols
Behdad Esfahbod [Mon, 23 Jan 2017 01:42:33 +0000 (17:42 -0800)]
Stub out doc comments for new symbols

7 years agoMinor
Behdad Esfahbod [Mon, 23 Jan 2017 00:55:40 +0000 (16:55 -0800)]
Minor

7 years ago[hb-ft] Remove use of variable-length array
Behdad Esfahbod [Mon, 23 Jan 2017 00:41:45 +0000 (16:41 -0800)]
[hb-ft] Remove use of variable-length array

Hopefully also fixes build failure on msvc.

7 years ago[var] Hook up variations to FreeType face
Behdad Esfahbod [Sun, 22 Jan 2017 02:10:08 +0000 (18:10 -0800)]
[var] Hook up variations to FreeType face

hb-view correctly renders variations with ft font-funcs now.
hb-ot-font needs HVAR implementation.

7 years ago[util] Add --variations
Behdad Esfahbod [Sun, 22 Jan 2017 01:51:41 +0000 (17:51 -0800)]
[util] Add --variations

Is hooked up to the font, but not to FreeType, so raster doesn't show yet.

Documentation needs to be done.

7 years ago[var] Rename var_coord to variation
Behdad Esfahbod [Sun, 22 Jan 2017 01:41:37 +0000 (17:41 -0800)]
[var] Rename var_coord to variation

Looks much better.

7 years ago[var] Remove use of variable-length arrays
Behdad Esfahbod [Sat, 21 Jan 2017 23:36:35 +0000 (15:36 -0800)]
[var] Remove use of variable-length arrays

7 years ago[var] Add hb_font_set_var_coords()
Behdad Esfahbod [Sat, 21 Jan 2017 23:21:50 +0000 (15:21 -0800)]
[var] Add hb_font_set_var_coords()

7 years agoRemove a few unused includes
Behdad Esfahbod [Sat, 21 Jan 2017 23:12:03 +0000 (15:12 -0800)]
Remove a few unused includes

7 years agoMinor
Behdad Esfahbod [Sat, 21 Jan 2017 23:06:15 +0000 (15:06 -0800)]
Minor

7 years ago[var] Add hb_font_set_var_coords_design()
Behdad Esfahbod [Sat, 21 Jan 2017 23:05:00 +0000 (15:05 -0800)]
[var] Add hb_font_set_var_coords_design()

7 years ago[var] Minor lifecycle adjustment
Behdad Esfahbod [Sat, 21 Jan 2017 22:50:22 +0000 (14:50 -0800)]
[var] Minor lifecycle adjustment

7 years ago[var] Add hb_font_get_var_coords_normalized()
Behdad Esfahbod [Sat, 21 Jan 2017 22:48:46 +0000 (14:48 -0800)]
[var] Add hb_font_get_var_coords_normalized()

7 years ago[var] Add hb_var_coord_t and parsing routines
Behdad Esfahbod [Sat, 21 Jan 2017 04:30:03 +0000 (20:30 -0800)]
[var] Add hb_var_coord_t and parsing routines

7 years agoMove code around
Behdad Esfahbod [Sat, 21 Jan 2017 04:16:53 +0000 (20:16 -0800)]
Move code around

7 years ago[var] Flesh out some more
Behdad Esfahbod [Sat, 21 Jan 2017 03:57:27 +0000 (19:57 -0800)]
[var] Flesh out some more

7 years ago[var] Flesh out a bit
Behdad Esfahbod [Sat, 21 Jan 2017 03:14:54 +0000 (19:14 -0800)]
[var] Flesh out a bit

7 years agoMinor
Behdad Esfahbod [Sat, 21 Jan 2017 02:19:28 +0000 (18:19 -0800)]
Minor

7 years ago[var] Remove over-optimization
Behdad Esfahbod [Sat, 21 Jan 2017 01:42:18 +0000 (17:42 -0800)]
[var] Remove over-optimization

7 years ago[var] Change double to float in API
Behdad Esfahbod [Sat, 21 Jan 2017 01:40:46 +0000 (17:40 -0800)]
[var] Change double to float in API

7 years agoStart adding hb-ot-var.h and implementation
Behdad Esfahbod [Fri, 20 Jan 2017 03:35:48 +0000 (19:35 -0800)]
Start adding hb-ot-var.h and implementation

Supports enumerating variation axes, normalizing values, etc.

7 years agoMinor
Behdad Esfahbod [Fri, 20 Jan 2017 03:33:07 +0000 (19:33 -0800)]
Minor

7 years ago[test-ot-math] Add test with nil face/font
Behdad Esfahbod [Fri, 20 Jan 2017 00:55:04 +0000 (16:55 -0800)]
[test-ot-math] Add test with nil face/font

7 years agoMinor
Behdad Esfahbod [Fri, 20 Jan 2017 00:51:36 +0000 (16:51 -0800)]
Minor

7 years agoFix warnings
Behdad Esfahbod [Fri, 20 Jan 2017 00:50:29 +0000 (16:50 -0800)]
Fix warnings

7 years agoMinor
Behdad Esfahbod [Fri, 20 Jan 2017 00:48:01 +0000 (16:48 -0800)]
Minor

7 years ago[ot] Fix automatic fraction for RTL scripts (#405)
Khaled Hosny [Wed, 18 Jan 2017 20:48:13 +0000 (22:48 +0200)]
[ot] Fix automatic fraction for RTL scripts (#405)

The numbers for right-to-left scripts are processed also from right to
left, so the order of applying “numr” and “dnom” features should be
reversed in such case.

Fixes https://github.com/behdad/harfbuzz/issues/395

7 years agoUpdate language tags to OpenType 1.8.1 (#403)
Sascha Brawer [Wed, 18 Jan 2017 12:51:02 +0000 (13:51 +0100)]
Update language tags to OpenType 1.8.1 (#403)

Resolves https://github.com/behdad/harfbuzz/issues/324

7 years agoFix build with clang
Behdad Esfahbod [Wed, 11 Jan 2017 19:58:13 +0000 (11:58 -0800)]
Fix build with clang

7 years agoPort math table to hb_lazy_table_loader_t
Behdad Esfahbod [Tue, 10 Jan 2017 07:50:56 +0000 (23:50 -0800)]
Port math table to hb_lazy_table_loader_t

7 years agoAdd hb_lazy_table_loader_t
Behdad Esfahbod [Tue, 10 Jan 2017 06:45:25 +0000 (22:45 -0800)]
Add hb_lazy_table_loader_t

7 years agoMove lazy-loader to more generic place
Behdad Esfahbod [Tue, 10 Jan 2017 06:22:37 +0000 (22:22 -0800)]
Move lazy-loader to more generic place

7 years agoIn lazy-loading, remember allocation failure
Behdad Esfahbod [Tue, 10 Jan 2017 06:20:38 +0000 (22:20 -0800)]
In lazy-loading, remember allocation failure

7 years agoMinor
Behdad Esfahbod [Tue, 10 Jan 2017 05:18:55 +0000 (21:18 -0800)]
Minor

7 years agoRename hb-ot-layout-math-table.hh to hb-ot-math-table.hh
Behdad Esfahbod [Tue, 10 Jan 2017 05:11:00 +0000 (21:11 -0800)]
Rename hb-ot-layout-math-table.hh to hb-ot-math-table.hh

7 years agoTypo
Behdad Esfahbod [Mon, 9 Jan 2017 23:49:08 +0000 (15:49 -0800)]
Typo

7 years agoMake UCDN default enabled (fixes #389) (#391)
ebraminio [Mon, 9 Jan 2017 09:42:09 +0000 (13:12 +0330)]
Make UCDN default enabled (fixes #389) (#391)

7 years agoMinor
Behdad Esfahbod [Mon, 9 Jan 2017 08:00:49 +0000 (00:00 -0800)]
Minor

Should be enough to get -hangul.cc out of SOURCES in Firefox build:
https://dxr.mozilla.org/mozilla-central/source/gfx/harfbuzz/src/moz.build

No one else should care!

7 years ago[USE] Remove non-canonical decompositions
Behdad Esfahbod [Mon, 9 Jan 2017 07:55:54 +0000 (23:55 -0800)]
[USE] Remove non-canonical decompositions

We have had added this in Indic shaper to assist shaping these scripts.
In Universal Shaping Engine however, it is up to font designer to
decompose them.  Hence moving them from Indic shaper to USE was
wrong.

Fixup for f6ba63b2e8eb577385f70758efdd3b8408c8a9cb

Part of fixing https://github.com/behdad/harfbuzz/issues/387

7 years ago[graphite] Stop creating unused gr_face
Khaled Hosny [Fri, 11 Nov 2016 00:16:39 +0000 (02:16 +0200)]
[graphite] Stop creating unused gr_face

It is unused after previous commit, hb_graphite2_font_get_gr_font()
makes no sense now so deprecating it.

7 years ago[graphite] Fix shaping with varying font sizes
Khaled Hosny [Sun, 30 Oct 2016 18:16:41 +0000 (20:16 +0200)]
[graphite] Fix shaping with varying font sizes

Shape using design units and scale the output.

See https://bugs.documentfoundation.org/show_bug.cgi?id=103403#c7

7 years ago1.4.1
Behdad Esfahbod [Fri, 6 Jan 2017 04:24:41 +0000 (20:24 -0800)]
1.4.1

7 years agoAdd tests for USE using Marchen font and text
Behdad Esfahbod [Fri, 6 Jan 2017 04:20:06 +0000 (20:20 -0800)]
Add tests for USE using Marchen font and text

From http://www.babelstone.co.uk/Fonts/Marchen.html

7 years agoShip UCDN and use it by default
Behdad Esfahbod [Fri, 6 Jan 2017 04:12:32 +0000 (20:12 -0800)]
Ship UCDN and use it by default

So we are not relying on version of Unicode data in glib...

Fixes https://github.com/behdad/harfbuzz/issues/386
Fixes https://github.com/behdad/harfbuzz/issues/388

7 years ago1.4.0
Behdad Esfahbod [Thu, 5 Jan 2017 09:27:49 +0000 (01:27 -0800)]
1.4.0

7 years agoMove math-specific code from hb-ot-layout to hb-ot-math #235 (#384)
Frédéric Wang [Tue, 3 Jan 2017 04:55:09 +0000 (05:55 +0100)]
Move math-specific code from hb-ot-layout to hb-ot-math #235 (#384)

7 years agoRemove Android.mk
Behdad Esfahbod [Wed, 28 Dec 2016 20:51:57 +0000 (15:51 -0500)]
Remove Android.mk

Android uses its own file these days and third-party developers should
be using the autotools-based system against Android NDK.

7 years agoRemove Tibetan decomposition rules from Indic shaper
Behdad Esfahbod [Wed, 28 Dec 2016 18:46:21 +0000 (13:46 -0500)]
Remove Tibetan decomposition rules from Indic shaper

The decomposition is very obscure and unlikely to help
any fonts.  Just remove it since Uniscribe probably doesn't
do this either.

Fixes https://github.com/behdad/harfbuzz/issues/382

7 years agoPort decompositions from Indic to USE shaper
Behdad Esfahbod [Wed, 28 Dec 2016 18:45:32 +0000 (13:45 -0500)]
Port decompositions from Indic to USE shaper

Part of https://github.com/behdad/harfbuzz/issues/382

7 years ago[indic] Remove Chakma decomposition rule from Indic shaper
Behdad Esfahbod [Mon, 26 Dec 2016 19:11:59 +0000 (14:11 -0500)]
[indic] Remove Chakma decomposition rule from Indic shaper

This is now added to USE:
https://github.com/behdad/harfbuzz/pull/383

See:
https://github.com/behdad/harfbuzz/issues/381
https://github.com/behdad/harfbuzz/issues/382

7 years ago[use] Special-case Chakma split-vowel decomp in the USE shaper. (#383)
jfkthame [Wed, 28 Dec 2016 18:00:51 +0000 (18:00 +0000)]
[use] Special-case Chakma split-vowel decomp in the USE shaper. (#383)

7 years agoRevert "[indic] Remove redundant Chakma decomposition rule"
Behdad Esfahbod [Mon, 26 Dec 2016 19:52:08 +0000 (14:52 -0500)]
Revert "[indic] Remove redundant Chakma decomposition rule"

This reverts commit 805f76fc002d703acfcc4c5727f0b4d1baecefaa.

Need to investigate why having this rule (with the reversed order)
fixes decomposition as reported by punchcutter:
https://github.com/behdad/harfbuzz/issues/381#issuecomment-269237796

7 years ago[indic] Remove redundant Chakma decomposition rule
Behdad Esfahbod [Mon, 26 Dec 2016 19:11:59 +0000 (14:11 -0500)]
[indic] Remove redundant Chakma decomposition rule

This was not used BTW since Chakma doesn't go through Indic shaper
anymore.

See:
https://github.com/behdad/harfbuzz/issues/381
https://github.com/behdad/harfbuzz/issues/382

7 years ago[indix] Comment
Behdad Esfahbod [Mon, 26 Dec 2016 18:10:31 +0000 (13:10 -0500)]
[indix] Comment

7 years agoCompilation Error for ASSERT_STATIC on Some Compilers (#380)
nvelinov [Sat, 24 Dec 2016 01:46:37 +0000 (02:46 +0100)]
Compilation Error for ASSERT_STATIC on Some Compilers (#380)

* this pointer in type definitions is not interpreted as a constant.
This rule is not enforced strictly by all compilers, but the Green Hills Software compiler will regard this as an error.

* Merging branches for the DEFINE_SIZE_UNION macro
Adding check for the existence of static_size field in the tested member.

7 years agoDisable OTL processing for Hebrew if GPOS doesn't have Hebrew subtable
Behdad Esfahbod [Thu, 22 Dec 2016 20:40:19 +0000 (14:40 -0600)]
Disable OTL processing for Hebrew if GPOS doesn't have Hebrew subtable

New approach to fix this:
https://github.com/behdad/harfbuzz/commit/69f9fbc4200442a35484d3c790ae8f4979be5d60

Previous approach was reverted as it was too broad.  See context:
https://github.com/behdad/harfbuzz/issues/347#issuecomment-267838368

With U+05E9,U+05B8,U+05C1,U+05DC and Arial Unicode, we now (correctly) disable
GDEF and GPOS, so we get results very close to Uniscribe, but slightly different
since our fallback position logic is not exactly the same:

Before: [gid1166=3+991|gid1142=0+737|gid5798=0+1434]
After: [gid1166=3+991|gid1142=0@402,-26+0|gid5798=0+1434]
Uniscribe: [gid1166=3+991|gid1142=0@348,0+0|gid5798=0+1434]

7 years agoRevert "Synthesize GDEF glyph class for any glyph that does not have one in GDEF"
Behdad Esfahbod [Thu, 22 Dec 2016 19:33:54 +0000 (13:33 -0600)]
Revert "Synthesize GDEF glyph class for any glyph that does not have one in GDEF"

This reverts commit 69f9fbc4200442a35484d3c790ae8f4979be5d60.

See https://github.com/behdad/harfbuzz/issues/347#issuecomment-268873401
Fixes https://github.com/behdad/harfbuzz/issues/347

7 years agoFix assert fail with contextual matching
Behdad Esfahbod [Thu, 22 Dec 2016 05:10:43 +0000 (23:10 -0600)]
Fix assert fail with contextual matching

As discovered by libFuzzer / Chromium fuzzing.

Fixes https://bugs.chromium.org/p/chromium/issues/detail?id=659496
CC https://github.com/behdad/harfbuzz/issues/139

7 years agoImprove debug output with really deep nesting
Behdad Esfahbod [Thu, 22 Dec 2016 01:27:30 +0000 (19:27 -0600)]
Improve debug output with really deep nesting

7 years agoAvoid infinite loop in CoverageFormat2 iteration with bad fonts
Behdad Esfahbod [Wed, 21 Dec 2016 21:51:28 +0000 (15:51 -0600)]
Avoid infinite loop in CoverageFormat2 iteration with bad fonts

Fixes https://github.com/behdad/harfbuzz/issues/363

7 years agoOuch, finish previous change
Behdad Esfahbod [Wed, 21 Dec 2016 02:52:50 +0000 (20:52 -0600)]
Ouch, finish previous change

7 years ago[fuzzer] Separate main() into a new file
Behdad Esfahbod [Wed, 21 Dec 2016 02:50:38 +0000 (20:50 -0600)]
[fuzzer] Separate main() into a new file

7 years agoProtect collect_glyphs() and closure() against malicious DDOS fonts
Behdad Esfahbod [Tue, 20 Dec 2016 21:01:16 +0000 (15:01 -0600)]
Protect collect_glyphs() and closure() against malicious DDOS fonts

Fixes https://github.com/behdad/harfbuzz/issues/363

7 years agoSupport building with older glib versions
Mike Hommey [Fri, 30 Sep 2016 09:15:37 +0000 (18:15 +0900)]
Support building with older glib versions

It is desirable to be able to build against older versions of glib.

fd7a245 changed the configure check to require glib > 2.38 for
G_TEST_DIST. Before that, version 2.16 was required, but in fact,
since aafe395, G_PASTE is being used, which was introduced in 2.19.1.
And since 0ef179e2, hb-glib uses GBytes, which were introduced in
2.31.10.

2.19.1 is rather old, but 2.38 is rather new. For Firefox, building
against 2.22 is still supported, although we could probably get away
with bumping that to 2.28. Either way, GBytes is not available.

Arguably, if you build against a glib that doesn't support GBytes,
you're not going to use the hb_glib_blob_create function, so we hide
the function when building against such a glib.

As for G_TEST_DIST, when building against versions of glib that don't
support it, we can fallback to the previous behavior, which, AIUI, was
just making the test not work when building in a separate directory.