platform/upstream/libHarfBuzzSharp.git
6 years ago[unsafe-to-break] Be careful with flag propagation when merging clusters
Behdad Esfahbod [Fri, 11 Aug 2017 03:10:12 +0000 (20:10 -0700)]
[unsafe-to-break] Be careful with flag propagation when merging clusters

6 years agoSet mask to 0, instead of 1, by default
Behdad Esfahbod [Fri, 11 Aug 2017 02:58:05 +0000 (19:58 -0700)]
Set mask to 0, instead of 1, by default

This shouldn't matter.

6 years ago[unsafe-to-break] Mark Indic-like clusters as unsafe-to-break
Behdad Esfahbod [Fri, 11 Aug 2017 01:45:33 +0000 (18:45 -0700)]
[unsafe-to-break] Mark Indic-like clusters as unsafe-to-break

6 years ago[unsafe-to-break] Allocate public bits from 0
Behdad Esfahbod [Thu, 10 Aug 2017 21:25:53 +0000 (14:25 -0700)]
[unsafe-to-break] Allocate public bits from 0

6 years ago[safe-to-break] Fix logic when there is no out-buffer
Behdad Esfahbod [Thu, 5 May 2016 15:13:03 +0000 (16:13 +0100)]
[safe-to-break] Fix logic when there is no out-buffer

6 years ago[unsafe-to-break] Simplify logic
Behdad Esfahbod [Wed, 4 May 2016 17:51:22 +0000 (19:51 +0200)]
[unsafe-to-break] Simplify logic

Always use the algorithm for non-monotone case.  It's more robust.

6 years ago[unsafe-to-break] Add UNSAFE_TO_BREAK flag
Behdad Esfahbod [Mon, 2 May 2016 12:47:45 +0000 (14:47 +0200)]
[unsafe-to-break] Add UNSAFE_TO_BREAK flag

Not all shapers code is updated to set this properly.
GSUB and Arabic shaper are updated.
GPOS and other shapers are NOT.

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

6 years ago[util] Fix two other Coverity warnings
Behdad Esfahbod [Thu, 10 Aug 2017 05:09:01 +0000 (22:09 -0700)]
[util] Fix two other Coverity warnings

6 years ago[util] Fix warning
Behdad Esfahbod [Thu, 10 Aug 2017 05:06:53 +0000 (22:06 -0700)]
[util] Fix warning

6 years ago[ft] Fix theoretical leak
Behdad Esfahbod [Thu, 10 Aug 2017 05:05:08 +0000 (22:05 -0700)]
[ft] Fix theoretical leak

6 years agoTreat HAMZA ABOVE similar to SHADD for sorting purposes
Behdad Esfahbod [Thu, 10 Aug 2017 00:23:28 +0000 (17:23 -0700)]
Treat HAMZA ABOVE similar to SHADD for sorting purposes

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

6 years agoProtect against div-by-zero in CBDT extent code
Behdad Esfahbod [Thu, 10 Aug 2017 00:09:21 +0000 (17:09 -0700)]
Protect against div-by-zero in CBDT extent code

Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1452#c5

CC https://github.com/behdad/harfbuzz/issues/139

6 years agoAdd tests for 'avar' fix 5dc30451b80f6bb0079424a130875c10486e4d34
Behdad Esfahbod [Wed, 9 Aug 2017 01:37:03 +0000 (18:37 -0700)]
Add tests for 'avar' fix 5dc30451b80f6bb0079424a130875c10486e4d34

6 years ago1.4.8
Behdad Esfahbod [Tue, 8 Aug 2017 20:17:03 +0000 (13:17 -0700)]
1.4.8

6 years agoTwo fixes to avar mapping
Behdad Esfahbod [Tue, 8 Aug 2017 04:37:07 +0000 (21:37 -0700)]
Two fixes to avar mapping

1. Handle segment with two entries correctly,

2. Fix rounding math.  Ouch!

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

6 years ago[check-defs/symbols.sh] Drop empty-symbol lines
Behdad Esfahbod [Thu, 3 Aug 2017 11:34:15 +0000 (12:34 +0100)]
[check-defs/symbols.sh] Drop empty-symbol lines

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

7 years ago[hb-shape] Rename --show-messages to --trace
Behdad Esfahbod [Thu, 20 Jul 2017 00:20:55 +0000 (17:20 -0700)]
[hb-shape] Rename --show-messages to --trace

https://github.com/behdad/harfbuzz/issues/506

7 years ago[hb-shape] Improve shaping-debug output
Behdad Esfahbod [Wed, 19 Jul 2017 02:14:19 +0000 (19:14 -0700)]
[hb-shape] Improve shaping-debug output

Before, that was printed using --debug (and in both hb-shape and hb-view).
Changed it, now hb-shape has a new command-line argument called --show-messages.
When invoked, it also respects other output formatting options.  The messages
are better formatted and printed to te same place that hb-shape output is
directed to.  Previously they were written to stderr.

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

7 years agoUnbreak arm-none-eabi build again (#514)
Ebrahim Byagowi [Tue, 18 Jul 2017 22:12:53 +0000 (02:42 +0430)]
Unbreak arm-none-eabi build again (#514)

7 years ago1.4.7
Behdad Esfahbod [Tue, 18 Jul 2017 18:24:42 +0000 (11:24 -0700)]
1.4.7

7 years ago[arabic] Adjust feature order again
Behdad Esfahbod [Fri, 14 Jul 2017 16:34:47 +0000 (17:34 +0100)]
[arabic] Adjust feature order again

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

7 years ago[coretext] Allow to disable kern (#508)
Cosimo Lupo [Fri, 14 Jul 2017 16:11:46 +0000 (17:11 +0100)]
[coretext] Allow to disable kern (#508)

* Minor

* [coretext] Fix leak

* [coretext] Do not reset num_features

* [coretext] allow to disable kern; re-enabling doesn't seem to be working

7 years ago[use] Allow up to two medial-below letters
Behdad Esfahbod [Fri, 14 Jul 2017 16:01:27 +0000 (17:01 +0100)]
[use] Allow up to two medial-below letters

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

7 years ago[use] Fix shaping of U+AA29 CHAM VOWEL SIGN AA
Behdad Esfahbod [Fri, 14 Jul 2017 15:38:51 +0000 (16:38 +0100)]
[use] Fix shaping of U+AA29 CHAM VOWEL SIGN AA

Part of https://github.com/behdad/harfbuzz/issues/376
Also see https://github.com/roozbehp/unicode-data/issues/6

Test added, using NotoSansCham built from Noto Phase III sources.

7 years ago[indic] Add github URL
Behdad Esfahbod [Fri, 14 Jul 2017 14:59:40 +0000 (15:59 +0100)]
[indic] Add github URL

7 years ago[indic] Fix https://github.com/behdad/harfbuzz/issues/478
Behdad Esfahbod [Fri, 14 Jul 2017 14:50:22 +0000 (15:50 +0100)]
[indic] Fix https://github.com/behdad/harfbuzz/issues/478

7 years ago[indic] Disable automatic ZWNJ handling for Indic features
Behdad Esfahbod [Fri, 14 Jul 2017 13:14:35 +0000 (14:14 +0100)]
[indic] Disable automatic ZWNJ handling for Indic features

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

Also fixes a bunch of other Indic issues.  Test results after:

BENGALI: 353725 out of 354188 tests passed. 463 failed (0.130722%)
DEVANAGARI: 707307 out of 707394 tests passed. 87 failed (0.0122987%)
GUJARATI: 366355 out of 366457 tests passed. 102 failed (0.0278341%)
GURMUKHI: 60732 out of 60747 tests passed. 15 failed (0.0246926%)
KANNADA: 951201 out of 951913 tests passed. 712 failed (0.0747968%)
KHMER: 299071 out of 299124 tests passed. 53 failed (0.0177184%)
MALAYALAM: 1048136 out of 1048334 tests passed. 198 failed (0.0188871%)
ORIYA: 42320 out of 42329 tests passed. 9 failed (0.021262%)
SINHALA: 271662 out of 271847 tests passed. 185 failed (0.068053%)
TAMIL: 1091754 out of 1091754 tests passed. 0 failed (0%)
TELUGU: 970555 out of 970573 tests passed. 18 failed (0.00185457%)

Before:

BENGALI: 353725 out of 354188 tests passed. 463 failed (0.130722%)
DEVANAGARI: 707307 out of 707394 tests passed. 87 failed (0.0122987%)
GUJARATI: 366349 out of 366457 tests passed. 108 failed (0.0294714%)
GURMUKHI: 60732 out of 60747 tests passed. 15 failed (0.0246926%)
KANNADA: 951190 out of 951913 tests passed. 723 failed (0.0759523%)
KHMER: 299070 out of 299124 tests passed. 54 failed (0.0180527%)
MALAYALAM: 1048136 out of 1048334 tests passed. 198 failed (0.0188871%)
ORIYA: 42320 out of 42329 tests passed. 9 failed (0.021262%)
SINHALA: 271662 out of 271847 tests passed. 185 failed (0.068053%)
TAMIL: 1091753 out of 1091754 tests passed. 1 failed (9.15957e-05%)
TELUGU: 970555 out of 970573 tests passed. 18 failed (0.00185457%)

7 years ago[indic] Add infrastructure to disable ZWNJ-skipping in context-matching
Behdad Esfahbod [Fri, 14 Jul 2017 11:43:34 +0000 (12:43 +0100)]
[indic] Add infrastructure to disable ZWNJ-skipping in context-matching

Not used yet.

7 years agoShaping tests for Tibetan vowels (#446)
Dominik Schlösser [Fri, 14 Jul 2017 11:14:55 +0000 (13:14 +0200)]
Shaping tests for Tibetan vowels (#446)

* Shaping tests for Tibetan vowels

* Test-cases for the Dzongkha contractions with multiple vowel-signs added.

* going to be removed

* Extended contraction-test-cases to all test cases in contractions.txt that actually use multiple-vowels (113 cases)

7 years agoFix for reordering of Tibetan vowel u (#443)
Dominik Schlösser [Fri, 14 Jul 2017 11:14:23 +0000 (13:14 +0200)]
Fix for reordering of Tibetan vowel u (#443)

* Undone change for Tibetan vowel u

* removed comment on reordering that became invalid with roll-back

* Support for Dzongkha contractions with multiple vowel-signs

* Removed non-functional and unnecessary defines for HB_MODIFIED_COMBINING_CLASS_CCC138,140

7 years agoWin32/NMake builds: Support builds from GIT (#498)
fanc999 [Wed, 21 Jun 2017 14:19:57 +0000 (22:19 +0800)]
Win32/NMake builds: Support builds from GIT (#498)

Add Python scripts to generate the full win32/config.h.win32 and
src/hb-version.h which can be used to build directly from a GIT
checkout.  Since the scripts are currently intended for building from a
GIT checkout, these are not distributed in the release tarballs.

Also, support the re-build of Ragel-generated .hh headers using the NMake
build system, and allow one to specify the path of the Ragel executable
if a suitable one cannot be found in the PATH.

Update the Win32/NMake build documentation to let people know about how
these mechanisms can be utilized.

7 years agoFix arm-none-eabi build (fixes #451) (#496)
Ebrahim Byagowi [Mon, 19 Jun 2017 10:17:09 +0000 (14:47 +0430)]
Fix arm-none-eabi build (fixes #451) (#496)

7 years agoSupport branch prediction helpers on clang compiles (#491)
Ebrahim Byagowi [Fri, 2 Jun 2017 17:23:10 +0000 (21:53 +0430)]
Support branch prediction helpers on clang compiles (#491)

7 years agoHandle allocation failure in hb-language code
Behdad Esfahbod [Thu, 1 Jun 2017 15:44:42 +0000 (11:44 -0400)]
Handle allocation failure in hb-language code

7 years agoAvoid using strdup inside library. (#488)
Sebastian Rasmussen [Mon, 29 May 2017 17:53:30 +0000 (12:53 -0500)]
Avoid using strdup inside library. (#488)

If an application provides a malloc replacement through
hb_malloc_impl() it is important that it is used to allocate
everything, but the use of strdup() circumvents this and
causes system malloc() to be called instead. This pairs
badly with the custom hb_free_impl() being called later.

7 years agoDo not skip TAG characters in glyph substitution (#487)
Khaled Hosny [Wed, 17 May 2017 18:32:47 +0000 (21:32 +0300)]
Do not skip TAG characters in glyph substitution (#487)

Hide them like Mongolian Free Variation Selectors instead.

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

7 years agoMinor
Behdad Esfahbod [Tue, 16 May 2017 21:26:28 +0000 (14:26 -0700)]
Minor

7 years ago[cmake] Add framework build support (#484)
Ebrahim Byagowi [Sat, 13 May 2017 17:02:56 +0000 (21:32 +0430)]
[cmake] Add framework build support (#484)

7 years ago[cmake] minor (#482)
Ebrahim Byagowi [Thu, 4 May 2017 16:01:42 +0000 (20:31 +0430)]
[cmake] minor (#482)

7 years ago1.4.6
Behdad Esfahbod [Sun, 23 Apr 2017 23:19:13 +0000 (16:19 -0700)]
1.4.6

7 years agoFix graphite2 rtl conversion (#475)
mhosken [Thu, 20 Apr 2017 18:13:22 +0000 (19:13 +0100)]
Fix graphite2 rtl conversion (#475)

7 years ago[cmake] Final touches (#473)
ebraminio [Wed, 19 Apr 2017 18:29:46 +0000 (22:59 +0430)]
[cmake] Final touches (#473)

7 years agoFix clang -Wcomma warnings (#471) (#472)
Chris Peterson [Tue, 18 Apr 2017 06:25:24 +0000 (23:25 -0700)]
Fix clang -Wcomma warnings (#471) (#472)

clang's new -Wcomma compiler option warns about possible misuse of the
comma operator such as between two statements.

hb-common.cc:190:9 [-Wcomma] possible misuse of comma operator here
hb-ot-layout-gsubgpos-private.hh:345:30 [-Wcomma] possible misuse of
comma operator here
hb-shape-plan.cc:438:26 [-Wcomma] possible misuse of comma operator here

7 years ago[cmake] Remove HB_DISABLE_DEPRECATED as it seems needed for pango build (#470)
ebraminio [Mon, 17 Apr 2017 11:23:46 +0000 (15:53 +0430)]
[cmake] Remove HB_DISABLE_DEPRECATED as it seems needed for pango build (#470)

7 years agoUse absolute paths of ragel generated headers (#467)
William Hua [Mon, 17 Apr 2017 05:33:42 +0000 (01:33 -0400)]
Use absolute paths of ragel generated headers (#467)

https://github.com/behdad/harfbuzz/issues/455

7 years agoSmall doc fix: `make check` runs the tests (#469)
Dominik Schlösser [Sat, 15 Apr 2017 19:17:05 +0000 (21:17 +0200)]
Small doc fix: `make check` runs the tests (#469)

7 years ago[cmake] Fix try compile link issues (#466)
ebraminio [Fri, 14 Apr 2017 00:38:11 +0000 (05:08 +0430)]
[cmake] Fix try compile link issues (#466)

7 years ago[cmake] typo (#465)
ebraminio [Fri, 14 Apr 2017 00:01:17 +0000 (04:31 +0430)]
[cmake] typo (#465)

7 years ago[cmake] Add atomic ops availability detection (#464)
ebraminio [Thu, 13 Apr 2017 23:55:50 +0000 (04:25 +0430)]
[cmake] Add atomic ops availability detection (#464)

7 years ago[cmake] Remove NO_MT flag (#462)
ebraminio [Wed, 12 Apr 2017 21:47:16 +0000 (02:17 +0430)]
[cmake] Remove NO_MT flag (#462)

7 years agoBlacklist GDEF table in additional Tahoma versions. (#459)
jfkthame [Tue, 11 Apr 2017 21:29:13 +0000 (22:29 +0100)]
Blacklist GDEF table in additional Tahoma versions. (#459)

There are more broken versions of Tahoma out there on various Windows releases,
so we need to add them to our blacklist to avoid broken rendering.
See https://bugzilla.mozilla.org/show_bug.cgi?id=1279925 for details.

7 years ago[cmake] Improve third party libraries support (#461)
ebraminio [Tue, 11 Apr 2017 18:48:18 +0000 (23:18 +0430)]
[cmake] Improve third party libraries support (#461)

7 years ago[cmake] Add utils build support (#460)
ebraminio [Tue, 11 Apr 2017 17:02:14 +0000 (21:32 +0430)]
[cmake] Add utils build support (#460)

7 years agoNMake Makefiles: Fix ICU builds
Chun-wei Fan [Thu, 6 Apr 2017 10:44:28 +0000 (18:44 +0800)]
NMake Makefiles: Fix ICU builds

Fix the check conditions in config-msvc.mak and info-msvc.mak so that
the ICU items does indeed get built into the HarfBuzz main DLL, and that
the correct configuration info is displayed.

Also update the checks in detectenv-msvc.mak so that we can detect that
we are using Visual Studio 2017 (although the 2015-built binaries use
the same CRT DLL as the 2017 ones).

7 years agoMove list of ragel sources to Makefile.sources as well
Behdad Esfahbod [Wed, 5 Apr 2017 13:42:11 +0000 (15:42 +0200)]
Move list of ragel sources to Makefile.sources as well

7 years agoSplit ragel generated files lists and remove hardcoded rl files lists (#453)
ebraminio [Wed, 5 Apr 2017 09:21:23 +0000 (02:21 -0700)]
Split ragel generated files lists and remove hardcoded rl files lists (#453)

7 years agoAdd CMake build support (#444)
ebraminio [Tue, 4 Apr 2017 10:33:51 +0000 (15:03 +0430)]
Add CMake build support (#444)

7 years agoavoid UBSan warning in get_stage_lookups (#450)
jfkthame [Mon, 3 Apr 2017 11:22:39 +0000 (12:22 +0100)]
avoid UBSan warning in get_stage_lookups (#450)

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

7 years agoCurrent fonttools (3.9.1) generate subset-file called font.subset.ttf instead of...
Dominik Schloesser [Sun, 26 Mar 2017 07:22:34 +0000 (09:22 +0200)]
Current fonttools (3.9.1) generate subset-file called font.subset.ttf instead of older font.ttf.subset

7 years agoUpdated samples: record-it.sh is now record-test.sh
Dominik Schloesser [Sun, 26 Mar 2017 07:21:13 +0000 (09:21 +0200)]
Updated samples: record-it.sh is now record-test.sh

7 years ago[tools] Make hb-unicode-code work with Python 3
Khaled Hosny [Sun, 26 Mar 2017 08:48:53 +0000 (10:48 +0200)]
[tools] Make hb-unicode-code work with Python 3

Related to https://github.com/behdad/harfbuzz/pull/445

7 years agoBlacklist more versions of Padauk
Behdad Esfahbod [Fri, 24 Mar 2017 17:24:52 +0000 (10:24 -0700)]
Blacklist more versions of Padauk

Patch from Phil Race.

7 years ago[ci] Fix msys2 build on AppVeyor
Khaled Hosny [Wed, 22 Mar 2017 22:35:36 +0000 (00:35 +0200)]
[ci] Fix msys2 build on AppVeyor

For whatever reason the env variables need to be the Windows way or they
end up being empty.

7 years agoJust always use strtod here
Khaled Hosny [Wed, 22 Mar 2017 21:07:15 +0000 (23:07 +0200)]
Just always use strtod here

7 years agosrc/hb-common.cc: Fix build on older Visual Studio
Chun-wei Fan [Fri, 24 Feb 2017 09:58:25 +0000 (17:58 +0800)]
src/hb-common.cc: Fix build on older Visual Studio

Visual Studio only supported strtof() from Visual Studio 2013 onwards, so
use strtod() instead to do the operation, which should do the same thing,
sans going to a double, not a float.

7 years agoVisual Studio builds: Fix Introspection when UCDN enabled
Chun-wei Fan [Fri, 24 Feb 2017 09:47:44 +0000 (17:47 +0800)]
Visual Studio builds: Fix Introspection when UCDN enabled

The sources in src/hb-ucdn and not included correctly into the NMake
Makefiles, as we need their explicit relative location as we pass all the
sources we used into the introspection scanner.  This was not an issue
before as we excluded the UCDN sources in the build when we enabled
introspection (meaning GLib is enabled), but since we default on using
UCDN on all builds unless explicitly disabled, we need to deal with this.

This did not affect builds using UCDN without introspection due to the use
of NMake batch rules.

Fix this by creating a NMake Makefile module on-the-fly with the correct
subdir info, and using that list in there instead.

7 years agoUpdate Visual Studio builds for UCDN usage
Chun-wei Fan [Thu, 23 Feb 2017 05:02:49 +0000 (13:02 +0800)]
Update Visual Studio builds for UCDN usage

We now use UCDN by default, so make it so in the build files; however
don't hardcode HAVE_UCDN as one may still opt not to use it (but pass
it in as a CFLAG unless one explicitly disables UCDN by using NO_UCDN=1
on the NMake command line).

Note that we are not blocking builds where UCDN is disabled along with
GLib and ICU, as that will trigger a build error anyways which will tell
the user what needs to be done to remedy this.

7 years ago1.4.5
Behdad Esfahbod [Sat, 11 Mar 2017 07:02:28 +0000 (23:02 -0800)]
1.4.5

7 years agoRevert "Fix Context lookup application when moving back after a glyph delete"
Behdad Esfahbod [Fri, 10 Mar 2017 21:23:02 +0000 (13:23 -0800)]
Revert "Fix Context lookup application when moving back after a glyph delete"

This reverts commit b9b005f3a44ccf78a45b212b126287b69b9f4b40.

This introduced invalid access cases. Revert until I fix correctly.

7 years agoFix buffer serialize of empty buffer
Behdad Esfahbod [Wed, 8 Mar 2017 02:13:28 +0000 (18:13 -0800)]
Fix buffer serialize of empty buffer

Ouch!

7 years ago1.4.4
Behdad Esfahbod [Sun, 5 Mar 2017 21:54:56 +0000 (13:54 -0800)]
1.4.4

7 years agoAdd TODO item
Behdad Esfahbod [Sun, 5 Mar 2017 21:51:01 +0000 (13:51 -0800)]
Add TODO item

7 years agoRemove TODO item that is not going to happen
Behdad Esfahbod [Thu, 2 Mar 2017 19:46:33 +0000 (11:46 -0800)]
Remove TODO item that is not going to happen

7 years agoFix Context lookup application when moving back after a glyph delete
Behdad Esfahbod [Wed, 1 Mar 2017 22:27:23 +0000 (14:27 -0800)]
Fix Context lookup application when moving back after a glyph delete

This was broken forever, since days that we did not allow moving
tape backwards. Works now. Reported by Doug Felt.

7 years agoAdd few tests found by libFuzzer and oss-fuzz
Behdad Esfahbod [Sat, 25 Feb 2017 21:37:54 +0000 (13:37 -0800)]
Add few tests found by libFuzzer and oss-fuzz

7 years agoFix buffer-overrun with Bengali reph positioning code
Behdad Esfahbod [Sat, 25 Feb 2017 21:30:38 +0000 (13:30 -0800)]
Fix buffer-overrun with Bengali reph positioning code

This has no security implications whatsoever since we always keep
and extra element at the end of buffer, just in case.

Discovered by oss-fuzz
CC https://github.com/behdad/harfbuzz/issues/139
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=660

7 years ago1.4.3
Behdad Esfahbod [Sat, 25 Feb 2017 19:35:05 +0000 (11:35 -0800)]
1.4.3

7 years agoBlacklist another instance of Padauk (#419)
Dominik Röttsches [Mon, 20 Feb 2017 19:52:07 +0000 (21:52 +0200)]
Blacklist another instance of Padauk (#419)

In https://crbug.com/681813 another instance of Padauk was identified
triggering collapsed glyphs. Blacklist this version by patching
hb-ot-layout.cc to print out gdef, gsub, and gpos table length, then
adding those to the list of blacklisted versions.

7 years ago[ci] Disable vcpkg freetype installation and fix Appveyor CI (#422)
ebraminio [Sat, 18 Feb 2017 07:07:36 +0000 (10:37 +0330)]
[ci] Disable vcpkg freetype installation and fix Appveyor CI (#422)

7 years agoGuard against underflow when adjusting length (#421)
jfkthame [Fri, 17 Feb 2017 03:03:24 +0000 (03:03 +0000)]
Guard against underflow when adjusting length (#421)

* Guard against underflow when adjusting length

With the fuzz-testcase in mozilla bug 1295299, we end up with a recursed lookup that removes 3 items, when `match_positions[idx]` is 0, which results in (unsigned) `end` wrapping to a huge value.

Making `end` a signed int is probably the simplest route to a fix.

Fixes https://bugzilla.mozilla.org/show_bug.cgi?id=1295299.

* Add testcase for #421.

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