Commit Graph

4614 Commits

Author SHA1 Message Date
Khaled Hosny
f2e6c7ce51 [tools] Make hb-unicode-code work with Python 3
Related to https://github.com/behdad/harfbuzz/pull/445
2017-03-26 10:50:32 +02:00
Behdad Esfahbod
edcf6344bc Blacklist more versions of Padauk
Patch from Phil Race.
2017-03-24 10:24:52 -07:00
Khaled Hosny
e693ba7798 [ci] Fix msys2 build on AppVeyor
For whatever reason the env variables need to be the Windows way or they
end up being empty.
2017-03-23 00:54:00 +02:00
Khaled Hosny
91570a1eeb Just always use strtod here 2017-03-22 23:07:20 +02:00
Chun-wei Fan
539571c1a9 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.
2017-03-22 23:03:49 +02:00
Chun-wei Fan
b90fb83ea6 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.
2017-03-22 23:03:49 +02:00
Chun-wei Fan
f0aa167e44 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.
2017-03-22 23:03:49 +02:00
Behdad Esfahbod
60e2586f76 1.4.5 2017-03-10 23:02:28 -08:00
Behdad Esfahbod
47e7a1800f Revert "Fix Context lookup application when moving back after a glyph delete"
This reverts commit b9b005f3a4.

This introduced invalid access cases. Revert until I fix correctly.
2017-03-10 13:23:02 -08:00
Behdad Esfahbod
3c080a7a0a Fix buffer serialize of empty buffer
Ouch!
2017-03-07 18:13:28 -08:00
Behdad Esfahbod
8e42c3cb2b 1.4.4 2017-03-05 13:54:56 -08:00
Behdad Esfahbod
9ac9af725c Add TODO item 2017-03-05 13:51:01 -08:00
Behdad Esfahbod
5aec2fb8d0 Remove TODO item that is not going to happen 2017-03-02 11:46:33 -08:00
Behdad Esfahbod
b9b005f3a4 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.
2017-03-01 14:27:23 -08:00
Behdad Esfahbod
a11501444c Add few tests found by libFuzzer and oss-fuzz 2017-02-25 13:37:54 -08:00
Behdad Esfahbod
85630996b8 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
2017-02-25 13:32:20 -08:00
Behdad Esfahbod
6685d281d6 1.4.3 2017-02-25 11:35:05 -08:00
Dominik Röttsches
a657f23ca3 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.
2017-02-20 13:52:07 -06:00
ebraminio
70202983f5 [ci] Disable vcpkg freetype installation and fix Appveyor CI (#422) 2017-02-18 10:37:36 +03:30
jfkthame
44f7d6ecde 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.
2017-02-16 19:03:24 -08:00
jfkthame
45766b673f [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
2017-02-16 09:40:21 -08:00
Behdad Esfahbod
d4bb52b9fd Unbreak hb-coretext build 2017-02-09 14:13:25 -08:00
Behdad Esfahbod
c8dfed8e1e Merge pull request #357 from khaledhosny/graphite-scale
[graphite] Fix shaping with varying font sizes
2017-02-08 14:36:18 -08:00
Behdad Esfahbod
7c47474f20 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
2017-02-08 14:33:28 -08:00
Philip Withnall
ffde3c9f9e 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>
2017-02-08 13:56:57 -08:00
Behdad Esfahbod
09594df1ae Update ax_pthread.m4 to latest upstream version
Might help with https://github.com/behdad/harfbuzz/issues/399
2017-02-07 18:25:12 -08:00
Philip Withnall
a6ced90efc test: Fix some memory leaks in test-font.c (#409)
Coverity IDs: 141039, 141040, 141041
2017-02-07 18:18:33 -08:00
Philip Withnall
925ceacfed util: Add missing field initialisers in constructor (#410)
Coverity ID: 141042
2017-02-07 18:17:48 -08:00
Behdad Esfahbod
73c6dcbb45 Silence Coverity warning
Fixes https://github.com/behdad/harfbuzz/issues/408
2017-02-07 16:53:21 -08:00
Behdad Esfahbod
466b3e58bd Shuffle things around a bit 2017-02-03 16:57:15 -08:00
Behdad Esfahbod
fc8189b639 Minor 2017-02-03 16:17:08 -08:00
Behdad Esfahbod
d3d3691806 Add dirty-state tracking to hb_face_t 2017-02-03 15:42:03 -08:00
Behdad Esfahbod
2171f48b4b Add dirty-state tracking to hb_font_t 2017-02-03 10:58:09 -08:00
Behdad Esfahbod
95808bad2c Add new API hb_font_set_face()
For completeness.
2017-02-03 10:39:40 -08:00
jfkthame
4ec19319ab Add Win10 Anniversary Update version of Tahoma to GDEF blacklist. (#412) 2017-02-02 10:48:23 -08:00
Behdad Esfahbod
1dd630a7f2 Minor
Fixes https://github.com/behdad/harfbuzz/issues/411
2017-02-01 11:57:21 -08:00
Behdad Esfahbod
e888f642db Route Adlam through Arabic shaper
Fixes joined Adlam rendering.

Fixes https://github.com/googlei18n/noto-fonts/issues/828
2017-01-26 14:50:14 -08:00
jfkthame
72c754873c Add Win7 version of himalaya.ttf to the GDEF table blacklist. (#407) 2017-01-26 14:35:41 -08:00
Behdad Esfahbod
22af28a3f1 [var] Implement MVAR table
Unhooked. Untested.
2017-01-23 23:42:53 -08:00
Behdad Esfahbod
67a191164d [var] Whitespace 2017-01-23 23:21:30 -08:00
Behdad Esfahbod
6af6c1114a 1.4.2 2017-01-23 18:35:00 -08:00
Behdad Esfahbod
79e8e27ffd [var] Hook up advance variations to hb-ot-font
Yay, works!
2017-01-23 17:57:27 -08:00
Behdad Esfahbod
6074340371 [var] Fix bug in HVAR/VVAR impl 2017-01-23 17:55:16 -08:00
Behdad Esfahbod
bd3b11d926 [var] Prepare for hooking up advance variations to hb-ot-font 2017-01-23 17:37:19 -08:00
Behdad Esfahbod
a4fca9f005 [var] Implement DeltaSetIndexMap and advance delta fetching
Not hooked up to hb-ot-font yet.
2017-01-23 12:25:40 -08:00
Behdad Esfahbod
7b399f73ef [var] Start adding HVAR/VVAR 2017-01-23 11:41:43 -08:00
Behdad Esfahbod
b732c53eb5 Add LArrayOf<> 2017-01-22 20:31:53 -08:00
Behdad Esfahbod
5e156fa5ed Add LOffsetTo<> 2017-01-22 20:28:56 -08:00
Behdad Esfahbod
d6bdbbca30 [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.
2017-01-22 20:16:51 -08:00
Behdad Esfahbod
a11d9a0466 Minor 2017-01-22 20:11:57 -08:00