summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAkira Kakuto <kakuto@fuk.kindai.ac.jp>2017-03-06 14:22:59 +0000
committerAkira Kakuto <kakuto@fuk.kindai.ac.jp>2017-03-06 14:22:59 +0000
commit4ee4b14be744db40a2a178acc6e97b24bc3ae2b3 (patch)
treeca4a8a7099ad5096da5e1d7135f144acf4c69be0
parentd5a6843a4120ce0b57fd58ef790fb0a2f7971acc (diff)
harfbuzz 1.4.4
git-svn-id: svn://tug.org/texlive/trunk@43412 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Build/source/libs/README2
-rw-r--r--Build/source/libs/harfbuzz/ChangeLog5
-rw-r--r--Build/source/libs/harfbuzz/TLpatches/ChangeLog5
-rw-r--r--Build/source/libs/harfbuzz/TLpatches/TL-Changes2
-rwxr-xr-xBuild/source/libs/harfbuzz/configure24
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-src/ChangeLog76
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-src/NEWS8
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-src/configure.ac2
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-layout-gsubgpos-private.hh31
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape-complex-indic.cc2
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape.cc1
-rw-r--r--Build/source/libs/harfbuzz/version.ac2
12 files changed, 137 insertions, 23 deletions
diff --git a/Build/source/libs/README b/Build/source/libs/README
index 59f1ca7d348..06cd869e20e 100644
--- a/Build/source/libs/README
+++ b/Build/source/libs/README
@@ -24,7 +24,7 @@ gmp 6.1.2 - checked 16dec16
graphite2 1.3.9 - checked 13nov16
http://sourceforge.net/projects/silgraphite/files/graphite2/
-harfbuzz 1.4.3 - checked 25feb17
+harfbuzz 1.4.4 - checked 06mar17
http://www.freedesktop.org/software/harfbuzz/release/
icu 57.1 (release) - checked 27mar16
diff --git a/Build/source/libs/harfbuzz/ChangeLog b/Build/source/libs/harfbuzz/ChangeLog
index 7876a29e2ab..1886864f353 100644
--- a/Build/source/libs/harfbuzz/ChangeLog
+++ b/Build/source/libs/harfbuzz/ChangeLog
@@ -1,3 +1,8 @@
+2017-03-06 Akira Kakuto <kakuto@fuk.kindai.ac.jp>
+
+ Import harfbuzz-1.4.4.
+ * version.ac: Adjusted.
+
2017-02-25 Akira Kakuto <kakuto@fuk.kindai.ac.jp>
Import harfbuzz-1.4.3.
diff --git a/Build/source/libs/harfbuzz/TLpatches/ChangeLog b/Build/source/libs/harfbuzz/TLpatches/ChangeLog
index fd5b26cd274..72a58d4d2c5 100644
--- a/Build/source/libs/harfbuzz/TLpatches/ChangeLog
+++ b/Build/source/libs/harfbuzz/TLpatches/ChangeLog
@@ -1,3 +1,8 @@
+2017-03-06 Akira Kakuto <kakuto@fuk.kindai.ac.jp>
+
+ Imported harfbuzz-1.4.4 source tree from:
+ http://www.freedesktop.org/software/harfbuzz/release/
+
2017-02-25 Akira Kakuto <kakuto@fuk.kindai.ac.jp>
Imported harfbuzz-1.4.3 source tree from:
diff --git a/Build/source/libs/harfbuzz/TLpatches/TL-Changes b/Build/source/libs/harfbuzz/TLpatches/TL-Changes
index 4560aa752a8..d197056856a 100644
--- a/Build/source/libs/harfbuzz/TLpatches/TL-Changes
+++ b/Build/source/libs/harfbuzz/TLpatches/TL-Changes
@@ -1,4 +1,4 @@
-Changes applied to the harfbuzz-1.4.3/ tree as obtained from:
+Changes applied to the harfbuzz-1.4.4/ tree as obtained from:
http://www.freedesktop.org/software/harfbuzz/release/
Removed:
diff --git a/Build/source/libs/harfbuzz/configure b/Build/source/libs/harfbuzz/configure
index 510e2866316..dcf9c15b909 100755
--- a/Build/source/libs/harfbuzz/configure
+++ b/Build/source/libs/harfbuzz/configure
@@ -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.3.
+# Generated by GNU Autoconf 2.69 for harfbuzz (TeX Live) 1.4.4.
#
# Report bugs to <tex-k@tug.org>.
#
@@ -580,8 +580,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='harfbuzz (TeX Live)'
PACKAGE_TARNAME='harfbuzz--tex-live-'
-PACKAGE_VERSION='1.4.3'
-PACKAGE_STRING='harfbuzz (TeX Live) 1.4.3'
+PACKAGE_VERSION='1.4.4'
+PACKAGE_STRING='harfbuzz (TeX Live) 1.4.4'
PACKAGE_BUGREPORT='tex-k@tug.org'
PACKAGE_URL=''
@@ -1312,7 +1312,7 @@ if test "$ac_init_help" = "long"; then
# 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.3 to adapt to many kinds of systems.
+\`configure' configures harfbuzz (TeX Live) 1.4.4 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1383,7 +1383,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of harfbuzz (TeX Live) 1.4.3:";;
+ short | recursive ) echo "Configuration of harfbuzz (TeX Live) 1.4.4:";;
esac
cat <<\_ACEOF
@@ -1490,7 +1490,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-harfbuzz (TeX Live) configure 1.4.3
+harfbuzz (TeX Live) configure 1.4.4
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2080,7 +2080,7 @@ cat >config.log <<_ACEOF
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.3, which was
+It was created by harfbuzz (TeX Live) $as_me 1.4.4, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@@ -4003,7 +4003,7 @@ fi
# Define the identity of the package.
PACKAGE='harfbuzz--tex-live-'
- VERSION='1.4.3'
+ VERSION='1.4.4'
cat >>confdefs.h <<_ACEOF
@@ -4206,8 +4206,8 @@ WARNING_CFLAGS=$kpse_cv_warning_cflags
HB_VERSION_MAJOR=1
HB_VERSION_MINOR=4
-HB_VERSION_MICRO=3
-HB_VERSION=1.4.3
+HB_VERSION_MICRO=4
+HB_VERSION=1.4.4
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
@@ -6866,7 +6866,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# 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.3, which was
+This file was extended by harfbuzz (TeX Live) $as_me 1.4.4, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -6932,7 +6932,7 @@ _ACEOF
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.3
+harfbuzz (TeX Live) config.status 1.4.4
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
diff --git a/Build/source/libs/harfbuzz/harfbuzz-src/ChangeLog b/Build/source/libs/harfbuzz/harfbuzz-src/ChangeLog
index 12e9995315f..f0964ec544b 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-src/ChangeLog
+++ b/Build/source/libs/harfbuzz/harfbuzz-src/ChangeLog
@@ -1,3 +1,79 @@
+commit 9ac9af725c781f4597e8db46cf330d595c072739
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date: Sun Mar 5 13:51:01 2017 -0800
+
+ Add TODO item
+
+ src/hb-ot-layout-gsubgpos-private.hh | 24 +++++++++++++++++++++++-
+ 1 file changed, 23 insertions(+), 1 deletion(-)
+
+commit 5aec2fb8d0a4db52ae414d980b66018ca5ce1e9c
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date: Thu Mar 2 11:46:33 2017 -0800
+
+ Remove TODO item that is not going to happen
+
+ src/hb-ot-shape.cc | 1 -
+ 1 file changed, 1 deletion(-)
+
+commit b9b005f3a44ccf78a45b212b126287b69b9f4b40
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date: Wed Mar 1 14:27:23 2017 -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.
+
+ src/hb-ot-layout-gsubgpos-private.hh | 7 +++----
+ .../sha1sum/5bbf3712e6f79775c66a4407837a90e591efbef2.ttf | Bin 0 ->
+ 6400 bytes
+ test/shaping/tests/context-matching.tests | 1 +
+ 3 files changed, 4 insertions(+), 4 deletions(-)
+
+commit a11501444cfc4854bfe2b1d3ce0fc5a957e959d8
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date: Sat Feb 25 13:37:54 2017 -0800
+
+ Add few tests found by libFuzzer and oss-fuzz
+
+ .../sha1sum/a34a9191d9376bda419836effeef7e75c1386016.ttf | Bin 0 ->
+ 1010 bytes
+ .../sha1sum/a69118c2c2ada48ff803d9149daa54c9ebdae30e.ttf | Bin 0 ->
+ 820 bytes
+ .../sha1sum/b6acef662e0beb8d5fcf5b61c6b0ca69537b7402.ttf | Bin 0 ->
+ 3301 bytes
+ .../sha1sum/e88c339237f52d21e01c55f01b9c1b4cc14a0467.ttf | Bin 0 ->
+ 515 bytes
+ test/shaping/tests/fuzzed.tests | 4 ++++
+ 5 files changed, 4 insertions(+)
+
+commit 85630996b8afa699f7b5d19346cdf5c72fcd6e2d
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date: Sat Feb 25 13:30:38 2017 -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
+
+ src/hb-ot-shape-complex-indic.cc | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 6685d281d6f50bf046bbfef4a5263e15d15f2f02
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date: Sat Feb 25 11:35:05 2017 -0800
+
+ 1.4.3
+
+ NEWS | 12 ++++++++++++
+ configure.ac | 2 +-
+ 2 files changed, 13 insertions(+), 1 deletion(-)
+
commit a657f23ca31237d652b5c101ed24194b6aeadaf8
Author: Dominik Röttsches <d-r@roettsches.de>
Date: Mon Feb 20 21:52:07 2017 +0200
diff --git a/Build/source/libs/harfbuzz/harfbuzz-src/NEWS b/Build/source/libs/harfbuzz/harfbuzz-src/NEWS
index e175b38a8f5..48a51d68fe4 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-src/NEWS
+++ b/Build/source/libs/harfbuzz/harfbuzz-src/NEWS
@@ -1,3 +1,11 @@
+Overview of changes leading to 1.4.4
+Sunday, March 5, 2017
+====================================
+
+- Fix Context lookup application when moving back after a glyph deletion.
+- Fix buffer-overrun in Bengali.
+
+
Overview of changes leading to 1.4.3
Saturday, February 25, 2017
====================================
diff --git a/Build/source/libs/harfbuzz/harfbuzz-src/configure.ac b/Build/source/libs/harfbuzz/harfbuzz-src/configure.ac
index a3eb0f02136..55b48a53b8a 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-src/configure.ac
+++ b/Build/source/libs/harfbuzz/harfbuzz-src/configure.ac
@@ -1,6 +1,6 @@
AC_PREREQ([2.64])
AC_INIT([HarfBuzz],
- [1.4.3],
+ [1.4.4],
[https://github.com/behdad/harfbuzz/issues/new],
[harfbuzz],
[http://harfbuzz.org/])
diff --git a/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-layout-gsubgpos-private.hh b/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-layout-gsubgpos-private.hh
index 0c423526861..005ed21d804 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-layout-gsubgpos-private.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-layout-gsubgpos-private.hh
@@ -996,17 +996,38 @@ static inline bool apply_lookup (hb_apply_context_t *c,
if (!delta)
continue;
- /* Recursed lookup changed buffer len. Adjust. */
+ /* Recursed lookup changed buffer len. Adjust.
+ *
+ * TODO:
+ *
+ * Right now, if buffer length increased by n, we assume n new glyphs
+ * were added right after the current position, and if buffer length
+ * was decreased by n, we assume n match positions after the current
+ * one where removed. The former (buffer length increased) case is
+ * fine, but the decrease case can be improved in at least two ways,
+ * both of which are significant:
+ *
+ * - If recursed-to lookup is MultipleSubst and buffer length
+ * decreased, then it's current match position that was deleted,
+ * NOT the one after it.
+ *
+ * - If buffer length was decreased by n, it does not necessarily
+ * mean that n match positions where removed, as there might
+ * have been marks and default-ignorables in the sequence. We
+ * should instead drop match positions between current-position
+ * and current-position + n instead.
+ *
+ * It should be possible to construct tests for both of these cases.
+ */
end += delta;
- if (end <= int (match_positions[idx]))
+ 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.
+ * lookup ended up removing too many items.
* Just never rewind end back and get out of here.
* https://bugs.chromium.org/p/chromium/issues/detail?id=659496 */
end = match_positions[idx];
- /* There can't be any further changes. */
break;
}
@@ -1019,7 +1040,7 @@ static inline bool apply_lookup (hb_apply_context_t *c,
}
else
{
- /* NOTE: delta is negative. */
+ /* NOTE: delta is non-positive. */
delta = MAX (delta, (int) next - (int) count);
next -= delta;
}
diff --git a/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape-complex-indic.cc b/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape-complex-indic.cc
index b48fb561c39..ec12ce69e0b 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape-complex-indic.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape-complex-indic.cc
@@ -1497,7 +1497,7 @@ final_reordering_syllable (const hb_ot_shape_plan_t *plan,
if (reph_pos == REPH_POS_AFTER_SUB)
{
new_reph_pos = base;
- while (new_reph_pos < end &&
+ while (new_reph_pos + 1 < end &&
!( FLAG_SAFE (info[new_reph_pos + 1].indic_position()) & (FLAG (POS_POST_C) | FLAG (POS_AFTER_POST) | FLAG (POS_SMVD))))
new_reph_pos++;
if (new_reph_pos < end)
diff --git a/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape.cc b/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape.cc
index 2eacb34c4d9..29f5e58e519 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-shape.cc
@@ -378,7 +378,6 @@ hb_ot_shape_setup_masks_fraction (hb_ot_shape_context_t *c)
post_mask = c->plan->numr_mask | c->plan->frac_mask;
}
- /* TODO look in pre/post context text also. */
unsigned int count = buffer->len;
hb_glyph_info_t *info = buffer->info;
for (unsigned int i = 0; i < count; i++)
diff --git a/Build/source/libs/harfbuzz/version.ac b/Build/source/libs/harfbuzz/version.ac
index d3c36985937..b9f790cd2b1 100644
--- a/Build/source/libs/harfbuzz/version.ac
+++ b/Build/source/libs/harfbuzz/version.ac
@@ -8,4 +8,4 @@ dnl
dnl --------------------------------------------------------
dnl
dnl m4-include this file to define the current harfbuzz version
-m4_define([harfbuzz_version], [1.4.3])
+m4_define([harfbuzz_version], [1.4.4])