texlive[43339] Build/source/libs: harfbuzz 1.4.3

commits+kakuto at tug.org commits+kakuto at tug.org
Sat Feb 25 23:30:01 CET 2017


Revision: 43339
          http://tug.org/svn/texlive?view=revision&revision=43339
Author:   kakuto
Date:     2017-02-25 23:30:01 +0100 (Sat, 25 Feb 2017)
Log Message:
-----------
harfbuzz 1.4.3

Modified Paths:
--------------
    trunk/Build/source/libs/README
    trunk/Build/source/libs/harfbuzz/ChangeLog
    trunk/Build/source/libs/harfbuzz/Makefile.am
    trunk/Build/source/libs/harfbuzz/Makefile.in
    trunk/Build/source/libs/harfbuzz/TLpatches/ChangeLog
    trunk/Build/source/libs/harfbuzz/TLpatches/TL-Changes
    trunk/Build/source/libs/harfbuzz/configure
    trunk/Build/source/libs/harfbuzz/harfbuzz-src/ChangeLog
    trunk/Build/source/libs/harfbuzz/harfbuzz-src/NEWS
    trunk/Build/source/libs/harfbuzz/harfbuzz-src/configure.ac
    trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/Makefile.am
    trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/Makefile.sources
    trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-coretext.cc
    trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-directwrite.cc
    trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-face-private.hh
    trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-face.cc
    trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-fallback-shape.cc
    trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-font-private.hh
    trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-font.cc
    trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-font.h
    trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-graphite2.cc
    trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-graphite2.h
    trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-layout-gsubgpos-private.hh
    trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-layout-private.hh
    trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-layout.cc
    trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-math.cc
    trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape-complex-arabic.cc
    trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape-complex-indic-table.cc
    trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape-complex-private.hh
    trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape-normalize.cc
    trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape.cc
    trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-var-hvar-table.hh
    trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-var.cc
    trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-shape-plan.cc
    trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-shaper-private.hh
    trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-uniscribe.cc
    trunk/Build/source/libs/harfbuzz/version.ac

Added Paths:
-----------
    trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-var-mvar-table.hh

Modified: trunk/Build/source/libs/README
===================================================================
--- trunk/Build/source/libs/README	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/README	2017-02-25 22:30:01 UTC (rev 43339)
@@ -24,7 +24,7 @@
 graphite2 1.3.9 - checked 13nov16
   http://sourceforge.net/projects/silgraphite/files/graphite2/
 
-harfbuzz 1.4.2 - checked 25jan17
+harfbuzz 1.4.3 - checked 25feb17
   http://www.freedesktop.org/software/harfbuzz/release/
 
 icu 57.1 (release) - checked 27mar16

Modified: trunk/Build/source/libs/harfbuzz/ChangeLog
===================================================================
--- trunk/Build/source/libs/harfbuzz/ChangeLog	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/ChangeLog	2017-02-25 22:30:01 UTC (rev 43339)
@@ -1,3 +1,8 @@
+2017-02-25  Akira Kakuto  <kakuto at fuk.kindai.ac.jp>
+
+	Import harfbuzz-1.4.3.
+	* Makefile.am, version.ac: Adjusted.
+
 2017-01-25  Akira Kakuto  <kakuto at fuk.kindai.ac.jp>
 
 	Import harfbuzz-1.4.2.

Modified: trunk/Build/source/libs/harfbuzz/Makefile.am
===================================================================
--- trunk/Build/source/libs/harfbuzz/Makefile.am	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/Makefile.am	2017-02-25 22:30:01 UTC (rev 43339)
@@ -55,6 +55,7 @@
 	@HARFBUZZ_TREE@/src/hb-ot-name-table.hh \
 	@HARFBUZZ_TREE@/src/hb-ot-os2-table.hh \
 	@HARFBUZZ_TREE@/src/hb-ot-post-table.hh \
+	@HARFBUZZ_TREE@/src/hb-ot-var-mvar-table.hh \
 	@HARFBUZZ_TREE@/src/hb-ot-tag.cc \
 	@HARFBUZZ_TREE@/src/hb-private.hh \
 	@HARFBUZZ_TREE@/src/hb-set-private.hh \

Modified: trunk/Build/source/libs/harfbuzz/Makefile.in
===================================================================
--- trunk/Build/source/libs/harfbuzz/Makefile.in	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/Makefile.in	2017-02-25 22:30:01 UTC (rev 43339)
@@ -669,6 +669,7 @@
 	@HARFBUZZ_TREE@/src/hb-ot-name-table.hh \
 	@HARFBUZZ_TREE@/src/hb-ot-os2-table.hh \
 	@HARFBUZZ_TREE@/src/hb-ot-post-table.hh \
+	@HARFBUZZ_TREE@/src/hb-ot-var-mvar-table.hh \
 	@HARFBUZZ_TREE@/src/hb-ot-tag.cc \
 	@HARFBUZZ_TREE@/src/hb-private.hh \
 	@HARFBUZZ_TREE@/src/hb-set-private.hh \

Modified: trunk/Build/source/libs/harfbuzz/TLpatches/ChangeLog
===================================================================
--- trunk/Build/source/libs/harfbuzz/TLpatches/ChangeLog	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/TLpatches/ChangeLog	2017-02-25 22:30:01 UTC (rev 43339)
@@ -1,3 +1,8 @@
+2017-02-25  Akira Kakuto  <kakuto at fuk.kindai.ac.jp>
+
+	Imported harfbuzz-1.4.3 source tree from:
+	  http://www.freedesktop.org/software/harfbuzz/release/
+
 2017-01-25  Akira Kakuto  <kakuto at fuk.kindai.ac.jp>
 
 	Imported harfbuzz-1.4.2 source tree from:

Modified: trunk/Build/source/libs/harfbuzz/TLpatches/TL-Changes
===================================================================
--- trunk/Build/source/libs/harfbuzz/TLpatches/TL-Changes	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/TLpatches/TL-Changes	2017-02-25 22:30:01 UTC (rev 43339)
@@ -1,4 +1,4 @@
-Changes applied to the harfbuzz-1.4.2/ tree as obtained from:
+Changes applied to the harfbuzz-1.4.3/ tree as obtained from:
 	http://www.freedesktop.org/software/harfbuzz/release/
 
 Removed:

Modified: trunk/Build/source/libs/harfbuzz/configure
===================================================================
--- trunk/Build/source/libs/harfbuzz/configure	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/configure	2017-02-25 22:30:01 UTC (rev 43339)
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for harfbuzz (TeX Live) 1.4.2.
+# Generated by GNU Autoconf 2.69 for harfbuzz (TeX Live) 1.4.3.
 #
 # Report bugs to <tex-k at tug.org>.
 #
@@ -580,8 +580,8 @@
 # Identity of this package.
 PACKAGE_NAME='harfbuzz (TeX Live)'
 PACKAGE_TARNAME='harfbuzz--tex-live-'
-PACKAGE_VERSION='1.4.2'
-PACKAGE_STRING='harfbuzz (TeX Live) 1.4.2'
+PACKAGE_VERSION='1.4.3'
+PACKAGE_STRING='harfbuzz (TeX Live) 1.4.3'
 PACKAGE_BUGREPORT='tex-k at tug.org'
 PACKAGE_URL=''
 
@@ -1312,7 +1312,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures harfbuzz (TeX Live) 1.4.2 to adapt to many kinds of systems.
+\`configure' configures harfbuzz (TeX Live) 1.4.3 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1383,7 +1383,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of harfbuzz (TeX Live) 1.4.2:";;
+     short | recursive ) echo "Configuration of harfbuzz (TeX Live) 1.4.3:";;
    esac
   cat <<\_ACEOF
 
@@ -1490,7 +1490,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-harfbuzz (TeX Live) configure 1.4.2
+harfbuzz (TeX Live) configure 1.4.3
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2080,7 +2080,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by harfbuzz (TeX Live) $as_me 1.4.2, which was
+It was created by harfbuzz (TeX Live) $as_me 1.4.3, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -4003,7 +4003,7 @@
 
 # Define the identity of the package.
  PACKAGE='harfbuzz--tex-live-'
- VERSION='1.4.2'
+ VERSION='1.4.3'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -4206,8 +4206,8 @@
 
 HB_VERSION_MAJOR=1
 HB_VERSION_MINOR=4
-HB_VERSION_MICRO=2
-HB_VERSION=1.4.2
+HB_VERSION_MICRO=3
+HB_VERSION=1.4.3
 
 ac_ext=c
 ac_cpp='$CPP $CPPFLAGS'
@@ -6866,7 +6866,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by harfbuzz (TeX Live) $as_me 1.4.2, which was
+This file was extended by harfbuzz (TeX Live) $as_me 1.4.3, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -6932,7 +6932,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-harfbuzz (TeX Live) config.status 1.4.2
+harfbuzz (TeX Live) config.status 1.4.3
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 

Modified: trunk/Build/source/libs/harfbuzz/harfbuzz-src/ChangeLog
===================================================================
--- trunk/Build/source/libs/harfbuzz/harfbuzz-src/ChangeLog	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/harfbuzz-src/ChangeLog	2017-02-25 22:30:01 UTC (rev 43339)
@@ -1,3 +1,313 @@
+commit a657f23ca31237d652b5c101ed24194b6aeadaf8
+Author: Dominik Röttsches <d-r at roettsches.de>
+Date:   Mon Feb 20 21:52:07 2017 +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.
+
+ src/hb-ot-layout.cc | 3 +++
+ 1 file changed, 3 insertions(+)
+
+commit 70202983f57fe85b2d3b56a9c205effeee66222d
+Author: ebraminio <ebrahim at gnu.org>
+Date:   Sat Feb 18 10:37:36 2017 +0330
+
+    [ci] Disable vcpkg freetype installation and fix Appveyor CI (#422)
+
+ appveyor.yml | 16 ++++++++--------
+ 1 file changed, 8 insertions(+), 8 deletions(-)
+
+commit 44f7d6ecde9bf7427a05cbe73ed5d668b8a72b2a
+Author: jfkthame <jfkthame at gmail.com>
+Date:   Fri Feb 17 03:03:24 2017 +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.
+
+ src/hb-ot-layout-gsubgpos-private.hh                     |   6 +++---
+ .../sha1sum/558661aa659912f4d30ecd27bd09835171a8e2b0.ttf | Bin 0 ->
+ 1358 bytes
+ test/shaping/tests/fuzzed.tests                          |   1 +
+ 3 files changed, 4 insertions(+), 3 deletions(-)
+
+commit 45766b673f427bb791c9d5886cadedfac0447066
+Author: jfkthame <jfkthame at gmail.com>
+Date:   Thu Feb 16 17:40:21 2017 +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
+
+ src/hb-ot-shape-complex-indic-table.cc                   |   7 +++++++
+ .../sha1sum/3493e92eaded2661cadde752a39f9d58b11f0326.ttf | Bin 0 ->
+ 1400 bytes
+ test/shaping/tests/indic-script-extensions.tests         |   1 +
+ 3 files changed, 8 insertions(+)
+
+commit d4bb52b9fd8a5bc4af13752ea3e464eccfe3223b
+Author: Behdad Esfahbod <behdad at behdad.org>
+Date:   Thu Feb 9 14:13:25 2017 -0800
+
+    Unbreak hb-coretext build
+
+ src/hb-coretext.cc | 3 +++
+ 1 file changed, 3 insertions(+)
+
+commit c8dfed8e1ee4ab64b6936f5c8561db0666e37647
+Merge: 7c47474f b435c7c4
+Author: Behdad Esfahbod <behdad at behdad.org>
+Date:   Wed Feb 8 14:36:18 2017 -0800
+
+    Merge pull request #357 from khaledhosny/graphite-scale
+
+    [graphite] Fix shaping with varying font sizes
+
+commit 7c47474f209bdf84cf87844c277ed711cad78196
+Author: Behdad Esfahbod <behdad at behdad.org>
+Date:   Wed Feb 8 14:33:28 2017 -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
+
+ src/Makefile.am | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit ffde3c9f9effcd2b47f5fd76df45551e68c0b1ec
+Author: Philip Withnall <philip at tecnocode.co.uk>
+Date:   Wed Feb 8 21:56:57 2017 +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 at endlessm.com>
+
+ src/hb-font.cc | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+commit 09594df1aecbb7d37093055147c25cc7d7b7fef6
+Author: Behdad Esfahbod <behdad at behdad.org>
+Date:   Tue Feb 7 18:25:12 2017 -0800
+
+    Update ax_pthread.m4 to latest upstream version
+
+    Might help with https://github.com/behdad/harfbuzz/issues/399
+
+ m4/ax_pthread.m4 | 394
+ ++++++++++++++++++++++++++++++++++++++++---------------
+ 1 file changed, 285 insertions(+), 109 deletions(-)
+
+commit a6ced90efccf869defc0b310effca220f01cf318
+Author: Philip Withnall <philip at tecnocode.co.uk>
+Date:   Wed Feb 8 02:18:33 2017 +0000
+
+    test: Fix some memory leaks in test-font.c (#409)
+
+    Coverity IDs: 141039, 141040, 141041
+
+ test/api/test-font.c | 35 ++++++++++++++++++++++++++++++-----
+ 1 file changed, 30 insertions(+), 5 deletions(-)
+
+commit 925ceacfed45c44dd2a025c32bebb1358b560741
+Author: Philip Withnall <philip at tecnocode.co.uk>
+Date:   Wed Feb 8 02:17:48 2017 +0000
+
+    util: Add missing field initialisers in constructor (#410)
+
+    Coverity ID: 141042
+
+ util/hb-shape.cc | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+commit 73c6dcbb45269186f204b2212288b6384ce42c9d
+Author: Behdad Esfahbod <behdad at behdad.org>
+Date:   Tue Feb 7 16:53:21 2017 -0800
+
+    Silence Coverity warning
+
+    Fixes https://github.com/behdad/harfbuzz/issues/408
+
+ src/hb-ot-shape-complex-arabic.cc | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 466b3e58bdc64229dab08c6e0e0079c789540370
+Author: Behdad Esfahbod <behdad at behdad.org>
+Date:   Fri Feb 3 16:43:25 2017 -0800
+
+    Shuffle things around a bit
+
+ src/hb-coretext.cc          |  4 ++--
+ src/hb-directwrite.cc       |  4 ++--
+ src/hb-fallback-shape.cc    |  4 ++++
+ src/hb-graphite2.cc         |  4 ++--
+ src/hb-ot-layout-private.hh |  1 -
+ src/hb-ot-layout.cc         |  2 --
+ src/hb-ot-math.cc           |  3 +--
+ src/hb-ot-shape.cc          |  4 ++++
+ src/hb-ot-var.cc            |  2 --
+ src/hb-shape-plan.cc        |  7 -------
+ src/hb-shaper-private.hh    | 11 +++++++----
+ src/hb-uniscribe.cc         |  4 ++--
+ 12 files changed, 24 insertions(+), 26 deletions(-)
+
+commit fc8189b63931f03c5d2e70dde198e9c856bd78f5
+Author: Behdad Esfahbod <behdad at behdad.org>
+Date:   Fri Feb 3 16:17:08 2017 -0800
+
+    Minor
+
+ src/hb-shaper-private.hh | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+commit d3d3691806aaa6aed93a88c845d472e727e7f850
+Author: Behdad Esfahbod <behdad at behdad.org>
+Date:   Fri Feb 3 15:42:03 2017 -0800
+
+    Add dirty-state tracking to hb_face_t
+
+ src/hb-face-private.hh |  9 +++++++++
+ src/hb-face.cc         | 19 ++++++++++++++++++-
+ src/hb-font.cc         |  2 +-
+ 3 files changed, 28 insertions(+), 2 deletions(-)
+
+commit 2171f48b4b1e66a3c16a83cc00b0006d32ae9738
+Author: Behdad Esfahbod <behdad at behdad.org>
+Date:   Fri Feb 3 10:58:09 2017 -0800
+
+    Add dirty-state tracking to hb_font_t
+
+ src/hb-font-private.hh | 12 ++++++++++++
+ src/hb-font.cc         | 30 ++++++++++++++++++++++++++++++
+ 2 files changed, 42 insertions(+)
+
+commit 95808bad2c17a9ef41c58c04faf1b4706fb7d72e
+Author: Behdad Esfahbod <behdad at behdad.org>
+Date:   Fri Feb 3 10:39:40 2017 -0800
+
+    Add new API hb_font_set_face()
+
+    For completeness.
+
+ src/hb-font.cc | 29 +++++++++++++++++++++++++++++
+ src/hb-font.h  |  4 ++++
+ 2 files changed, 33 insertions(+)
+
+commit 4ec19319ab195d852708661e12da2a6485fce544
+Author: jfkthame <jfkthame at gmail.com>
+Date:   Thu Feb 2 18:48:23 2017 +0000
+
+    Add Win10 Anniversary Update version of Tahoma to GDEF
+    blacklist. (#412)
+
+ src/hb-ot-layout.cc | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+commit 1dd630a7f2c2cec780fee507367341bc9050cdb3
+Author: Behdad Esfahbod <behdad at behdad.org>
+Date:   Wed Feb 1 11:57:21 2017 -0800
+
+    Minor
+
+    Fixes https://github.com/behdad/harfbuzz/issues/411
+
+ src/hb-fallback-shape.cc     | 2 +-
+ src/hb-ot-shape-normalize.cc | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+commit e888f642db16f52836cbfec29de43ff20236dc85
+Author: Behdad Esfahbod <behdad at behdad.org>
+Date:   Thu Jan 26 14:50:14 2017 -0800
+
+    Route Adlam through Arabic shaper
+
+    Fixes joined Adlam rendering.
+
+    Fixes https://github.com/googlei18n/noto-fonts/issues/828
+
+ src/hb-ot-shape-complex-private.hh                      |   3 +++
+ test/shaping/Makefile.am                                |   1 +
+ .../5dfad7735c6a67085f1b90d4d497e32907db4c78.ttf        | Bin 0 ->
+ 21160 bytes
+ test/shaping/tests/arabic-like-joining.tests            |   1 +
+ 4 files changed, 5 insertions(+)
+
+commit 72c754873c6b15cecb32d9e491c98495f804347a
+Author: jfkthame <jfkthame at gmail.com>
+Date:   Thu Jan 26 22:35:41 2017 +0000
+
+    Add Win7 version of himalaya.ttf to the GDEF table blacklist. (#407)
+
+ src/hb-ot-layout.cc | 2 ++
+ 1 file changed, 2 insertions(+)
+
+commit 22af28a3f14c6d748ed589f8980b168152116c8c
+Author: Behdad Esfahbod <behdad at behdad.org>
+Date:   Mon Jan 23 23:42:53 2017 -0800
+
+    [var] Implement MVAR table
+
+    Unhooked. Untested.
+
+ src/Makefile.sources        |   1 +
+ src/hb-font.cc              |   2 +-
+ src/hb-ot-var-mvar-table.hh | 110
+ ++++++++++++++++++++++++++++++++++++++++++++
+ src/hb-ot-var.cc            |   1 +
+ 4 files changed, 113 insertions(+), 1 deletion(-)
+
+commit 67a191164dec2cfcab97363175c58e459f6ff8f9
+Author: Behdad Esfahbod <behdad at behdad.org>
+Date:   Mon Jan 23 23:21:30 2017 -0800
+
+    [var] Whitespace
+
+ src/hb-ot-var-hvar-table.hh | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+commit 6af6c1114a3495584ac4197c62592741c407b5a2
+Author: Behdad Esfahbod <behdad at behdad.org>
+Date:   Mon Jan 23 18:35:00 2017 -0800
+
+    1.4.2
+
+ NEWS         | 31 +++++++++++++++++++++++++++++++
+ configure.ac |  2 +-
+ 2 files changed, 32 insertions(+), 1 deletion(-)
+
 commit 79e8e27ffd3da29ca27d3aebd2ef425bf1cb7f9d
 Author: Behdad Esfahbod <behdad at behdad.org>
 Date:   Mon Jan 23 17:55:31 2017 -0800
@@ -629,6 +939,32 @@
  src/hb-ot-shape-complex-use.cc | 22 ----------------------
  1 file changed, 22 deletions(-)
 
+commit b435c7c46a46350771e837e87fee448fd9dc06d3
+Author: Khaled Hosny <khaledhosny at eglug.org>
+Date:   Fri Nov 11 02:16:39 2016 +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.
+
+ src/hb-graphite2.cc | 22 +++++-----------------
+ src/hb-graphite2.h  |  4 ++++
+ 2 files changed, 9 insertions(+), 17 deletions(-)
+
+commit 1b00a3b0488a5d1c6ede141ae0545e2eb9af0ed8
+Author: Khaled Hosny <khaledhosny at eglug.org>
+Date:   Sun Oct 30 20:16:41 2016 +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
+
+ src/hb-graphite2.cc | 27 +++++++++++++++------------
+ 1 file changed, 15 insertions(+), 12 deletions(-)
+
 commit af596a5655ee2ed09da17a7de79f619e1547dcd9
 Author: Behdad Esfahbod <behdad at behdad.org>
 Date:   Thu Jan 5 20:24:41 2017 -0800

Modified: trunk/Build/source/libs/harfbuzz/harfbuzz-src/NEWS
===================================================================
--- trunk/Build/source/libs/harfbuzz/harfbuzz-src/NEWS	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/harfbuzz-src/NEWS	2017-02-25 22:30:01 UTC (rev 43339)
@@ -1,3 +1,15 @@
+Overview of changes leading to 1.4.3
+Saturday, February 25, 2017
+====================================
+
+- Route Adlam script to Arabic shaper.
+- Misc fixes.
+- New API:
+  hb_font_set_face()
+- Deprecate API:
+  hb_graphite2_font_get_gr_font()
+
+
 Overview of changes leading to 1.4.2
 Monday, January 23, 2017
 ====================================

Modified: trunk/Build/source/libs/harfbuzz/harfbuzz-src/configure.ac
===================================================================
--- trunk/Build/source/libs/harfbuzz/harfbuzz-src/configure.ac	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/harfbuzz-src/configure.ac	2017-02-25 22:30:01 UTC (rev 43339)
@@ -1,6 +1,6 @@
 AC_PREREQ([2.64])
 AC_INIT([HarfBuzz],
-        [1.4.2],
+        [1.4.3],
         [https://github.com/behdad/harfbuzz/issues/new],
         [harfbuzz],
         [http://harfbuzz.org/])

Modified: trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/Makefile.am
===================================================================
--- trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/Makefile.am	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/Makefile.am	2017-02-25 22:30:01 UTC (rev 43339)
@@ -218,7 +218,7 @@
 	(cat $^ || echo 'hb_ERROR ()' ) | \
 	$(EGREP) '^hb_.* \(' | \
 	sed -e 's/ (.*//' | \
-	LANG=C sort; \
+	LC_ALL=C sort; \
 	echo LIBRARY libharfbuzz-0.dll; \
 	) >"$@"
 	@ ! grep -q hb_ERROR "$@" \

Modified: trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/Makefile.sources
===================================================================
--- trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/Makefile.sources	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/Makefile.sources	2017-02-25 22:30:01 UTC (rev 43339)
@@ -112,6 +112,7 @@
 	hb-ot-var-avar-table.hh \
 	hb-ot-var-fvar-table.hh \
 	hb-ot-var-hvar-table.hh \
+	hb-ot-var-mvar-table.hh \
 	$(NULL)
 
 HB_OT_headers = \

Modified: trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-coretext.cc
===================================================================
--- trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-coretext.cc	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-coretext.cc	2017-02-25 22:30:01 UTC (rev 43339)
@@ -69,8 +69,8 @@
 }
 
 
-HB_SHAPER_DATA_ENSURE_DECLARE(coretext, face)
-HB_SHAPER_DATA_ENSURE_DECLARE(coretext, font)
+HB_SHAPER_DATA_ENSURE_DEFINE(coretext, face)
+HB_SHAPER_DATA_ENSURE_DEFINE(coretext, font)
 
 
 /*
@@ -1222,6 +1222,9 @@
  * AAT shaper
  */
 
+HB_SHAPER_DATA_ENSURE_DEFINE(coretext_aat, face)
+HB_SHAPER_DATA_ENSURE_DEFINE(coretext_aat, font)
+
 /*
  * shaper face data
  */

Modified: trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-directwrite.cc
===================================================================
--- trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-directwrite.cc	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-directwrite.cc	2017-02-25 22:30:01 UTC (rev 43339)
@@ -34,8 +34,8 @@
 #define HB_DEBUG_DIRECTWRITE (HB_DEBUG+0)
 #endif
 
-HB_SHAPER_DATA_ENSURE_DECLARE(directwrite, face)
-HB_SHAPER_DATA_ENSURE_DECLARE(directwrite, font)
+HB_SHAPER_DATA_ENSURE_DEFINE(directwrite, face)
+HB_SHAPER_DATA_ENSURE_DEFINE(directwrite, font)
 
 
 /*

Modified: trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-face-private.hh
===================================================================
--- trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-face-private.hh	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-face-private.hh	2017-02-25 22:30:01 UTC (rev 43339)
@@ -54,6 +54,13 @@
   mutable unsigned int upem;		/* Units-per-EM. */
   mutable unsigned int num_glyphs;	/* Number of glyphs. */
 
+  enum dirty_t {
+    NOTHING	= 0x0000,
+    INDEX	= 0x0001,
+    UPEM	= 0x0002,
+    NUM_GLYPHS	= 0x0004,
+  } dirty;
+
   struct hb_shaper_data_t shaper_data;	/* Various shaper data. */
 
   /* Various non-shaping data. */
@@ -99,6 +106,8 @@
   HB_INTERNAL void load_num_glyphs (void) const;
 };
 
+HB_MARK_AS_FLAG_T (hb_face_t::dirty_t);
+
 extern HB_INTERNAL const hb_face_t _hb_face_nil;
 
 #define HB_SHAPER_DATA_CREATE_FUNC_EXTRA_ARGS

Modified: trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-face.cc
===================================================================
--- trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-face.cc	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-face.cc	2017-02-25 22:30:01 UTC (rev 43339)
@@ -51,6 +51,8 @@
   1000, /* upem */
   0,    /* num_glyphs */
 
+  hb_face_t::NOTHING, /* dirty */
+
   {
 #define HB_SHAPER_IMPLEMENT(shaper) HB_SHAPER_DATA_INVALID,
 #include "hb-shaper-list.hh"
@@ -171,7 +173,7 @@
 				    closure,
 				    (hb_destroy_func_t) _hb_face_for_data_closure_destroy);
 
-  hb_face_set_index (face, index);
+  face->index = index;
 
   return face;
 }
@@ -365,6 +367,11 @@
   if (face->immutable)
     return;
 
+  if (face->index == index)
+    return;
+
+  face->dirty |= face->INDEX;
+
   face->index = index;
 }
 
@@ -400,6 +407,11 @@
   if (face->immutable)
     return;
 
+  if (face->upem == upem)
+    return;
+
+  face->dirty |= face->UPEM;
+
   face->upem = upem;
 }
 
@@ -444,6 +456,11 @@
   if (face->immutable)
     return;
 
+  if (face->num_glyphs == glyph_count)
+    return;
+
+  face->dirty |= face->NUM_GLYPHS;
+
   face->num_glyphs = glyph_count;
 }
 

Modified: trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-fallback-shape.cc
===================================================================
--- trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-fallback-shape.cc	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-fallback-shape.cc	2017-02-25 22:30:01 UTC (rev 43339)
@@ -28,6 +28,10 @@
 #include "hb-shaper-impl-private.hh"
 
 
+HB_SHAPER_DATA_ENSURE_DEFINE(fallback, face)
+HB_SHAPER_DATA_ENSURE_DEFINE(fallback, font)
+
+
 /*
  * shaper face data
  */
@@ -125,7 +129,7 @@
       pos[i].y_advance = 0;
       continue;
     }
-    font->get_nominal_glyph (info[i].codepoint, &info[i].codepoint);
+    (void) font->get_nominal_glyph (info[i].codepoint, &info[i].codepoint);
     font->get_glyph_advance_for_direction (info[i].codepoint,
 					   direction,
 					   &pos[i].x_advance,

Modified: trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-font-private.hh
===================================================================
--- trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-font-private.hh	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-font-private.hh	2017-02-25 22:30:01 UTC (rev 43339)
@@ -116,6 +116,16 @@
   void              *user_data;
   hb_destroy_func_t  destroy;
 
+  enum dirty_t {
+    NOTHING	= 0x0000,
+    FACE	= 0x0001,
+    PARENT	= 0x0002,
+    FUNCS	= 0x0004,
+    SCALE	= 0x0008,
+    PPEM	= 0x0010,
+    VARIATIONS	= 0x0020,
+  } dirty;
+
   struct hb_shaper_data_t shaper_data;
 
 
@@ -543,6 +553,8 @@
   }
 };
 
+HB_MARK_AS_FLAG_T (hb_font_t::dirty_t);
+
 #define HB_SHAPER_DATA_CREATE_FUNC_EXTRA_ARGS
 #define HB_SHAPER_IMPLEMENT(shaper) HB_SHAPER_DATA_PROTOTYPE(shaper, font);
 #include "hb-shaper-list.hh"

Modified: trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-font.cc
===================================================================
--- trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-font.cc	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-font.cc	2017-02-25 22:30:01 UTC (rev 43339)
@@ -1196,6 +1196,8 @@
     NULL, /* user_data */
     NULL, /* destroy */
 
+    hb_font_t::NOTHING, /* dirty */
+
     {
 #define HB_SHAPER_IMPLEMENT(shaper) HB_SHAPER_DATA_INVALID,
 #include "hb-shaper-list.hh"
@@ -1348,6 +1350,11 @@
   if (!parent)
     parent = hb_font_get_empty ();
 
+  if (parent == font->parent)
+    return;
+
+  font->dirty |= font->PARENT;
+
   hb_font_t *old = font->parent;
 
   font->parent = hb_font_reference (parent);
@@ -1372,6 +1379,37 @@
 }
 
 /**
+ * hb_font_set_face:
+ * @font: a font.
+ * @face: new face.
+ *
+ * Sets font-face of @font.
+ *
+ * Since: 1.4.3
+ **/
+void
+hb_font_set_face (hb_font_t *font,
+		  hb_face_t *face)
+{
+  if (font->immutable)
+    return;
+
+  if (unlikely (!face))
+    face = hb_face_get_empty ();
+
+  if (font->face == face)
+    return;
+
+  font->dirty |= font->FACE;
+
+  hb_face_t *old = font->face;
+
+  font->face = hb_face_reference (face);
+
+  hb_face_destroy (old);
+}
+
+/**
  * hb_font_get_face:
  * @font: a font.
  *
@@ -1417,6 +1455,8 @@
   if (!klass)
     klass = hb_font_funcs_get_empty ();
 
+  font->dirty |= font->FUNCS;
+
   hb_font_funcs_reference (klass);
   hb_font_funcs_destroy (font->klass);
   font->klass = klass;
@@ -1472,6 +1512,11 @@
   if (font->immutable)
     return;
 
+  if (font->x_scale == x_scale && font->y_scale == y_scale)
+    return;
+
+  font->dirty |= font->SCALE;
+
   font->x_scale = x_scale;
   font->y_scale = y_scale;
 }
@@ -1513,6 +1558,11 @@
   if (font->immutable)
     return;
 
+  if (font->x_ppem == x_ppem && font->y_ppem == y_ppem)
+    return;
+
+  font->dirty |= font->PPEM;
+
   font->x_ppem = x_ppem;
   font->y_ppem = y_ppem;
 }
@@ -1545,6 +1595,16 @@
 				      int *coords, /* 2.14 normalized */
 				      unsigned int coords_length)
 {
+  if (font->num_coords == coords_length &&
+      (coords_length == 0 ||
+       0 == memcmp (font->coords, coords, coords_length * sizeof (coords[0]))))
+  {
+    free (coords);
+    return;
+  }
+
+  font->dirty |= font->VARIATIONS;
+
   free (font->coords);
 
   font->coords = coords;
@@ -1627,7 +1687,7 @@
 }
 
 /**
- * hb_font_set_var_coords_normalized:
+ * hb_font_get_var_coords_normalized:
  *
  * Return value is valid as long as variation coordinates of the font
  * are not modified.

Modified: trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-font.h
===================================================================
--- trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-font.h	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-font.h	2017-02-25 22:30:01 UTC (rev 43339)
@@ -563,6 +563,10 @@
 HB_EXTERN hb_font_t *
 hb_font_get_parent (hb_font_t *font);
 
+HB_EXTERN void
+hb_font_set_face (hb_font_t *font,
+		  hb_face_t *face);
+
 HB_EXTERN hb_face_t *
 hb_font_get_face (hb_font_t *font);
 

Modified: trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-graphite2.cc
===================================================================
--- trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-graphite2.cc	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-graphite2.cc	2017-02-25 22:30:01 UTC (rev 43339)
@@ -27,7 +27,6 @@
  */
 
 #define HB_SHAPER graphite2
-#define hb_graphite2_shaper_font_data_t gr_font
 #include "hb-shaper-impl-private.hh"
 
 #include "hb-graphite2.h"
@@ -35,8 +34,8 @@
 #include <graphite2/Segment.h>
 
 
-HB_SHAPER_DATA_ENSURE_DECLARE(graphite2, face)
-HB_SHAPER_DATA_ENSURE_DECLARE(graphite2, font)
+HB_SHAPER_DATA_ENSURE_DEFINE(graphite2, face)
+HB_SHAPER_DATA_ENSURE_DEFINE(graphite2, font)
 
 
 /*
@@ -153,26 +152,17 @@
  * shaper font data
  */
 
-static float hb_graphite2_get_advance (const void *hb_font, unsigned short gid)
-{
-  return ((hb_font_t *) hb_font)->get_glyph_h_advance (gid);
-}
+struct hb_graphite2_shaper_font_data_t {};
 
 hb_graphite2_shaper_font_data_t *
-_hb_graphite2_shaper_font_data_create (hb_font_t *font)
+_hb_graphite2_shaper_font_data_create (hb_font_t *font HB_UNUSED)
 {
-  if (unlikely (!hb_graphite2_shaper_face_data_ensure (font->face))) return NULL;
-
-  hb_face_t *face = font->face;
-  hb_graphite2_shaper_face_data_t *face_data = HB_SHAPER_DATA_GET (face);
-
-  return gr_make_font_with_advance_fn (font->x_scale, font, &hb_graphite2_get_advance, face_data->grface);
+  return (hb_graphite2_shaper_font_data_t *) HB_SHAPER_DATA_SUCCEEDED;
 }
 
 void
-_hb_graphite2_shaper_font_data_destroy (hb_graphite2_shaper_font_data_t *data)
+_hb_graphite2_shaper_font_data_destroy (hb_graphite2_shaper_font_data_t *data HB_UNUSED)
 {
-  gr_font_destroy (data);
 }
 
 /*
@@ -181,8 +171,7 @@
 gr_font *
 hb_graphite2_font_get_gr_font (hb_font_t *font)
 {
-  if (unlikely (!hb_graphite2_shaper_font_data_ensure (font))) return NULL;
-  return HB_SHAPER_DATA_GET (font);
+  return NULL;
 }
 
 
@@ -230,7 +219,6 @@
 {
   hb_face_t *face = font->face;
   gr_face *grface = HB_SHAPER_DATA_GET (face)->grface;
-  gr_font *grfont = HB_SHAPER_DATA_GET (font);
 
   const char *lang = hb_language_to_string (hb_buffer_get_language (buffer));
   const char *lang_end = lang ? strchr (lang, '-') : NULL;
@@ -262,7 +250,7 @@
   hb_tag_t script_tag[2];
   hb_ot_tags_from_script (hb_buffer_get_script (buffer), &script_tag[0], &script_tag[1]);
 
-  seg = gr_make_seg (grfont, grface,
+  seg = gr_make_seg (NULL, grface,
 		     script_tag[1] == HB_TAG_NONE ? script_tag[0] : script_tag[1],
 		     feats,
 		     gr_utf32, chars, buffer->len,
@@ -373,7 +361,10 @@
   }
   buffer->len = glyph_count;
 
-  float yscale = font->y_scale / font->x_scale;
+  unsigned int upem = hb_face_get_upem (face);
+  float xscale = (float) font->x_scale / upem;
+  float yscale = (float) font->y_scale / upem;
+  yscale *= yscale / xscale;
   /* Positioning. */
   if (!HB_DIRECTION_IS_BACKWARD(buffer->props.direction))
   {
@@ -383,16 +374,16 @@
     curradvx = 0;
     for (is = gr_seg_first_slot (seg); is; pPos++, ++info, is = gr_slot_next_in_segment (is))
     {
-      pPos->x_offset = gr_slot_origin_X (is) - curradvx;
+      pPos->x_offset = gr_slot_origin_X (is) * xscale - curradvx;
       pPos->y_offset = gr_slot_origin_Y (is) * yscale - curradvy;
       if (info->cluster != currclus) {
-        pPos->x_advance = info->var1.i32;
+        pPos->x_advance = info->var1.i32 * xscale;
         curradvx += pPos->x_advance;
         currclus = info->cluster;
       } else
         pPos->x_advance = 0.;
 
-      pPos->y_advance = gr_slot_advance_Y (is, grface, grfont) * yscale;
+      pPos->y_advance = gr_slot_advance_Y (is, grface, NULL) * yscale;
       curradvy += pPos->y_advance;
     }
   }
@@ -401,20 +392,20 @@
     int currclus = -1;
     const hb_glyph_info_t *info = buffer->info;
     hb_glyph_position_t *pPos = hb_buffer_get_glyph_positions (buffer, NULL);
-    curradvx = gr_seg_advance_X(seg);
+    curradvx = gr_seg_advance_X(seg) * xscale;
     for (is = gr_seg_first_slot (seg); is; pPos++, info++, is = gr_slot_next_in_segment (is))
     {
       if (info->cluster != currclus)
       {
-        pPos->x_advance = info->var1.i32;
-        if (currclus != -1) curradvx -= info[-1].var1.i32;
+        pPos->x_advance = info->var1.i32 * xscale;
+        if (currclus != -1) curradvx -= info[-1].var1.i32 * xscale;
         currclus = info->cluster;
       } else
       pPos->x_advance = 0.;
 
-      pPos->y_advance = gr_slot_advance_Y (is, grface, grfont) * yscale;
+      pPos->y_advance = gr_slot_advance_Y (is, grface, NULL) * yscale;
       curradvy -= pPos->y_advance;
-      pPos->x_offset = gr_slot_origin_X (is) - curradvx + pPos->x_advance;
+      pPos->x_offset = gr_slot_origin_X (is) * xscale - curradvx + pPos->x_advance;
       pPos->y_offset = gr_slot_origin_Y (is) * yscale - curradvy;
     }
     hb_buffer_reverse_clusters (buffer);

Modified: trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-graphite2.h
===================================================================
--- trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-graphite2.h	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-graphite2.h	2017-02-25 22:30:01 UTC (rev 43339)
@@ -39,10 +39,14 @@
 HB_EXTERN gr_face *
 hb_graphite2_face_get_gr_face (hb_face_t *face);
 
+#ifndef HB_DISABLE_DEPRECATED
+
 HB_EXTERN gr_font *
 hb_graphite2_font_get_gr_font (hb_font_t *font);
 
+#endif
 
+
 HB_END_DECLS
 
 #endif /* HB_GRAPHITE2_H */

Modified: trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-layout-gsubgpos-private.hh
===================================================================
--- trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-layout-gsubgpos-private.hh	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-layout-gsubgpos-private.hh	2017-02-25 22:30:01 UTC (rev 43339)
@@ -959,7 +959,7 @@
   TRACE_APPLY (NULL);
 
   hb_buffer_t *buffer = c->buffer;
-  unsigned int end;
+  int end;
 
   /* All positions are distance from beginning of *output* buffer.
    * Adjust. */
@@ -998,8 +998,8 @@
 
     /* Recursed lookup changed buffer len.  Adjust. */
 
-    end = int (end) + delta;
-    if (end <= match_positions[idx])
+    end += delta;
+    if (end <= int (match_positions[idx]))
     {
       /* End might end up being smaller than match_positions[idx] if the recursed
        * lookup ended up removing many items, more than we have had matched.

Modified: trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-layout-private.hh
===================================================================
--- trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-layout-private.hh	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-layout-private.hh	2017-02-25 22:30:01 UTC (rev 43339)
@@ -623,5 +623,4 @@
 #undef lig_props
 #undef glyph_props
 
-
 #endif /* HB_OT_LAYOUT_PRIVATE_HH */

Modified: trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-layout.cc
===================================================================
--- trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-layout.cc	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-layout.cc	2017-02-25 22:30:01 UTC (rev 43339)
@@ -39,8 +39,6 @@
 #include "hb-ot-map-private.hh"
 
 
-HB_SHAPER_DATA_ENSURE_DECLARE(ot, face)
-
 hb_ot_layout_t *
 _hb_ot_layout_create (hb_face_t *face)
 {
@@ -107,10 +105,16 @@
       || (994 == gdef_len && 60336 == gpos_len && 24474 == gsub_len)
       /* sha1sum:7199385abb4c2cc81c83a151a7599b6368e92343  tahomabd.ttf from Windows 10 */
       || (1006 == gdef_len && 61740 == gpos_len && 24470 == gsub_len)
+      /* sha1sum:b9c84d820c49850d3d27ec498be93955b82772b5  tahoma.ttf from Windows 10 AU */
+      || (1006 == gdef_len && 61352 == gpos_len && 24576 == gsub_len)
+      /* sha1sum:2bdfaab28174bdadd2f3d4200a30a7ae31db79d2  tahomabd.ttf from Windows 10 AU */
+      || (1018 == gdef_len && 62834 == gpos_len && 24572 == gsub_len)
       /* sha1sum:b0d36cf5a2fbe746a3dd277bffc6756a820807a7  Tahoma.ttf from Mac OS X 10.9 */
       || (832 == gdef_len && 47162 == gpos_len && 7324 == gsub_len)
       /* sha1sum:12fc4538e84d461771b30c18b5eb6bd434e30fba  Tahoma Bold.ttf from Mac OS X 10.9 */
       || (844 == gdef_len && 45474 == gpos_len && 7302 == gsub_len)
+      /* sha1sum:eb8afadd28e9cf963e886b23a30b44ab4fd83acc  himalaya.ttf from Windows 7 */
+      || (180 == gdef_len && 7254 == gpos_len && 13054 == gsub_len)
       /* sha1sum:73da7f025b238a3f737aa1fde22577a6370f77b0  himalaya.ttf from Windows 8 */
       || (192 == gdef_len && 7254 == gpos_len && 12638 == gsub_len)
       /* sha1sum:6e80fd1c0b059bbee49272401583160dc1e6a427  himalaya.ttf from Windows 8.1 */
@@ -129,6 +133,9 @@
       || (1330 == gdef_len && 57938 == gpos_len && 109904 == gsub_len)
       /* 91fcc10cf15e012d27571e075b3b4dfe31754a8a padauk-3.0/Padauk-bookbold.ttf */
       || (1330 == gdef_len && 58972 == gpos_len && 109904 == gsub_len)
+      /* sha1sum: c26e41d567ed821bed997e937bc0c41435689e85  Padauk.ttf
+       *  "Padauk Regular" "Version 2.5", see https://crbug.com/681813 */
+      || (1004 == gdef_len && 14836 == gpos_len && 59092 == gsub_len)
     )
     {
       /* Many versions of Tahoma have bad GDEF tables that incorrectly classify some spacing marks

Modified: trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-math.cc
===================================================================
--- trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-math.cc	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-math.cc	2017-02-25 22:30:01 UTC (rev 43339)
@@ -26,10 +26,9 @@
 
 #include "hb-open-type-private.hh"
 
+#include "hb-ot-layout-private.hh"
 #include "hb-ot-math-table.hh"
 
-HB_SHAPER_DATA_ENSURE_DECLARE(ot, face)
-
 static inline const OT::MATH&
 _get_math (hb_face_t *face)
 {

Modified: trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape-complex-arabic.cc
===================================================================
--- trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape-complex-arabic.cc	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape-complex-arabic.cc	2017-02-25 22:30:01 UTC (rev 43339)
@@ -540,7 +540,7 @@
       /* See if we can improve the fit by adding an extra repeat and squeezing them together a bit. */
       hb_position_t extra_repeat_overlap = 0;
       hb_position_t shortfall = sign * w_remaining - sign * w_repeating * (n_copies + 1);
-      if (shortfall > 0)
+      if (shortfall > 0 && n_repeating > 0)
       {
         ++n_copies;
         hb_position_t excess = (n_copies + 1) * sign * w_repeating - sign * w_remaining;

Modified: trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape-complex-indic-table.cc
===================================================================
--- trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape-complex-indic-table.cc	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape-complex-indic-table.cc	2017-02-25 22:30:01 UTC (rev 43339)
@@ -422,6 +422,13 @@
       if (hb_in_range (u, 0xAA60u, 0xAA7Fu)) return indic_table[u - 0xAA60u + indic_offset_0xaa60u];
       break;
 
+    case 0x11u:
+      // According to ScriptExtensions.txt, these Grantha marks may also be used in Tamil,
+      // so the Indic shaper needs to know their categories.
+      if (unlikely (u == 0x11303)) return _(Vs,R);
+      if (unlikely (u == 0x1133c)) return _(N,B);
+      break;
+
     default:
       break;
   }

Modified: trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape-complex-private.hh
===================================================================
--- trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape-complex-private.hh	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape-complex-private.hh	2017-02-25 22:30:01 UTC (rev 43339)
@@ -191,6 +191,9 @@
     case HB_SCRIPT_MANICHAEAN:
     case HB_SCRIPT_PSALTER_PAHLAVI:
 
+    /* Unicode-9.0 additions */
+    case HB_SCRIPT_ADLAM:
+
       /* For Arabic script, use the Arabic shaper even if no OT script tag was found.
        * This is because we do fallback shaping for Arabic script (and not others).
        * But note that Arabic shaping is applicable only to horizontal layout; for

Modified: trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape-normalize.cc
===================================================================
--- trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape-normalize.cc	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape-normalize.cc	2017-02-25 22:30:01 UTC (rev 43339)
@@ -91,7 +91,7 @@
 static inline void
 set_glyph (hb_glyph_info_t &info, hb_font_t *font)
 {
-  font->get_nominal_glyph (info.codepoint, &info.glyph_index());
+  (void) font->get_nominal_glyph (info.codepoint, &info.glyph_index());
 }
 
 static inline void

Modified: trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape.cc
===================================================================
--- trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape.cc	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape.cc	2017-02-25 22:30:01 UTC (rev 43339)
@@ -128,6 +128,8 @@
  * shaper face data
  */
 
+HB_SHAPER_DATA_ENSURE_DEFINE(ot, face)
+
 hb_ot_shaper_face_data_t *
 _hb_ot_shaper_face_data_create (hb_face_t *face)
 {
@@ -145,6 +147,8 @@
  * shaper font data
  */
 
+HB_SHAPER_DATA_ENSURE_DEFINE(ot, font)
+
 struct hb_ot_shaper_font_data_t {};
 
 hb_ot_shaper_font_data_t *

Modified: trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-var-hvar-table.hh
===================================================================
--- trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-var-hvar-table.hh	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-var-hvar-table.hh	2017-02-25 22:30:01 UTC (rev 43339)
@@ -78,10 +78,10 @@
   { return (format & 0xF) + 1; }
 
   protected:
-  USHORT format;		/* A packed field that describes the compressed
+  USHORT	format;		/* A packed field that describes the compressed
 				 * representation of delta-set indices. */
-  USHORT mapCount;		/* The number of mapping entries. */
-  BYTE mapData[VAR];		/* The delta-set index mapping data. */
+  USHORT	mapCount;	/* The number of mapping entries. */
+  BYTE		mapData[VAR];	/* The delta-set index mapping data. */
 
   public:
   DEFINE_SIZE_ARRAY (4, mapData);

Added: trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-var-mvar-table.hh
===================================================================
--- trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-var-mvar-table.hh	                        (rev 0)
+++ trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-var-mvar-table.hh	2017-02-25 22:30:01 UTC (rev 43339)
@@ -0,0 +1,110 @@
+/*
+ * Copyright © 2017  Google, Inc.
+ *
+ *  This is part of HarfBuzz, a text shaping library.
+ *
+ * Permission is hereby granted, without written agreement and without
+ * license or royalty fees, to use, copy, modify, and distribute this
+ * software and its documentation for any purpose, provided that the
+ * above copyright notice and the following two paragraphs appear in
+ * all copies of this software.
+ *
+ * IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR
+ * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
+ * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN
+ * IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+ * DAMAGE.
+ *
+ * THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,
+ * BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
+ * FITNESS FOR A PARTICULAR PURPOSE.  THE SOFTWARE PROVIDED HEREUNDER IS
+ * ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO
+ * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
+ *
+ * Google Author(s): Behdad Esfahbod
+ */
+
+#ifndef HB_OT_VAR_MVAR_TABLE_HH
+#define HB_OT_VAR_MVAR_TABLE_HH
+
+#include "hb-ot-layout-common-private.hh"
+
+
+namespace OT {
+
+
+struct VariationValueRecord
+{
+  inline bool sanitize (hb_sanitize_context_t *c) const
+  {
+    TRACE_SANITIZE (this);
+    return_trace (c->check_struct (this));
+  }
+
+  public:
+  Tag		valueTag;	/* Four-byte tag identifying a font-wide measure. */
+  ULONG		varIdx;		/* Outer/inner index into VariationStore item. */
+
+  public:
+  DEFINE_SIZE_STATIC (8);
+};
+
+
+/*
+ * MVAR -- Metrics Variations Table
+ */
+
+#define HB_OT_TAG_MVAR HB_TAG('M','V','A','R')
+
+struct MVAR
+{
+  static const hb_tag_t tableTag	= HB_OT_TAG_MVAR;
+
+  inline bool sanitize (hb_sanitize_context_t *c) const
+  {
+    TRACE_SANITIZE (this);
+    return_trace (version.sanitize (c) &&
+		  likely (version.major == 1) &&
+		  c->check_struct (this) &&
+		  valueRecordSize >= VariationValueRecord::static_size &&
+		  varStore.sanitize (c, this) &&
+		  c->check_array (values, valueRecordSize, valueRecordCount));
+  }
+
+  inline float get_var (hb_tag_t tag,
+			int *coords, unsigned int coord_count) const
+  {
+    const VariationValueRecord *record;
+    record = (VariationValueRecord *) bsearch (&tag, values,
+					       valueRecordCount, valueRecordSize,
+					       (hb_compare_func_t) tag_compare);
+    if (!record)
+      return 0.;
+
+    return (this+varStore).get_delta (record->varIdx, coords, coord_count);
+  }
+
+protected:
+  static inline int tag_compare (const hb_tag_t *a, const Tag *b)
+  { return b->cmp (*a); }
+
+  protected:
+  FixedVersion<>version;	/* Version of the metrics variation table
+				 * initially set to 0x00010000u */
+  USHORT	reserved;	/* Not used; set to 0. */
+  USHORT	valueRecordSize;/* The size in bytes of each value record —
+				 * must be greater than zero. */
+  USHORT	valueRecordCount;/* The number of value records — may be zero. */
+  OffsetTo<VariationStore>
+		varStore;	/* Offset to item variation store table. */
+  BYTE		values[VAR];	/* Array of value records. The records must be
+				 * in binary order of their valueTag field. */
+
+  public:
+  DEFINE_SIZE_ARRAY (12, values);
+};
+
+} /* namespace OT */
+
+
+#endif /* HB_OT_VAR_MVAR_TABLE_HH */

Modified: trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-var.cc
===================================================================
--- trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-var.cc	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-var.cc	2017-02-25 22:30:01 UTC (rev 43339)
@@ -29,10 +29,9 @@
 #include "hb-ot-layout-private.hh"
 #include "hb-ot-var-avar-table.hh"
 #include "hb-ot-var-fvar-table.hh"
+#include "hb-ot-var-mvar-table.hh"
 #include "hb-ot-var.h"
 
-HB_SHAPER_DATA_ENSURE_DECLARE(ot, face)
-
 /*
  * fvar/avar
  */

Modified: trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-shape-plan.cc
===================================================================
--- trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-shape-plan.cc	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-shape-plan.cc	2017-02-25 22:30:01 UTC (rev 43339)
@@ -35,13 +35,6 @@
 #endif
 
 
-#define HB_SHAPER_IMPLEMENT(shaper) \
-	HB_SHAPER_DATA_ENSURE_DECLARE(shaper, face) \
-	HB_SHAPER_DATA_ENSURE_DECLARE(shaper, font)
-#include "hb-shaper-list.hh"
-#undef HB_SHAPER_IMPLEMENT
-
-
 static void
 hb_shape_plan_plan (hb_shape_plan_t    *shape_plan,
 		    const hb_feature_t *user_features,

Modified: trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-shaper-private.hh
===================================================================
--- trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-shaper-private.hh	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-shaper-private.hh	2017-02-25 22:30:01 UTC (rev 43339)
@@ -65,11 +65,13 @@
 #define HB_SHAPER_DATA_INVALID ((void *) -1)
 #define HB_SHAPER_DATA_IS_INVALID(data) ((void *) (data) == HB_SHAPER_DATA_INVALID)
 
-#define HB_SHAPER_DATA_TYPE(shaper, object)		struct hb_##shaper##_shaper_##object##_data_t
+#define HB_SHAPER_DATA_TYPE_NAME(shaper, object)	hb_##shaper##_shaper_##object##_data_t
+#define HB_SHAPER_DATA_TYPE(shaper, object)		struct HB_SHAPER_DATA_TYPE_NAME(shaper, object)
 #define HB_SHAPER_DATA_INSTANCE(shaper, object, instance)	(* (HB_SHAPER_DATA_TYPE(shaper, object) **) &(instance)->shaper_data.shaper)
-#define HB_SHAPER_DATA(shaper, object)			HB_SHAPER_DATA_INSTANCE (shaper, object, object)
+#define HB_SHAPER_DATA(shaper, object)			HB_SHAPER_DATA_INSTANCE(shaper, object, object)
 #define HB_SHAPER_DATA_CREATE_FUNC(shaper, object)	_hb_##shaper##_shaper_##object##_data_create
 #define HB_SHAPER_DATA_DESTROY_FUNC(shaper, object)	_hb_##shaper##_shaper_##object##_data_destroy
+#define HB_SHAPER_DATA_ENSURE_FUNC(shaper, object)	hb_##shaper##_shaper_##object##_data_ensure
 
 #define HB_SHAPER_DATA_PROTOTYPE(shaper, object) \
 	HB_SHAPER_DATA_TYPE (shaper, object); /* Type forward declaration. */ \
@@ -76,7 +78,9 @@
 	extern "C" HB_INTERNAL HB_SHAPER_DATA_TYPE (shaper, object) * \
 	HB_SHAPER_DATA_CREATE_FUNC (shaper, object) (hb_##object##_t *object HB_SHAPER_DATA_CREATE_FUNC_EXTRA_ARGS); \
 	extern "C" HB_INTERNAL void \
-	HB_SHAPER_DATA_DESTROY_FUNC (shaper, object) (HB_SHAPER_DATA_TYPE (shaper, object) *data)
+	HB_SHAPER_DATA_DESTROY_FUNC (shaper, object) (HB_SHAPER_DATA_TYPE (shaper, object) *data); \
+	extern "C" HB_INTERNAL bool \
+	HB_SHAPER_DATA_ENSURE_FUNC (shaper, object) (hb_##object##_t *object)
 
 #define HB_SHAPER_DATA_DESTROY(shaper, object) \
     if (HB_SHAPER_DATA_TYPE (shaper, object) *data = HB_SHAPER_DATA (shaper, object)) \
@@ -83,9 +87,9 @@
       if (data != HB_SHAPER_DATA_INVALID && data != HB_SHAPER_DATA_SUCCEEDED) \
         HB_SHAPER_DATA_DESTROY_FUNC (shaper, object) (data);
 
-#define HB_SHAPER_DATA_ENSURE_DECLARE(shaper, object) \
-static inline bool \
-hb_##shaper##_shaper_##object##_data_ensure (hb_##object##_t *object) \
+#define HB_SHAPER_DATA_ENSURE_DEFINE(shaper, object) \
+bool \
+HB_SHAPER_DATA_ENSURE_FUNC(shaper, object) (hb_##object##_t *object) \
 {\
   retry: \
   HB_SHAPER_DATA_TYPE (shaper, object) *data = (HB_SHAPER_DATA_TYPE (shaper, object) *) hb_atomic_ptr_get (&HB_SHAPER_DATA (shaper, object)); \

Modified: trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-uniscribe.cc
===================================================================
--- trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-uniscribe.cc	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-uniscribe.cc	2017-02-25 22:30:01 UTC (rev 43339)
@@ -293,8 +293,8 @@
   unsigned int index_last;  /* == end - 1 */
 };
 
-HB_SHAPER_DATA_ENSURE_DECLARE(uniscribe, face)
-HB_SHAPER_DATA_ENSURE_DECLARE(uniscribe, font)
+HB_SHAPER_DATA_ENSURE_DEFINE(uniscribe, face)
+HB_SHAPER_DATA_ENSURE_DEFINE(uniscribe, font)
 
 
 /*

Modified: trunk/Build/source/libs/harfbuzz/version.ac
===================================================================
--- trunk/Build/source/libs/harfbuzz/version.ac	2017-02-25 21:42:13 UTC (rev 43338)
+++ trunk/Build/source/libs/harfbuzz/version.ac	2017-02-25 22:30:01 UTC (rev 43339)
@@ -8,4 +8,4 @@
 dnl --------------------------------------------------------
 dnl
 dnl  m4-include this file to define the current harfbuzz version
-m4_define([harfbuzz_version], [1.4.2])
+m4_define([harfbuzz_version], [1.4.3])



More information about the tex-live-commits mailing list