commit fe532923101586e316b300d419a337d357cd93da
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 28 20:47:58 2019 -0500

    [CI] Peg CircleCI badge link to master branch

    [skip ci]

 README.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9569819e24f72926a5b26e4c8a86d815c0132745
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 28 20:43:43 2019 -0500

    [ci] Peg build status badges to master branch

    [skip ci]

 README.md | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 1e29906a77c275c34a440a416654a514810485e1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 28 20:38:15 2019 -0500

    Switch README / README.md

    [skip ci]

 README    | 19 +------------------
 README.md | 19 ++++++++++++++++++-
 2 files changed, 19 insertions(+), 19 deletions(-)

commit 9a1df82e3f13fbd4488ee9955814bbb5d0957074
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 28 14:15:18 2019 -0500

    [uniscribe] Whitelist function type cast

 src/hb-uniscribe.cc | 3 +++
 1 file changed, 3 insertions(+)

commit 6e1c3eaf7005d06c89f0807f693aadd835aa0468
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 28 14:12:41 2019 -0500

    Fix sign comparison error

 src/hb-open-file.hh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 9db7a7da6339eacbb6c699fa1939bbd7e9e148f5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 28 14:09:59 2019 -0500

    Fix warning

    c:\projects\harfbuzz\src\hb-ot-color-cbdt-table.hh(59): warning C4146:
    unary minus operator applied to unsigned type, result still unsigned
    [C:\projects\harfbuzz\build\harfbuzz.vcxproj]

 src/hb-ot-color-cbdt-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 51b584880e550545ced3aa8ba4ccad3cf79bb53e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 28 14:09:45 2019 -0500

    [pragma] Silence MSVC unknown-pragma warning

 src/hb.hh | 3 +++
 1 file changed, 3 insertions(+)

commit 60022ecced202760daa7f75516bba6a4689a49de
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 26 14:04:51 2019 +0100

    Fix -Wcast-function-type warnings in util/ with gcc 4.8

 src/hb.hh       | 1 +
 util/options.hh | 5 ++++-
 2 files changed, 5 insertions(+), 1 deletion(-)

commit a9321cb5f88cae1dafbd623b8bf7c68a82a3c211
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 25 16:11:45 2019 +0100

    Fix mac test

 test/shaping/data/in-house/tests/macos.tests | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit f39809752909f193a9c60f4357a88ea1c3ce1162
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 25 16:08:25 2019 +0100

    More static constexpr

 src/hb-machinery.hh  | 10 +++++-----
 src/hb-set-digest.hh | 14 +++++++-------
 2 files changed, 12 insertions(+), 12 deletions(-)

commit 06358ae9746ae72c0917e8a5f294d14fd695f380
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 25 15:11:47 2019 +0100

    [AAT] Add test for recent Ligature stack fix, using Zapfino on Mac

 test/shaping/data/in-house/tests/macos.tests | 2 ++
 1 file changed, 2 insertions(+)

commit e970de48bcbdccd29350f331288c0a98f7846c16
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 24 18:16:17 2019 +0100

    [AAT] Minor sign

 src/hb-aat-layout-morx-table.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit a371a28cda23805cbea22867e0a3ed53ecb811ed
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 24 18:12:25 2019 +0100

    [AAT] Use a ring buffer for ligature stack

    I think Apple does very similarly, but probably with a stack size
    of 16.
    We do it with a stack size that is currently set to 64.

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1531

 src/hb-aat-layout-morx-table.hh | 15 ++++++---------
 1 file changed, 6 insertions(+), 9 deletions(-)

commit 7886b1578fceee368ae5afe206ff98f50e1c42e3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 24 18:06:17 2019 +0100

    Whitespace

 src/hb-aat-layout-morx-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b976940243bf1f174bd6abb85955789ef2631d24
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 24 18:01:07 2019 +0100

    [AAT] Handle transition errors during machine operation

    Before we used to give up.  Now, just ignore error and continue
    processing.

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1531

 src/hb-aat-layout-common.hh     |  3 +--
 src/hb-aat-layout-kerx-table.hh | 21 +++++++--------------
 src/hb-aat-layout-morx-table.hh | 34 +++++++++++++---------------------
 3 files changed, 21 insertions(+), 37 deletions(-)

commit e234bb6a428cd6c8ddf57eb078cd51b9d1f25ba8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 24 17:23:11 2019 +0100

    [AAT] Ignore machine errors and continue

 src/hb-aat-layout-common.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 1ec90514f69efc329691186466f62373efa863b1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 24 17:21:41 2019 +0100

    [AAT] Minor

 src/hb-aat-layout-common.hh     | 12 ++++----
 src/hb-aat-layout-kerx-table.hh | 38 +++++++++++------------
 src/hb-aat-layout-morx-table.hh | 68
 ++++++++++++++++++++---------------------
 3 files changed, 59 insertions(+), 59 deletions(-)

commit 299eca0c3b28c99add006420bc667431d874fb2e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 24 17:17:00 2019 +0100

    [AAT] Handle out-of-bounds classes

 src/hb-aat-layout-common.hh | 13 ++++++-------
 1 file changed, 6 insertions(+), 7 deletions(-)

commit c4623db4a3f963394db940449007fa3312460993
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 24 17:10:12 2019 +0100

    [AAT] Minor

 src/hb-aat-layout-common.hh | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

commit c4e36f97b6df1eb5fba588b09ae1630bb5c49589
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 24 17:06:16 2019 +0100

    [AAT] Minor

 src/hb-aat-layout-common.hh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit f60282c5bff4a317ba3180e3519274963c6e8849
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 24 16:29:09 2019 +0100

    More pragma control

    Fixes https://bugs.chromium.org/p/chromium/issues/detail?id=924848

 src/hb.hh | 16 +++++++++++++++-
 1 file changed, 15 insertions(+), 1 deletion(-)

commit fd0889f903ac1ba2da06e77eed8424395ea85a90
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 24 16:12:52 2019 +0100

    Comment

 src/hb-ot-shape.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 00f06d1aa61e9a6d01b5943ce55ba2b0c40237ee
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 24 16:11:05 2019 +0100

    Fix test

 test/shaping/data/in-house/tests/cluster.tests | 1 -
 test/shaping/data/in-house/tests/emoji.tests   | 3 ++-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 9f314177336f9551756944e0e555614c9189c7a5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 24 16:08:33 2019 +0100

    Form cluster for Emoji sub-region tag sequences

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1556

 src/hb-ot-shape.cc                                       |  13
 +++++++++++++
 .../fonts/8d9c4b193808b8bde94389ba7831c1fc6f9e794e.ttf   | Bin 0 ->
 1548 bytes
 test/shaping/data/in-house/tests/cluster.tests           |   1 +
 3 files changed, 14 insertions(+)

commit 5034f8f2ab8f53eb0395e6f6ce2f8da69a08460d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 24 12:50:38 2019 +0100

    Fix macos tests with previous commit

 test/shaping/data/in-house/tests/macos.tests | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 3ecda71041a7239ca37ec7b888809efe8f595a19
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 24 12:08:23 2019 +0100

    Adjust mark offsets when zeroing from fallback mark positioning code

    Adjust tests.

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1532

 src/hb-ot-shape-fallback.cc                        | 31
 +++++++++++++++-------
 src/hb-ot-shape-fallback.hh                        |  3 ++-
 src/hb-ot-shape.cc                                 |  3 ++-
 .../in-house/tests/arabic-fallback-shaping.tests   |  2 +-
 test/shaping/data/in-house/tests/cluster.tests     |  2 +-
 .../data/in-house/tests/fallback-positioning.tests |  4 +--
 6 files changed, 30 insertions(+), 15 deletions(-)

commit 36fb2b4da9718a86978fa07c99ba4345f7ca9b4b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 23 20:53:57 2019 +0100

    [AAT] In InsertionChain, set mark to previous-position if inserting

    Fixes MORX-31

 src/hb-aat-layout-morx-table.hh | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

commit cbe0ed117ac86179183c389977d15981d26524f7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 23 20:45:18 2019 +0100

    [AAT] Re-enable tests MORX-31 and MORX-41

 test/shaping/data/text-rendering-tests/DISABLED         | 3 ---
 test/shaping/data/text-rendering-tests/Makefile.sources | 2 ++
 2 files changed, 2 insertions(+), 3 deletions(-)

commit baf4d6a68a031bf65e17ccd5dac15fe7d0df33b6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 23 20:36:07 2019 +0100

    [AAT] Remove mark_set from InsertionChain

 src/hb-aat-layout-morx-table.hh | 7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)

commit 410731d3fb678365c07a4d1745b72b6bb3142b70
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 23 20:30:48 2019 +0100

    [test/text-rendering-tests] Update from upstream

 test/shaping/data/text-rendering-tests/extract-tests.py    | 2 +-
 test/shaping/data/text-rendering-tests/tests/MORX-14.tests | 2 +-
 test/shaping/data/text-rendering-tests/tests/MORX-32.tests | 8 ++++----
 test/shaping/data/text-rendering-tests/tests/MORX-41.tests | 4 ++--
 4 files changed, 8 insertions(+), 8 deletions(-)

commit 0b2fa342de88bbe609b2147444e56c94680cbd38
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 22 16:36:00 2019 +0100

    More of previous

 src/hb-subset-cff1.cc | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

commit a5e5dd8b42b40c3647e06e6bb62580af77bed42b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 22 16:30:07 2019 +0100

    Fix sign-compare error resulted from promoting unsigned integers to
    signed larger ints

    Clang and gcc know not to warn in these cases, but not nonmainstream
    compilers

 src/hb-subset-cff2.cc | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

commit 32379bbf10726bb7ed2e507d0a6b5917c350e056
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 22 12:55:29 2019 +0100

    Cast HB_UNTAG results to uint8_t

 src/hb-common.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 83d4aa5ca9a39dbe66db9b81b34f5b568503bd7e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 22 12:52:23 2019 +0100

    More -Wcast-error fix

 src/hb-dsalgs.hh | 3 +++
 1 file changed, 3 insertions(+)

commit 447323b85a7b68bd41561a87c91431cd05227b97
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 22 12:45:40 2019 +0100

    Better fix for -Wcast-align errors

 src/hb-font.cc          | 33 +++++++++------------------------
 src/hb-ft.cc            | 14 ++++----------
 src/hb-machinery.hh     | 16 ++++++++++++++++
 src/hb-ot-cmap-table.hh |  7 ++-----
 src/hb-ot-font.cc       | 14 ++++----------
 5 files changed, 35 insertions(+), 49 deletions(-)

commit 81ec543d800c4a94b5e608fd87e84d33d7dae8ac
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 22 12:43:12 2019 +0100

    More -Wcast-error fixes

 src/hb-font.cc    | 8 ++++----
 src/hb-ft.cc      | 2 +-
 src/hb-ot-font.cc | 4 ++--
 3 files changed, 7 insertions(+), 7 deletions(-)

commit 90772725493108c79487a67620f0240e5d68f4ee
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 22 12:40:18 2019 +0100

    pragma GCC diagnostic error   "-Wsign-compare"

 src/hb.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 8d05bf7dc0094e75be07ca1f7ef852a1e45d0687
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 22 12:34:05 2019 +0100

    Fix cast-align error

    If compiler doesn't inline StructAtOffset, this was an error since we
    only disable cast-align at call-site.  So, move the cast out.

    ../src/hb-machinery.hh: In instantiation of 'const Type&
    StructAtOffset(const void*, unsigned int) [with Type = unsigned int]':
    ../src/hb-font.cc:146:85:   required from here
    ../src/hb-machinery.hh:63:12: error: cast from 'const char*' to
    'const unsigned int*' increases required alignment of target type
    [-Werror=cast-align]
     { return * reinterpret_cast<const Type*> ((const char *) P +
     offset); }
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ../src/hb-machinery.hh: In instantiation of 'Type&
    StructAtOffset(void*, unsigned int) [with Type = unsigned int]':
    ../src/hb-font.cc:147:79:   required from here
    ../src/hb-machinery.hh:66:12: error: cast from 'char*' to 'unsigned
    int*' increases required alignment of target type [-Werror=cast-align]
     { return * reinterpret_cast<Type*> ((char *) P + offset); }
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

 src/hb-font.cc          | 8 ++++----
 src/hb-ft.cc            | 6 +++---
 src/hb-ot-cmap-table.hh | 4 ++--
 src/hb-ot-font.cc       | 4 ++--
 4 files changed, 11 insertions(+), 11 deletions(-)

commit b270cee6c5800c019aafb55e9ca9d7e92a92d3ec
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 22 12:29:05 2019 +0100

    [CI] Remove gcc 4.2 bots

    We don't support that version anymore.

 .circleci/config.yml | 25 -------------------------
 1 file changed, 25 deletions(-)

commit 70a52d6bd8c45630ca90e945fc4d716fe9114010
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 22 12:15:23 2019 +0100

    Convert all other enum class consts to static constexpr

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1553

 src/hb-cff-interp-common.hh |  2 +-
 src/hb-iter.hh              |  2 +-
 src/hb-machinery.hh         | 12 ++++++------
 src/hb-open-type.hh         |  8 ++++----
 src/hb-set-digest.hh        |  4 ++--
 src/hb-set.hh               | 10 +++++-----
 src/hb-vector.hh            |  2 +-
 7 files changed, 20 insertions(+), 20 deletions(-)

commit 5d4b0377b99ddc4112b8ffb2b787eac0b383081c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 22 12:11:24 2019 +0100

    Convert unsigned enum class consts to static constexpr

    Part of https://github.com/harfbuzz/harfbuzz/issues/1553

 src/hb-aat-layout-common.hh     | 6 +++---
 src/hb-aat-layout-kerx-table.hh | 2 +-
 src/hb-buffer.hh                | 2 +-
 src/hb-open-type.hh             | 2 +-
 src/hb-ot-kern-table.hh         | 4 ++--
 src/hb-ot-layout-common.hh      | 2 +-
 src/hb-ot-layout.cc             | 4 ++--
 7 files changed, 11 insertions(+), 11 deletions(-)

commit ef00654962204ae706b276871e2b6758fbbf69e0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 22 12:08:57 2019 +0100

    Convert tag enum class consts to static constexpr

    Part of https://github.com/harfbuzz/harfbuzz/issues/1553

 src/hb-aat-fdsc-table.hh        |  2 +-
 src/hb-aat-layout-ankr-table.hh |  2 +-
 src/hb-aat-layout-bsln-table.hh |  2 +-
 src/hb-aat-layout-feat-table.hh |  2 +-
 src/hb-aat-layout-just-table.hh |  2 +-
 src/hb-aat-layout-kerx-table.hh |  2 +-
 src/hb-aat-layout-lcar-table.hh |  2 +-
 src/hb-aat-layout-morx-table.hh |  6 +++---
 src/hb-aat-layout-trak-table.hh |  2 +-
 src/hb-aat-ltag-table.hh        |  2 +-
 src/hb-ot-cff1-table.hh         |  2 +-
 src/hb-ot-cff2-table.hh         |  2 +-
 src/hb-ot-cmap-table.hh         |  2 +-
 src/hb-ot-color-cbdt-table.hh   |  4 ++--
 src/hb-ot-color-colr-table.hh   |  2 +-
 src/hb-ot-color-cpal-table.hh   |  2 +-
 src/hb-ot-color-sbix-table.hh   |  2 +-
 src/hb-ot-color-svg-table.hh    |  2 +-
 src/hb-ot-gasp-table.hh         |  2 +-
 src/hb-ot-glyf-table.hh         |  4 ++--
 src/hb-ot-hdmx-table.hh         |  2 +-
 src/hb-ot-head-table.hh         |  2 +-
 src/hb-ot-hhea-table.hh         |  4 ++--
 src/hb-ot-hmtx-table.hh         | 12 ++++++------
 src/hb-ot-kern-table.hh         |  6 +++---
 src/hb-ot-layout-base-table.hh  |  2 +-
 src/hb-ot-layout-gdef-table.hh  |  2 +-
 src/hb-ot-layout-gpos-table.hh  |  2 +-
 src/hb-ot-layout-gsub-table.hh  |  2 +-
 src/hb-ot-layout-jstf-table.hh  |  2 +-
 src/hb-ot-math-table.hh         |  2 +-
 src/hb-ot-maxp-table.hh         |  2 +-
 src/hb-ot-name-table.hh         |  2 +-
 src/hb-ot-os2-table.hh          |  2 +-
 src/hb-ot-post-table.hh         |  2 +-
 src/hb-ot-stat-table.hh         |  2 +-
 src/hb-ot-var-avar-table.hh     |  2 +-
 src/hb-ot-var-fvar-table.hh     |  2 +-
 src/hb-ot-var-hvar-table.hh     |  8 ++++----
 src/hb-ot-var-mvar-table.hh     |  2 +-
 src/hb-ot-vorg-table.hh         |  2 +-
 41 files changed, 56 insertions(+), 56 deletions(-)

commit 39e1b6d03f71ccb8f18d64dfbff64acfaf02970b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 22 12:07:43 2019 +0100

    Convert boolean enum class consts to static constexpr

    Part of https://github.com/harfbuzz/harfbuzz/issues/1553

 src/hb-aat-layout-common.hh     |  4 ++--
 src/hb-aat-layout-kerx-table.hh |  4 ++--
 src/hb-aat-layout-morx-table.hh |  8 ++++----
 src/hb-dsalgs.hh                | 16 ++++++++--------
 src/hb-ot-kern-table.hh         |  4 ++--
 src/hb-ot-layout.cc             |  4 ++--
 6 files changed, 20 insertions(+), 20 deletions(-)

commit 271cb7c1c0f49c7af786daa5d5310b9f08142148
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 22 12:05:35 2019 +0100

    Make some enum constants unsigned

 src/hb-aat-layout-common.hh | 6 +++---
 src/hb-buffer.hh            | 2 +-
 src/hb-ot-layout.cc         | 8 ++++----
 3 files changed, 8 insertions(+), 8 deletions(-)

commit 3d9a6e62662fb769e0f785fa7a43df806988d2a2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 22 12:02:06 2019 +0100

    Whitespace

 src/hb-ot-layout-gsubgpos.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c81f02fd06fcbc4426c9e3255833f8d7057cc97a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 22 12:00:44 2019 +0100

    pragma GCC diagnostic error   "-Wvla"

 src/hb.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ff98109455bfbf92f7633262bc570b05d15d5d01
Author: Alfie John <alfie@alfie.wtf>
Date:   Tue Jan 22 19:58:36 2019 +1100

    Fix grammar

 docs/usermanual-clusters.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e9c0f5e714cc62bcf6349b86b13e1c031f9bb764
Author: Alfie John <alfie@alfie.wtf>
Date:   Tue Jan 22 00:03:02 2019 +0000

    Grammar fix

 docs/usermanual-clusters.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 789396ed6bf2c76c1bb955e80efb43f75e3c61d2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 20 20:09:10 2019 -0500

    Remove wrongly added files

 test/api/test-ot-extents-cff                        | Bin 8574336 ->
 0 bytes
 .../test-ot-extents-cff.dSYM/Contents/Info.plist    |  20
 --------------------
 .../Contents/Resources/DWARF/test-ot-extents-cff    | Bin 7650053 ->
 0 bytes
 3 files changed, 20 deletions(-)

commit 380c3cffb9353083913a3bb505c2c62367613096
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 20 19:51:08 2019 -0500

    Use enum for class constant

 src/hb-cff-interp-common.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6d042a18e7079e07a2b2f465a6a56483a42ef189
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 20 19:49:59 2019 -0500

    [CFF] Use enum for tableTag

 src/hb-ot-cff1-table.hh | 2 +-
 src/hb-ot-cff2-table.hh | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit c1cbbb94595641f0609cc8d2dbe8415540c10f77
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 20 19:47:52 2019 -0500

    Use static constexpr for large class constants

 src/hb-map.hh | 2 +-
 src/hb-set.hh | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 30ae62779f1a68c5657ab27bc7e77496ba8a906c
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Mon Jan 21 16:44:48 2019 +0200

    Regular spaces will do

 docs/usermanual-getting-started.xml | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

commit ed62551d67ac5bb8dbfaf3fa5eb51013157b214a
Author: Alfie John <alfie@alfie.wtf>
Date:   Mon Jan 21 05:00:01 2019 +0000

    Adding leading space for code example

 docs/usermanual-getting-started.xml | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

commit 3e332544db35ca08de767ecab01b489a9905c559
Author: Alfie John <alfie@alfie.wtf>
Date:   Mon Jan 21 04:54:27 2019 +0000

    Fix description of example

 docs/usermanual-getting-started.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2144ca9f01d01b6de386d17ada73a288372ee553
Author: Alfie John <alfie@alfie.wtf>
Date:   Mon Jan 21 04:47:05 2019 +0000

    Added option to build docs to docs

 docs/usermanual-install-harfbuzz.xml | 12 ++++++++++++
 1 file changed, 12 insertions(+)

commit 043b610fa698ed247347dfaa042f032f3fd3f572
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 19 09:20:46 2019 -0500

    Fix sign compare warnings

    ../../third_party/harfbuzz-ng/src/src/hb-map.hh(56,45):  warning:
    comparison of integers of different signs: 'const hb_codepoint_t'
    (aka 'const unsigned int') and 'hb_map_t::(anonymous enum
    at ../../third_party/harfbuzz-ng/src/src/hb-map.hh:169:3)'
    [-Wsign-compare]
        bool is_unused () const    { return key == INVALID; }

 src/hb-map.hh | 2 +-
 src/hb-set.hh | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit ce317d032061d81c520180a338172ce38b427135
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 19 09:18:03 2019 -0500

    Fix warning

    warning: '_WIN64' is not defined, evaluates to 0 [-Wundef]

 src/hb-dsalgs.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 0c2bd1b160fda4e77919889ac80f9460967fa251
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Jan 19 16:30:07 2019 +0330

    [dwrite] Fix delete-non-virtual-dtor warning (#1550)

 src/hb-directwrite.cc | 4 ++++
 1 file changed, 4 insertions(+)

commit 89bcfb204c736f5962d377896af2c1350f179882
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 18 14:59:18 2019 -0500

    Remove TRACE_COLLECT_GLYPHS

 src/hb-debug.hh                | 13 -------------
 src/hb-ot-layout-gpos-table.hh | 26 ++++----------------------
 src/hb-ot-layout-gsub-table.hh | 21 +++------------------
 src/hb-ot-layout-gsubgpos.hh   | 12 +-----------
 4 files changed, 8 insertions(+), 64 deletions(-)

commit f13b6786f0aefd2060ca976f7e42db7387b49450
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 18 14:53:54 2019 -0500

    [pragma] Only add if GCC or clang

 src/hb.hh | 3 +++
 1 file changed, 3 insertions(+)

commit c2ea7a9da463c567d321233b23813c59762841bb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 18 13:45:33 2019 -0500

    [directwrite] More fix

 src/hb-directwrite.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 9714d3ec5c45b2fe460fa6b21bdb3487c62029d3
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Jan 18 21:55:21 2019 +0330

    [dwrite] Try to fix delete-non-virtual-dtor warnings

    Fixes #1548 hopefully

 src/hb-directwrite.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 0772c06f96c3f5a319485c390416531b8125251b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 18 12:53:06 2019 -0500

    Remove tracing from closure

 src/hb-debug.hh                | 13 -------------
 src/hb-ot-layout-gsub-table.hh | 15 ++-------------
 src/hb-ot-layout-gsubgpos.hh   | 14 +-------------
 3 files changed, 3 insertions(+), 39 deletions(-)

commit d9f6be3a61edfe9e1bce01ea9b11e2bcb16f9618
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 18 12:48:01 2019 -0500

    Fix -Wundef errors with __GNUC__

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1549

 src/hb-common.h |  4 ++--
 src/hb.hh       | 10 +++++-----
 2 files changed, 7 insertions(+), 7 deletions(-)

commit 28917e58f973e5875d3ef3004c16e1ee1a5a973c
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Jan 18 09:43:51 2019 -0800

    init interp_env_t::hintmask_size

    fixes issue #1547

 src/hb-cff-interp-cs-common.hh                      |   1 +
 test/api/test-ot-extents-cff                        | Bin 0 ->
 8574336 bytes
 .../test-ot-extents-cff.dSYM/Contents/Info.plist    |  20
 ++++++++++++++++++++
 .../Contents/Resources/DWARF/test-ot-extents-cff    | Bin 0 ->
 7650053 bytes
 4 files changed, 21 insertions(+)

commit 9b4e51b2e44d7dea026b1f9201d2f83277bab1cf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 18 12:23:02 2019 -0500

    [pragma] Enable error -Wdelete-non-virtual-dtor

    Currently fails directwrite backend.

 src/hb.hh | 1 +
 1 file changed, 1 insertion(+)

commit e65272281c71d416f0ff886a55536597665b9dc3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 18 12:22:07 2019 -0500

    [directwrite] Fix error

    hb-directwrite.cc: In constructor 'TextAnalysis::TextAnalysis(const
    wchar_t*, uint32_t, const wchar_t*, DWRITE_READING_DIRECTION)':
    hb-directwrite.cc:489:18: error: 'TextAnalysis::mText' will be
    initialized after [-Werror=reorder]
       const wchar_t* mText;
                      ^~~~~
    hb-directwrite.cc:488:12: error:   'uint32_t
    TextAnalysis::mTextLength' [-Werror=reorder]
       uint32_t mTextLength;
                ^~~~~~~~~~~
    hb-directwrite.cc:282:3: error:   when initialized here
    [-Werror=reorder]
       TextAnalysis (const wchar_t* text, uint32_t textLength,
       ^~~~~~~~~~~~
    hb-directwrite.cc: In function 'hb_bool_t
    _hb_directwrite_shape_full(hb_shape_plan_t*, hb_font_t*, hb_buffer_t*,
    const hb_feature_t*, unsigned int, float)':

 src/hb-directwrite.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b900f78088abb87ebec263474b2802593afa0264
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 18 10:08:23 2019 -0500

    [pragma] More cast-align whitelist

 src/hb-font.cc          | 20 +++++++++++++++-----
 src/hb-ft.cc            |  6 ++++++
 src/hb-ot-cmap-table.hh |  3 +++
 src/hb-ot-font.cc       |  6 ++++++
 4 files changed, 30 insertions(+), 5 deletions(-)

commit 0d8b931bbeee9743d2e3bd37dd2fa9dffb807eaa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 18 10:03:43 2019 -0500

    [pragma] Allow cast-align in hb-font.cc

    ../src/hb-machinery.hh: In instantiation of 'const Type&
    StructAtOffset(const void*, unsigned int) [with Type = unsigned int]':
    ../src/hb-font.cc:144:85:   required from here
    ../src/hb-machinery.hh:63:12: error: cast from 'const char*' to
    'const unsigned int*' increases required alignment of target type
    [-Werror=cast-align]
     { return * reinterpret_cast<const Type*> ((const char *) P +
     offset); }
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ../src/hb-machinery.hh: In instantiation of 'Type&
    StructAtOffset(void*, unsigned int) [with Type = unsigned int]':
    ../src/hb-font.cc:145:79:   required from here
    ../src/hb-machinery.hh:66:12: error: cast from 'char*' to 'unsigned
    int*' increases required alignment of target type [-Werror=cast-align]
     { return * reinterpret_cast<Type*> ((char *) P + offset); }
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ../src/hb-machinery.hh: In instantiation of 'Type&
    StructAtOffset(void*, unsigned int) [with Type = int]':

 src/hb-font.cc | 5 +++++
 1 file changed, 5 insertions(+)

commit a25174a56b8fc334a050aa63be3654f53a7d8893
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 18 09:59:36 2019 -0500

    [pragma] GCC diagnostic error   "-Wreorder"

 src/hb.hh | 1 +
 1 file changed, 1 insertion(+)

commit 4660090569efbf64d3acc99ef6fa33e01abc9701
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 18 09:53:16 2019 -0500

    [pragma] GCC diagnostic warning "-Wmaybe-uninitialized"

 src/hb.hh | 1 +
 1 file changed, 1 insertion(+)

commit 7a634d7d5b859eb1121acd0b17c727c541a7f540
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 18 09:49:14 2019 -0500

    [pragma] Massage more

 src/hb.hh | 106
 ++++++++++++++++++++++++++++++++------------------------------
 1 file changed, 55 insertions(+), 51 deletions(-)

commit 16e5ba85b1822ff9d2b2f85f45ddd44f1a05f4b1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 18 09:46:17 2019 -0500

    [pragma] More

 src/hb.hh | 17 ++++++++++++++++-
 1 file changed, 16 insertions(+), 1 deletion(-)

commit 2bd530d59883cce437a5093323625f94b9618d89
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 18 09:28:22 2019 -0500

    [pragma] Reorg again

    https://github.com/harfbuzz/harfbuzz/issues/1546

 src/hb.hh | 91
 ++++++++++++++++++++++++++++++++-------------------------------
 1 file changed, 46 insertions(+), 45 deletions(-)

commit c04272fac81cac48b6310182d58d54569117f298
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 18 08:49:45 2019 -0500

    [pragma] GCC diagnostic ignored "-Wunknown-warning-option"

    Try at fixing https://github.com/harfbuzz/harfbuzz/issues/1546

 src/hb.hh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 4d3c8f9685b1744077ab264ffc0e0457d63c4b9a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 17 19:58:54 2019 -0500

    [uniscribe] More warnings

 src/hb-uniscribe.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 6a5d2b21d8457001a59537e85596461feba3dbd5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 17 19:57:17 2019 -0500

    [uniscribe] Fix warnings

 src/hb-uniscribe.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 5b13e458c34d16fef6540a9389225e0597a99df5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 17 19:52:32 2019 -0500

    Fix build

 src/hb-directwrite.cc | 1 -
 1 file changed, 1 deletion(-)

commit a77bd6bb8960ecff35aac07f221653c65d08e58e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 17 19:33:41 2019 -0500

    [pragma] GCC diagnostic ignored "-Wclass-memaccess"

 src/hb.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e1302842d9c589ccbed90d29c953fea503d3901f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 17 19:12:07 2019 -0500

    [ci] Remove unnecessary warning declarations

    clang -Weverything still left to be ported to pragmas

 .circleci/config.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 436c7b294ab12ae338aaa879fe4280caae6c6155
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 17 19:03:33 2019 -0500

    [pragma] ignored -Wunsafe-loop-optimizations // TODO fix

 src/hb.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit e3b3181e9ddd8b76428d7eaca64a3e03a99fcdd5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 17 19:02:06 2019 -0500

    [pragma] error -Wclass-memaccess

 src/hb.hh | 1 +
 1 file changed, 1 insertion(+)

commit 1a6b97a491f2ba4f84e52c89517b7a02faa70cc3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 17 18:55:03 2019 -0500

    [pragma] More

 src/hb.hh | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

commit 06e8091661352873c4d6040fd06a940136497e6f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 17 18:47:32 2019 -0500

    [pragma] More

 src/hb.hh | 18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)

commit 1077e40bf12f998976df4bf509c69df9f9e2a590
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 17 18:36:10 2019 -0500

    [pragma] Flesh out more

 src/hb.hh | 22 +++++++++++++++++-----
 1 file changed, 17 insertions(+), 5 deletions(-)

commit 7e6bd510fc695c423a7fa6b25c15805482f7d185
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 17 18:24:18 2019 -0500

    Use NNOffsetTo<> in rest of places

 src/hb-aat-layout-common.hh     |  8 ++++----
 src/hb-aat-layout-kerx-table.hh | 22 +++++++++++-----------
 src/hb-aat-layout-morx-table.hh | 10 +++++-----
 3 files changed, 20 insertions(+), 20 deletions(-)

commit b1152d5e66d7463a30af8ca2a485f75e0c8e6ffd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 17 18:17:04 2019 -0500

    Use NNOffsetTo<>

 src/hb-aat-layout-ankr-table.hh |  6 +++---
 src/hb-aat-layout-trak-table.hh |  2 +-
 src/hb-aat-ltag-table.hh        |  2 +-
 src/hb-open-file.hh             | 10 +++++-----
 src/hb-ot-cff2-table.hh         |  6 +++---
 src/hb-ot-color-cbdt-table.hh   |  2 +-
 src/hb-ot-color-colr-table.hh   |  4 ++--
 src/hb-ot-color-cpal-table.hh   |  8 ++++----
 src/hb-ot-color-svg-table.hh    |  2 +-
 src/hb-ot-name-table.hh         |  2 +-
 src/hb-ot-stat-table.hh         |  4 ++--
 11 files changed, 24 insertions(+), 24 deletions(-)

commit 205d72a198805ba276c1d0e63b1ca313c7bd517f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 17 18:10:38 2019 -0500

    Add NNOffsetTo<>

 src/hb-open-type.hh | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit c99d13d860e3d34e16cd2c070070d4f5d7d58cf4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 17 17:56:27 2019 -0500

    [AAT] Comment

 src/hb-aat-layout-common.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f39b5603ffa0452528b2366f8641e7e770960847
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 17 17:49:55 2019 -0500

    Comment

 src/hb-ot-layout-gpos-table.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 347ad454b88b89fc4bc30fca86c9ca37bea0be5b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 17 17:47:29 2019 -0500

    [AAT] Remove unused code

 src/hb-aat-layout-ankr-table.hh |  3 +--
 src/hb-aat-layout-common.hh     |  3 +--
 src/hb-aat-layout-kerx-table.hh |  6 ++----
 src/hb-aat-layout.cc            | 14 +++-----------
 4 files changed, 7 insertions(+), 19 deletions(-)

commit b344d4385af5bc9adac2a24850cb963929d4ae9e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 17 17:44:39 2019 -0500

    [AAT] Allow null in ankr lookupTable offset

 src/hb-aat-layout-ankr-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 14a560a245109376b7314c949895968d0a54452c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 17 17:42:44 2019 -0500

    [pragma GCC] Ignore -Wtype-limits

 src/hb.hh | 1 +
 1 file changed, 1 insertion(+)

commit 41b4312e936a0dfc396e6f0ef13c2c691dac6e40
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 17 16:07:27 2019 -0500

    [ci] Remove -Werror from Travis

    hb-machinery.hh:111:37: warning: comparison of unsigned expression >=
    0 is always true [-Wtype-limits]

    Also ignore -Wtype-limits.

 .travis.yml | 2 --
 1 file changed, 2 deletions(-)

commit 3f2daae63073bd536bceb1ae71dffd3187afce11
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 17 15:27:31 2019 -0500

    More GCC pragmas

 src/hb.hh | 2 ++
 1 file changed, 2 insertions(+)

commit d6c5473e1f86cae7f1060abe18f73ccb8e536d6c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 17 15:22:46 2019 -0500

    Rename macro

 src/hb.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a9946b7cfef185d53304e804169d6e53e9d522a0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 17 15:22:28 2019 -0500

    Add more GCC warning pragmas

 src/hb.hh | 6 ++++++
 1 file changed, 6 insertions(+)

commit 868b0c0c2e2f1a2dea9b0d3c8eb6e56ded8b1a14
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 17 15:08:36 2019 -0500

    Move -Wcast-align to hb.hh

 configure.ac | 3 ---
 src/hb.hh    | 4 ++++
 2 files changed, 4 insertions(+), 3 deletions(-)

commit 8874eef8ff70de6416266d719fa74eec39e5d8f9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 17 15:04:44 2019 -0500

    Add pragram GCC diagnostic ignored "-Wunused-macros"

 src/gen-indic-table.py                 | 3 +++
 src/gen-use-table.py                   | 3 +++
 src/hb-blob.cc                         | 3 +++
 src/hb-ot-shape-complex-indic-table.cc | 3 +++
 src/hb-ot-shape-complex-use-table.cc   | 3 +++
 5 files changed, 15 insertions(+)

commit cc8e9a436fa408a1c63f4b9afb7643cea76a079c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 17 14:54:32 2019 -0500

    [AAT] Fully sanitize ankr table at sanitize time

    Third try to fix access. Followup
    6879efc2c1596d11a6a6ad296f80063b558d5e0f

    Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=12532
    Fixes https://bugs.chromium.org/p/chromium/issues/detail?id=922303

 src/hb-aat-layout-ankr-table.hh | 13 ++++---------
 1 file changed, 4 insertions(+), 9 deletions(-)

commit 6879efc2c1596d11a6a6ad296f80063b558d5e0f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 17 14:06:37 2019 -0500

    [AAT] Fix anchor bound checking, again

    Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=12532
    Fixes https://bugs.chromium.org/p/chromium/issues/detail?id=922303

 src/hb-aat-layout-ankr-table.hh                           |   3 ++-
 ...zz-testcase-minimized-harfbuzz_fuzzer-5166320261529600 | Bin 0 ->
 393 bytes
 ...zz-testcase-minimized-hb-shape-fuzzer-5667182741028864 | Bin 0 ->
 407 bytes
 3 files changed, 2 insertions(+), 1 deletion(-)

commit a262eb3d0b7009aabd9e0beebc77e5c0a2a65548
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 17 14:06:32 2019 -0500

    [aat] Minor

 src/hb-aat-layout-kerx-table.hh | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

commit c986ca15a6320d78471adf950394f391e8729b15
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 15 13:58:19 2019 -0500

    Improve overflow avoidance

    Better fix for 480406cd3ef9e5ab8476ddfa04498bf23906c508
    This way we behave the same on 32bit and 64bit archs.

 src/hb-machinery.hh | 10 +++-------
 1 file changed, 3 insertions(+), 7 deletions(-)

commit 0d2727f4fe734af146785df10a44e3505e410ba1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 14 18:23:17 2019 -0800

    fix FDSelect fuzzing bug (#1539)

    Rewrote struct FDSelect3_4.ranges as ArrayOf
    Updated FDSelect3_4::sanitize () to call ranges.sanitize ()
    nRanges now a function to return a reference to ranges.len

 src/hb-ot-cff-common.hh     | 29 +++++++++++++++--------------
 src/hb-subset-cff-common.cc |  2 +-
 2 files changed, 16 insertions(+), 15 deletions(-)

commit 9f6172d669d53abbf3bf2a3546429cb5036e3d5f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 14 20:45:31 2019 -0500

    Move _POSIX_SOURCE definition

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1308

 src/hb-blob.cc | 9 +++++++++
 src/hb.hh      | 4 ----
 2 files changed, 9 insertions(+), 4 deletions(-)

commit 91d774712fa76dd26c441526712bddddca5b4bdd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 14 15:31:31 2019 -0500

    [test] Add test for previous commit

 ...uzz-testcase-minimized-harfbuzz_fuzzer-5662548265009152 | Bin 0 ->
 28 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)

commit 480406cd3ef9e5ab8476ddfa04498bf23906c508
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 14 15:27:34 2019 -0500

    Fix assertion on address overflow

    Fixes https://bugs.chromium.org/p/chromium/issues/detail?id=917031

 src/hb-machinery.hh | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 7a6686a589ed6bf17a5af0b8012501e4d4ee2ded
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 14 15:09:14 2019 -0500

    [AAT] Fix mort ContextualSubtable offset access

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

 src/hb-aat-layout-morx-table.hh                           |   3 ++-
 ...zz-testcase-minimized-hb-shape-fuzzer-5631444412530688 | Bin 0 ->
 336 bytes
 2 files changed, 2 insertions(+), 1 deletion(-)

commit a3fa7d33360a58df5333dbbd121328e580f08849
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 14 14:37:36 2019 -0500

    [AAT] Fix ankr table access

    Fixes https://bugs.chromium.org/p/chromium/issues/detail?id=918340

 src/hb-aat-layout-ankr-table.hh                          |   7 ++++---
 ...z-testcase-minimized-harfbuzz_fuzzer-5126525414014976 | Bin 0 ->
 1141 bytes
 2 files changed, 4 insertions(+), 3 deletions(-)

commit 760303d411b1561533f8f08c7c15db331c71ece8
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Jan 11 15:27:35 2019 -0800

    deleted a duplicate fontdicts_mod.fini() call (#1538)

 src/hb-subset-cff1.cc | 1 -
 1 file changed, 1 deletion(-)

commit 5110f3da9a4711a35bfb780ea06cda677cc00209
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Jan 9 16:01:11 2019 +0330

    Add an initial .clang-format config

    There are things can be improved on clang-format side I guess before
    the full assertion, but is the best we can get for now I guess.

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1536

 .clang-format | 38 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 38 insertions(+)

commit 099bca6d406af9c8e12a66b93fcc9a38ff7914f9
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Jan 9 15:56:32 2019 +0330

    Minor, hack .editorconfig for vscode use

    As VSCode and Atom https://github.com/Microsoft/vscode/issues/44438
    don't support it

 .editorconfig | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

commit 7b48641aa8551115d21c534940ac4fb364e5ab92
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Jan 8 12:37:48 2019 -0800

    fix leak in subset_enc_supp_codes (#1537)

    oss-fuzz issue 12310

 src/hb-subset-cff1.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 97f67a3c3d499959d33e66aeed449e2957a14bc6
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Jan 4 23:10:39 2019 +0330

    [ci] Enable more of GCC compile warnings (#1533)

 .circleci/config.yml      | 16 ++++++++--------
 src/hb-gobject-structs.cc |  4 ++--
 2 files changed, 10 insertions(+), 10 deletions(-)

commit ad954870383a880262edcd01acd8e171c4614a68
Author: Nathan Willis <nwillis@glyphography.com>
Date:   Mon Dec 3 12:49:44 2018 -0600

    Usermanual: small formatting and wording fixes.

 docs/usermanual-getting-started.xml  |  3 +++
 docs/usermanual-install-harfbuzz.xml | 30 ++++++++++++++----------------
 docs/usermanual-what-is-harfbuzz.xml | 11 ++++++-----
 3 files changed, 23 insertions(+), 21 deletions(-)

commit ed13caddf2de68312608e12c37d0e6287c1ac0a0
Author: Nathan Willis <nwillis@glyphography.com>
Date:   Wed Nov 28 13:48:38 2018 -0600

    Usermanual: small updates.

 ...anual-buffers-language-script-and-direction.xml |   7 +-
 docs/usermanual-clusters.xml                       | 279
 ++++++++++++++++-----
 docs/usermanual-getting-started.xml                |  91 ++++++-
 docs/usermanual-install-harfbuzz.xml               |   3 +-
 docs/usermanual-shaping-concepts.xml               |  11 +-
 5 files changed, 314 insertions(+), 77 deletions(-)

commit 26c5b54fb09fb45e02c9c4618bcea4958c698953
Author: cclauss <cclauss@me.com>
Date:   Mon Dec 31 04:30:43 2018 +0100

    CircleCI: Test for Python 3 syntax errors and undefined names (#1522)

    Catch missing imports and errors like #1520 and #1521

    __E901,E999,F821,F822,F823__ are the "_showstopper_"
    [flake8](http://flake8.pycqa.org) issues that can halt the runtime
    with a SyntaxError, NameError, etc. Most other flake8 issues are
    merely "style violations" -- useful for readability but they do not
    effect runtime safety.
    * F821: undefined name `name`
    * F822: undefined name `name` in `__all__`
    * F823: local variable name referenced before assignment
    * E901: SyntaxError or IndentationError
    * E999: SyntaxError -- failed to compile a file into an Abstract
    Syntax Tree

 .circleci/config.yml             | 3 ++-
 src/gen-use-table.py             | 4 +++-
 test/subset/subset_test_suite.py | 2 +-
 3 files changed, 6 insertions(+), 3 deletions(-)

commit 686e6f2e40da378e031b4c9871a471599c6d61cf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 30 11:27:42 2018 -0500

    Fix automake warnings

    [skip ci]

 test/api/Makefile.am         | 1 -
 test/subset/data/Makefile.am | 2 +-
 2 files changed, 1 insertion(+), 2 deletions(-)

commit b5c12b9f4d2c32a5013c340f7e40649cb5f2b41a
Author: cclauss <cclauss@me.com>
Date:   Sun Dec 30 13:07:28 2018 +0100

    print() is a function in Python 3 (#1520)

 test/subset/generate-expected-outputs.py | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

commit f4da28b1f153ccf293b367363a1a4d83c056e4e1
Author: cclauss <cclauss@me.com>
Date:   Sun Dec 30 12:58:34 2018 +0100

    Python 3 fixes to gen-os2-unicode-ranges.py (#1521)

    In Python 3, __reload()__ was moved and __sys.setdefaultencoding()__
    because the default is already utf-8.  Also __Error()__ is an
    _undefined name_ and __Exception()__ creates a generic exception.

 src/gen-os2-unicode-ranges.py | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

commit e5989e0962309b27b2486d8fd20f3cbc05c3d79a
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Dec 30 10:23:47 2018 +0330

    [cmake] Enable C++11 on CMake (#1519)

 CMakeLists.txt | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

commit d092fb27198f24423e51ce07375ebd6d486f64d3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 30 01:53:03 2018 -0500

    Ouch! Fix build on C++<11

 src/hb.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 89949ed28db96edabeb09433fcc09f28168163d2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 30 01:52:19 2018 -0500

    Fix ubsan with passing nullptr to qsort()

 src/hb-array.hh | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

commit 357a0a7ad344caf898eb1697fcdb859d118b7a13
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 27 18:29:23 2018 -0500

    Fix build on C++ < 11

 src/hb.hh | 1 +
 1 file changed, 1 insertion(+)

commit 54c0a1731069a17ae4f3b79b419af75709f03f5b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 27 18:27:36 2018 -0500

    [vector] Fix warning

 src/hb-vector.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 1043ddbee878a14df0ad8d83fbaa893370ef5a75
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 27 18:27:11 2018 -0500

    [aat] Minor

 src/hb-aat-layout-morx-table.hh | 2 +-
 src/hb-aat-map.hh               | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 71da9ca62fa87bd3e0fa9d40924bb4c220313a03
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 27 18:01:06 2018 -0500

    [vector] Remove use of arrayZ() by using casts

 src/hb-ot-name-table.hh | 2 +-
 src/hb-ot-name.cc       | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit fa333e34d6230210bc73a88b0ba6df2102dcda51
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 27 17:56:22 2018 -0500

    [vector] Remove static_array

    Was good idea, but with C++ types with constructor/destructor,
    was getting in
    the way as compiler was destructing those items where it was not
    desired.
    Since C++ does not allow zero-sized arrays, just remove it...

 src/hb-aat-map.hh            |  4 ++--
 src/hb-cff-interp-common.hh  |  2 +-
 src/hb-face.cc               |  2 +-
 src/hb-object.hh             |  2 +-
 src/hb-ot-cff-common.hh      |  2 +-
 src/hb-ot-layout-gsubgpos.hh |  2 +-
 src/hb-ot-map.hh             | 10 +++++-----
 src/hb-ot-post-table.hh      |  2 +-
 src/hb-set.hh                |  4 ++--
 src/hb-vector.hh             | 34 +++++++++++-----------------------
 src/hb.hh                    |  3 +++
 11 files changed, 29 insertions(+), 38 deletions(-)

commit ab2258a419abbace9ff27916143b46f88e8ccef3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 27 17:45:05 2018 -0500

    [vector] Use allocated = -1 to signify failure

 src/hb-vector.hh | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

commit 09fa536d89d969998fe6bbe274a9964c73d1d982
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Dec 27 08:33:09 2018 -0800

    fix lealk with cff2::accelerator_templ_t::topDict (#1517)

 src/hb-ot-cff2-table.hh | 1 +
 1 file changed, 1 insertion(+)

commit 3b81442cd5c11099ae9245074d24ef679b4473fa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 24 11:31:04 2018 -0500

    [vector] Change pre-alloced count from 8 to 2

    I'm thinking about dropping it to zero, but that needs slight code
    changes.

 src/hb-vector.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit d25a2f1496d13846ddaea123ac6fb9807dc5669a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 23 20:19:52 2018 -0500

    Fix a few warnings

 src/hb-aat-layout-common.hh | 12 ++++++------
 src/hb-iter.hh              |  8 ++++----
 src/hb-null.hh              |  2 +-
 src/hb-ot-cff1-table.hh     |  2 +-
 src/hb-ot-cff2-table.hh     |  2 +-
 src/hb-subset-cff-common.hh |  3 ++-
 src/hb.hh                   |  3 ++-
 7 files changed, 17 insertions(+), 15 deletions(-)

commit 85003b594b3aa1f6638e274bc89f18999a5de9f5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Dec 22 16:19:10 2018 -0500

    [iter] Fix warning

 src/hb-iter.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e4355b1ca177200db6769136ead1ee25da86ec85
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Dec 22 16:11:22 2018 -0500

    [set] Add iter_t as alias to const_iter_t

 src/hb-set.hh    | 6 ++++--
 src/test-iter.cc | 2 ++
 2 files changed, 6 insertions(+), 2 deletions(-)

commit 33f8de61863efa538c488121c476fd0e907020d0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Dec 22 15:10:18 2018 -0500

    [set] Change to const_iter

 src/hb-set.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit f88fed5cd8787e3deeec05dac4353337dc02abdd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Dec 22 11:11:10 2018 -0500

    [set] Cache length in iterator

 src/hb-set.hh | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

commit d0a706c7fdb72a1d224b4a5bdbad0fb8c90e3186
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Dec 22 19:47:48 2018 +0330

    Minor, remove redundant inline

 src/hb-ot-layout.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit ae6e348d642194585543f0d548fb94d210575fe4
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Dec 22 19:47:29 2018 +0330

    Minor, tweak spaces

 src/hb-ot-glyf-table.hh     |  8 ++++----
 src/hb-subset-cff-common.hh | 15 ++++++---------
 2 files changed, 10 insertions(+), 13 deletions(-)

commit 29f0b6bce7da4c599f54066f7e7f6000f10d2f29
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Sat Dec 22 07:47:04 2018 -0800

    CFF renaming (#1507)

    * reimplement ByteStr as byte_str_t based on hb_ubytes_t

    Unuse start_embed<ByteStr>
    Also renamed SubByteStr to byte_str_ref_t
    More renaming to come

    * substr renamed to str_ref in line with its type byte_str_ref_t

    * uncamelize non-table struct names

    * uncamelized non-struct types OpCode etc

    * add byte_str_t copy ctor

    * test

    * test2

    * undo tests

    * fix bot failure

    * undo the previous change

    * fixed tabs, added inline

    * Revert "fixed tabs, added inline"

    This reverts commit 21163c30e9d18759414f7fe2518628241599f039.

    * fix tabs

 src/hb-cff-interp-common.hh      | 215 +++++++++++++++------------------
 src/hb-cff-interp-cs-common.hh   | 250
 +++++++++++++++++++--------------------
 src/hb-cff-interp-dict-common.hh |  64 +++++-----
 src/hb-cff1-interp-cs.hh         |  26 ++--
 src/hb-cff2-interp-cs.hh         |  56 ++++-----
 src/hb-ot-cff-common.hh          |  59 ++++-----
 src/hb-ot-cff1-table.cc          |  56 ++++-----
 src/hb-ot-cff1-table.hh          | 147 ++++++++++++-----------
 src/hb-ot-cff2-table.cc          |  28 ++---
 src/hb-ot-cff2-table.hh          | 128 ++++++++++----------
 src/hb-subset-cff-common.cc      |  10 +-
 src/hb-subset-cff-common.hh      | 232
 ++++++++++++++++++------------------
 src/hb-subset-cff1.cc            | 244
 +++++++++++++++++++-------------------
 src/hb-subset-cff2.cc            | 100 ++++++++--------
 14 files changed, 796 insertions(+), 819 deletions(-)

commit 89d04129e2f4dedb865635dcb8f0fd020e4218c2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 20:07:52 2018 -0500

    [set] Actually derive iterator from hb_sorted_iter_t<>

 src/hb-set.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit fc35919d015c5b8d231933d6bc6ea640c83af6b2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 20:06:17 2018 -0500

    [set] Implement unified iterator

 src/hb-set.hh | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

commit 4911e67d2d2188ee9bdc0315e121e51d9967b567
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 20:00:52 2018 -0500

    [set] Mark some internals protected

 src/hb-set.hh | 2 ++
 1 file changed, 2 insertions(+)

commit 954b985422a8964f6e7da9f71ab7a68074017111
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 19:55:02 2018 -0500

    [iter] Add hb_sorted_iter_t<>

 src/hb-array.hh |  2 +-
 src/hb-iter.hh  | 11 +++++++++++
 2 files changed, 12 insertions(+), 1 deletion(-)

commit b205105c9e1c6295b17cfd88ffb8ca7d963ef173
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 19:48:21 2018 -0500

    [iter] Change operator[] operand to be signed

    To fix older compilers again (this was the case in hb_array_t).

    hb-ot-layout-common.hh:1353: note: candidate 2: operator[](T*,
    int) <built-in>
    hb-ot-layout-common.hh:1354: error: ISO C++ says that these are
    ambiguous, even though the worst conversion for the first is better
    than the worst conversion for the second:
    hb-iter.hh:63: note: candidate 1: Item& hb_iter_t<Iter,
    Item>::operator[](unsigned int) const [with Iter = hb_array_t<const
    OT::IntType<short unsigned int, 2u> >, Item = const OT::IntType<short
    unsigned int, 2u>]
    hb-ot-layout-common.hh:1354: note: candidate 2: operator[](T*,
    int) <built-in>
    hb-ot-layout-common.hh: In member function 'bool
    OT::ClassDef::serialize(hb_serialize_context_t*, hb_array_t<const
    OT::IntType<short unsigned int, 2u> >, hb_array_t<const
    OT::IntType<short unsigned int, 2u> >)':
    hb-ot-layout-common.hh:1490: error: ISO C++ says that these are
    ambiguous, even though the worst conversion for the first is better
    than the worst conversion for the second:
    hb-iter.hh:63: note: candidate 1: Item& hb_iter_t<Iter,
    Item>::operator[](unsigned int) const [with Iter = hb_array_t<const
    OT::IntType<short unsigned int, 2u> >, Item = const OT::IntType<short
    unsigned int, 2u>]
    hb-ot-layout-common.hh:1490: note: candidate 2: operator[](T*,
    int) <built-in>

 src/hb-iter.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 25786f49c1df36fdb5f78681055a1f4aa4b17f86
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 19:29:00 2018 -0500

    [array] Port to hb_iter_t<>

    hb_array_t is its own iterator...

 src/hb-array.hh | 75
 +++++++++++++++++++++++++--------------------------------
 src/hb-iter.hh  |  5 ++--
 2 files changed, 36 insertions(+), 44 deletions(-)

commit 2a33ab0560a13cb8fef5983bfe0f6d68dfd47b14
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 18:49:27 2018 -0500

    [iter] Change __more__ to fallback to __len__

 src/hb-iter.hh   | 15 ++++++---------
 src/test-iter.cc |  1 -
 2 files changed, 6 insertions(+), 10 deletions(-)

commit 474a12058d681f2d7cef84db0cf20f9f784fa400
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 18:46:51 2018 -0500

    [array/vector] Rename len to length

 src/hb-aat-layout-feat-table.hh |  5 ++-
 src/hb-aat-layout-lcar-table.hh |  2 +-
 src/hb-aat-map.cc               |  4 +--
 src/hb-array.hh                 | 72
 ++++++++++++++++++++---------------------
 src/hb-cff-interp-common.hh     | 10 +++---
 src/hb-cff2-interp-cs.hh        |  6 ++--
 src/hb-coretext.cc              | 12 +++----
 src/hb-face.cc                  |  4 +--
 src/hb-object.hh                | 23 +++++++------
 src/hb-open-file.hh             |  4 +--
 src/hb-open-type.hh             |  8 ++---
 src/hb-ot-cff-common.hh         | 38 +++++++++++-----------
 src/hb-ot-cff1-table.hh         | 28 ++++++++--------
 src/hb-ot-cmap-table.hh         | 24 +++++++-------
 src/hb-ot-color-colr-table.hh   |  6 ++--
 src/hb-ot-hdmx-table.hh         |  6 ++--
 src/hb-ot-hmtx-table.hh         |  8 ++---
 src/hb-ot-layout-common.hh      | 32 +++++++++---------
 src/hb-ot-layout-gdef-table.hh  |  4 +--
 src/hb-ot-layout-gsub-table.hh  | 24 +++++++-------
 src/hb-ot-layout-gsubgpos.hh    |  2 +-
 src/hb-ot-layout.cc             |  2 +-
 src/hb-ot-map.cc                | 22 ++++++-------
 src/hb-ot-map.hh                |  4 +--
 src/hb-ot-math-table.hh         |  4 +--
 src/hb-ot-maxp-table.hh         |  2 +-
 src/hb-ot-name-table.hh         |  8 ++---
 src/hb-ot-name.cc               |  4 +--
 src/hb-ot-post-table.hh         |  8 ++---
 src/hb-ot-var-fvar-table.hh     |  2 +-
 src/hb-ot-vorg-table.hh         | 10 +++---
 src/hb-set.hh                   | 36 ++++++++++-----------
 src/hb-subset-cff-common.cc     |  8 ++---
 src/hb-subset-cff-common.hh     | 50 ++++++++++++++--------------
 src/hb-subset-cff1.cc           | 48 +++++++++++++--------------
 src/hb-subset-cff2.cc           | 16 ++++-----
 src/hb-subset-glyf.cc           | 14 ++++----
 src/hb-subset-plan.cc           |  2 +-
 src/hb-uniscribe.cc             | 26 +++++++--------
 src/hb-vector.hh                | 56 ++++++++++++++++----------------
 src/test-iter.cc                |  4 +--
 41 files changed, 325 insertions(+), 323 deletions(-)

commit 2fc1860a5b40f5deba720c0c1099fdd0450b77c0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 18:09:45 2018 -0500

    [iter] Split hb_iter_t<> into hb_iter_t<> and hb_iter_mixin_t<>

 src/hb-iter.hh   | 31 ++++++++++++++++++++-----------
 src/test-iter.cc |  2 +-
 2 files changed, 21 insertions(+), 12 deletions(-)

commit 865deeb3be1cb40efe3d7c42db48b0cdf977de47
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 17:35:58 2018 -0500

    Adjust internal header dependencies

 src/hb-array.hh            |  5 ++++-
 src/hb-dsalgs.hh           |  1 -
 src/hb-iter.hh             |  1 +
 src/hb-vector.hh           |  1 +
 src/hb.hh                  | 15 +++++++++------
 src/test-iter.cc           |  1 +
 src/test-unicode-ranges.cc |  1 +
 7 files changed, 17 insertions(+), 8 deletions(-)

commit 8e5c2bc60bd9a800dacc96cc29c6ff831a852ae3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 17:29:11 2018 -0500

    [Makefile.am] Minor

 src/Makefile.am | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)

commit f419cef4174c5447bf5031e771483f3274ae4dce
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 17:22:09 2018 -0500

    [iter] Include from hb.hh

 src/hb.hh | 1 +
 1 file changed, 1 insertion(+)

commit 7557e34872c846433c2465b21b99bf7c5f961673
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 17:21:19 2018 -0500

    [iter] Move hb_fill() and hb_copy() to hb-iter.hh

 src/hb-iter.hh   | 18 ++++++++++++++++++
 src/test-iter.cc | 16 ----------------
 2 files changed, 18 insertions(+), 16 deletions(-)

commit 5e1840e031cff1127842fc5cc8ee93e5959f02d5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 16:39:57 2018 -0500

    [iter] Disallow copy-construction or assignment of hb_iter_t<>

    Should only be done by subclass.

 src/hb-iter.hh | 5 +++++
 1 file changed, 5 insertions(+)

commit 65e8bd56ad26912636fbdc400a83cc48db2a13ce
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 16:20:30 2018 -0500

    [iter] Fix hb_copy() return value

 src/test-iter.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 40d71211a8969ec4414d2476a209e60d0a3525d3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 16:19:44 2018 -0500

    [iter] Add const_iter_t / const_iter()

 src/hb-iter.hh | 2 ++
 1 file changed, 2 insertions(+)

commit aaddfaa57a841726a8b49653af3f8b702831da1b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 16:04:38 2018 -0500

    [iter] Make hb_fill() take collection type, not iter

    Starting to get the hang of when take which.

 src/test-iter.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 7b4eea853c36fd59db6e5d68bbef9b8cebad760e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 16:02:16 2018 -0500

    [array] Add more hb_array() / hb_sorted_array() variants

 src/hb-array.hh | 15 +++++++++++----
 1 file changed, 11 insertions(+), 4 deletions(-)

commit 09740148e310021a4a690666c2e2836c2005353d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 15:56:01 2018 -0500

    [serialize] Use component_list by reference, as a supplier

 src/hb-ot-layout-gsub-table.hh | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

commit 3dbe1e364c19d82ab436b9ea7b41c9754d43e923
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 15:53:09 2018 -0500

    [iter] Add .random_access()

 src/hb-iter.hh   | 4 ++++
 src/test-iter.cc | 1 +
 2 files changed, 5 insertions(+)

commit 20f14b4aa6311d8fb2ed80c47bb15e8d87d2f6b3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 15:19:22 2018 -0500

    [iter] Fix __end__()

 src/hb-iter.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 95265aeab7da54f31d4f68590af7730054b6be16
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 15:12:55 2018 -0500

    [array] Remove copy constructor

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1502

 src/hb-array.hh | 1 -
 1 file changed, 1 deletion(-)

commit 69d232eaea323b8c42e5fa1788553ac4e8bf3a50
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 15:08:06 2018 -0500

    Fix bot

      C:\projects\harfbuzz\src\hb-uniscribe.cc(709): error C2666:
      'hb_vector_t<OPENTYPE_FEATURE_RECORD,8>::operator
      +': 3 overloads have similar conversions
      [C:\projects\harfbuzz\build\harfbuzz.vcxproj]

 src/hb-uniscribe.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b9a51f531009ce201b86a0326aff662fd19a68a1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 15:05:00 2018 -0500

    Minor

 src/hb-ot-layout-gpos-table.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit bdb6da72267c8fa4802a2183ba69a1535653378b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 11:20:27 2018 -0500

    [iter] Fix test again

 src/test-iter.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit e9520752489298e0ce1a08da10ec3d439f9356d9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 11:15:16 2018 -0500

    Minor

 src/Makefile.am  | 6 +++---
 src/test-iter.cc | 1 -
 2 files changed, 3 insertions(+), 4 deletions(-)

commit 35503d7d7324293162b605ffe0bd712656dd52b8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 03:03:46 2018 -0500

    [iter] More prototyping

 src/test-iter.cc | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

commit 73c7a896d1395539e3c9e71b073ce5094c835aa0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 02:48:28 2018 -0500

    [iter] Make hb_fill() and hb_copy() take iterators

    I'm still going back and force...

 src/test-iter.cc | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

commit 12e506fda4bfd82d67e4beede29ae7dbc02ad8f4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 02:47:04 2018 -0500

    [iter] Add hb_fill()

 src/test-iter.cc | 20 ++++++++++++++------
 1 file changed, 14 insertions(+), 6 deletions(-)

commit ad3ed58de5297930826c67d18b99991b93d29654
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 02:12:55 2018 -0500

    [iter] Start prototyping hb_copy()

 src/test-iter.cc | 18 ++++++++++++++----
 1 file changed, 14 insertions(+), 4 deletions(-)

commit 44af738d19486095c0fbc2ef2b359a298126ac2b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 01:59:37 2018 -0500

    [iter] Showcase implicit casts

 src/test-iter.cc | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 879faa2aee74e237594901426096ceeb78a716a4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 01:57:40 2018 -0500

    Rename

 src/hb-array.hh     | 2 +-
 src/hb-open-type.hh | 4 ++--
 src/hb-vector.hh    | 2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)

commit aeb696a91cd1cdc73bf5b87e56163c7f64778616
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 01:57:02 2018 -0500

    [iter] Rename

 src/hb-iter.hh | 44 ++++++++++++++++++++++----------------------
 1 file changed, 22 insertions(+), 22 deletions(-)

commit 8001e00a470ad06f0307002b4cade5612ee7b521
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 01:53:27 2018 -0500

    [iter] First sample use

 src/Makefile.am  |  5 ++++-
 src/hb-iter.hh   | 25 +++++++++++--------------
 src/test-iter.cc | 25 ++++++++++++++++++++-----
 3 files changed, 35 insertions(+), 20 deletions(-)

commit 19d2b5013d8ac7aa45b3b8e8c61ad90773c86925
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 01:17:35 2018 -0500

    [iter] Add bidirectionality

 src/hb-iter.hh | 14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)

commit 314d8698d0746416efd332f5fae45aecb26df7ee
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 00:54:55 2018 -0500

    [iter] Sketch new iterator design

 src/hb-iter.hh   | 154
 +++++++++++++++++++------------------------------------
 src/test-iter.cc |  16 ++++++
 2 files changed, 69 insertions(+), 101 deletions(-)

commit f6d5f1e91ced2b6b1114ad765f568f799dd3612f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 00:23:34 2018 -0500

    [iter] Add empty test

 src/Makefile.am            |  7 +++++--
 src/hb-machinery.hh        |  1 -
 src/test-iter.cc           | 33 +++++++++++++++++++++++++++++++++
 src/test-unicode-ranges.cc |  2 --
 4 files changed, 38 insertions(+), 5 deletions(-)

commit b80b97b549dacc10d314bf8b5fd4ace596ccdfe1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 00:08:05 2018 -0500

    Revert "Remove unused hb-iter.hh"

    This reverts commit 969ff3c7aadbe721cdd414488eb170433f10d00c.

 src/Makefile.sources |   1 +
 src/hb-iter.hh       | 146
 +++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-machinery.hh  |   1 +
 3 files changed, 148 insertions(+)

commit a728c63a98281fd4a0661e17fc01171bc3205b27
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 20 23:15:49 2018 -0500

    [vector] Add operator bool

 src/hb-vector.hh | 2 ++
 1 file changed, 2 insertions(+)

commit bd369773921b4891996bd21f325702e490f47ca4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 20 23:14:24 2018 -0500

    Rename

 src/hb-array.hh     | 2 +-
 src/hb-open-type.hh | 4 ++--
 src/hb-vector.hh    | 2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)

commit e6ebc9b6f89e62d888b3bcf926afd624f16f3e95
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 20 23:13:36 2018 -0500

    Remove unused typedef

 src/hb-machinery.hh | 3 ---
 1 file changed, 3 deletions(-)

commit 4941e95f10fe0fe658752134a42b58896fb19c42
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 20 21:48:57 2018 -0500

    2.3.0

 NEWS                 | 15 +++++++++++++++
 configure.ac         |  2 +-
 src/hb-aat-layout.cc |  6 +++---
 src/hb-version.h     |  4 ++--
 4 files changed, 21 insertions(+), 6 deletions(-)

commit 87f7c83fffb7e64970be23c8e3c620d32a3b8f5b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 20 15:54:17 2018 -0500

    [serializer] Add operator <<

    Not sure if we are going to use it.  But might incentivize us to.

 src/hb-machinery.hh | 2 ++
 1 file changed, 2 insertions(+)

commit 5b70074edf1c12a9442037d54c03d3025bd93995
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 20 15:38:59 2018 -0500

    Add hb_assign(obj, value)

 src/hb-machinery.hh |  2 +-
 src/hb-null.hh      | 24 +++++++++++++++++++++++-
 src/hb-open-type.hh |  5 +++--
 3 files changed, 27 insertions(+), 4 deletions(-)

commit 6124123393eabb77d34830c971ec463998d50aba
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 20 12:26:30 2018 -0500

    [serialize] Adjust ClassDef

    [skip ci]

 src/hb-ot-layout-common.hh | 32 ++++++++++++++++----------------
 1 file changed, 16 insertions(+), 16 deletions(-)

commit 4220b7bdd7706622563401bf8f055c4b1482b4e5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 20 11:48:45 2018 -0500

    Fix code on big-endian gcc / clang

    Ouch!  We need a bigendian bot...

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1498

 src/hb-machinery.hh | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

commit c87ee72232416099a73b563ca7aaf293b1c87b2a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 19 22:28:16 2018 -0500

    Minor [skip ci]

 src/hb-dsalgs.hh | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

commit 5000a59a6391d588c2cbdda132839b1fb1f75bf2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 19 21:07:53 2018 -0500

    [saitnize] Minor

 src/hb-machinery.hh | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit 3ee4ea945674c4b96c9aa6b0367bbf22dc8745d1
Author: fanc999 <fanc999@yahoo.com.tw>
Date:   Thu Dec 20 11:26:54 2018 +0800

    Fix build on older Visual Studio versions (#1499)

    * src/hb-cff-interp-dict-common.hh: Use ull for unsigned int64_t

    The llu suffix does not work for older Visual Studio versions
    (pre-2013), but ull works for all the compilers that we attempt to
    support.

    * test/api: Fix build on pre-C99 compilers

    Ensure variables are declared at the top of the block.

    * src/hb-dsalgs.hh: Add specialization for hb_is_signed<> for __int8

    Pre-Visual Studio 2010 does not consider __int8 (which is typedef'ed
    to
    int8_t) to be equivilant to signed char, so the compiler cannot
    find the
    corresponding hb_is_signed<> specialization that is needed.

    The interesting thing is unsigned __int8 is considered to be
    equivilant
    to unsigned char, so as the other types (short, int, long) that
    we look
    for here, so only the specialization for __int8 is added here.

    This will fix builds on Visual Studio 2008 at least.

 src/hb-cff-interp-dict-common.hh |  2 +-
 src/hb-dsalgs.hh                 |  9 +++++++++
 test/api/test-aat-layout.c       |  3 ++-
 test/api/test-subset-cff1.c      | 12 ++++++++----
 4 files changed, 20 insertions(+), 6 deletions(-)

commit a62870506d16949582bf0b54e3dc8846b9747a4a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 19 21:05:00 2018 -0500

    [sanitize] Use hb_static_size instead of ::static_size

    https://github.com/harfbuzz/harfbuzz/issues/1496#issuecomment-448818112

 src/hb-machinery.hh | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

commit 0c9cd5d5f4d96df77e4298e16c786e67b83f9bc4
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Dec 19 21:18:30 2018 +0330

    [test] Fix test-name-table.cc leak issue

    Spotted it accidentally but wanted to see if is anything serious so
    went for fixing it

 src/test-name-table.cc | 2 ++
 1 file changed, 2 insertions(+)

commit 3d9d7dc4dd4be8e746507282569504b511afa709
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 18 22:11:23 2018 -0500

    [arrays] Add hb_ubytes_t for unsigned char

 src/hb-array.hh | 1 +
 1 file changed, 1 insertion(+)

commit f1e95e40edc871c840abe8a8a695efc252af40f5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 18 16:49:08 2018 -0500

    [arrays] Remove hb_supplier_t<>

 src/hb-array.hh                            |  11 --
 src/hb-cff2-interp-cs.hh                   |   2 +-
 src/hb-face.cc                             |   6 +-
 src/hb-open-file.hh                        |  15 +-
 src/hb-open-type.hh                        |  18 +-
 src/hb-ot-cmap-table.hh                    |   3 +-
 src/hb-ot-layout-common.hh                 | 104 ++++--------
 src/hb-ot-layout-gsub-table.hh             | 257
 +++++++++++++----------------
 src/hb-ot-shape-complex-arabic-fallback.hh |  23 +--
 9 files changed, 170 insertions(+), 269 deletions(-)

commit f9417af29bd5a1d2f5b55389a1cc6f4280b347d8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 18 13:23:32 2018 -0500

    [serialize] Propagate error from hb-face

 src/hb-face.cc | 1 +
 1 file changed, 1 insertion(+)

commit 9aebfb418222427a324d911b32abfc11256ca9e3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 18 13:22:17 2018 -0500

    [serialize] Streamline error propagation

 src/hb-buffer.hh               |  2 ++
 src/hb-machinery.hh            | 35 ++++++++++++++++++++++++++---------
 src/hb-map.hh                  |  2 ++
 src/hb-ot-layout-common.hh     |  4 ++--
 src/hb-ot-layout-gsub-table.hh |  4 ++--
 src/hb-set.hh                  |  2 ++
 src/hb-subset.cc               |  2 +-
 7 files changed, 37 insertions(+), 14 deletions(-)

commit 969ff3c7aadbe721cdd414488eb170433f10d00c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 17 22:43:00 2018 -0500

    Remove unused hb-iter.hh

    The ideas there are all part of hb-array.hh now.  To be determined
    how we
    want to use generic iterator patterns.

 src/Makefile.sources |   1 -
 src/hb-iter.hh       | 146
 ---------------------------------------------------
 src/hb-machinery.hh  |   1 -
 3 files changed, 148 deletions(-)

commit b1094fc2d2b614c1407b502d15bd98407a5ffb56
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 17 22:41:04 2018 -0500

    [arrays] Minor tweaks to hb_supplier_t

    I think I like to keep this hb_supplier_t thing separately from
    hb_array_t.

 src/hb-array.hh | 5 +++++
 1 file changed, 5 insertions(+)

commit cf39c242057636feebafce347f8e7ac2b305112a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 17 22:36:23 2018 -0500

    [arrays] Rename Supplier to hb_supplier_t

 src/hb-array.hh                            |   6 +-
 src/hb-face.cc                             |   2 +-
 src/hb-open-file.hh                        |   4 +-
 src/hb-open-type.hh                        |   4 +-
 src/hb-ot-cmap-table.hh                    |   2 +-
 src/hb-ot-layout-common.hh                 |  34 ++++-----
 src/hb-ot-layout-gsub-table.hh             | 108
 ++++++++++++++---------------
 src/hb-ot-shape-complex-arabic-fallback.hh |  14 ++--
 8 files changed, 87 insertions(+), 87 deletions(-)

commit 6b5eaa753047b6b0389cb7521c52efbaccf72daf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 17 21:55:33 2018 -0500

    Hide hb_addressof()

 src/hb-dsalgs.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6befa75cdf83d561de69fb342f68694cd7b46f5e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 17 20:34:51 2018 -0500

    Enable __builtin_* on clang

    We'll see which old clang versions this breaks...

 src/hb-dsalgs.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 8d2d41025619e24160ed80edd1c413168a2dda36
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 17 20:23:26 2018 -0500

    Add hb_addressof() and use it to fix bug after hb_bytes_t merge

    We cannot take address hb_bytes_t direction.  We need to use the
    newly added hb_addressof(), ala std::addressof().

 src/hb-dsalgs.hh        | 9 +++++++++
 src/hb-ot-post-table.hh | 3 ++-
 2 files changed, 11 insertions(+), 1 deletion(-)

commit 49334f9b509fc15e8baa93d49b86886ca933de04
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 17 18:27:36 2018 -0500

    Enable system extensions in hb.hh

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1491

 configure.ac |  1 -
 src/hb.hh    | 26 ++++++++++++++++++++++++++
 2 files changed, 26 insertions(+), 1 deletion(-)

commit 37c14bc7459e8b9cc0840b68223123ffb950b4cc
Author: prrace <philip.race@oracle.com>
Date:   Mon Dec 17 14:59:37 2018 -0800

    Fix Solaris use after free (#1495)

 src/hb-atomic.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 483f2491e40ccf660836ed2797738297e40bd100
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 17 17:56:10 2018 -0500

    Remove define GNU_SOURCE

    Not needed.  We get it in our config.h automatically thanks to
    AC_USE_SYSTEM_EXTENSIONS.  Let's see whose build it breaks...
    If we end up putting it back, we should add other things from
    that macro and remove the macro.

 src/hb.hh | 2 --
 1 file changed, 2 deletions(-)

commit 87ff65aea117391c732d51d874964b3e32d6fa94
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 17 17:19:42 2018 -0500

    Fix more warnings

 src/hb.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f9d219a17417f61fa2c6152d2181504866583a72
Author: prrace <philip.race@oracle.com>
Date:   Mon Dec 17 14:18:47 2018 -0800

    Fix Solaris Trailing comma in enum warnings (#1490)

 src/hb-ot-color.h | 2 +-
 src/hb-ot-name.h  | 2 +-
 src/hb-ot-var.h   | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

commit 244a8627f7b0ed651d6010c7ee7e54fa8fcca400
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Dec 17 21:31:43 2018 +0330

    Lower coretext_aat shaper priority (#1488)

    Related to https://github.com/harfbuzz/harfbuzz/issues/1478

 src/hb-shaper-list.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit e41200859997ccf8fd7d36fff654f3ceea3a4160
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Dec 17 21:31:01 2018 +0330

    Remove redundant void from C++ sources (#1486)

 src/dump-indic-data.cc           |   2 +-
 src/dump-khmer-data.cc           |   2 +-
 src/dump-myanmar-data.cc         |   2 +-
 src/dump-use-data.cc             |   2 +-
 src/hb-aat-fdsc-table.hh         |   4 +-
 src/hb-aat-layout-common.hh      |  23 +++---
 src/hb-aat-layout-feat-table.hh  |   8 +--
 src/hb-aat-layout-just-table.hh  |   2 +-
 src/hb-aat-layout-kerx-table.hh  |  21 +++---
 src/hb-aat-layout-morx-table.hh  |  10 +--
 src/hb-aat-layout-trak-table.hh  |   4 +-
 src/hb-aat-layout.cc             |   6 +-
 src/hb-aat-map.hh                |   4 +-
 src/hb-array.hh                  |  24 +++----
 src/hb-atomic.hh                 |  18 ++---
 src/hb-blob.cc                   |   8 +--
 src/hb-blob.hh                   |  33 ++++-----
 src/hb-buffer-serialize.cc       |   2 +-
 src/hb-buffer.cc                 |  24 +++----
 src/hb-buffer.hh                 |  51 ++++++-------
 src/hb-cache.hh                  |   6 +-
 src/hb-cff-interp-common.hh      | 113 +++++++++++++----------------
 src/hb-cff-interp-cs-common.hh   |  26 +++----
 src/hb-cff-interp-dict-common.hh |  12 ++--
 src/hb-cff1-interp-cs.hh         |   4 +-
 src/hb-cff2-interp-cs.hh         |  24 +++----
 src/hb-common.cc                 |  20 +++---
 src/hb-coretext.cc               |   2 +-
 src/hb-debug.hh                  |   6 +-
 src/hb-directwrite.cc            |  16 ++---
 src/hb-dsalgs.hh                 |   2 +-
 src/hb-face.cc                   |   6 +-
 src/hb-face.hh                   |   8 +--
 src/hb-font.cc                   |   6 +-
 src/hb-font.hh                   |   6 +-
 src/hb-ft.cc                     |  18 ++---
 src/hb-glib.cc                   |   8 +--
 src/hb-gobject-enums.cc.tmpl     |   2 +-
 src/hb-gobject-enums.h.tmpl      |   2 +-
 src/hb-gobject-structs.cc        |   2 +-
 src/hb-icu.cc                    |   8 +--
 src/hb-iter.hh                   |  15 ++--
 src/hb-machinery.hh              | 150
 ++++++++++++++++-----------------------
 src/hb-map.cc                    |   4 +-
 src/hb-map.hh                    |  24 +++----
 src/hb-mutex.hh                  |  10 +--
 src/hb-null.hh                   |  32 ++++-----
 src/hb-object.hh                 |  22 +++---
 src/hb-open-file.hh              |  32 ++++-----
 src/hb-open-type.hh              |  66 +++++++++--------
 src/hb-ot-cff-common.hh          |  30 ++++----
 src/hb-ot-cff1-table.cc          |  17 ++---
 src/hb-ot-cff1-table.hh          |  52 ++++++--------
 src/hb-ot-cff2-table.cc          |   8 +--
 src/hb-ot-cff2-table.hh          |  34 ++++-----
 src/hb-ot-cmap-table.hh          |  10 +--
 src/hb-ot-color-cbdt-table.hh    |   4 +-
 src/hb-ot-color-colr-table.hh    |   2 +-
 src/hb-ot-color-cpal-table.hh    |  10 +--
 src/hb-ot-color-sbix-table.hh    |  11 ++-
 src/hb-ot-color-svg-table.hh     |   7 +-
 src/hb-ot-face.cc                |   2 +-
 src/hb-ot-face.hh                |   2 +-
 src/hb-ot-font.cc                |   8 +--
 src/hb-ot-glyf-table.hh          |   6 +-
 src/hb-ot-hdmx-table.hh          |   4 +-
 src/hb-ot-head-table.hh          |   8 +--
 src/hb-ot-hmtx-table.hh          |   2 +-
 src/hb-ot-kern-table.hh          |  20 +++---
 src/hb-ot-layout-base-table.hh   |  10 +--
 src/hb-ot-layout-common.hh       |  67 +++++++++--------
 src/hb-ot-layout-gdef-table.hh   |  20 +++---
 src/hb-ot-layout-gpos-table.hh   |  34 ++++-----
 src/hb-ot-layout-gsub-table.hh   |  24 +++----
 src/hb-ot-layout-gsubgpos.hh     |  92 +++++++++++-------------
 src/hb-ot-layout-jstf-table.hh   |   8 +--
 src/hb-ot-map.cc                 |   2 +-
 src/hb-ot-map.hh                 |   8 +--
 src/hb-ot-math-table.hh          |  11 ++-
 src/hb-ot-maxp-table.hh          |   5 +-
 src/hb-ot-name-table.hh          |   6 +-
 src/hb-ot-os2-table.hh           |  18 ++---
 src/hb-ot-post-table.hh          |   4 +-
 src/hb-ot-shape.cc               |   2 +-
 src/hb-ot-shape.hh               |   2 +-
 src/hb-ot-tag.cc                 |   4 +-
 src/hb-ot-var-fvar-table.hh      |   9 ++-
 src/hb-ot-var-hvar-table.hh      |   9 +--
 src/hb-ot-vorg-table.hh          |   2 +-
 src/hb-set-digest.hh             |   4 +-
 src/hb-set.cc                    |   4 +-
 src/hb-set.hh                    |  38 +++++-----
 src/hb-shape-plan.cc             |   2 +-
 src/hb-shape-plan.hh             |   5 +-
 src/hb-shape.cc                  |  10 +--
 src/hb-shaper.cc                 |  14 ++--
 src/hb-shaper.hh                 |   6 +-
 src/hb-static.cc                 |   4 +-
 src/hb-subset-cff-common.hh      |  91 +++++++++++-------------
 src/hb-subset-cff1.cc            |  20 ++----
 src/hb-subset-cff2.cc            |   8 +--
 src/hb-subset-input.cc           |   2 +-
 src/hb-subset.hh                 |   4 +-
 src/hb-ucdn.cc                   |  10 +--
 src/hb-unicode.cc                |  64 ++++++++---------
 src/hb-uniscribe.cc              |  12 ++--
 src/hb-vector.hh                 |  38 +++++-----
 src/hb.hh                        |   6 +-
 src/test-unicode-ranges.cc       |   4 +-
 util/ansi-print.cc               |   6 +-
 util/hb-fc.cc                    |   2 +-
 util/hb-shape.cc                 |   5 +-
 util/helper-cairo.cc             |   2 +-
 util/helper-cairo.hh             |   2 +-
 util/main-font-text.hh           |   2 +-
 util/options.cc                  |   8 +--
 util/options.hh                  |  22 +++---
 util/view-cairo.hh               |  14 ++--
 118 files changed, 861 insertions(+), 1024 deletions(-)

commit 7ace10078c23d00da4af0480f91b877faeed3d38
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Dec 17 20:07:04 2018 +0330

    Minor, fix two more ArrayOf incorrect operator logic

 src/hb-open-type.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit a1240383aa82fd88e922a1e751444d14033ae882
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 17 10:44:14 2018 -0500

    [arrays] Minor fix

 src/hb-open-type.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 381c3548e9022a421bcf88db148cc11f337f3b79
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 17 00:39:30 2018 -0500

    [array] Add cast operator to add const to Type

    In lieu of constructor removed in previous commit.

 src/hb-array.hh | 1 +
 1 file changed, 1 insertion(+)

commit 15acf33c228e0c8e0f8cc6a04e566970164dd5f1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 17 00:38:13 2018 -0500

    [array] Remove problematic constructor

 src/hb-array.hh | 1 -
 1 file changed, 1 deletion(-)

commit 470369a871791b610e0c42212558e83baeb83409
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 17 00:20:19 2018 -0500

    [array] Add arithmetic operators

 src/hb-array.hh | 22 ++++++++++++++++++----
 1 file changed, 18 insertions(+), 4 deletions(-)

commit 6cd60c2f2aa17e3f02b50c19cf640b3f183f3354
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 17 00:09:06 2018 -0500

    [array] Return Crap instead of Null if Type is not const

    Ouch!

 src/hb-array.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 94e72cf1c9af563fbf522efb7f2e0b1fcd616418
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 17 00:06:40 2018 -0500

    [array] Add operator *

 src/hb-array.hh | 2 ++
 1 file changed, 2 insertions(+)

commit 68d4a5eee0f248891d20d69b897201d105951aef
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 17 00:02:42 2018 -0500

    [array] Add constructor from fixed-size array

 src/hb-array.hh | 1 +
 src/hb-iter.hh  | 4 ++--
 2 files changed, 3 insertions(+), 2 deletions(-)

commit a4354d2fd36377ec8b544c7b88a231cb1273dccd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 16 23:57:27 2018 -0500

    [array] Organize

 src/hb-array.hh | 75
 ++++++++++++++++++++++++++++++++++++---------------------
 1 file changed, 48 insertions(+), 27 deletions(-)

commit 84c1865821151d83a8798ae11ebba3329a12c560
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 16 23:52:17 2018 -0500

    [arrays] Reduce Supplier<> even further

 src/hb-array.hh | 24 +++---------------------
 1 file changed, 3 insertions(+), 21 deletions(-)

commit 1bcc4fc9f34ab518fc822c9464a73ba3e90f5f1c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 16 23:47:56 2018 -0500

    Whitespace

 src/hb-ot-shape-complex-arabic-fallback.hh | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit f85f6e815f439075f8c6f5391e5c8dfe77e0f00d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 16 23:45:07 2018 -0500

    [array] Add operator +=

 src/hb-array.hh | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

commit 7c0e3e9b2b077fced829a10f616ed3d6b51c15c4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 16 23:43:17 2018 -0500

    [array] Add constructor from hb_array_t<const Type>

 src/hb-array.hh | 1 +
 1 file changed, 1 insertion(+)

commit 92680361ec68734ad38e2158626feebaf18eec88
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 16 23:38:51 2018 -0500

    [arrays] Move Supplier<> to hb-array.hh

 src/hb-array.hh     | 33 +++++++++++++++++++++++++++++++++
 src/hb-machinery.hh | 32 --------------------------------
 2 files changed, 33 insertions(+), 32 deletions(-)

commit 2a3fa3f82ffdb778a2d21fc01e859579161237c9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 16 23:33:03 2018 -0500

    [arrays] Remove unnecessary constructor from Supplier<>

    Looks like operator hb_array_t<> from vector works here. :)

 src/hb-machinery.hh | 5 -----
 1 file changed, 5 deletions(-)

commit 507cac4943e987879b95d842fe60643abbf22efa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 16 23:31:19 2018 -0500

    [arrays] Start moving Supplier<> to hb_array_t<>

 src/hb-machinery.hh | 31 +++++++++++--------------------
 1 file changed, 11 insertions(+), 20 deletions(-)

commit 1e2c98126e8500ace31483b05d77478afd59bab8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 16 22:30:44 2018 -0500

    [arrays] Remove unused stride from Supplier

 src/hb-machinery.hh | 10 +++-------
 1 file changed, 3 insertions(+), 7 deletions(-)

commit 0d0fe9df46c645538feaee1ec99a0108383a3669
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 16 22:29:40 2018 -0500

    [arrays] Remove need of stride in Supplier<>

 src/hb-face.cc      |  6 ++----
 src/hb-open-file.hh | 19 +++++++++----------
 src/hb-vector.hh    |  2 +-
 3 files changed, 12 insertions(+), 15 deletions(-)

commit dcfa4a8d711716de88b94a370663e9564e3e7ccc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 16 20:40:07 2018 -0500

    [array] Remove custom hb_bytes_t implementation

 src/hb-array.hh         | 67
 +++++++++++++++++--------------------------------
 src/hb-machinery.hh     |  2 +-
 src/hb-ot-name-table.hh |  8 +++---
 src/hb-ot-name.cc       | 10 ++++----
 4 files changed, 33 insertions(+), 54 deletions(-)

commit 3656f56d47cf6b89a25990d7836704fef79fa5b4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 16 20:35:11 2018 -0500

    [arrays] Minor

 src/hb-array.hh     |  3 ++-
 src/hb-open-type.hh | 10 ++++------
 src/hb-vector.hh    |  4 +---
 3 files changed, 7 insertions(+), 10 deletions(-)

commit aa8f94714ee720c56be1a3406df7bacb0550158c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 16 20:20:35 2018 -0500

    [array] Minor

 src/hb-array.hh | 4 ++++
 src/hb-iter.hh  | 2 +-
 2 files changed, 5 insertions(+), 1 deletion(-)

commit 5a552f75468d777d8d4bd3168e28f56a3369eafd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 16 20:07:44 2018 -0500

    [array] Move hb_array_t and related types to hb-array.hh

 src/Makefile.sources |   1 +
 src/hb-array.hh      | 241
 +++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-dsalgs.hh     | 206 -------------------------------------------
 src/hb-machinery.hh  |   1 +
 src/hb-vector.hh     |   2 +-
 5 files changed, 244 insertions(+), 207 deletions(-)

commit 01d06e34ffa746d3737df00bb692cdb1e859c1c6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 16 14:27:43 2018 -0500

    Minor change to explicit_operator aesthetics

 src/hb-iter.hh      | 2 +-
 src/hb-machinery.hh | 2 +-
 src/hb-vector.hh    | 4 ++--
 src/hb.hh           | 4 ++--
 4 files changed, 6 insertions(+), 6 deletions(-)

commit b2ebaa9afac0f57006283db92d1f3b4df3d6bd7e
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Dec 16 22:38:10 2018 +0330

    Remove redundant 'inline' from methods (#1483)

 src/hb-aat-fdsc-table.hh         |  12 +-
 src/hb-aat-layout-ankr-table.hh  |  12 +-
 src/hb-aat-layout-bsln-table.hh  |  13 +-
 src/hb-aat-layout-common.hh      | 150 +++++++-------
 src/hb-aat-layout-feat-table.hh  |  46 ++---
 src/hb-aat-layout-just-table.hh  |  26 +--
 src/hb-aat-layout-kerx-table.hh  | 120 +++++------
 src/hb-aat-layout-lcar-table.hh  |  14 +-
 src/hb-aat-layout-morx-table.hh  | 104 +++++-----
 src/hb-aat-layout-trak-table.hh  |  28 +--
 src/hb-aat-layout.hh             |   2 +-
 src/hb-aat-ltag-table.hh         |   6 +-
 src/hb-aat-map.hh                |   7 +-
 src/hb-atomic.hh                 |  26 +--
 src/hb-blob.hh                   |  32 ++-
 src/hb-buffer.hh                 |  76 ++++---
 src/hb-cache.hh                  |  10 +-
 src/hb-cff-interp-common.hh      | 197 +++++++++---------
 src/hb-cff-interp-cs-common.hh   | 166 +++++++--------
 src/hb-cff-interp-dict-common.hh |  26 +--
 src/hb-cff1-interp-cs.hh         |  21 +-
 src/hb-cff2-interp-cs.hh         |  48 ++---
 src/hb-common.cc                 |  13 +-
 src/hb-debug.hh                  |  20 +-
 src/hb-directwrite.cc            |   2 +-
 src/hb-dsalgs.hh                 |  84 ++++----
 src/hb-face.cc                   |   2 +-
 src/hb-face.hh                   |   6 +-
 src/hb-font.hh                   | 216 ++++++++++----------
 src/hb-ft.cc                     |   8 +-
 src/hb-glib.cc                   |   2 +-
 src/hb-icu.cc                    |   2 +-
 src/hb-iter.hh                   |  18 +-
 src/hb-kern.hh                   |   8 +-
 src/hb-machinery.hh              | 210 +++++++++----------
 src/hb-map.hh                    |  38 ++--
 src/hb-mutex.hh                  |  12 +-
 src/hb-null.hh                   |  26 +--
 src/hb-object.hh                 |  34 ++--
 src/hb-open-file.hh              |  92 ++++-----
 src/hb-open-type.hh              | 253 ++++++++++++-----------
 src/hb-ot-cff-common.hh          | 177 ++++++++--------
 src/hb-ot-cff1-table.cc          |  32 +--
 src/hb-ot-cff1-table.hh          | 160 +++++++--------
 src/hb-ot-cff2-table.cc          |  16 +-
 src/hb-ot-cff2-table.hh          |  62 +++---
 src/hb-ot-cmap-table.hh          | 185 +++++++++--------
 src/hb-ot-color-cbdt-table.hh    |  40 ++--
 src/hb-ot-color-colr-table.hh    |  18 +-
 src/hb-ot-color-cpal-table.hh    |  55 +++--
 src/hb-ot-color-sbix-table.hh    |  48 ++---
 src/hb-ot-color-svg-table.hh     |  20 +-
 src/hb-ot-font.cc                |   2 +-
 src/hb-ot-gasp-table.hh          |   6 +-
 src/hb-ot-glyf-table.hh          |  37 ++--
 src/hb-ot-hdmx-table.hh          |  36 ++--
 src/hb-ot-head-table.hh          |  10 +-
 src/hb-ot-hhea-table.hh          |   2 +-
 src/hb-ot-hmtx-table.hh          |  18 +-
 src/hb-ot-kern-table.hh          |  44 ++--
 src/hb-ot-layout-base-table.hh   | 104 +++++-----
 src/hb-ot-layout-common.hh       | 425
 ++++++++++++++++++++-------------------
 src/hb-ot-layout-gdef-table.hh   | 126 ++++++------
 src/hb-ot-layout-gpos-table.hh   | 209 +++++++++----------
 src/hb-ot-layout-gsub-table.hh   | 360 ++++++++++++++++-----------------
 src/hb-ot-layout-gsubgpos.hh     | 353 ++++++++++++++++----------------
 src/hb-ot-layout-jstf-table.hh   |  44 ++--
 src/hb-ot-map.hh                 |  38 ++--
 src/hb-ot-math-table.hh          | 142 ++++++-------
 src/hb-ot-maxp-table.hh          |  12 +-
 src/hb-ot-name-table.hh          |  21 +-
 src/hb-ot-os2-table.hh           |  34 ++--
 src/hb-ot-post-table.hh          |  26 +--
 src/hb-ot-shape-complex-indic.cc |  10 +-
 src/hb-ot-shape-complex-khmer.cc |  10 +-
 src/hb-ot-shape.hh               |   6 +-
 src/hb-ot-stat-table.hh          |  16 +-
 src/hb-ot-var-avar-table.hh      |   8 +-
 src/hb-ot-var-fvar-table.hh      |  55 +++--
 src/hb-ot-var-hvar-table.hh      |  16 +-
 src/hb-ot-var-mvar-table.hh      |  10 +-
 src/hb-ot-vorg-table.hh          |  22 +-
 src/hb-set-digest.hh             |  41 ++--
 src/hb-set.hh                    | 114 +++++------
 src/hb-shape.cc                  |  14 +-
 src/hb-shaper.cc                 |  14 +-
 src/hb-shaper.hh                 |  10 +-
 src/hb-subset-cff-common.hh      | 175 ++++++++--------
 src/hb-subset-cff1.cc            |  91 ++++-----
 src/hb-subset-cff2.cc            |  36 ++--
 src/hb-subset-plan.hh            |  12 +-
 src/hb-subset.hh                 |   4 +-
 src/hb-ucdn.cc                   |   2 +-
 src/hb-unicode.hh                |  26 +--
 src/hb-uniscribe.cc              |  16 +-
 src/hb-utf.hh                    |  54 +++--
 src/hb-vector.hh                 |  86 ++++----
 97 files changed, 2911 insertions(+), 2987 deletions(-)

commit 7251c7729061b7df29efe2b466315e96c81ad03f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Dec 15 21:00:55 2018 -0500

    Whitespace

 src/hb-buffer-serialize.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 829b56b1a22736eac49132b2e56dc480157afca2
Author: Behdad Esfahbod <behdad@google.com>
Date:   Sat Dec 15 13:02:13 2018 -0500

    Whitespace

 src/hb-ot-cff-common.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 42a1012562c1f020f470526a34b68ed21ad138cc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 13 19:39:59 2018 -0500

    [subset] Actually subset GDEF

 src/hb-subset.cc | 3 +++
 1 file changed, 3 insertions(+)

commit c9c746c7f6091e575fd74ba8f8cae2c4fd44a1ad
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 13 18:37:37 2018 -0500

    [subset] Fix up ClassDef some more

 src/hb-ot-layout-common.hh | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

commit 7ee6128902333716dd8d8df6e38a8d1ebacb0a46
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 13 18:32:04 2018 -0500

    [subset] Fix ClassDefFormat1 subsetting

 src/hb-ot-layout-common.hh | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

commit 1b6d0c44b3067f5840d3fdac99fbc7448d0f37bf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 13 18:10:48 2018 -0500

    [subset] Sketch GDEF subsetting

 src/hb-ot-layout-gdef-table.hh | 20 ++++++++++++++++++++
 src/hb-ot-layout-gsubgpos.hh   |  2 ++
 2 files changed, 22 insertions(+)

commit 705e2f5056d60c28154004e0c5d3b0ec67fe93c8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 13 17:48:42 2018 -0500

    [subset] Implement for ClassDef

 src/hb-ot-layout-common.hh     | 80
 ++++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-layout-gsub-table.hh |  8 ++---
 2 files changed, 84 insertions(+), 4 deletions(-)

commit 6e33a3955df77b9d1fda5ea44302d97b21e7871c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 13 16:40:01 2018 -0500

    Minor

 src/hb-machinery.hh            | 12 +++++++++---
 src/hb-ot-cmap-table.hh        |  3 +--
 src/hb-ot-layout-gsub-table.hh |  8 ++++----
 3 files changed, 14 insertions(+), 9 deletions(-)

commit cc65901ca7185df926570d5067ace763a2cc759e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 13 16:01:45 2018 -0500

    [serialize] Implement for ClassDef

 src/hb-ot-layout-common.hh | 33 +++++++++++++++++++++++++++++++--
 1 file changed, 31 insertions(+), 2 deletions(-)

commit e5309e4fd8583aa5c5ad9f3934d8aa593c850468
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 13 15:57:12 2018 -0500

    [serialize] Implement for ClassDefFormat2

 src/hb-ot-layout-common.hh | 50
 ++++++++++++++++++++++++++++++++++++++++++----
 1 file changed, 46 insertions(+), 4 deletions(-)

commit c8b43cbe316b07507aece4dc769f38226cd706da
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 13 15:50:13 2018 -0500

    [serialize] Implement for ClassDefFormat1

 src/hb-ot-layout-common.hh | 34 ++++++++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)

commit 576103132945c9d916514720d4034b398e099cfa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 12 21:21:26 2018 -0500

    [subset] Minor

 src/hb-subset.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 798e98c47bd9fa4d434487ae92e2c88ebb8a19a5
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Dec 12 18:08:15 2018 -0800

    [CFF] bad offset in Index (#1476)

    * Update hb-ot-cff-common.hh

    * fix bug

    * bummer fix wasn't hit. refix

    * additional sanity check

    * Added test cases for oss-fuzz issues 11805, 11806

 src/hb-ot-cff-common.hh                                   |  10
 ++++++++--
 ...clusterfuzz-testcase-hb-subset-fuzzer-5643036478930944 | Bin 0 ->
 369 bytes
 ...clusterfuzz-testcase-hb-subset-fuzzer-5686186874503168 | Bin 0 ->
 962 bytes
 3 files changed, 8 insertions(+), 2 deletions(-)

commit bcb4ecaf68c7219e89a801352bfc6a682b1581ef
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Dec 12 17:36:01 2018 -0800

    [CFF] check out of range FD index (#1477)

    * add fd index checks to subr subsetter

    also added oss-fuzz test case

    * undid SubrSubsetParam::is_valid

    because already validated by SubrClosures.valid

 src/hb-subset-cff-common.hh                              |  10 ++++++++++
 ...lusterfuzz-testcase-hb-subset-fuzzer-5762137968869376 | Bin 0 ->
 2037 bytes
 2 files changed, 10 insertions(+)

commit 3f8e7a98d3cc10fefe65b9638c8abdf3ebe152cb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 12 11:32:57 2018 -0500

    [util/hb-subset] Add --layout to keep GDEF/GSUB/GPOS

    Will become default and option removed in the future.

 util/hb-subset.cc | 1 +
 util/options.cc   | 1 +
 util/options.hh   | 2 ++
 3 files changed, 4 insertions(+)

commit 2cc993e035cb37711f894968246817e53a9e823d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 12 10:07:38 2018 -0500

    [dispatch] Minor

 src/hb-ot-layout-gpos-table.hh | 4 +---
 src/hb-ot-layout-gsub-table.hh | 4 +---
 2 files changed, 2 insertions(+), 6 deletions(-)

commit 602fbfe3c96b3f18b0109239528ba18a19be4948
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 12 09:56:47 2018 -0500

    [sanitize] Fix sanitizing sublookup array

 src/hb-ot-layout-common.hh | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

commit c78e4784fbe06ceb27b54a1d8908016ade071cb4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 12 09:50:18 2018 -0500

    [dispatch] Minor

 src/hb-machinery.hh          | 1 +
 src/hb-ot-layout-gsubgpos.hh | 3 ---
 src/hb-subset.hh             | 1 -
 3 files changed, 1 insertion(+), 4 deletions(-)

commit f9d211af1d6d78d092038d263b222ec8a65cf09d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 12 09:44:30 2018 -0500

    Revert "Minor fix re sanitize of Lookup subtables"

    This reverts commit 7146718bef81492e13aede0a2801cda1da41ce35.

    Fixing differently.

 src/hb-ot-layout-common.hh | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

commit 7ee5c52345c122436e054062084cd51292b90ad1
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Dec 12 15:14:37 2018 +0330

    minor style fix, use void in methods on no argument

 src/hb-aat-fdsc-table.hh        |   4 +-
 src/hb-aat-layout-common.hh     |   6 +-
 src/hb-aat-layout-feat-table.hh |   4 +-
 src/hb-aat-layout-trak-table.hh |  18 +--
 src/hb-aat-layout.cc            |   4 +-
 src/hb-buffer.cc                |  48 +++----
 src/hb-directwrite.cc           | 297
 +++++++++++++++++++---------------------
 src/hb-dsalgs.hh                |   5 +-
 src/hb-map.hh                   |  20 +--
 src/hb-ot-cmap-table.hh         |   2 +-
 src/hb-ot-color-cbdt-table.hh   |   2 +-
 src/hb-ot-color-cpal-table.hh   |   4 +-
 src/hb-ot-color-sbix-table.hh   |  10 +-
 src/hb-ot-color-svg-table.hh    |  15 +-
 src/hb-ot-glyf-table.hh         |   2 +-
 src/hb-ot-hdmx-table.hh         |   6 +-
 src/hb-ot-layout-base-table.hh  |  11 +-
 src/hb-ot-os2-table.hh          |  15 +-
 18 files changed, 211 insertions(+), 262 deletions(-)

commit a33f238f8888cc969e1e393deda0518fb8dd6b13
Merge: 7146718b 1e09add2
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Dec 12 12:44:06 2018 +0330

    Merge pull request #1474 from fanc999/master.msvc

    Few fixes for Visual Studio builds

commit 7146718bef81492e13aede0a2801cda1da41ce35
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 11 23:44:29 2018 -0500

    Minor fix re sanitize of Lookup subtables

    We were dereferencing Null pointers and trying to sanitize them,
    which is not necessary...

 src/hb-ot-layout-common.hh | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit ce069d193229cde12c77a3f464fc10286bedf5f3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 11 23:07:48 2018 -0500

    Minor

 src/hb-open-type.hh | 1 -
 1 file changed, 1 deletion(-)

commit 1aea86944605e7e18acfd2c0a77ba60e62239274
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 11 22:53:58 2018 -0500

    [subset] Map glyphs during SingleSubst subsetting

    Ha!

 src/hb-ot-layout-gsub-table.hh | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

commit 41d1a1c10f7e5ca69a337ae164d270e09b5f93ac
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 11 22:48:27 2018 -0500

    [subset] Minor

 src/hb-machinery.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2aba2c6c73301396f7e0e5dee819ab6863e74900
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 11 21:18:47 2018 -0500

    [serialize] Break down assert

 src/hb-machinery.hh | 18 ++++++++----------
 1 file changed, 8 insertions(+), 10 deletions(-)

commit 9844c880e280e9cd28dcbeac2e581ac923c5ddf3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 11 17:28:04 2018 -0500

    Minor

 test/shaping/Makefile.am | 2 ++
 util/Makefile.am         | 2 ++
 2 files changed, 4 insertions(+)

commit 2941208f1eedabec2715b2a67d40f058df7eb5e6
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Dec 11 12:21:24 2018 -0800

    [CFF] oss-fuzz issue 11690 ASSERT: substr.offset >= opStart (#1461)

    * fix oss-fuzz 11690: substr.offset >= opStart

    detect recursive subroutine call & handle as error

    * fix build failure

    * add minimized test case for oss-fuzz 11690

    * removed asserts

 src/hb-cff-interp-common.hh                             |   9 ++++-----
 src/hb-subset-cff-common.hh                             |  12
 ++++++++++--
 src/hb-subset-cff1.cc                                   |   4 ++--
 src/hb-subset-cff2.cc                                   |   4 ++--
 ...testcase-minimized-hb-subset-fuzzer-5750420593442816 | Bin 0 ->
 96091 bytes
 5 files changed, 18 insertions(+), 11 deletions(-)

commit 333586245cb37668c8a29af17920474c09667f4b
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Dec 11 12:20:20 2018 -0800

    minimize use of assert: removed or changed to error handling (#1467)

 src/hb-ot-cff-common.hh     |  2 +-
 src/hb-ot-cff1-table.hh     | 12 ++++++++----
 src/hb-subset-cff-common.cc |  6 ++++--
 src/hb-subset-cff-common.hh |  1 -
 src/hb-subset-cff1.cc       | 22 +++++++++++++++++-----
 src/hb-subset-cff2.cc       | 14 +++++++++++---
 6 files changed, 41 insertions(+), 16 deletions(-)

commit f24498c1e95e816889eb7a2f8b1062bbf15bed1b
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Dec 11 23:02:52 2018 +0330

    [ci] Fix Travis macOS bot ICU issue (#1472)

 .travis.yml | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit 9f3a51ddb952e1281f9a656fde7193c3e3b8dad2
Author: 👻 <sarabi@Corsac-Fox.local>
Date:   Tue Dec 11 13:38:05 2018 -0500

    [ucdn] Fix header

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1470

 src/hb-ucdn/ucdn.h | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

commit b225593d6baf3455e1ac951efc0df5015fdf7c69
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Tue Dec 11 13:19:17 2018 -0500

    Correct REPLACEMENT CHARACTER's code point to FFFD (#1471)

 test/shaping/hb_test_tools.py | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 1e09add232e14ef61d2f222a5ee05a2105af64f0
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Wed Dec 12 01:32:01 2018 +0800

    test/api: Fix building on pre-C99 compilers

    Ensure variables are declared at the top of the block.

 test/api/hb-test.h         |  3 ++-
 test/api/test-aat-layout.c |  3 ++-
 test/api/test-font.c       |  2 +-
 test/api/test-map.c        |  9 ++++++---
 test/api/test-ot-color.c   |  9 +++++----
 test/api/test-ot-face.c    | 14 ++++++++------
 test/api/test-ot-name.c    | 30 ++++++++++++++++--------------
 test/api/test-ot-tag.c     | 11 ++++++-----
 8 files changed, 46 insertions(+), 35 deletions(-)

commit 09b16c536d31376de771eedde54620dd6c8f39d7
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Wed Dec 12 01:23:53 2018 +0800

    CMake: Fix Introspection builds

    We need to add -DHB_AAT_H and -DHB_AAT_H_IN to the flags that
    are passed
    to g-ir-scanner, so that introspection builds can proceed normally.

 CMakeLists.txt | 2 ++
 1 file changed, 2 insertions(+)

commit 1683bb2c9337fa34e5e80d459ab5eab99d7a9804
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Dec 8 13:57:39 2018 +0330

    [glyf] minor

 src/hb-ot-glyf-table.hh | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit f7cfe99815c07f82d5ad253af1e811db734bf92b
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Dec 8 13:40:44 2018 +0330

    [os2] Move typometrics detection logic to the table (#1465)

 src/hb-ot-hmtx-table.hh | 14 +++++---------
 src/hb-ot-os2-table.hh  |  7 ++++---
 2 files changed, 9 insertions(+), 12 deletions(-)

commit 47cf9a9633bbff12fef1131e7179dfc351f7e5f3
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Dec 8 10:20:25 2018 +0330

    Apply non-controversial parts of ot-style (#1464)

    Things to be used in https://github.com/harfbuzz/harfbuzz/pull/1459

 src/hb-aat-fdsc-table.hh    | 29 +++++++++++++++++++++++++---
 src/hb-aat-layout-common.hh |  1 +
 src/hb-ot-head-table.hh     | 13 +++++++++++++
 src/hb-ot-os2-table.hh      | 46
 +++++++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-stat-table.hh     | 38 ++++++++++++++++++-------------------
 5 files changed, 105 insertions(+), 22 deletions(-)

commit 4d809696ef4db046d11072e5433ea5ff36bd7b26
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Dec 7 20:49:39 2018 -0800

    fix for issue #1447 (#1462)

    Added case for OpCode_BaseFontName. This opcode in spec but
    practically unused.
    Added a comment for default case which can't be hit

 src/hb-ot-cff1-table.hh | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit 1abd4fcaec31053b442525d7f240af489c5974b1
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Dec 7 22:34:12 2018 +0330

    [fdsc] minor

 src/hb-aat-fdsc-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 59345cdef38cf1f514a6a0eb6e8852350acb6166
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Dec 6 13:36:26 2018 -0800

    [CFF] Refix oss-fuzz 11714: set_blends (PR #1458) (#1460)

    * pass subarray of stack to set_blends

    * get_subarray to return a value, not ref

    * restored error check (with tweak)

 src/hb-cff-interp-common.hh |  5 +++++
 src/hb-cff2-interp-cs.hh    | 14 +++++++++-----
 2 files changed, 14 insertions(+), 5 deletions(-)

commit 20245f0000a0f04f2ba172b51ce69ee7ebb256aa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 6 10:27:37 2018 -0800

    Fix likely check

    Ouch!

 src/hb-cff-interp-dict-common.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit d866e905fd555d393464ed58d5fc11ee453c7ea4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 6 10:26:32 2018 -0800

    Add default value to first argument of sub_array()

 src/hb-dsalgs.hh | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit f1352f7486caaf6d3480ef2ac6b4719acf73e6a2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 6 10:21:06 2018 -0800

    Add sub_array to hb_vector_t

 src/hb-vector.hh | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

commit ca23b719357b01e98a5cf533bbf637d6706a4ec2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 6 10:19:03 2018 -0800

    Add default-value for second arg of sub_array()

 src/hb-dsalgs.hh    | 7 +++----
 src/hb-open-type.hh | 8 ++++----
 2 files changed, 7 insertions(+), 8 deletions(-)

commit 6ad3fcddaf2ba8ebc9ad49ff9e7b33b60fcad16a
Merge: f95324a3 ae087d10
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Dec 6 10:21:00 2018 +0330

    Merge pull request #1458 from harfbuzz/cff-check-blends

    [CFF] oss-fuzz issue 11714: set_blends

commit ae087d10c22249f3aec3239e4eac98a728f71f75
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Dec 5 21:47:34 2018 -0800

    add minimized test case for oss-fuzz issue 11714

 ...-testcase-minimized-hb-subset-fuzzer-5710107829075968 | Bin 0 ->
 3660 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)

commit 1ccbdcf73bbc967f5f94c0bc7f7e869bd87d9fa0
Merge: 14d29a10 f95324a3
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Dec 5 21:37:38 2018 -0800

    Merge branch 'master' into cff-check-blends

commit 14d29a10437205566c4bd7bcfa2282d34d9f4f2f
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Dec 5 21:33:29 2018 -0800

    check number of blends against args on stack

 src/hb-cff2-interp-cs.hh | 5 +++++
 1 file changed, 5 insertions(+)

commit f95324a3351c1f699214ad84d073268218ea83a3
Merge: 6727c4b6 9d8f3b0d
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Dec 6 08:33:44 2018 +0330

    Merge pull request #1457 from harfbuzz/cff-varstore-sanitize

    [CFF] oss-fuzz issue 11713 (CFF2VariationStore::serialize)

commit 6727c4b6f0356b08803b4d5cde608ec004e3533f
Merge: d9dabc00 34e3ef8f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 5 17:37:21 2018 -0800

    Merge pull request #1456 from harfbuzz/cff-subr-sanitize

    [CFF] fix oss-fuzz issue 11691 (BlendArg::set_blends)

commit 9d8f3b0dfbf39f5dfa25d52f47e8af6ad318eb17
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Dec 5 17:14:51 2018 -0800

    add minimized test case for oss-fuzz issue 11713

 ...z-testcase-minimized-hb-subset-fuzzer-5660711141769216 | Bin 0 ->
 383 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)

commit c31092ab34641072606f854408eb1bea18ed2507
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Dec 5 17:04:55 2018 -0800

    sanitize variationStore in CFF2 against its size

 src/hb-ot-cff2-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 34e3ef8ff394f281b8d7e2c08f346a9495692edc
Merge: 72d8f763 d9dabc00
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Dec 5 15:50:05 2018 -0800

    Merge branch 'master' into cff-subr-sanitize

commit 72d8f76368b264a42fe58438fe15811d458a7935
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Dec 5 15:49:11 2018 -0800

    add minimized test case for oss-fuzz issue 11691

 ...z-testcase-minimized-hb-shape-fuzzer-5686369209286656 | Bin 0 ->
 2880 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)

commit d9dabc00e9278a346e85538212c126da7e610d55
Merge: 81cfd3c7 010e2ddb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 5 15:39:34 2018 -0800

    Merge pull request #1454 from harfbuzz/cff-fixbcd

    [CFF] fix oss-fuzz issue 11674: parse_bcd

commit 81cfd3c775dbc470f57d7fe2775cc068ffa367b6
Merge: 8394a6cb 6708c559
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 5 15:37:15 2018 -0800

    Merge pull request #1455 from harfbuzz/cff-strinc_assert

    [CFF] fix oss-fuzz issue 11675 (ASSERT: count <= str.len)

commit 6dcfda92c17a7701479118751a8290246e9a3c05
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Dec 5 15:07:46 2018 -0800

    sanitize CFF1 & CFF2 global subrs

 src/hb-ot-cff1-table.hh | 2 +-
 src/hb-ot-cff2-table.hh | 1 +
 2 files changed, 2 insertions(+), 1 deletion(-)

commit 6708c5595fc6babdae0132f8a23cbe3558a58703
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Dec 5 12:51:18 2018 -0800

    fix oss-fuzz issue 11675 (ASSERT: count <= str.len)

    Also added an additional error check to avail ()

 src/hb-cff-interp-common.hh                           |  18
 ++++++++++++++++--
 ...stcase-minimized-hb-subset-fuzzer-5768186323009536 | Bin 0 ->
 337 bytes
 2 files changed, 16 insertions(+), 2 deletions(-)

commit 010e2ddb384b5a721172fd7466aafec58dbf8063
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Dec 5 12:23:58 2018 -0800

    minimized test case for oss-fuzz issue 11674

 ...zz-testcase-minimized-hb-subset-fuzzer-5672006905757696 | Bin 0 ->
 73 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)

commit 2cb9d4c183afc838ecf2ba0d47814e9eaa6f09c6
Merge: a5fa843c 8394a6cb
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Dec 5 11:25:29 2018 -0800

    Merge branch 'master' into cff-fixbcd

commit a5fa843c746e20aaca48ece6cff057deb8d916ca
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Dec 5 11:18:16 2018 -0800

    fixed a bug with fractional part in a negative value

 src/hb-cff-interp-dict-common.hh | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit 8394a6cb252dd8b4230c2b59e8c346ec5403bf88
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Dec 5 15:23:41 2018 +0330

    [os2] Make newer table fields accessible (#1452)

 src/hb-ot-os2-table.hh | 88
 +++++++++++++++++++++++++++++++++++++-------------
 1 file changed, 66 insertions(+), 22 deletions(-)

commit 5ab086ebb18112ef48bf6c913acc91b2009a9bed
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Dec 5 14:17:37 2018 +0330

    [fdsc] Implement the table parsing

    Related to https://github.com/harfbuzz/harfbuzz/issues/1337

    May used in addition to an API related to STAT.

    Lots of Apple fonts have it.

 src/Makefile.sources     |   1 +
 src/hb-aat-fdsc-table.hh | 103
 +++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-aat-layout.cc     |   1 +
 3 files changed, 105 insertions(+)

commit 8f80e53341a3d5bac6c2c39ab6d6973eedb0b074
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Dec 5 13:51:14 2018 +0330

    [gasp] Implement the table parsing

    May or may not be used in
    https://github.com/harfbuzz/harfbuzz/pull/1432

 src/Makefile.sources    |  1 +
 src/hb-ot-gasp-table.hh | 84
 +++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-layout.cc     |  5 +--
 3 files changed, 88 insertions(+), 2 deletions(-)

commit 79e7e3445efef2dc57f8a10c7e355e802af08868
Merge: cf4b7db6 78f639b8
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Dec 5 13:25:18 2018 +0330

    Merge pull request #1449 from harfbuzz/cff-fixcharset

    [CFF] fix for oss-fuzz 11657: Charset overrun

commit cf4b7db6b1e01c11d7a8a26d95cf947935a234a7
Merge: 32cc46c7 803d2f92
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Dec 5 13:23:23 2018 +0330

    Merge pull request #1448 from harfbuzz/cff-leak

    [CFF] fix leak: oss-fuzz 11662

commit 620d1ef588c6ce25644891cfe4b9c20fd8a9d1db
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Dec 5 00:36:11 2018 -0800

    fix unsigned long const

 src/hb-cff-interp-dict-common.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 28dfb4c14280b05ad0a519f9df2b0eda41a62540
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Dec 5 00:26:03 2018 -0800

    fix signed/unsigned comparison

 src/hb-cff-interp-dict-common.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit f9cee08edd32182044407bf6ffde00df0feb09b7
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Dec 4 23:58:26 2018 -0800

    use sized int types in parse_bcd

 src/hb-cff-interp-dict-common.hh | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit c01a5f32a33fa875de68ca29a4672fd36a05245b
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Dec 4 23:23:23 2018 -0800

    refix

 src/hb-cff-interp-dict-common.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 755fefc92113e469a1aadee2546958fede156c01
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Dec 4 23:18:28 2018 -0800

    fix bug

 src/hb-cff-interp-dict-common.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0e81b153aff1f2e301e73ca1a15a9bc5b2e7bb82
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Dec 4 22:40:07 2018 -0800

    fix typo

 src/hb-cff-interp-dict-common.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 85d4b15cd88ce9a6ffccccf90300f9c184166058
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Dec 4 22:30:33 2018 -0800

    include float.h

 src/hb-cff-interp-dict-common.hh | 1 +
 1 file changed, 1 insertion(+)

commit 5a7c371e4c6f1775ebbfe120fafe92afe402a954
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Dec 4 22:24:38 2018 -0800

    check overflow & clamp

 src/hb-cff-interp-dict-common.hh | 36
 +++++++++++++++++++++++++++---------
 1 file changed, 27 insertions(+), 9 deletions(-)

commit 32cc46c75a5f163f254b7998ed9193d5bbc85e4b
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Dec 4 21:32:34 2018 -0800

    [CFF] fix oss-fuzz issue 11670: NULL dereference (#1450)

    * guard against no subr access

    * code tweak

    * add minimized testcase for oss-fuzz 11670 (Null deference)

 src/hb-cff-interp-cs-common.hh                     |  22
 ++++++++++++++++-----
 src/hb-ot-cff-common.hh                            |   2 +-
 ...ase-minimized-hb-subset-fuzzer-5672913680728064 | Bin 0 -> 861 bytes
 3 files changed, 18 insertions(+), 6 deletions(-)

commit 78f639b8bf508ccfb27224f12442f8e8a1460e08
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Dec 4 14:17:03 2018 -0800

    added minimized testcase for oss-fuzz issue 11657

 ...zz-testcase-minimized-hb-shape-fuzzer-5700264032468992 | Bin 0 ->
 648 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)

commit d3d2f32c6e85de1d7fbbb18afef356e09110e61c
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Dec 4 13:51:26 2018 -0800

    fix oss-fuzz 11657: buffer overrun

    Check overrun in Charset1_2::get_glyph

 src/hb-ot-cff1-table.hh | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

commit d0a250a7b15f1099c2005bc2427d62e7370dcc33
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Dec 4 23:42:13 2018 +0330

    Reuse hb_aat_layout_has_* logic in coretext-aat detection logic
    (#1442)

 src/hb-coretext.cc | 16 ++--------------
 1 file changed, 2 insertions(+), 14 deletions(-)

commit 803d2f92dca329a84d92c224a73e13906e8b8d56
Merge: 6ce8d10b c775adc1
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Dec 4 11:01:26 2018 -0800

    Merge branch 'master' into cff-leak

commit 6ce8d10b45598f5f6dade38e65486f793f33d0b6
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Dec 4 10:39:17 2018 -0800

    add unlikely to error handling

 src/hb-ot-cff1-table.hh | 2 +-
 src/hb-ot-cff2-table.hh | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit b61f74f69a84f427b40deefefed429fbc915981c
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Dec 4 10:30:35 2018 -0800

    added minimized test case for oss-fuzz issue 11662

 ...testcase-minimized-hb-shape-fuzzer-5175735354916864 | Bin 0 ->
 354461 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)

commit 0b952e6026c8be13d16d97f464034ee477e6282f
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Dec 4 10:22:35 2018 -0800

    more leak fixes

 src/hb-ot-cff1-table.hh | 2 +-
 src/hb-ot-cff2-table.hh | 3 ++-
 2 files changed, 3 insertions(+), 2 deletions(-)

commit c775adc1383f72f02b1329628b3eba1dc377a0f7
Merge: c968869f 04f2ca94
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Dec 4 21:30:07 2018 +0330

    Merge pull request #1444 from harfbuzz/cff-assert

    removed assert, fixes https://github.com/harfbuzz/harfbuzz/issues/1443

commit 9473463f5c884fcb1de8a7ba7410da2601e6ffa8
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Dec 4 09:58:48 2018 -0800

    fix attempt for oss-fuzz 11662 leak

 src/hb-ot-cff1-table.hh | 1 +
 1 file changed, 1 insertion(+)

commit 04f2ca94212983d675ed2cd36350be23ff2a6e19
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Dec 4 09:24:07 2018 -0800

    removed assert

 src/hb-ot-cff1-table.hh | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit c968869f212dbfcb86d42fb36049328521cbf00c
Merge: 8c05b955 c48f53d3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 4 04:14:13 2018 -0500

    Merge pull request #1441 from harfbuzz/cff-doublenum

    use double as CFF Number implementation

commit c48f53d30901dfc20b7432c2947e66642010dc4e
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Dec 3 16:59:41 2018 -0800

    more double changes

 src/hb-cff2-interp-cs.hh       | 4 ++--
 test/api/test-ot-extents-cff.c | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

commit 9424e8052686a6a93e0d30e38aecbe927db9d787
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Dec 3 16:18:10 2018 -0800

    added minimized test cases

 ...zz-testcase-minimized-hb-shape-fuzzer-5647267827023872 | Bin 0 ->
 655 bytes
 ...zz-testcase-minimized-hb-shape-fuzzer-5725855502827520 | Bin 0 ->
 655 bytes
 ...zz-testcase-minimized-hb-shape-fuzzer-5736657639178240 | Bin 0 ->
 459 bytes
 3 files changed, 0 insertions(+), 0 deletions(-)

commit 5fff6ab0024547a8ac47723a0047f4b17416d6ce
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Dec 3 16:06:58 2018 -0800

    additional precision made a difference in extents test

 src/hb-cff-interp-common.hh    | 2 +-
 src/hb-cff2-interp-cs.hh       | 2 +-
 test/api/test-ot-extents-cff.c | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

commit 9e5180cd444b6900a0fa0c3df4c8138f9a663383
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Dec 3 15:32:42 2018 -0800

    more double changes

 src/hb-cff-interp-common.hh      |  8 ++++----
 src/hb-cff-interp-dict-common.hh | 10 +++++-----
 2 files changed, 9 insertions(+), 9 deletions(-)

commit 9af33d7a2ad5ce88fc508bc5c6a56be4650d2621
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Dec 3 14:48:46 2018 -0800

    Number to use double for all types

 src/hb-cff-interp-common.hh | 84
 +++++++--------------------------------------
 1 file changed, 13 insertions(+), 71 deletions(-)

commit 8c05b955eb4aa088b2b5df9b6415863486eaf59c
Merge: d19b1680 01f628cf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 3 14:30:51 2018 -0500

    Merge pull request #1439 from ebraminio/tracking

    [aat] Expose hb_aat_layout_has_tracking API

commit 01f628cf5571b8b58108ab66cfc3e929c9840e31
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Dec 3 22:04:48 2018 +0330

    [aat] Expose hb_aat_layout_has_tracking API

 docs/harfbuzz-sections.txt  |   7 ++++---
 src/hb-aat-layout.cc        |   9 ++++++++-
 src/hb-aat-layout.h         |   8 ++++++++
 src/hb-aat-layout.hh        |   3 ---
 test/api/fonts/aat-morx.ttf | Bin 0 -> 1620 bytes
 test/api/fonts/aat-trak.ttf | Bin 0 -> 2456 bytes
 test/api/test-aat-layout.c  |  13 +++++++++++++
 7 files changed, 33 insertions(+), 7 deletions(-)

commit d19b1680b53e54f449736432f369a676c394ebf8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 3 10:41:37 2018 -0500

    [aat] Expose a couple APIs

    New API:
    +hb_aat_layout_has_substitution()
    +hb_aat_layout_has_positioning()

 docs/harfbuzz-sections.txt |  2 ++
 src/hb-aat-layout.cc       | 20 ++++++++++++++++----
 src/hb-aat-layout.h        | 16 ++++++++++++++++
 src/hb-aat-layout.hh       |  6 ------
 4 files changed, 34 insertions(+), 10 deletions(-)

commit 84efe0438e1cfc5b070e114b70e8c070be6119ca
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 2 12:38:53 2018 -0500

    [aat] Fix division sign fallout

    Happened after 11d2f49af8f53340134c844173f4d8655b00dea3
    since now nClasses is unsigned int...

 src/hb-aat-layout-common.hh                               |   2 +-
 ...zz-testcase-minimized-hb-shape-fuzzer-5768046065483776 | Bin 0 ->
 342 bytes
 2 files changed, 1 insertion(+), 1 deletion(-)

commit 2087f5a2a743380b36399ba8a2b4ff9e93890fcf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Dec 1 20:04:45 2018 -0500

    Add casts to hb_array_t<>

 src/hb-open-type.hh | 13 ++++++++++---
 src/hb-vector.hh    |  2 ++
 2 files changed, 12 insertions(+), 3 deletions(-)

commit 58d4d19947794aded4e966290b01e1034f216a7d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Dec 1 19:34:18 2018 -0500

    Simplify build source list

 CMakeLists.txt       |  12 +--
 src/Makefile.am      |   6 --
 src/Makefile.sources | 231
 ++++++++++++++++++++++++---------------------------
 3 files changed, 111 insertions(+), 138 deletions(-)

commit 967a204ee92548163a0d19678a237dcaf3720c20
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Dec 1 19:28:17 2018 -0500

    Minor

 test/api/hb-subset-test.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 11d2f49af8f53340134c844173f4d8655b00dea3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Dec 1 13:12:21 2018 -0500

    New approach to change BigEndian casts to be int-sized

    Fixes spurious warnings like:
    Fixes https://github.com/harfbuzz/harfbuzz/issues/1436

 src/hb-open-type.hh | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

commit 50e0273ab18acd2fbb21bcf18ad487092e890b4e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Dec 1 13:03:52 2018 -0500

    Change hb_assert_unsigned_t<> to hb_is_signed<>

 src/hb-dsalgs.hh | 16 ++++++++++------
 1 file changed, 10 insertions(+), 6 deletions(-)

commit c3a8b047aab47e40dc107a952b3a1472068ec932
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Dec 1 00:14:48 2018 -0500

    Revert "Change BigEndian casts to be int-sized"

    This reverts commit eb5ddd32bf4e458ca0af8d5784f8fd46485ad225.

    Broke tests, badly.  To be investigated and reenabled.

 src/hb-open-type.hh | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

commit be45677ab605efc711a433323d66e4051c289252
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Dec 1 00:04:29 2018 -0500

    Minor

 src/hb-ot-layout-gsub-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit eb5ddd32bf4e458ca0af8d5784f8fd46485ad225
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Dec 1 00:03:01 2018 -0500

    Change BigEndian casts to be int-sized

    Fixes spurious warnings like:
    Fixes https://github.com/harfbuzz/harfbuzz/issues/1436

 src/hb-open-type.hh | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

commit e8860fdcaa69e3452edd903f78599bc8fa9d109c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 30 23:38:24 2018 -0500

    Fix more warning

 src/hb-ot-cff-common.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit af349ee3487b31c2328f0a37a43d31b248ed14e5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 30 23:20:50 2018 -0500

    Fix warning

 src/hb-ot-cff-common.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 825df6dbc7fd013c68d7b5672f81e69b69bc14e7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 30 23:04:59 2018 -0500

    [CFF] Change spaces to tabs

 src/hb-cff-interp-common.hh      | 389 ++++++++++++++++-----------------
 src/hb-cff-interp-cs-common.hh   | 324 ++++++++++++++--------------
 src/hb-cff-interp-dict-common.hh | 190 ++++++++--------
 src/hb-cff1-interp-cs.hh         |  72 +++----
 src/hb-cff2-interp-cs.hh         |  76 +++----
 src/hb-ot-cff-common.hh          | 128 +++++------
 src/hb-ot-cff1-table.cc          |   4 +-
 src/hb-ot-cff1-table.hh          | 456
 +++++++++++++++++++--------------------
 src/hb-ot-cff2-table.cc          |   4 +-
 src/hb-ot-cff2-table.hh          | 216 +++++++++----------
 src/hb-subset-cff-common.cc      |  76 +++----
 src/hb-subset-cff-common.hh      | 384 ++++++++++++++++-----------------
 src/hb-subset-cff1.cc            | 416
 +++++++++++++++++------------------
 src/hb-subset-cff1.hh            |   2 +-
 src/hb-subset-cff2.cc            | 240 ++++++++++-----------
 src/hb-subset-cff2.hh            |   2 +-
 16 files changed, 1492 insertions(+), 1487 deletions(-)

commit 592f39b3c4ed04a6f6cf129020358e64782c7108
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 30 22:54:57 2018 -0500

    [CFF] Whitespace

 src/hb-cff-interp-common.hh      |  7 +++----
 src/hb-cff-interp-cs-common.hh   |  6 +++---
 src/hb-cff-interp-dict-common.hh |  6 +++---
 src/hb-cff2-interp-cs.hh         |  2 +-
 src/hb-ot-cff-common.hh          | 12 ++++++------
 src/hb-ot-cff1-table.hh          | 30 +++++++++++++++---------------
 src/hb-ot-cff2-table.hh          | 12 ++++++------
 src/hb-subset-cff-common.cc      |  8 ++++----
 src/hb-subset-cff-common.hh      | 34 +++++++++++++++++-----------------
 src/hb-subset-cff1.cc            | 20 ++++++++++----------
 src/hb-subset-cff2.cc            | 18 +++++++++---------
 11 files changed, 77 insertions(+), 78 deletions(-)

commit a2e8d1d455c5d0ae22927567cf8a9a2539cd3470
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 30 22:54:20 2018 -0500

    Minor

 src/Makefile.sources | 27 +++++++++++++--------------
 1 file changed, 13 insertions(+), 14 deletions(-)

commit e3dc47c6357813d2dd098aad312d79e9d7c2aa18
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 30 22:43:22 2018 -0500

    Remove generated files that were accidentally added by CFF2 branch

 gtk-doc.make      |  320 --
 m4/libtool.m4     | 8369
 -----------------------------------------------------
 m4/ltoptions.m4   |  437 ---
 m4/ltsugar.m4     |  124 -
 m4/ltversion.m4   |   23 -
 m4/lt~obsolete.m4 |   99 -
 6 files changed, 9372 deletions(-)

commit 5e64e0f53259dbc0a3ea8e220ded15e85bbc1782
Merge: 09096aa8 d8c69137
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 30 22:40:54 2018 -0500

    Merge pull request #1113 from harfbuzz/cff-subset

    CFF/CFF2 subsetter

commit 09096aa89f1944dff94a5518bce578eba8989e74
Author: Bruce Mitchener <bruce.mitchener@gmail.com>
Date:   Sat Dec 1 10:22:49 2018 +0700

    Use nullptr instead of 0/NULL. (#1435)

    * Use nullptr instead of 0/NULL.

    * Update test-name-table.cc

 src/hb-debug.hh        | 2 +-
 src/test-name-table.cc | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

commit d8c69137655fbe9678d1dfef0eb3c4172f8bbfc0
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Nov 30 18:58:14 2018 -0800

    undo 0u

 src/hb-cff2-interp-cs.hh    | 2 +-
 src/hb-ot-cff1-table.hh     | 4 ++--
 src/hb-ot-vorg-table.hh     | 2 +-
 src/hb-subset-cff-common.hh | 4 ++--
 src/hb-subset-cff1.cc       | 4 ++--
 5 files changed, 8 insertions(+), 8 deletions(-)

commit 2c859b3880868b30823eb00bed90dc0de873628b
Merge: 9483da14 bb72de66
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Nov 30 18:47:34 2018 -0800

    Merge branch 'master' into cff-subset

commit bb72de66ddf3ae9ae53cf68642cb228e88aa64f5
Merge: fedd8e6c fb059082
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 30 21:36:35 2018 -0500

    Merge pull request #1433 from harfbuzz/overload-overload

    Fix ambiguous overload errors with old compilers

commit fb059082138bf17a5a8616410d9a35f927f9fd85
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 30 20:45:40 2018 -0500

    Revert ugly fixes

    Now that we have 6daf45e0, revert cryptic hacks...

    This reverts commit abd81ed4f5cbc5a94171747909bc6b77551cb929.
    This reverts commit 9c6921c08c905a0cf45ba0182134e6ff910fac51.
    This reverts commit d39760cabfe4007cefdfc45231e85e93fababac2.
    This reverts commit fedd8e6c176dea85194693399e50243eb1c117c4.

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1374

 src/hb-aat-layout-morx-table.hh |  4 ++--
 src/hb-face.cc                  |  4 ++--
 src/hb-machinery.hh             |  4 ++--
 src/hb-ot-color-cpal-table.hh   |  2 +-
 src/hb-ot-kern-table.hh         |  2 +-
 src/hb-ot-layout-gpos-table.hh  | 32 ++++++++++++++++----------------
 src/hb-ot-layout-gsubgpos.hh    | 14 +++++++-------
 7 files changed, 31 insertions(+), 31 deletions(-)

commit dfad19ad5aefdacecca6af81917abc2670d4416f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 30 19:57:12 2018 -0500

    Make operator [] take signed int

    The built-in operator takes signed int.  So, match it, such that
    the built-in is never a better or equally-good match to our operator.
    Fixes "ambiguous overload" errors from gcc 4.2 and VS 2008.

    See https://github.com/harfbuzz/harfbuzz/issues/1374

 src/hb-dsalgs.hh    |  3 ++-
 src/hb-open-type.hh | 42 ++++++++++++++++++++++++++++--------------
 src/hb-vector.hh    |  6 ++++--
 3 files changed, 34 insertions(+), 17 deletions(-)

commit 9483da145d6da1bdfa3224fe13a5b4e9b449d19f
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Nov 30 16:59:41 2018 -0800

    redo fixes

 src/hb-cff2-interp-cs.hh    | 2 +-
 src/hb-ot-cff1-table.hh     | 4 ++--
 src/hb-subset-cff-common.hh | 6 +++---
 src/hb-subset-cff1.cc       | 4 ++--
 4 files changed, 8 insertions(+), 8 deletions(-)

commit 291da448237cdc0b5534fbc1ce2288e1aa8e7b8a
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Nov 30 16:50:46 2018 -0800

    yet another

 src/hb-subset-cff-common.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b1821b9d092e4fd7fd888f4bffc341283bace461
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Nov 30 16:31:01 2018 -0800

    some more

 src/hb-subset-cff-common.hh | 4 ++--
 src/hb-subset-cff1.cc       | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

commit 9784cff55688d1ee93275e39c2339d5a486ed78b
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Nov 30 16:07:08 2018 -0800

    fix another pesky gcc error

 src/hb-cff2-interp-cs.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 23a797b44365ed76fc7db25be13bd9c3580a8695
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Nov 30 15:15:31 2018 -0800

    silence picky gcc errors

 src/hb-ot-cff1-table.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 9ae954f43ad1eb703d54db98ce46157370b71a9c
Merge: 471db3aa fedd8e6c
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Nov 30 15:00:52 2018 -0800

    Merge branch 'master' into cff-subset

commit fedd8e6c176dea85194693399e50243eb1c117c4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 30 16:50:30 2018 -0500

    One more.........

    I wonder if there's something better to do about these :(.

    In file included from hb-ot-color.cc:31:
    hb-ot-color-cpal-table.hh: In member function 'unsigned int
    OT::CPAL::get_size() const':
    hb-ot-color-cpal-table.hh:118: error: ISO C++ says that these are
    ambiguous, even though the worst conversion for the first is better
    than the worst conversion for the second:

 src/hb-ot-color-cpal-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit bc5db9b0807767ac04d6e50070d69cb9c520f06e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 30 16:04:52 2018 -0500

    One more....

    hb-ot-vorg-table.hh:96: error: ISO C++ says that these are ambiguous,
    even though the worst conversion for the first is better than the
    worst conversion for the second:
    hb-vector.hh:87: note: candidate 1: const Type& hb_vector_t<Type,
    PreallocedCount>::operator[](unsigned int) const [with Type =
    OT::VertOriginMetric, unsigned int PreallocedCount = 8u]
    hb-ot-vorg-table.hh:96: note: candidate 2: operator[](const T*,
    int) <built-in>

 src/hb-ot-vorg-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit d39760cabfe4007cefdfc45231e85e93fababac2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 30 15:55:30 2018 -0500

    One more...

    Sigh.

    hb-ot-kern-table.hh: In member function 'int
    OT::KernSubTableFormat3<KernSubTableHeader>::get_kerning(hb_codepoint_t,
    hb_codepoint_t) const':
    hb-ot-kern-table.hh:59: error: ambiguous overload for 'operator[]'
    in 'kernValue[kernIndex[i]]'
    hb-ot-kern-table.hh:59: note: candidates are: operator[](T*, int)
    <built-in>
    hb-dsalgs.hh:574: note:                 Type&
    hb_array_t<Type>::operator[](unsigned int) const [with Type = const
    OT::IntType<short int, 2u>]

 src/hb-ot-kern-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9c6921c08c905a0cf45ba0182134e6ff910fac51
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 30 15:16:57 2018 -0500

    More...

    hb-ot-layout-gsubgpos.hh:1707: error: ISO C++ says that these are
    ambiguous, even though the worst conversion for the first is better
    than the worst conversion for the second:
    ...

 src/hb-aat-layout-morx-table.hh |  4 ++--
 src/hb-ot-layout-gpos-table.hh  | 32 ++++++++++++++++----------------
 src/hb-ot-layout-gsubgpos.hh    | 16 ++++++++--------
 3 files changed, 26 insertions(+), 26 deletions(-)

commit f998bb2086342d6fdcd4295593eddea91396e0b6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 30 12:52:21 2018 -0500

    More weird fixes

    In file included from hb-ot-name.cc:29:
    hb-ot-name-table.hh: In member function 'unsigned int
    OT::name::get_size() const':
    hb-ot-name-table.hh:157: error: ISO C++ says that these are ambiguous,
    even though the worst conversion for the first is better than the
    worst conversion for the second:
    hb-open-type.hh:354: note: candidate 1: const Type&
    OT::UnsizedArrayOf<Type>::operator[](unsigned int) const [with Type
    = OT::NameRecord]
    hb-ot-name-table.hh:157: note: candidate 2: operator[](const T*,
    int) <built-in>
    hb-ot-name-table.hh: In member function 'void
    OT::name::accelerator_t::init(hb_face_t*)':
    hb-ot-name-table.hh:196: error: ISO C++ says that these are ambiguous,
    even though the worst conversion for the first is better than the
    worst conversion for the second:
    hb-dsalgs.hh:574: note: candidate 1: Type&
    hb_array_t<Type>::operator[](unsigned int) const [with Type =
    const OT::NameRecord]
    hb-ot-name-table.hh:196: note: candidate 2: operator[](T*, int)
    <built-in>
    hb-ot-name-table.hh:197: error: ISO C++ says that these are ambiguous,
    even though the worst conversion for the first is better than the
    worst conversion for the second:
    hb-dsalgs.hh:574: note: candidate 1: Type&
    hb_array_t<Type>::operator[](unsigned int) const [with Type =
    const OT::NameRecord]
    hb-ot-name-table.hh:197: note: candidate 2: operator[](T*, int)
    <built-in>
    hb-ot-name-table.hh:198: error: ISO C++ says that these are ambiguous,
    even though the worst conversion for the first is better than the
    worst conversion for the second:
    hb-dsalgs.hh:574: note: candidate 1: Type&
    hb_array_t<Type>::operator[](unsigned int) const [with Type =
    const OT::NameRecord]
    hb-ot-name-table.hh:198: note: candidate 2: operator[](T*, int)
    <built-in>
    make[4]: *** [libharfbuzz_la-hb-ot-name.lo] Error 1
    make[3]: *** [all-recursive] Error 1

 src/hb-ot-name-table.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 67fd94da98f950b5feb719ac805f2a45379fc935
Merge: abd81ed4 ae79fdaa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 30 11:53:30 2018 -0500

    Merge commit 'ae79fdaa7774d3f886a8f03926577c3bd2010b03'

commit abd81ed4f5cbc5a94171747909bc6b77551cb929
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 30 11:51:26 2018 -0500

    Umm.  Cryptic, yes

    In file included from hb-face.cc:35:
    hb-ot-cmap-table.hh: In member function 'void
    OT::CmapSubtableFormat4::_compiles_assertion_on_line_388() const':
    hb-ot-cmap-table.hh:388: error: ISO C++ says that these are ambiguous,
    even though the worst conversion for the first is better than the
    worst conversion for the second:
    hb-open-type.hh:354: note: candidate 1: const Type&
    OT::UnsizedArrayOf<Type>::operator[](unsigned int) const [with Type =
    OT::IntType<short unsigned int, 2u>]
    hb-ot-cmap-table.hh:388: note: candidate 2: operator[](const T*,
    int) <built-in>
    hb-ot-cmap-table.hh: In member function 'void
    OT::CmapSubtableFormat4::_instance_assertion_on_line_388() const':
    hb-ot-cmap-table.hh:388: error: ISO C++ says that these are ambiguous,
    even though the worst conversion for the first is better than the
    worst conversion for the second:
    hb-open-type.hh:354: note: candidate 1: const Type&
    OT::UnsizedArrayOf<Type>::operator[](unsigned int) const [with Type =
    OT::IntType<short unsigned int, 2u>]
    hb-ot-cmap-table.hh:388: note: candidate 2: operator[](const T*,
    int) <built-in>
    hb-face.cc: In function 'hb_blob_t*
    _hb_face_builder_data_reference_blob(hb_face_builder_data_t*)':
    hb-face.cc:650: error: ISO C++ says that these are ambiguous, even
    though the worst conversion for the first is better than the worst
    conversion for the second:
    hb-vector.hh:81: note: candidate 1: Type& hb_vector_t<Type,
    PreallocedCount>::operator[](unsigned int) [with Type =
    hb_face_builder_data_t::table_entry_t, unsigned int PreallocedCount
    = 32u]
    hb-face.cc:650: note: candidate 2: operator[](T*, int) <built-in>
    hb-face.cc:650: error: ISO C++ says that these are ambiguous, even
    though the worst conversion for the first is better than the worst
    conversion for the second:
    hb-vector.hh:81: note: candidate 1: Type& hb_vector_t<Type,
    PreallocedCount>::operator[](unsigned int) [with Type =
    hb_face_builder_data_t::table_entry_t, unsigned int PreallocedCount
    = 32u]
    hb-face.cc:650: note: candidate 2: operator[](const T*, int)
    <built-in>
    hb-face.cc:651: error: ISO C++ says that these are ambiguous, even
    though the worst conversion for the first is better than the worst
    conversion for the second:
    hb-vector.hh:81: note: candidate 1: Type& hb_vector_t<Type,
    PreallocedCount>::operator[](unsigned int) [with Type =
    hb_face_builder_data_t::table_entry_t, unsigned int PreallocedCount
    = 32u]
    hb-face.cc:651: note: candidate 2: operator[](T*, int) <built-in>
    hb-face.cc:651: error: ISO C++ says that these are ambiguous, even
    though the worst conversion for the first is better than the worst
    conversion for the second:
    hb-vector.hh:81: note: candidate 1: Type& hb_vector_t<Type,
    PreallocedCount>::operator[](unsigned int) [with Type =
    hb_face_builder_data_t::table_entry_t, unsigned int PreallocedCount
    = 32u]
    hb-face.cc:651: note: candidate 2: operator[](const T*, int)
    <built-in>

 src/hb-face.cc      | 4 ++--
 src/hb-machinery.hh | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

commit ae79fdaa7774d3f886a8f03926577c3bd2010b03
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 30 11:51:26 2018 -0500

    Umm.  Cryptic, yes

    hb-face.cc:650: error: ISO C++ says that these are ambiguous, even
    though the worst conversion for the first is better than the worst
    conversion for the second:
    hb-vector.hh:81: note: candidate 1: Type& hb_vector_t<Type,
    PreallocedCount>::operator[](unsigned int) [with Type =
    hb_face_builder_data_t::table_entry_t, unsigned int PreallocedCount
    = 32u]
    hb-face.cc:650: note: candidate 2: operator[](T*, int) <built-in>

 src/hb-face.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 0f32c95e1487ffcc37439635c3294f941eae857a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 30 11:31:39 2018 -0500

    Fix a few more sizeof(vector[0]) errors with weird compilers

 src/hb-face.cc | 4 ++--
 src/hb-set.hh  | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

commit 88630a458b21b811075bed9e761a94c50736dc11
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 30 01:11:04 2018 -0500

    Fix build for realz

 src/hb-ot-deprecated.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 346286d04eb616c43ba8c796211fa2e5e7bf1983
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 30 00:44:40 2018 -0500

    Fix build

 src/hb-ot-deprecated.h | 1 +
 1 file changed, 1 insertion(+)

commit 31f39cb41e1497a76c5838c93f9b4034089049f2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 30 00:38:08 2018 -0500

    [post] Rename v2 to v2X

 src/hb-ot-post-table.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit e3dd47e6025a7f082af4830ba483d90d9b44381f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 30 00:32:12 2018 -0500

    Move things

 src/Makefile.sources   |   1 +
 src/hb-deprecated.h    |  61 +---------------------------
 src/hb-ot-deprecated.h | 106
 +++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-ot.h            |   1 +
 4 files changed, 109 insertions(+), 60 deletions(-)

commit 27a6b0a2f7255ed6fc7bfe1f10052c2e344e319b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 29 16:29:30 2018 -0500

    Fix build for realz

 src/hb-coretext.cc  |  2 +-
 src/hb-uniscribe.cc | 10 +++++-----
 2 files changed, 6 insertions(+), 6 deletions(-)

commit e2af4dd1ecbe398c60fe5f3f370dd35400d7e1eb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 29 16:03:15 2018 -0500

    [uniscribe] Fix build

 src/hb-uniscribe.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit bf738ba3ba80778c7feb95ece446607a250d9382
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Nov 30 00:06:40 2018 +0330

    [test][aat] Remove extra --shaper ot

    As run-tests.py already adds it

 test/shaping/data/in-house/tests/macos.tests | 64
 ++++++++++++++--------------
 1 file changed, 32 insertions(+), 32 deletions(-)

commit b65645bbafb3f1f9f956df3028cf4479a4bdc265
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Nov 29 23:57:50 2018 +0330

    [ci] Re-enable llvm-gcc-4.2 bots (#1429)

 .circleci/config.yml | 48
 ++++++++++++++++++++++++------------------------
 1 file changed, 24 insertions(+), 24 deletions(-)

commit e7bd29ea11bd6301a332b471120a4a2cd8575d09
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Nov 29 23:47:20 2018 +0330

    Limit __builtin_bswap16 to GCC >= 5 as it was implemented on 4.8

 src/hb-machinery.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ac0264717b949df8840b179d882a9bed2993fb74
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 29 15:07:44 2018 -0500

    [coretext] Fix compile

    Fingers crossed.

 src/hb-coretext.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 5c4fead734b082e0168e6811bec4bcaa19acc36a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 29 15:04:34 2018 -0500

    Convert "static const hb_tag_t" constants to enum

 src/hb-aat-layout-ankr-table.hh |  2 +-
 src/hb-aat-layout-bsln-table.hh |  2 +-
 src/hb-aat-layout-feat-table.hh |  2 +-
 src/hb-aat-layout-just-table.hh |  2 +-
 src/hb-aat-layout-kerx-table.hh |  2 +-
 src/hb-aat-layout-lcar-table.hh |  2 +-
 src/hb-aat-layout-morx-table.hh |  6 +++---
 src/hb-aat-layout-trak-table.hh |  2 +-
 src/hb-aat-ltag-table.hh        |  2 +-
 src/hb-ot-cmap-table.hh         |  2 +-
 src/hb-ot-color-cbdt-table.hh   |  4 ++--
 src/hb-ot-color-colr-table.hh   |  2 +-
 src/hb-ot-color-cpal-table.hh   |  2 +-
 src/hb-ot-color-sbix-table.hh   |  2 +-
 src/hb-ot-color-svg-table.hh    |  2 +-
 src/hb-ot-glyf-table.hh         |  4 ++--
 src/hb-ot-hdmx-table.hh         |  2 +-
 src/hb-ot-head-table.hh         |  2 +-
 src/hb-ot-hhea-table.hh         |  4 ++--
 src/hb-ot-hmtx-table.hh         | 14 +++++++-------
 src/hb-ot-kern-table.hh         |  6 +++---
 src/hb-ot-layout-base-table.hh  |  2 +-
 src/hb-ot-layout-gdef-table.hh  |  2 +-
 src/hb-ot-layout-gpos-table.hh  |  2 +-
 src/hb-ot-layout-gsub-table.hh  |  2 +-
 src/hb-ot-layout-jstf-table.hh  |  2 +-
 src/hb-ot-math-table.hh         |  2 +-
 src/hb-ot-maxp-table.hh         |  2 +-
 src/hb-ot-name-table.hh         |  2 +-
 src/hb-ot-os2-table.hh          |  2 +-
 src/hb-ot-post-table.hh         |  2 +-
 src/hb-ot-stat-table.hh         |  2 +-
 src/hb-ot-var-avar-table.hh     |  2 +-
 src/hb-ot-var-fvar-table.hh     |  2 +-
 src/hb-ot-var-hvar-table.hh     |  8 ++++----
 src/hb-ot-var-mvar-table.hh     |  2 +-
 src/hb-ot-vorg-table.hh         |  2 +-
 37 files changed, 53 insertions(+), 53 deletions(-)

commit 9e4138c82548c2b29a1ae8801d2c6c7c1f1a9c7a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 29 15:01:10 2018 -0500

    Convert misc "static const" constants to enum

 src/hb-aat-layout-kerx-table.hh |  4 ++--
 src/hb-map.hh                   |  2 +-
 src/hb-ot-kern-table.hh         |  4 ++--
 src/hb-set-digest.hh            | 14 +++++++-------
 4 files changed, 12 insertions(+), 12 deletions(-)

commit 44cbd2ea3dc36312bd80860983b6616586e78c6c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 29 14:53:43 2018 -0500

    Convert "static const bool" constants to anonymous enum

 src/hb-aat-layout-common.hh     |  4 ++--
 src/hb-aat-layout-kerx-table.hh |  4 ++--
 src/hb-aat-layout-morx-table.hh |  8 ++++----
 src/hb-dsalgs.hh                | 16 ++++++++--------
 src/hb-ot-kern-table.hh         |  4 ++--
 src/hb-ot-layout.cc             |  4 ++--
 6 files changed, 20 insertions(+), 20 deletions(-)

commit 861bc75349257f74c12b261abfcd5ab9e2f04863
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 29 14:34:44 2018 -0500

    [vector] Make pointer cast explicit

    Too bad this doesn't help MSVC 2008 build, as explicit operators are
    C++11.

 src/hb-machinery.hh     | 2 +-
 src/hb-ot-cmap-table.hh | 3 ++-
 src/hb-set.hh           | 4 ++--
 src/hb-subset.cc        | 2 +-
 src/hb-vector.hh        | 4 ++--
 5 files changed, 8 insertions(+), 7 deletions(-)

commit 72955e68256806f082439d65e6f9b5cf2e35fa8a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 29 14:28:44 2018 -0500

    Hand-hold older compilers

 src/hb-set.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 1a182e97ee71de0e78a70ff823ae17fa93a31830
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 29 12:39:52 2018 -0500

    [test/text-rendering-tests] Update from upstream

 .../text-rendering-tests/fonts/TestGVAR-Composite-0.ttf  | Bin 0 ->
 3136 bytes
 .../fonts/TestGVAR-Composite-Missing.ttf                 | Bin 0 ->
 2984 bytes
 2 files changed, 0 insertions(+), 0 deletions(-)

commit 000d4b128eba58677acdc3b361829ff2f9a257b1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 29 12:32:47 2018 -0500

    Make shaper's override_features() override user features as well

    The override_features is used to override features that are normally
    discretionary features, but in a specific shaper are for various
    reasons desired to be bolted on or off, because they've been used
    for inherent shaping.  As such, it makes sense that they also
    override user features.  Ie. if user turned 'liga' on, we don't
    want Khmer shaping to become broken...  Or turn 'clig' off...

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1310

 src/hb-ot-shape.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit a95d9d8c8465ebc927bc2194dffe4ea95542e54c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 29 12:30:14 2018 -0500

    [khmer] Move 'clig' to overrides

    Prerequisite for https://github.com/harfbuzz/harfbuzz/issues/1310

 src/hb-ot-shape-complex-khmer.cc | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

commit 282ce7230b8bd8ad65c408cdaf1499504038247d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 29 12:18:14 2018 -0500

    Fix "typename outside template" issues

    Nothing an extra template class wouldn't fix...

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1419

 src/hb-null.hh | 25 +++++++++++++++++++------
 1 file changed, 19 insertions(+), 6 deletions(-)

commit dc41ecef85b094b30c612113606597b91c55351c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 29 11:53:53 2018 -0500

    2.2.0

 NEWS                 | 35 +++++++++++++++++++++++++++++++++++
 configure.ac         |  2 +-
 src/hb-aat-layout.cc |  6 +++---
 src/hb-aat-layout.h  |  4 ++--
 src/hb-deprecated.h  |  4 ++--
 src/hb-ot-var.cc     |  8 ++++----
 src/hb-ot-var.h      |  4 ++--
 src/hb-version.h     |  6 +++---
 8 files changed, 52 insertions(+), 17 deletions(-)

commit 7b85081be4fbd6cad75dc28ae933ce920f71b22d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 29 11:34:22 2018 -0500

    [icu] Minor

 src/hb-icu.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 0bcb1de1265368a27e53c6d935c965cbcb4130a0
Merge: e0307de8 a85886fc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 29 10:39:18 2018 -0500

    Merge pull request #1418 from gvictor/replace_icu_deprecated

    Replace @Deprecated ICU API - USCRIPT_CODE_LIMIT

commit e0307de818ad1f70ef96938642bda61d7a62532a
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Nov 29 11:36:05 2018 +0330

    [test][aat.kern] More (#1427)

 test/shaping/data/in-house/tests/macos.tests | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

commit 471db3aa6f963ecd4ebaf66daa81ef245d30d3b8
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Nov 28 17:06:11 2018 -0800

    workaround for issue #1417

 src/hb-cff-interp-common.hh | 9 +++++++++
 1 file changed, 9 insertions(+)

commit 32d291ae899eb095500052bed2a22e5255a34838
Merge: 1ecbf4d3 949655aa
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Nov 28 16:27:45 2018 -0800

    Merge branch 'master' into cff-subset

commit 949655aa7853a4513af6b5247b9822be38f5d322
Merge: 7b78d223 d3d0f15f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 28 17:21:57 2018 -0500

    Merge pull request #1425 from mbutterick/patch-1

    update simple shaping example (closes #298)

commit d3d0f15f7d20bedf7018fb2fb652f92ff4159bd7
Author: Matthew Butterick <mbutterick@users.noreply.github.com>
Date:   Wed Nov 28 13:46:12 2018 -0800

    update simple shaping example (closes #298)

    add call to `FT_Set_Char_Size`, otherwise default size remains at
    `0`, and glyph positions come back as `0` too

 docs/usermanual-getting-started.xml | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 7b78d2233df0e51e2967bc54a9202b3f9e05059a
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Nov 29 00:55:05 2018 +0330

    [test][aat] Update expectency

    It is not visually noticeable but apparently affected by kern format2
    correct implementation.
    I should've checked CoreText result which can't as CircleCI outage.

 test/shaping/data/in-house/tests/macos.tests | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 5155067e10011f78f1ce35b3dadb062bccd3a706
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Nov 29 00:07:00 2018 +0330

    [test] Add test for format2 kern (#1423)

 test/shaping/data/in-house/Makefile.sources             |   1 +
 .../fonts/e39391c77a6321c2ac7a2d644de0396470cd4bfe.ttf  | Bin 0 ->
 34116 bytes
 test/shaping/data/in-house/tests/kern-format2.tests     |   3 +++
 3 files changed, 4 insertions(+)

commit 42a2b496e428521151ff5cb07454d2e993f892cc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 28 15:24:30 2018 -0500

    [kerx] Fix Format2 index calc again

 src/hb-aat-layout-common.hh     | 14 ++++++++++++++
 src/hb-aat-layout-kerx-table.hh |  2 +-
 2 files changed, 15 insertions(+), 1 deletion(-)

commit 9e4f03b6ed80a81f8aee5ba93564f5eabab4299c
Merge: 19863c80 a3267cf8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 28 15:08:01 2018 -0500

    Merge remote-tracking branch 'fdo/master'

commit a3267cf803082af157a7f2b0026af2633b14f8e3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 28 15:06:01 2018 -0500

    [kern] Fix kern table Format2 offsetToIndex

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1421

 src/hb-aat-layout-kerx-table.hh | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

commit f9a9c0fd1e561715d696c7bd840bab552d0718ee
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 28 14:51:56 2018 -0500

    [kerx] Fix ClassTable implementation for 'kern' table Format 2

 src/hb-aat-layout-common.hh     |  8 +++++---
 src/hb-aat-layout-kerx-table.hh | 10 ++--------
 2 files changed, 7 insertions(+), 11 deletions(-)

commit 5b4a789ca857664668ff69936574dcd09bee6065
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 28 14:46:26 2018 -0500

    [aat] Towards adding two ClassTable's

 src/hb-aat-layout-common.hh | 40 ++++++++++++++++++++--------------------
 1 file changed, 20 insertions(+), 20 deletions(-)

commit 19863c805982d5d1d059d4dd9376039d3fdaabcd
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Nov 28 20:28:42 2018 +0330

    [test][aat] Add a test and make macOS runners faster (#1422)

 .circleci/config.yml                         | 15 +++-----
 test/shaping/data/in-house/tests/macos.tests | 54
 ++++++++++++++--------------
 2 files changed, 33 insertions(+), 36 deletions(-)

commit 987f4187722a05e3f360b85c66309a351fc5d6ad
Merge: 1042d9fb 4e2a03b6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 27 17:40:32 2018 -0500

    Merge pull request #1398 from Adenilson/bigInt01

    Optimize harfbuzz big integer conversions

commit 4e2a03b6b6e0c0d1c4edea10dc1aae63eeb6c581
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 27 17:40:09 2018 -0500

    Comment

 src/hb-machinery.hh | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 4a719a7f4c997ea7e47588bc0288c97706dae015
Author: Adenilson Cavalcanti <adenilson.cavalcanti@arm.com>
Date:   Tue Nov 20 14:41:19 2018 -0800

    Optimize harfbuzz big integer conversions

    Profiling showed that type conversions were adding considerable
    cycles in time
    spent doing text shaping.

    The idea is to optimize it using native processor instructions to
    help Blink
    layout performance.

    Doing further investigation revelead that compilers may not use the
    proper instruction on ARM 32bits builds (i.e. REV16).

    One way to insure that the generated ASM was ideal for both gcc/clang
    was using __builtin_bswap16.

    Added bonus is that we no longer need to test for CPU architecture.

 src/hb-machinery.hh | 4 ++++
 1 file changed, 4 insertions(+)

commit a85886fc77083084e9a12ee15b47eab7876f9f53
Author: Victor Chang <vichang@google.com>
Date:   Tue Nov 27 11:34:56 2018 +0000

    Replace @Deprecated ICU API - USCRIPT_CODE_LIMIT

    Use of the deprecated API USCRIPT_CODE_LIMIT prevents harfbuzz
    using the ICU4C as a shared library.

    The API has been replaced by u_getIntPropertyMaxValue(UCHAR_SCRIPT)

 src/hb-icu.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 1042d9fbc05aff9d51f15c2824a8521e963d0acd
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Nov 26 18:58:39 2018 +0330

    [ci] Add .codecov.yml

    Similar to
    https://github.com/GoogleChrome/lighthouse/blob/master/.codecov.yml

    No strong preference on commenting, feel free to enable it again

 .codecov.yml | 7 +++++++
 1 file changed, 7 insertions(+)

commit 97eaedca5de76c74534bab41562aee130098558a
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Nov 26 16:58:58 2018 +0330

    [test][aat] Enable Tamil MN test (#1414)

 test/shaping/data/in-house/tests/macos.tests | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 574d888c8a409295a952361a39c8e83a52a0fc3d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 25 16:51:22 2018 -0500

    [aat] Ignore GSUB table of Muthu Foundry if they have morx table

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1410

 src/hb-ot-layout-gpos-table.hh |  3 +++
 src/hb-ot-layout-gsub-table.hh |  3 +++
 src/hb-ot-layout-gsubgpos.hh   |  5 +++++
 src/hb-ot-layout.cc            | 36 +++++++++++++++++++++++++++++++++++-
 4 files changed, 46 insertions(+), 1 deletion(-)

commit 4151c2848d8df75b6d0a4f5d79bee843158aa4a4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 25 16:38:36 2018 -0500

    [GDEF] Move more code

 src/hb-ot-layout-gdef-table.hh | 10 +++++++++-
 src/hb-ot-layout.cc            | 11 -----------
 2 files changed, 9 insertions(+), 12 deletions(-)

commit 4f21703f225b6977196ef180e8d7300ea86d2cc3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 25 15:59:18 2018 -0500

    [GDEF] Move code around

 src/hb-ot-layout-gdef-table.hh |  3 +++
 src/hb-ot-layout.cc            | 16 +++++++---------
 2 files changed, 10 insertions(+), 9 deletions(-)

commit 4ed9fb1a0050f3151f9332f08c8bb2c13652c607
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 25 15:51:01 2018 -0500

    [GDEF] Minor

 src/hb-ot-layout.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0e3a48e54248d69197e8fb23c824d987f91b3bf7
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Nov 25 13:37:23 2018 +0330

    [test][aat] fix 10.13.6 Helvetica expectation

 test/shaping/data/in-house/tests/macos.tests | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit cbc541b426f01717641f1f3529a7c9703aec7a28
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Nov 25 12:50:30 2018 +0330

    [aat] Add m grave test (#1412)

 test/shaping/data/in-house/tests/macos.tests | 4 ++++
 1 file changed, 4 insertions(+)

commit fa26ad0f48462063f2160a43cb62b018bb21e251
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Nov 25 11:25:17 2018 +0330

    [aat] Fix macos expectation

 test/shaping/data/in-house/tests/macos.tests | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 926f512f354835f8323bb2c2e58789dd918a9b65
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 25 01:14:40 2018 -0500

    [aat.feat] Rework API and implementation

    Fixes https://github.com/harfbuzz/harfbuzz/pull/1346

 docs/harfbuzz-docs.xml          |  5 +++
 docs/harfbuzz-sections.txt      |  7 ++--
 src/hb-aat-layout-feat-table.hh | 89
 +++++++++++++++++++++++------------------
 src/hb-aat-layout.cc            | 80 ++++++++++++++++--------------------
 src/hb-aat-layout.h             | 32 +++++++++------
 test/api/test-aat-layout.c      | 58 ++++++++++++++-------------
 6 files changed, 141 insertions(+), 130 deletions(-)

commit 84dacbca7ea54a3ca2d5d711d50272a7f3baf456
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 12:08:36 2018 -0500

    [aat.feat] Add _MAX_VALUE to enums

 src/hb-aat-layout.h | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

commit 3922aae1620958768d3257c0988432d5609dca1b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 11:02:04 2018 -0500

    [aat.feat] Minor

 src/hb-aat-layout-feat-table.hh | 12 ++----------
 1 file changed, 2 insertions(+), 10 deletions(-)

commit 0f8e98eca2463da3b83d1b66a19259a584df1682
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 11:00:42 2018 -0500

    [aat.feat] Whitespace

 src/hb-aat-layout-feat-table.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit c2256068339c9e10c8e6df5d1749be4b4eb04ad4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 10:54:40 2018 -0500

    [aat.feat] Port to SortedUnsizedArrayOf.bsearch()

 src/hb-aat-layout-feat-table.hh | 19 +++++++------------
 1 file changed, 7 insertions(+), 12 deletions(-)

commit 52ae9867efd6520d17306b9f3ad612fe5463e93d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 10:46:56 2018 -0500

    [AAT.feat] Use lsearch for looking up SettingName's

    They are not sorted.

 src/hb-aat-layout-feat-table.hh | 18 ++++++------------
 src/hb-open-type.hh             | 16 ++++++++--------
 src/hb-static.cc                |  6 ++++--
 3 files changed, 18 insertions(+), 22 deletions(-)

commit 44b9331f663c09174d94e06baf36d48a50599c42
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 10:30:35 2018 -0500

    [aat] Fix include issues

 src/Makefile.am | 2 ++
 src/hb-aat.h    | 2 ++
 2 files changed, 4 insertions(+)

commit b206133d1f616339a57996b634dadc7f0a2c4cfb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 23 14:05:11 2018 -0500

    [aat] Move contents of hb-aat.h to hb-aat-layout.h

    Since it was pages and pages...

 src/Makefile.sources |   1 +
 src/hb-aat-layout.cc |   1 -
 src/hb-aat-layout.h  | 452
 +++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-aat-layout.hh |   1 -
 src/hb-aat-map.hh    |   1 -
 src/hb-aat.h         | 417
 +----------------------------------------------
 src/hb.hh            |   2 +
 7 files changed, 458 insertions(+), 417 deletions(-)

commit 2cb235d0210e74ea4ee123767b489301a9c340ab
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 23 12:23:35 2018 -0500

    [aat.feat] Fix enum namespace

 src/hb-aat-layout-feat-table.hh |   2 +-
 src/hb-aat-layout-morx-table.hh |   4 +-
 src/hb-aat-layout.cc            | 150 ++++++------
 src/hb-aat.h                    | 502
 ++++++++++++++++++++--------------------
 test/api/test-aat-layout.c      |   2 +-
 5 files changed, 330 insertions(+), 330 deletions(-)

commit 712762cabbbe85e6ab8361cd115c22a176827734
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 23 12:21:02 2018 -0500

    Minor

 src/hb-aat.h | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

commit e20f81f4fa977a8d22c6afee1e46fbf46bc182d9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 23 11:57:42 2018 -0500

    [aat] Rename feat API a bit more

 docs/harfbuzz-sections.txt      | 10 +++++-----
 src/hb-aat-layout-feat-table.hh |  8 ++++----
 src/hb-aat-layout.cc            | 32 ++++++++++++++++----------------
 src/hb-aat.h                    | 26 +++++++++++++-------------
 test/api/test-aat-layout.c      | 28 ++++++++++++++--------------
 5 files changed, 52 insertions(+), 52 deletions(-)

commit 54f4c17f0a932b0ca0317e1ad5e5e43a11a83fd1
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Nov 23 12:05:06 2018 +0330

    [feat] Rename API uses of setting to selector

 docs/harfbuzz-sections.txt      |  6 +--
 src/hb-aat-layout-feat-table.hh | 52 ++++++++++++------------
 src/hb-aat-layout-morx-table.hh |  2 +-
 src/hb-aat-layout.cc            | 88
 ++++++++++++++++++++---------------------
 src/hb-aat-layout.hh            |  4 +-
 src/hb-aat-map.cc               |  2 +-
 src/hb-aat-map.hh               |  2 +-
 src/hb-aat.h                    | 20 +++++-----
 test/api/test-aat-layout.c      | 46 ++++++++++-----------
 9 files changed, 111 insertions(+), 111 deletions(-)

commit 9c64b216ec7ae2c2c124ebd00dc6fa568752be78
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Nov 23 11:44:53 2018 +0330

    [feat] Apply renamings and add documentation

 docs/harfbuzz-sections.txt | 10 ++++++++++
 src/hb-aat-layout.cc       | 44
 ++++++++++++++++++++++++++++++++++++++------
 src/hb-aat.h               |  6 +++---
 test/api/test-aat-layout.c | 28 ++++++++++++++--------------
 4 files changed, 65 insertions(+), 23 deletions(-)

commit a8726cb4830f51a820db4bc6346ed09c91493817
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Nov 17 14:23:11 2018 +0330

    [feat] Use bsearch

 src/hb-aat-layout-feat-table.hh | 36 ++++++++++++++++++++++--------------
 src/hb-aat-layout-morx-table.hh |  2 +-
 src/hb.hh                       |  2 ++
 3 files changed, 25 insertions(+), 15 deletions(-)

commit 4009a05ca7de21fff2176621597cd0cd01e9d80e
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Nov 17 11:30:50 2018 +0330

    [feat] Address Behdad comments

 src/hb-aat-layout-feat-table.hh | 114 ++++---
 src/hb-aat-layout.cc            |  14 +-
 src/hb-aat.h                    | 673
 +++++++++++++++++-----------------------
 test/api/test-aat-layout.c      |  88 +++---
 4 files changed, 423 insertions(+), 466 deletions(-)

commit 19b6025534a98df96d67eee45c5c1ea6fbc1cc43
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Nov 17 01:07:09 2018 +0330

    [feat] Address @behdad comments

 src/Makefile.sources            |   2 +-
 src/hb-aat-layout-feat-table.hh |  82 +++----
 src/hb-aat-layout-morx-table.hh |   2 +-
 src/hb-aat-layout.cc            | 104 ++++----
 src/hb-aat-map.cc               |   2 +-
 src/hb-aat.h                    | 533
 ++++++++++++----------------------------
 src/hb-ot.h                     |   1 -
 test/api/test-aat-layout.c      |  84 +++----
 8 files changed, 282 insertions(+), 528 deletions(-)

commit 9212ec203c948e290a1d92b701619ccdbc89377c
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Nov 9 00:50:10 2018 +0330

    [feat] Complete feature types list

 src/hb-aat-layout-morx-table.hh |   2 +-
 src/hb-aat-layout.cc            | 154 ++++-----
 src/hb-aat.h                    | 697
 ++++++++++++++++++++++++++++++++++++++--
 3 files changed, 752 insertions(+), 101 deletions(-)

commit fbad794bd2c574363a0c5c5fefabce764496f93c
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Nov 1 22:24:42 2018 +0330

    [feat] Add feature iteration API

 src/hb-aat-layout-feat-table.hh | 36 +++++++++++++++++++++--------
 src/hb-aat-layout.cc            | 26 +++++++++++----------
 src/hb-aat.h                    | 23 +++++++++++++++++--
 test/api/test-aat-layout.c      | 51
 +++++++++++++++++++++++++++--------------
 4 files changed, 96 insertions(+), 40 deletions(-)

commit 7a0471aa356bcd062d31a59bdb19c335249116c7
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Nov 1 21:38:54 2018 +0330

    [feat] Turn AAT feature id into enum

 src/hb-aat-layout-feat-table.hh |  20 ++---
 src/hb-aat-layout-morx-table.hh |  10 +--
 src/hb-aat-layout.cc            | 170
 ++++++++++++++++++++--------------------
 src/hb-aat-layout.hh            |   6 +-
 src/hb-aat-map.cc               |   2 +-
 src/hb-aat-map.hh               |   4 +-
 src/hb-aat.h                    |  64 +++++++++------
 test/api/test-aat-layout.c      |   8 +-
 test/api/test-c.c               |   1 +
 9 files changed, 150 insertions(+), 135 deletions(-)

commit b233fa4bc9cdb1c6677b37106d96d878d6e03bfd
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Nov 1 20:02:57 2018 +0330

    [feat] Rename records to selectors as @drott

 src/hb-aat-layout-feat-table.hh | 20 ++++++++++----------
 src/hb-aat-layout.cc            | 10 +++++-----
 src/hb-aat.h                    |  4 ++--
 3 files changed, 17 insertions(+), 17 deletions(-)

commit a157b3e4ebd57ad29f217c4cef6519e7398cfa5c
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Nov 1 19:56:16 2018 +0330

    [feat] Apply @behdad comments

 src/Makefile.sources              |  2 +-
 src/hb-aat-layout-feat-table.hh   |  1 +
 src/hb-aat-layout.cc              | 16 ++++++++--------
 src/hb-aat-layout.hh              |  2 +-
 src/hb-aat-map.hh                 |  2 +-
 src/{hb-aat-layout.h => hb-aat.h} | 22 +++++++++++++---------
 src/hb-ot.h                       |  1 +
 test/api/test-aat-layout.c        | 14 +++++++-------
 test/api/test-c.c                 |  1 -
 9 files changed, 33 insertions(+), 28 deletions(-)

commit 3aff3f822f0d7bf7a2b5160ad93df3fe413c7c47
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Nov 1 19:20:20 2018 +0330

    [feat] Apply @drott and @jfkthame comments

 src/hb-aat-layout-feat-table.hh | 14 ++++++--------
 src/hb-aat-layout.cc            | 12 +++++++-----
 src/hb-aat-layout.h             | 10 +++++-----
 test/api/test-aat-layout.c      |  4 ++--
 4 files changed, 20 insertions(+), 20 deletions(-)

commit b791bbbae47aa19709da640a1dc5e84590c5c2c2
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Nov 1 15:15:56 2018 +0330

    [feat] Apply @jfkthame reviews

 src/hb-aat-layout-feat-table.hh |  27 +++++++++++++++------------
 src/hb-aat-layout.cc            |  23 ++++++++++++-----------
 src/hb-aat-layout.h             |  14 +++++++++-----
 test/api/fonts/aat-feat.ttf     | Bin 0 -> 1132 bytes
 test/api/test-aat-layout.c      |  30 ++++++++++++++++++------------
 5 files changed, 54 insertions(+), 40 deletions(-)

commit 95abd53758e281325b9124f0942aafb382a89090
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Nov 1 13:14:29 2018 +0330

    [feat] Expose public API

    * hb_aat_get_feature_settings

 src/Makefile.sources            |  1 +
 src/hb-aat-layout-feat-table.hh | 68 ++++++++++++++++++++++++++++++-
 src/hb-aat-layout-morx-table.hh |  6 +--
 src/hb-aat-layout.cc            | 33 +++++++++++++++
 src/hb-aat-layout.h             | 75 ++++++++++++++++++++++++++++++++++
 src/hb-aat-layout.hh            |  7 ++--
 src/hb-aat-map.hh               |  5 ++-
 src/hb-ot-face.hh               |  1 +
 test/api/Makefile.am            |  1 +
 test/api/test-aat-layout.c      | 89
 +++++++++++++++++++++++++++++++++++++++++
 test/api/test-c.c               |  1 +
 11 files changed, 278 insertions(+), 9 deletions(-)

commit 264c4a539cbfd8d5e5f143206d9d27230a186897
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 25 00:30:08 2018 -0500

    [test] Reorder test suites

    aots is less interesting.  Run text-rendering-tests before aots.

 test/shaping/data/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9326912941e5927bcfb4689689c954b9a3995baa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 25 00:27:23 2018 -0500

    [kerx] Fix crash

 src/hb-machinery.hh | 2 ++
 1 file changed, 2 insertions(+)

commit 6ee401049d475b2a2d9c859e6dbf8ff2750a1609
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 25 00:21:13 2018 -0500

    Simplify sanitize set_object() / fix bots

 src/hb-machinery.hh | 26 +++++++++++++-------------
 1 file changed, 13 insertions(+), 13 deletions(-)

commit c5a6b355e165e90d8d90454ceeca7b100282945f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 23:49:23 2018 -0500

    [kerx] Port to hb_sanitize_with_object_t

 src/hb-aat-layout-kerx-table.hh | 19 +++++++------------
 1 file changed, 7 insertions(+), 12 deletions(-)

commit c405ed0509afaa7c3846e8e461bedfbceb0cd937
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 23:46:15 2018 -0500

    [morx] Port to hb_sanitize_with_object_t

 src/hb-aat-layout-morx-table.hh | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

commit 1e8994221fb5cfdb1902d5249c7a75cde6d6e3c8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 23:38:06 2018 -0500

    Add hb_sanitize_with_object_t

    Context manager.

 src/hb-machinery.hh | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

commit b3c5affc05a3c7bbcfbd98521703d3d3447fcd7d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 23:34:34 2018 -0500

    Simplify sanitize set_object()

 src/hb-aat-layout-kerx-table.hh | 12 ++++++------
 src/hb-aat-layout-morx-table.hh | 10 +++++-----
 src/hb-machinery.hh             | 26 +++++++++++++-------------
 3 files changed, 24 insertions(+), 24 deletions(-)

commit 3d3097269995aa227b4b198d4da2baf942b65c66
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 23:12:28 2018 -0500

    [aat] Skip terminator in VarSizedBinSearchArray<>

    Fixes shaping with Apple Chancery on 10.13 again.  In that font,
    there was a terminator segment, that was tripping off sanitize().

 src/hb-aat-layout-common.hh |  6 ++++++
 src/hb-open-type.hh         | 21 ++++++++++++++++++++-
 2 files changed, 26 insertions(+), 1 deletion(-)

commit 4202a3cde3b6065124feb7f4c662563de1e08126
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 22:48:34 2018 -0500

    Minor

 src/hb-open-type.hh | 21 ++++++++++++++++-----
 1 file changed, 16 insertions(+), 5 deletions(-)

commit 1c2302bbf1d2d0e66f49ab54ad98d1b61bc5603d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 22:32:17 2018 -0500

    [debug] Print function in return_trace()

 src/hb-debug.hh | 16 +++++++++++-----
 1 file changed, 11 insertions(+), 5 deletions(-)

commit 748198a6718adbb200ee24ac013c617f62c946a4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 22:16:59 2018 -0500

    Revert "[aat.morx] Remove set_object() business"

    This reverts commit ae8ed58a6e53441d9ccbf67afd8a00b815cde99e.

    Apparently this broke Apple Chancery from OS X 10.12 :(.
    Investigating...

 src/hb-aat-layout-morx-table.hh | 8 ++++++++
 1 file changed, 8 insertions(+)

commit c8a2dc820eb0ee3124e3762cb1167ac9e528ad28
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 22:16:53 2018 -0500

    Revert "[aat.kerx] Remove kerx subtable boundary enforcement"

    This reverts commit 15905a2a2998f7ddd964f920a4828602235d6b00.

 src/hb-aat-layout-kerx-table.hh | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

commit 9eeebd8ddedb96c03860ce7eb5500aafa3969d6b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 22:16:47 2018 -0500

    Revert "[sanitize] Remove now-unused set_object() machinery"

    This reverts commit bbdb6edb3e1cea4c5b7076c4f6b3e6998ae36dae.

 src/hb-machinery.hh | 25 ++++++++++++++++++++++++-
 1 file changed, 24 insertions(+), 1 deletion(-)

commit 248ce22857c8918bf3468ef48d906de4c19c3d4d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 22:01:06 2018 -0500

    [tests] Minor

 test/shaping/run-tests.py | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit f47c5da0aa04a88b37d9c3af4730204319a9a36b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 21:36:57 2018 -0500

    [arrays] Use hb_array_t<> in all places with sub_array()

 src/hb-aat-layout-lcar-table.hh |  6 +++---
 src/hb-ot-layout-gdef-table.hh  | 14 ++++++++------
 src/hb-ot-math-table.hh         | 10 ++++------
 3 files changed, 15 insertions(+), 15 deletions(-)

commit 3246a8ebbd900bcc3e3c70532eab0f406b8f5c4a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 21:32:00 2018 -0500

    [arrays] Merge ArrayOf's sub_array into hb_array_t's

 src/hb-dsalgs.hh    | 44 +++++++++++++++++++++++++++-----------------
 src/hb-open-type.hh | 30 ++++++++++++++++++------------
 2 files changed, 45 insertions(+), 29 deletions(-)

commit e6877e28cd30e89af7cce59d903184a5a01ec970
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Nov 25 02:12:40 2018 +0330

    [test] Add the missed aots fonts

 test/shaping/data/aots/fonts/classdef1_font1.otf   | Bin 0 -> 6004 bytes
 test/shaping/data/aots/fonts/classdef1_font2.otf   | Bin 0 -> 6020 bytes
 test/shaping/data/aots/tests/classdef1_empty.tests |   2 +-
 3 files changed, 1 insertion(+), 1 deletion(-)

commit 825ea5a4607fafa11c56a72a82bda773f6b44e79
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Nov 25 01:59:54 2018 +0330

    [test] Merge 10.12.6 and 10.13.6 tests, update to Apple Chancery fix

 test/shaping/data/in-house/Makefile.sources        |  3 +--
 .../data/in-house/tests/macos-10.12.6.tests        | 11 ---------
 .../data/in-house/tests/macos-10.13.6.tests        | 13 -----------
 test/shaping/data/in-house/tests/macos.tests       | 26
 ++++++++++++++++++++++
 4 files changed, 27 insertions(+), 26 deletions(-)

commit bbdb6edb3e1cea4c5b7076c4f6b3e6998ae36dae
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 17:15:38 2018 -0500

    [sanitize] Remove now-unused set_object() machinery

 src/hb-machinery.hh | 25 +------------------------
 1 file changed, 1 insertion(+), 24 deletions(-)

commit 15905a2a2998f7ddd964f920a4828602235d6b00
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 17:14:39 2018 -0500

    [aat.kerx] Remove kerx subtable boundary enforcement

    Have not encountered fonts needing this, but same reasoning as
    for morx (see previos commit.)

 src/hb-aat-layout-kerx-table.hh | 21 ---------------------
 1 file changed, 21 deletions(-)

commit ae8ed58a6e53441d9ccbf67afd8a00b815cde99e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 17:11:09 2018 -0500

    [aat.morx] Remove set_object() business

    With OS X 10.13 Apple Chancery fails to ligate if we limit each morx
    sub-chain to its declared length.  Perhaps their newer compiler does
    object-sharing across sub-chains.  Anyway, since that's a valid, if
    unspecified, way to compile tables, remove enforcement.

    Probably do the same with kern/kerx.

 src/hb-aat-layout-morx-table.hh | 8 --------
 1 file changed, 8 deletions(-)

commit b518e5af9f66414396752069bb8f43466a9236fa
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Nov 25 01:39:00 2018 +0330

    Add 10.13.6 aat fonts tests and bot (#1409)

 .circleci/config.yml                                     | 16
 ++++++++++++++--
 test/shaping/data/in-house/Makefile.sources              |  3 ++-
 .../in-house/tests/{macos.tests => macos-10.12.6.tests}  |  2 --
 test/shaping/data/in-house/tests/macos-10.13.6.tests     | 13
 +++++++++++++
 4 files changed, 29 insertions(+), 5 deletions(-)

commit b7f7950e8fc4b9e229b466ac2453d57b8da9a5a6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 15:56:17 2018 -0500

    [aat] Add test for recent regression

 test/shaping/data/in-house/tests/macos.tests | 1 +
 1 file changed, 1 insertion(+)

commit ea9512e61a7ed333b810918e74cce4c8bd2291b9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 15:49:33 2018 -0500

    [tests] Redo test runner logging a  bit

 test/shaping/run-tests.py | 44
 +++++++++++++++++++++++---------------------
 1 file changed, 23 insertions(+), 21 deletions(-)

commit 5020affc3877d39377506245ecaf01a659eef82a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 15:42:11 2018 -0500

    [tests] Minor

 test/shaping/data/in-house/tests/macos.tests | 2 ++
 1 file changed, 2 insertions(+)

commit ee3a3e10d45f5df1a74b65fbe3df77f8dd8f902e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 15:37:01 2018 -0500

    [tests/shaping] Allow comments in test files

    Line should start with "# ".

 test/shaping/run-tests.py | 17 +++++++++++++++--
 1 file changed, 15 insertions(+), 2 deletions(-)

commit ed900ee9afa0dabdbf6bf9d2af46c2343a16773f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 15:22:09 2018 -0500

    [tests] Rename

 test/shaping/data/in-house/Makefile.sources                         |
 2 +-
 test/shaping/data/in-house/tests/{macos-10.12.tests => macos.tests} | 0
 2 files changed, 1 insertion(+), 1 deletion(-)

commit 20edc70d537b01e8a384ee05673335f2f8a18238
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 14:52:34 2018 -0500

    [morx/kerx] Fix sanitize regression

    Broke in 8dcc1913a1670ede7b124f7b5b775d7ab8791386

    If sanitizer is left with another object, it wouldn't work.

    Better fix coming soon.

 src/hb-aat-layout-kerx-table.hh | 6 +-----
 src/hb-aat-layout-morx-table.hh | 4 +---
 2 files changed, 2 insertions(+), 8 deletions(-)

commit 3cc14e78aeb1c70eb82891ab4513c0e7d0f59928
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Nov 24 20:49:21 2018 +0330

    [test] Enable more of aots tests (#1408)

    The ones commented out in this change should've be passed :/
    a closer look is needed.

 test/shaping/data/aots/Makefile.sources            | 76
 +++++++++++-----------
 test/shaping/data/aots/hb-aots-tester.cpp          |  1 +
 test/shaping/data/aots/tests/classdef1_empty.tests |  2 +-
 test/shaping/data/aots/tests/gsub3_1_simple.tests  |  2 +-
 .../data/aots/tests/lookupflag_ignore_attach.tests | 10 +--
 5 files changed, 46 insertions(+), 45 deletions(-)

commit 24887d1115ee41cfad70577eb243382f6c23ab6e
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Nov 24 20:07:24 2018 +0330

    Add Adobe AOTS tests (#1395)

    Annotated OpenType Specification or aots,
    https://github.com/adobe-type-tools/aots
    provides a set of tests for OpenType specification, this change add
    those tests in addition
    to modified version of their HarfBuzz test runner for generating
    harfbuzz project specific tests.

 configure.ac                                       |   1 +
 test/shaping/CMakeLists.txt                        |  13 +-
 test/shaping/data/Makefile.am                      |   1 +
 test/shaping/data/aots/COPYING                     |  13 +
 test/shaping/data/aots/Makefile.am                 |  37 +++
 test/shaping/data/aots/Makefile.sources            | 126 ++++++++
 test/shaping/data/aots/fonts/classdef1_font3.otf   | Bin 0 -> 6060 bytes
 test/shaping/data/aots/fonts/classdef1_font4.otf   | Bin 0 -> 5984 bytes
 test/shaping/data/aots/fonts/classdef2_font1.otf   | Bin 0 -> 6004 bytes
 test/shaping/data/aots/fonts/classdef2_font2.otf   | Bin 0 -> 6016 bytes
 test/shaping/data/aots/fonts/classdef2_font3.otf   | Bin 0 -> 6052 bytes
 test/shaping/data/aots/fonts/classdef2_font4.otf   | Bin 0 -> 5984 bytes
 test/shaping/data/aots/fonts/cmap0_font1.otf       | Bin 0 -> 5196 bytes
 test/shaping/data/aots/fonts/cmap10_font1.otf      | Bin 0 -> 4968 bytes
 test/shaping/data/aots/fonts/cmap10_font2.otf      | Bin 0 -> 4960 bytes
 test/shaping/data/aots/fonts/cmap12_font1.otf      | Bin 0 -> 4980 bytes
 test/shaping/data/aots/fonts/cmap14_font1.otf      | Bin 0 -> 5028 bytes
 test/shaping/data/aots/fonts/cmap2_font1.otf       | Bin 0 -> 6000 bytes
 test/shaping/data/aots/fonts/cmap4_font1.otf       | Bin 0 -> 4964 bytes
 test/shaping/data/aots/fonts/cmap4_font2.otf       | Bin 0 -> 4956 bytes
 test/shaping/data/aots/fonts/cmap4_font3.otf       | Bin 0 -> 4956 bytes
 test/shaping/data/aots/fonts/cmap4_font4.otf       | Bin 0 -> 4972 bytes
 test/shaping/data/aots/fonts/cmap6_font1.otf       | Bin 0 -> 4948 bytes
 test/shaping/data/aots/fonts/cmap6_font2.otf       | Bin 0 -> 4944 bytes
 test/shaping/data/aots/fonts/cmap8_font1.otf       | Bin 0 -> 13224 bytes
 .../data/aots/fonts/cmap_composition_font1.otf     | Bin 0 -> 5096 bytes
 .../aots/fonts/cmap_subtableselection_font1.otf    | Bin 0 -> 6412 bytes
 .../aots/fonts/cmap_subtableselection_font2.otf    | Bin 0 -> 6140 bytes
 .../aots/fonts/cmap_subtableselection_font3.otf    | Bin 0 -> 5872 bytes
 .../aots/fonts/cmap_subtableselection_font4.otf    | Bin 0 -> 5600 bytes
 .../aots/fonts/cmap_subtableselection_font5.otf    | Bin 0 -> 5332 bytes
 .../data/aots/fonts/gpos1_1_lookupflag_f1.otf      | Bin 0 -> 5208 bytes
 test/shaping/data/aots/fonts/gpos1_1_simple_f1.otf | Bin 0 -> 5136 bytes
 test/shaping/data/aots/fonts/gpos1_1_simple_f2.otf | Bin 0 -> 5136 bytes
 test/shaping/data/aots/fonts/gpos1_1_simple_f3.otf | Bin 0 -> 5136 bytes
 test/shaping/data/aots/fonts/gpos1_1_simple_f4.otf | Bin 0 -> 5136 bytes
 test/shaping/data/aots/fonts/gpos1_2_font1.otf     | Bin 0 -> 5108 bytes
 test/shaping/data/aots/fonts/gpos1_2_font2.otf     | Bin 0 -> 5148 bytes
 test/shaping/data/aots/fonts/gpos2_1_font6.otf     | Bin 0 -> 5120 bytes
 test/shaping/data/aots/fonts/gpos2_1_font7.otf     | Bin 0 -> 5132 bytes
 .../data/aots/fonts/gpos2_1_lookupflag_f1.otf      | Bin 0 -> 5220 bytes
 .../data/aots/fonts/gpos2_1_lookupflag_f2.otf      | Bin 0 -> 5220 bytes
 .../data/aots/fonts/gpos2_1_next_glyph_f1.otf      | Bin 0 -> 5180 bytes
 .../data/aots/fonts/gpos2_1_next_glyph_f2.otf      | Bin 0 -> 5176 bytes
 test/shaping/data/aots/fonts/gpos2_1_simple_f1.otf | Bin 0 -> 5148 bytes
 test/shaping/data/aots/fonts/gpos2_2_font1.otf     | Bin 0 -> 5148 bytes
 test/shaping/data/aots/fonts/gpos2_2_font2.otf     | Bin 0 -> 5188 bytes
 test/shaping/data/aots/fonts/gpos2_2_font3.otf     | Bin 0 -> 5188 bytes
 test/shaping/data/aots/fonts/gpos2_2_font4.otf     | Bin 0 -> 5148 bytes
 test/shaping/data/aots/fonts/gpos2_2_font5.otf     | Bin 0 -> 5140 bytes
 test/shaping/data/aots/fonts/gpos3_font1.otf       | Bin 0 -> 5120 bytes
 test/shaping/data/aots/fonts/gpos3_font2.otf       | Bin 0 -> 5160 bytes
 test/shaping/data/aots/fonts/gpos3_font3.otf       | Bin 0 -> 5164 bytes
 .../data/aots/fonts/gpos4_lookupflag_f1.otf        | Bin 0 -> 5256 bytes
 .../data/aots/fonts/gpos4_lookupflag_f2.otf        | Bin 0 -> 5240 bytes
 .../data/aots/fonts/gpos4_multiple_anchors_1.otf   | Bin 0 -> 5352 bytes
 test/shaping/data/aots/fonts/gpos4_simple_1.otf    | Bin 0 -> 5200 bytes
 test/shaping/data/aots/fonts/gpos5_font1.otf       | Bin 0 -> 5284 bytes
 test/shaping/data/aots/fonts/gpos6_font1.otf       | Bin 0 -> 5176 bytes
 test/shaping/data/aots/fonts/gpos7_1_font1.otf     | Bin 0 -> 5160 bytes
 test/shaping/data/aots/fonts/gpos9_font1.otf       | Bin 0 -> 5096 bytes
 test/shaping/data/aots/fonts/gpos9_font2.otf       | Bin 0 -> 5124 bytes
 .../data/aots/fonts/gpos_chaining1_boundary_f1.otf | Bin 0 -> 5496 bytes
 .../data/aots/fonts/gpos_chaining1_boundary_f2.otf | Bin 0 -> 5500 bytes
 .../data/aots/fonts/gpos_chaining1_boundary_f3.otf | Bin 0 -> 5496 bytes
 .../data/aots/fonts/gpos_chaining1_boundary_f4.otf | Bin 0 -> 5496 bytes
 .../aots/fonts/gpos_chaining1_lookupflag_f1.otf    | Bin 0 -> 5520 bytes
 .../fonts/gpos_chaining1_multiple_subrules_f1.otf  | Bin 0 -> 5592 bytes
 .../fonts/gpos_chaining1_multiple_subrules_f2.otf  | Bin 0 -> 5592 bytes
 .../aots/fonts/gpos_chaining1_next_glyph_f1.otf    | Bin 0 -> 5540 bytes
 .../data/aots/fonts/gpos_chaining1_simple_f1.otf   | Bin 0 -> 5488 bytes
 .../data/aots/fonts/gpos_chaining1_simple_f2.otf   | Bin 0 -> 5488 bytes
 .../aots/fonts/gpos_chaining1_successive_f1.otf    | Bin 0 -> 5524 bytes
 .../data/aots/fonts/gpos_chaining2_boundary_f1.otf | Bin 0 -> 5704 bytes
 .../data/aots/fonts/gpos_chaining2_boundary_f2.otf | Bin 0 -> 5708 bytes
 .../data/aots/fonts/gpos_chaining2_boundary_f3.otf | Bin 0 -> 5704 bytes
 .../data/aots/fonts/gpos_chaining2_boundary_f4.otf | Bin 0 -> 5704 bytes
 .../aots/fonts/gpos_chaining2_lookupflag_f1.otf    | Bin 0 -> 5728 bytes
 .../fonts/gpos_chaining2_multiple_subrules_f1.otf  | Bin 0 -> 5800 bytes
 .../fonts/gpos_chaining2_multiple_subrules_f2.otf  | Bin 0 -> 5800 bytes
 .../aots/fonts/gpos_chaining2_next_glyph_f1.otf    | Bin 0 -> 5744 bytes
 .../data/aots/fonts/gpos_chaining2_simple_f1.otf   | Bin 0 -> 5696 bytes
 .../data/aots/fonts/gpos_chaining2_simple_f2.otf   | Bin 0 -> 5696 bytes
 .../aots/fonts/gpos_chaining2_successive_f1.otf    | Bin 0 -> 5732 bytes
 .../data/aots/fonts/gpos_chaining3_boundary_f1.otf | Bin 0 -> 5504 bytes
 .../data/aots/fonts/gpos_chaining3_boundary_f2.otf | Bin 0 -> 5508 bytes
 .../data/aots/fonts/gpos_chaining3_boundary_f3.otf | Bin 0 -> 5500 bytes
 .../data/aots/fonts/gpos_chaining3_boundary_f4.otf | Bin 0 -> 5500 bytes
 .../aots/fonts/gpos_chaining3_lookupflag_f1.otf    | Bin 0 -> 5548 bytes
 .../aots/fonts/gpos_chaining3_next_glyph_f1.otf    | Bin 0 -> 5524 bytes
 .../data/aots/fonts/gpos_chaining3_simple_f1.otf   | Bin 0 -> 5496 bytes
 .../data/aots/fonts/gpos_chaining3_simple_f2.otf   | Bin 0 -> 5516 bytes
 .../aots/fonts/gpos_chaining3_successive_f1.otf    | Bin 0 -> 5544 bytes
 .../data/aots/fonts/gpos_context1_boundary_f1.otf  | Bin 0 -> 5480 bytes
 .../data/aots/fonts/gpos_context1_boundary_f2.otf  | Bin 0 -> 5480 bytes
 .../data/aots/fonts/gpos_context1_expansion_f1.otf | Bin 0 -> 5492 bytes
 .../aots/fonts/gpos_context1_lookupflag_f1.otf     | Bin 0 -> 5508 bytes
 .../aots/fonts/gpos_context1_lookupflag_f2.otf     | Bin 0 -> 5500 bytes
 .../fonts/gpos_context1_multiple_subrules_f1.otf   | Bin 0 -> 5568 bytes
 .../fonts/gpos_context1_multiple_subrules_f2.otf   | Bin 0 -> 5568 bytes
 .../aots/fonts/gpos_context1_next_glyph_f1.otf     | Bin 0 -> 5500 bytes
 .../data/aots/fonts/gpos_context1_simple_f1.otf    | Bin 0 -> 5476 bytes
 .../data/aots/fonts/gpos_context1_simple_f2.otf    | Bin 0 -> 5468 bytes
 .../aots/fonts/gpos_context1_successive_f1.otf     | Bin 0 -> 5508 bytes
 .../data/aots/fonts/gpos_context2_boundary_f1.otf  | Bin 0 -> 5492 bytes
 .../data/aots/fonts/gpos_context2_boundary_f2.otf  | Bin 0 -> 5496 bytes
 .../data/aots/fonts/gpos_context2_classes_f1.otf   | Bin 0 -> 5540 bytes
 .../data/aots/fonts/gpos_context2_classes_f2.otf   | Bin 0 -> 5564 bytes
 .../data/aots/fonts/gpos_context2_expansion_f1.otf | Bin 0 -> 5524 bytes
 .../aots/fonts/gpos_context2_lookupflag_f1.otf     | Bin 0 -> 5540 bytes
 .../aots/fonts/gpos_context2_lookupflag_f2.otf     | Bin 0 -> 5532 bytes
 .../fonts/gpos_context2_multiple_subrules_f1.otf   | Bin 0 -> 5600 bytes
 .../fonts/gpos_context2_multiple_subrules_f2.otf   | Bin 0 -> 5600 bytes
 .../aots/fonts/gpos_context2_next_glyph_f1.otf     | Bin 0 -> 5512 bytes
 .../data/aots/fonts/gpos_context2_simple_f1.otf    | Bin 0 -> 5508 bytes
 .../data/aots/fonts/gpos_context2_simple_f2.otf    | Bin 0 -> 5484 bytes
 .../aots/fonts/gpos_context2_successive_f1.otf     | Bin 0 -> 5544 bytes
 .../data/aots/fonts/gpos_context3_boundary_f1.otf  | Bin 0 -> 5476 bytes
 .../data/aots/fonts/gpos_context3_boundary_f2.otf  | Bin 0 -> 5472 bytes
 .../aots/fonts/gpos_context3_lookupflag_f1.otf     | Bin 0 -> 5512 bytes
 .../aots/fonts/gpos_context3_lookupflag_f2.otf     | Bin 0 -> 5504 bytes
 .../aots/fonts/gpos_context3_next_glyph_f1.otf     | Bin 0 -> 5496 bytes
 .../data/aots/fonts/gpos_context3_simple_f1.otf    | Bin 0 -> 5480 bytes
 .../aots/fonts/gpos_context3_successive_f1.otf     | Bin 0 -> 5516 bytes
 .../data/aots/fonts/gsub1_1_lookupflag_f1.otf      | Bin 0 -> 5208 bytes
 test/shaping/data/aots/fonts/gsub1_1_modulo_f1.otf | Bin 0 -> 5216 bytes
 test/shaping/data/aots/fonts/gsub1_1_simple_f1.otf | Bin 0 -> 5136 bytes
 .../data/aots/fonts/gsub1_2_lookupflag_f1.otf      | Bin 0 -> 5212 bytes
 test/shaping/data/aots/fonts/gsub1_2_simple_f1.otf | Bin 0 -> 5140 bytes
 .../data/aots/fonts/gsub2_1_lookupflag_f1.otf      | Bin 0 -> 5224 bytes
 .../aots/fonts/gsub2_1_multiple_sequences_f1.otf   | Bin 0 -> 5248 bytes
 test/shaping/data/aots/fonts/gsub2_1_simple_f1.otf | Bin 0 -> 5144 bytes
 .../data/aots/fonts/gsub3_1_lookupflag_f1.otf      | Bin 0 -> 5224 bytes
 .../data/aots/fonts/gsub3_1_multiple_f1.otf        | Bin 0 -> 5168 bytes
 test/shaping/data/aots/fonts/gsub3_1_simple_f1.otf | Bin 0 -> 5144 bytes
 .../data/aots/fonts/gsub4_1_lookupflag_f1.otf      | Bin 0 -> 5220 bytes
 .../aots/fonts/gsub4_1_multiple_ligatures_f1.otf   | Bin 0 -> 5252 bytes
 .../aots/fonts/gsub4_1_multiple_ligatures_f2.otf   | Bin 0 -> 5252 bytes
 .../aots/fonts/gsub4_1_multiple_ligsets_f1.otf     | Bin 0 -> 5240 bytes
 test/shaping/data/aots/fonts/gsub4_1_simple_f1.otf | Bin 0 -> 5148 bytes
 test/shaping/data/aots/fonts/gsub7_font1.otf       | Bin 0 -> 5096 bytes
 test/shaping/data/aots/fonts/gsub7_font2.otf       | Bin 0 -> 5116 bytes
 .../data/aots/fonts/gsub_chaining1_boundary_f1.otf | Bin 0 -> 5516 bytes
 .../data/aots/fonts/gsub_chaining1_boundary_f2.otf | Bin 0 -> 5520 bytes
 .../data/aots/fonts/gsub_chaining1_boundary_f3.otf | Bin 0 -> 5520 bytes
 .../data/aots/fonts/gsub_chaining1_boundary_f4.otf | Bin 0 -> 5520 bytes
 .../aots/fonts/gsub_chaining1_lookupflag_f1.otf    | Bin 0 -> 5544 bytes
 .../fonts/gsub_chaining1_multiple_subrules_f1.otf  | Bin 0 -> 5616 bytes
 .../fonts/gsub_chaining1_multiple_subrules_f2.otf  | Bin 0 -> 5616 bytes
 .../aots/fonts/gsub_chaining1_next_glyph_f1.otf    | Bin 0 -> 5560 bytes
 .../data/aots/fonts/gsub_chaining1_simple_f1.otf   | Bin 0 -> 5508 bytes
 .../data/aots/fonts/gsub_chaining1_simple_f2.otf   | Bin 0 -> 5512 bytes
 .../aots/fonts/gsub_chaining1_successive_f1.otf    | Bin 0 -> 5544 bytes
 .../data/aots/fonts/gsub_chaining2_boundary_f1.otf | Bin 0 -> 5724 bytes
 .../data/aots/fonts/gsub_chaining2_boundary_f2.otf | Bin 0 -> 5728 bytes
 .../data/aots/fonts/gsub_chaining2_boundary_f3.otf | Bin 0 -> 5728 bytes
 .../data/aots/fonts/gsub_chaining2_boundary_f4.otf | Bin 0 -> 5728 bytes
 .../aots/fonts/gsub_chaining2_lookupflag_f1.otf    | Bin 0 -> 5752 bytes
 .../fonts/gsub_chaining2_multiple_subrules_f1.otf  | Bin 0 -> 5824 bytes
 .../fonts/gsub_chaining2_multiple_subrules_f2.otf  | Bin 0 -> 5824 bytes
 .../aots/fonts/gsub_chaining2_next_glyph_f1.otf    | Bin 0 -> 5764 bytes
 .../data/aots/fonts/gsub_chaining2_simple_f1.otf   | Bin 0 -> 5716 bytes
 .../data/aots/fonts/gsub_chaining2_simple_f2.otf   | Bin 0 -> 5720 bytes
 .../aots/fonts/gsub_chaining2_successive_f1.otf    | Bin 0 -> 5752 bytes
 .../data/aots/fonts/gsub_chaining3_boundary_f1.otf | Bin 0 -> 5528 bytes
 .../data/aots/fonts/gsub_chaining3_boundary_f2.otf | Bin 0 -> 5532 bytes
 .../data/aots/fonts/gsub_chaining3_boundary_f3.otf | Bin 0 -> 5524 bytes
 .../data/aots/fonts/gsub_chaining3_boundary_f4.otf | Bin 0 -> 5524 bytes
 .../aots/fonts/gsub_chaining3_lookupflag_f1.otf    | Bin 0 -> 5572 bytes
 .../aots/fonts/gsub_chaining3_next_glyph_f1.otf    | Bin 0 -> 5548 bytes
 .../data/aots/fonts/gsub_chaining3_simple_f1.otf   | Bin 0 -> 5520 bytes
 .../data/aots/fonts/gsub_chaining3_simple_f2.otf   | Bin 0 -> 5540 bytes
 .../aots/fonts/gsub_chaining3_successive_f1.otf    | Bin 0 -> 5568 bytes
 .../data/aots/fonts/gsub_context1_boundary_f1.otf  | Bin 0 -> 5500 bytes
 .../data/aots/fonts/gsub_context1_boundary_f2.otf  | Bin 0 -> 5504 bytes
 .../data/aots/fonts/gsub_context1_expansion_f1.otf | Bin 0 -> 5516 bytes
 .../aots/fonts/gsub_context1_lookupflag_f1.otf     | Bin 0 -> 5532 bytes
 .../aots/fonts/gsub_context1_lookupflag_f2.otf     | Bin 0 -> 5524 bytes
 .../fonts/gsub_context1_multiple_subrules_f1.otf   | Bin 0 -> 5592 bytes
 .../fonts/gsub_context1_multiple_subrules_f2.otf   | Bin 0 -> 5592 bytes
 .../aots/fonts/gsub_context1_next_glyph_f1.otf     | Bin 0 -> 5520 bytes
 .../data/aots/fonts/gsub_context1_simple_f1.otf    | Bin 0 -> 5500 bytes
 .../data/aots/fonts/gsub_context1_simple_f2.otf    | Bin 0 -> 5492 bytes
 .../aots/fonts/gsub_context1_successive_f1.otf     | Bin 0 -> 5528 bytes
 .../data/aots/fonts/gsub_context2_boundary_f1.otf  | Bin 0 -> 5516 bytes
 .../data/aots/fonts/gsub_context2_boundary_f2.otf  | Bin 0 -> 5516 bytes
 .../data/aots/fonts/gsub_context2_classes_f1.otf   | Bin 0 -> 5564 bytes
 .../data/aots/fonts/gsub_context2_classes_f2.otf   | Bin 0 -> 5584 bytes
 .../data/aots/fonts/gsub_context2_expansion_f1.otf | Bin 0 -> 5544 bytes
 .../aots/fonts/gsub_context2_lookupflag_f1.otf     | Bin 0 -> 5560 bytes
 .../aots/fonts/gsub_context2_lookupflag_f2.otf     | Bin 0 -> 5552 bytes
 .../fonts/gsub_context2_multiple_subrules_f1.otf   | Bin 0 -> 5620 bytes
 .../fonts/gsub_context2_multiple_subrules_f2.otf   | Bin 0 -> 5620 bytes
 .../aots/fonts/gsub_context2_next_glyph_f1.otf     | Bin 0 -> 5536 bytes
 .../data/aots/fonts/gsub_context2_simple_f1.otf    | Bin 0 -> 5528 bytes
 .../data/aots/fonts/gsub_context2_simple_f2.otf    | Bin 0 -> 5504 bytes
 .../aots/fonts/gsub_context2_successive_f1.otf     | Bin 0 -> 5568 bytes
 .../data/aots/fonts/gsub_context3_boundary_f1.otf  | Bin 0 -> 5500 bytes
 .../data/aots/fonts/gsub_context3_boundary_f2.otf  | Bin 0 -> 5496 bytes
 .../aots/fonts/gsub_context3_lookupflag_f1.otf     | Bin 0 -> 5536 bytes
 .../aots/fonts/gsub_context3_lookupflag_f2.otf     | Bin 0 -> 5528 bytes
 .../aots/fonts/gsub_context3_next_glyph_f1.otf     | Bin 0 -> 5520 bytes
 .../data/aots/fonts/gsub_context3_simple_f1.otf    | Bin 0 -> 5504 bytes
 .../aots/fonts/gsub_context3_successive_f1.otf     | Bin 0 -> 5540 bytes
 .../aots/fonts/lookupflag_ignore_attach_f1.otf     | Bin 0 -> 5416 bytes
 .../data/aots/fonts/lookupflag_ignore_base_f1.otf  | Bin 0 -> 5256 bytes
 .../fonts/lookupflag_ignore_combination_f1.otf     | Bin 0 -> 5408 bytes
 .../aots/fonts/lookupflag_ignore_ligatures_f1.otf  | Bin 0 -> 5320 bytes
 .../data/aots/fonts/lookupflag_ignore_marks_f1.otf | Bin 0 -> 5288 bytes
 test/shaping/data/aots/hb-aots-tester.cpp          | 343
 +++++++++++++++++++++
 test/shaping/data/aots/tests/classdef1.tests       |   1 +
 test/shaping/data/aots/tests/classdef1_empty.tests |   1 +
 .../data/aots/tests/classdef1_multiple.tests       |   1 +
 .../shaping/data/aots/tests/classdef1_single.tests |   1 +
 test/shaping/data/aots/tests/classdef2.tests       |   1 +
 test/shaping/data/aots/tests/classdef2_empty.tests |   1 +
 .../data/aots/tests/classdef2_multiple.tests       |   1 +
 .../shaping/data/aots/tests/classdef2_single.tests |   1 +
 .../data/aots/tests/gpos1_1_lookupflag.tests       |   1 +
 test/shaping/data/aots/tests/gpos1_1_simple.tests  |   4 +
 test/shaping/data/aots/tests/gpos1_2.tests         |   1 +
 .../data/aots/tests/gpos1_2_lookupflag.tests       |   1 +
 test/shaping/data/aots/tests/gpos2_1.tests         |   2 +
 .../data/aots/tests/gpos2_1_lookupflag.tests       |   2 +
 .../data/aots/tests/gpos2_1_next_glyph.tests       |   2 +
 test/shaping/data/aots/tests/gpos2_1_simple.tests  |   2 +
 test/shaping/data/aots/tests/gpos2_2.tests         |   5 +
 test/shaping/data/aots/tests/gpos3.tests           |  11 +
 .../shaping/data/aots/tests/gpos3_lookupflag.tests |   2 +
 .../shaping/data/aots/tests/gpos4_lookupflag.tests |   2 +
 .../data/aots/tests/gpos4_multiple_anchors.tests   |   1 +
 test/shaping/data/aots/tests/gpos4_simple.tests    |   5 +
 test/shaping/data/aots/tests/gpos5.tests           |   2 +
 test/shaping/data/aots/tests/gpos6.tests           |   3 +
 test/shaping/data/aots/tests/gpos7_1.tests         |   2 +
 test/shaping/data/aots/tests/gpos9.tests           |   2 +
 .../data/aots/tests/gpos_chaining1_boundary.tests  |   4 +
 .../aots/tests/gpos_chaining1_lookupflag.tests     |   1 +
 .../tests/gpos_chaining1_multiple_subrules.tests   |   2 +
 .../aots/tests/gpos_chaining1_next_glyph.tests     |   1 +
 .../data/aots/tests/gpos_chaining1_simple.tests    |  11 +
 .../aots/tests/gpos_chaining1_successive.tests     |   1 +
 .../data/aots/tests/gpos_chaining2_boundary.tests  |   4 +
 .../aots/tests/gpos_chaining2_lookupflag.tests     |   1 +
 .../tests/gpos_chaining2_multiple_subrules.tests   |   2 +
 .../aots/tests/gpos_chaining2_next_glyph.tests     |   1 +
 .../data/aots/tests/gpos_chaining2_simple.tests    |  11 +
 .../aots/tests/gpos_chaining2_successive.tests     |   1 +
 .../data/aots/tests/gpos_chaining3_boundary.tests  |   4 +
 .../aots/tests/gpos_chaining3_lookupflag.tests     |   1 +
 .../aots/tests/gpos_chaining3_next_glyph.tests     |   1 +
 .../data/aots/tests/gpos_chaining3_simple.tests    |  11 +
 .../aots/tests/gpos_chaining3_successive.tests     |   1 +
 .../data/aots/tests/gpos_context1_boundary.tests   |   2 +
 .../data/aots/tests/gpos_context1_expansion.tests  |   1 +
 .../data/aots/tests/gpos_context1_lookupflag.tests |   2 +
 .../tests/gpos_context1_multiple_subrules.tests    |   2 +
 .../data/aots/tests/gpos_context1_next_glyph.tests |   1 +
 .../data/aots/tests/gpos_context1_simple.tests     |   3 +
 .../data/aots/tests/gpos_context1_successive.tests |   1 +
 .../data/aots/tests/gpos_context2_boundary.tests   |   2 +
 .../data/aots/tests/gpos_context2_classes.tests    |   2 +
 .../data/aots/tests/gpos_context2_expansion.tests  |   1 +
 .../data/aots/tests/gpos_context2_lookupflag.tests |   2 +
 .../tests/gpos_context2_multiple_subrules.tests    |   2 +
 .../data/aots/tests/gpos_context2_next_glyph.tests |   1 +
 .../data/aots/tests/gpos_context2_simple.tests     |   3 +
 .../data/aots/tests/gpos_context2_successive.tests |   1 +
 .../data/aots/tests/gpos_context3_boundary.tests   |   2 +
 .../data/aots/tests/gpos_context3_lookupflag.tests |   2 +
 .../data/aots/tests/gpos_context3_next_glyph.tests |   1 +
 .../data/aots/tests/gpos_context3_simple.tests     |   2 +
 .../data/aots/tests/gpos_context3_successive.tests |   1 +
 .../data/aots/tests/gsub1_1_lookupflag.tests       |   1 +
 test/shaping/data/aots/tests/gsub1_1_modulo.tests  |   1 +
 test/shaping/data/aots/tests/gsub1_1_simple.tests  |   1 +
 .../data/aots/tests/gsub1_2_lookupflag.tests       |   1 +
 test/shaping/data/aots/tests/gsub1_2_simple.tests  |   1 +
 .../data/aots/tests/gsub2_1_lookupflag.tests       |   1 +
 .../aots/tests/gsub2_1_multiple_sequences.tests    |   1 +
 test/shaping/data/aots/tests/gsub2_1_simple.tests  |   2 +
 .../data/aots/tests/gsub3_1_lookupflag.tests       |   1 +
 .../shaping/data/aots/tests/gsub3_1_multiple.tests |   1 +
 test/shaping/data/aots/tests/gsub3_1_simple.tests  |   1 +
 .../data/aots/tests/gsub4_1_lookupflag.tests       |   1 +
 .../aots/tests/gsub4_1_multiple_ligatures.tests    |   2 +
 .../data/aots/tests/gsub4_1_multiple_ligsets.tests |   1 +
 test/shaping/data/aots/tests/gsub4_1_simple.tests  |   1 +
 test/shaping/data/aots/tests/gsub7.tests           |   2 +
 .../data/aots/tests/gsub_chaining1_boundary.tests  |   4 +
 .../aots/tests/gsub_chaining1_lookupflag.tests     |   1 +
 .../tests/gsub_chaining1_multiple_subrules.tests   |   2 +
 .../aots/tests/gsub_chaining1_next_glyph.tests     |   1 +
 .../data/aots/tests/gsub_chaining1_simple.tests    |  11 +
 .../aots/tests/gsub_chaining1_successive.tests     |   1 +
 .../data/aots/tests/gsub_chaining2_boundary.tests  |   4 +
 .../aots/tests/gsub_chaining2_lookupflag.tests     |   1 +
 .../tests/gsub_chaining2_multiple_subrules.tests   |   2 +
 .../aots/tests/gsub_chaining2_next_glyph.tests     |   1 +
 .../data/aots/tests/gsub_chaining2_simple.tests    |  11 +
 .../aots/tests/gsub_chaining2_successive.tests     |   1 +
 .../data/aots/tests/gsub_chaining3_boundary.tests  |   4 +
 .../aots/tests/gsub_chaining3_lookupflag.tests     |   1 +
 .../aots/tests/gsub_chaining3_next_glyph.tests     |   1 +
 .../data/aots/tests/gsub_chaining3_simple.tests    |  11 +
 .../aots/tests/gsub_chaining3_successive.tests     |   1 +
 .../data/aots/tests/gsub_context1_boundary.tests   |   2 +
 .../data/aots/tests/gsub_context1_expansion.tests  |   1 +
 .../data/aots/tests/gsub_context1_lookupflag.tests |   2 +
 .../tests/gsub_context1_multiple_subrules.tests    |   2 +
 .../data/aots/tests/gsub_context1_next_glyph.tests |   1 +
 .../data/aots/tests/gsub_context1_simple.tests     |   3 +
 .../data/aots/tests/gsub_context1_successive.tests |   1 +
 .../data/aots/tests/gsub_context2_boundary.tests   |   2 +
 .../data/aots/tests/gsub_context2_classes.tests    |   2 +
 .../data/aots/tests/gsub_context2_expansion.tests  |   1 +
 .../data/aots/tests/gsub_context2_lookupflag.tests |   2 +
 .../tests/gsub_context2_multiple_subrules.tests    |   2 +
 .../data/aots/tests/gsub_context2_next_glyph.tests |   1 +
 .../data/aots/tests/gsub_context2_simple.tests     |   3 +
 .../data/aots/tests/gsub_context2_successive.tests |   1 +
 .../data/aots/tests/gsub_context3_boundary.tests   |   2 +
 .../data/aots/tests/gsub_context3_lookupflag.tests |   2 +
 .../data/aots/tests/gsub_context3_next_glyph.tests |   1 +
 .../data/aots/tests/gsub_context3_simple.tests     |   2 +
 .../data/aots/tests/gsub_context3_successive.tests |   1 +
 .../data/aots/tests/lookupflag_ignore_attach.tests |   5 +
 .../data/aots/tests/lookupflag_ignore_base.tests   |   2 +
 .../aots/tests/lookupflag_ignore_combination.tests |   3 +
 .../aots/tests/lookupflag_ignore_ligatures.tests   |   3 +
 .../data/aots/tests/lookupflag_ignore_marks.tests  |   1 +
 test/shaping/run-tests.py                          |   9 +-
 332 files changed, 815 insertions(+), 3 deletions(-)

commit ae96c98dfaef3a789227ffecd40b92518dface8a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 10:25:10 2018 -0500

    [color] Use SortedUnsizedArrayOf<>

 src/hb-ot-color-colr-table.hh | 16 ++--------------
 1 file changed, 2 insertions(+), 14 deletions(-)

commit 4a3b20738fca3231e5d9a36adba333b5bce05f4a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 10:17:59 2018 -0500

    [trak] Coment

 src/hb-aat-layout-trak-table.hh | 1 -
 1 file changed, 1 deletion(-)

commit 918b1ee54d43eb493c9226bff7677ed8ec07934b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 10:09:17 2018 -0500

    [arrays] Add not_found to reference bsearch as well

 src/hb-open-type.hh | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

commit d77a098b735cf14aa601feab5bdb9f4e474c794f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 10:06:13 2018 -0500

    [arrays] Improve bfind() interface

    Much more useful now. :)

 src/hb-dsalgs.hh           | 29 +++++++++++++++++++++++++----
 src/hb-open-file.hh        |  9 +--------
 src/hb-open-type.hh        | 12 ++++++++----
 src/hb-ot-layout-common.hh | 10 ++--------
 src/hb-set.hh              |  6 +++---
 src/hb-vector.hh           |  6 ++++--
 6 files changed, 43 insertions(+), 29 deletions(-)

commit 1204a247a5d9a4da39675d3da85d4fd3268a5b66
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 09:49:21 2018 -0500

    [fuzzing] Add tests for previous commit

    Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11526
    Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11522

 ...zz-testcase-minimized-hb-shape-fuzzer-5634620935110656 | Bin 0 ->
 41 bytes
 ...zz-testcase-minimized-hb-shape-fuzzer-5716208469409792 | Bin 0 ->
 243 bytes
 2 files changed, 0 insertions(+), 0 deletions(-)

commit 8dcc1913a1670ede7b124f7b5b775d7ab8791386
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 09:47:45 2018 -0500

    [kerx/morx] Make sure object length is sanitized before accessing it

 src/hb-aat-layout-kerx-table.hh | 5 +++++
 src/hb-aat-layout-morx-table.hh | 5 +++++
 2 files changed, 10 insertions(+)

commit 70d80c90fe2f4eca66bec3e1d313bbf7e4d0ab65
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 01:59:50 2018 -0500

    [arrays] Port ArrayOf.qsort() and hb_vector_t.qsort() to hb_array_t

 src/hb-dsalgs.hh    | 14 ++++++++++++--
 src/hb-open-type.hh | 14 ++++++++++++--
 2 files changed, 24 insertions(+), 4 deletions(-)

commit 073d837aa2394d29dda72679802d583c559c3c5b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 01:48:48 2018 -0500

    [arrays] Port ArrayOf.qsort() to hb_array_t's

 src/hb-open-type.hh | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

commit ad5c871d801b481f95dd32c8b65ecc70def597be
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 01:47:49 2018 -0500

    [arrays] Add copy-constructor to hb_array_t and hb_sorted_array_t

 src/hb-dsalgs.hh | 2 ++
 1 file changed, 2 insertions(+)

commit 61de55bf496c1edb120e4d096140eb1125552bbe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 01:45:58 2018 -0500

    [arrays] Port hb_vector_t.qsort() to hb_array_t's

 src/hb-dsalgs.hh | 16 +++++++++++++---
 src/hb-vector.hh | 10 ++--------
 2 files changed, 15 insertions(+), 11 deletions(-)

commit e3face8e791d677f94154e8a7f3d787d0d69a02f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 01:42:17 2018 -0500

    [arrays] Remove one flavor of hb_vector_t.qsort()

 src/hb-vector.hh | 8 ++------
 1 file changed, 2 insertions(+), 6 deletions(-)

commit 7c1600dcd9813ca560ecccc5c54877a5750caf4e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 01:37:11 2018 -0500

    [arrays] Add (unused) SortedUnsizedArrayOf<>

 src/hb-open-type.hh | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

commit e700392f5cbf366f1e03dc7e7b1a2eb6c3027b92
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 01:31:00 2018 -0500

    [arrays] Port SortedArrayOf.bsearch/bfind to hb_sorted_array_t's

 src/hb-dsalgs.hh    |  9 +++------
 src/hb-open-type.hh | 50
 ++++++++++----------------------------------------
 src/hb-vector.hh    | 35 ++++++++++-------------------------
 3 files changed, 23 insertions(+), 71 deletions(-)

commit e604306f2829804e9016966c1378166253b19d29
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 01:24:48 2018 -0500

    [arrays] Port hb_vector_t.bsearch/bfind to (new) hb_sorted_array_t's

 src/hb-dsalgs.hh    | 63
 +++++++++++++++++++++++++++++++++++++++++++++++++----
 src/hb-open-type.hh | 12 ++++++----
 src/hb-vector.hh    | 57 +++++++++++++++++++-----------------------------
 3 files changed, 89 insertions(+), 43 deletions(-)

commit 268eca24921e85eda98f4f0cce05d40c7235ba62
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 01:11:12 2018 -0500

    [arrays] Port (unused) ArrayOf.lsearch() to hb_array_t's

 src/hb-open-type.hh | 12 ++----------
 1 file changed, 2 insertions(+), 10 deletions(-)

commit 830856ba6b9454bf507e00416f9d45e9975fb7dc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 01:09:28 2018 -0500

    [arrays] Port hb_vector_t.lsearch() to hb_array_t's

 src/hb-dsalgs.hh | 26 +++++++++++++++++++++++---
 src/hb-vector.hh | 16 ++++------------
 2 files changed, 27 insertions(+), 15 deletions(-)

commit 96cf0889804b7d72a96274b25641bb18f7dd2e1e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 01:07:15 2018 -0500

    [arrays] More

 src/hb-face.cc   | 6 +++---
 src/hb-vector.hh | 4 ++--
 2 files changed, 5 insertions(+), 5 deletions(-)

commit 3e26c8d2b10fc08642c25c7f13aef68b0b1008f6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 00:58:44 2018 -0500

    [arrays] Update ArrayOf.lsearch()

    Currently unused apparently

 src/hb-open-type.hh | 17 +++++++++++++----
 1 file changed, 13 insertions(+), 4 deletions(-)

commit 22e1857b01c71714245ddca05cb3fa0127bf7da2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 00:53:19 2018 -0500

    [arrays] Change argument type of cmp called by hb_vector_t.bsearch()

    Towards consolidating all array bsearch/...

 src/hb-aat-map.hh | 4 ++--
 src/hb-ot-map.hh  | 4 ++--
 src/hb-set.hh     | 2 +-
 src/hb-vector.hh  | 4 ++--
 4 files changed, 7 insertions(+), 7 deletions(-)

commit 5fdf7b724eb3cb5ac60cd7f90d3250877ad7ca06
Author: Nathan Willis <nwillis@glyphography.com>
Date:   Thu Nov 15 17:40:21 2018 -0600

    Usermanual: clusters chapter; add brief grapheme definition and
    clarify monotonous cluster handling.

 docs/usermanual-clusters.xml | 56
 ++++++++++++++++++++++++++++++--------------
 1 file changed, 39 insertions(+), 17 deletions(-)

commit 939220e57da613e090d247aa1af2396c28370af4
Author: Nathan Willis <nwillis@glyphography.com>
Date:   Thu Nov 15 15:47:03 2018 -0600

    Usermanual: clusters chapter, minor updates.

 docs/usermanual-clusters.xml | 25 ++++++++++++++++---------
 1 file changed, 16 insertions(+), 9 deletions(-)

commit 53ac46e974cf0ee8720b40ef394714eb97ff53b9
Author: Nathan Willis <nwillis@glyphography.com>
Date:   Mon Nov 12 12:17:06 2018 -0600

    Usermanual: expand clusters chapter.

 docs/usermanual-clusters.xml | 743
 +++++++++++++++++++++++++++----------------
 1 file changed, 473 insertions(+), 270 deletions(-)

commit 30cb45b3eaacda15cc45435815cae3fd50e87557
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 00:35:31 2018 -0500

    Change ArrayOf.bsearch() return semantics

    Towards consolidating all array bsearch/...

 src/hb-aat-layout-kerx-table.hh | 16 +++-------------
 src/hb-open-file.hh             | 12 ++++++++----
 src/hb-open-type.hh             | 42
 ++++++++++++++++++++++++++++++++---------
 src/hb-ot-cmap-table.hh         | 30 ++++++++++++-----------------
 src/hb-ot-color-svg-table.hh    |  3 +--
 src/hb-ot-layout-common.hh      | 29 +++++++++++-----------------
 src/hb-ot-vorg-table.hh         |  9 ++++-----
 src/hb-vector.hh                | 14 +++++++++-----
 8 files changed, 81 insertions(+), 74 deletions(-)

commit 5cd9546ba73d9f8c8b7b8db0960d657c50b70f64
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 00:38:36 2018 -0500

    Minor

 src/hb-ot-layout-common.hh | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

commit fd94e729cb50f2b6bd83b80cbf400e10ac633a1c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 00:45:55 2018 -0500

    Whitespace

 src/hb-ot-layout-common.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit bb2a2065080a3099eb0dc82d1df0891ad2601316
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 00:31:40 2018 -0500

    Assert that item-type of arrays have static size

 src/hb-dsalgs.hh    | 2 ++
 src/hb-open-type.hh | 4 ++++
 src/hb-vector.hh    | 2 ++
 3 files changed, 8 insertions(+)

commit 690d9eb83d3421b397b0cb824cd768d6d73cbf12
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 00:29:22 2018 -0500

    [vector] Rename

 src/hb-vector.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit ba38378fd4374f3d44bdc9aa0de902401b60b13d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 00:27:57 2018 -0500

    [aat] Minor

 src/hb-aat-layout-common.hh | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit 39b9d63b014380d421cc9b94a49dd411c7a5aabf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 00:25:40 2018 -0500

    Add hb_static_size(T)

 src/hb-null.hh | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

commit f99abcc37990a478189dda691d1fdac7b9d51386
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 00:22:21 2018 -0500

    Add template-function convenience macros

 src/hb-atomic.hh |  2 +-
 src/hb-blob.hh   |  4 ++--
 src/hb-common.cc |  2 +-
 src/hb-ft.cc     |  2 +-
 src/hb-null.hh   | 11 ++++++-----
 src/hb.hh        |  3 +++
 6 files changed, 14 insertions(+), 10 deletions(-)

commit ec83b2228e0bbb6df7e7b94dad49db32b041af4a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 23 19:58:49 2018 -0500

    Add null bytes for CmapSubtableLongGroup

 src/hb-ot-cmap-table.hh | 1 +
 src/hb-static.cc        | 4 +++-
 2 files changed, 4 insertions(+), 1 deletion(-)

commit e2ffb33a534a427c760dae53d0469eeced4343ba
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 23 16:24:28 2018 -0500

    Remove lsearch for small TableDirectorys

 src/hb-open-file.hh | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

commit 04f7e5536924e7f277d72b8cb9d878239877c331
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 23 16:07:43 2018 -0500

    [arrays] Add as_array() to hb_vector_t<>

 src/hb-vector.hh | 3 +++
 1 file changed, 3 insertions(+)

commit c514f65181390ab98b0f738632f71cda31e46b68
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 23 16:04:56 2018 -0500

    [arrays] Add as_array() to ArrayOf<>

 src/hb-open-type.hh | 3 +++
 1 file changed, 3 insertions(+)

commit 9552f4ef0da0b7e1fb28cb2738b865888e7941d9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 23 15:24:17 2018 -0500

    [kern] Don't enforce length of last subtable

 src/hb-aat-layout-kerx-table.hh | 19 +++++++++++++++++--
 1 file changed, 17 insertions(+), 2 deletions(-)

commit 992b7128656e72f935089dc2e12c2d2a25511886
Merge: c9cc96c0 018ba46e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 23 13:49:34 2018 -0500

    Merge pull request #1407 from harfbuzz/at-sign

    Don't canonicalize '@' to '-' in language tags

commit 018ba46e4d003a5dd0f6d2d899226129c4ef0c60
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Fri Nov 23 13:21:22 2018 -0500

    Don't canonicalize '@' to '-' in language tags

    Fixes #1406.

 src/hb-common.cc       | 2 +-
 test/api/test-ot-tag.c | 3 +++
 2 files changed, 4 insertions(+), 1 deletion(-)

commit c9cc96c0cfbbb87b9292e413d500a454182be9f4
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Nov 23 19:58:56 2018 +0330

    [aat] Update expectation

 test/shaping/data/in-house/tests/macos-10.12.tests | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 748962264a9f098b32b9cb3fe4d18c786907a184
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 23 11:10:17 2018 -0500

    [aat] Disable mark advance zeroing if kern table has state-machines

    Geeza Pro for example, relies on that for fancy mark positioning.

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1405

 src/hb-aat-layout-kerx-table.hh | 15 +++++++++++++++
 src/hb-ot-kern-table.hh         |  9 +++++++++
 src/hb-ot-layout.cc             |  6 ++++++
 src/hb-ot-layout.hh             |  3 +++
 src/hb-ot-shape.cc              |  4 +++-
 5 files changed, 36 insertions(+), 1 deletion(-)

commit 3d2b98ef14af29acd74f01647bef60cd410825fb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 23 10:45:44 2018 -0500

    Minor

 src/hb.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 341851efe158599a34d241a97593058a4333852e
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Nov 23 15:40:05 2018 +0330

    [aat] Add macOS specific tests (#1404)

 .circleci/config.yml                               | 46
 ++++++++++++++--------
 test/shaping/CMakeLists.txt                        |  2 +
 test/shaping/data/in-house/Makefile.sources        |  1 +
 test/shaping/data/in-house/tests/macos-10.12.tests | 10 +++++
 test/shaping/run-tests.py                          | 38
 ++++++++++++++----
 5 files changed, 73 insertions(+), 24 deletions(-)

commit 22798e93c414a2655c757a6e41b300f67e04a9a3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 22:47:51 2018 -0500

    [use] Minor clarification

 src/hb-ot-shape-complex-use.cc | 34 +++++++++++++++++-----------------
 1 file changed, 17 insertions(+), 17 deletions(-)

commit a2d6c1075a5595a08ef09357293919d9df8eb64a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 22:40:57 2018 -0500

    Minor tweak to FLAG64

 src/hb.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 8280459e74cff2dec3de012abd309cda9578b759
Merge: e4a4555d 3c7792ca
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 22:39:12 2018 -0500

    Merge pull request #1291 from harfbuzz/use-reordering

    [use] Fix reordering

commit e4a4555d1e40dacdf72452805e9e6b6109627d63
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 22:17:49 2018 -0500

    [cmap] Move code around

 src/hb-ot-cmap-table.hh | 18 ++++++++++--------
 1 file changed, 10 insertions(+), 8 deletions(-)

commit 758c9d68e2143493978d8ac8391f4af2a2abc26a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 22:16:12 2018 -0500

    [morx/kerx] Limit range to subtable when sanitizing

 src/hb-aat-layout-kerx-table.hh | 2 ++
 src/hb-aat-layout-morx-table.hh | 2 ++
 2 files changed, 4 insertions(+)

commit a9fe787a11fc391d9a43a4ea19e6eb1c474199bd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 22:12:36 2018 -0500

    [sanitizer] Add reset_object(), make set_object() do bounds-check

    Affects morx/kerx run-time only currently.  Will adjust their
    sanitize next.

 src/hb-aat-layout-kerx-table.hh |  1 +
 src/hb-aat-layout-morx-table.hh |  1 +
 src/hb-machinery.hh             | 30 +++++++++++++++++++-----------
 3 files changed, 21 insertions(+), 11 deletions(-)

commit 2c8188bf599e351a4e0804d74612f9643b3d2443
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 22:02:19 2018 -0500

    [kerx] Make sure subtables are non-zero-length

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

 src/hb-aat-layout-kerx-table.hh                          |   1 +
 src/hb-aat-layout-morx-table.hh                          |   2 +-
 ...z-testcase-minimized-hb-shape-fuzzer-5722888989048832 | Bin 0 ->
 3608 bytes
 3 files changed, 2 insertions(+), 1 deletion(-)

commit a9e0bdc35dfcbead7d4b6fa249d60ebedd7d43ca
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 21:30:04 2018 -0500

    [GSUB] Don't flush glyphset during recursion in closure()

    See comment.

    Supercedes https://github.com/harfbuzz/harfbuzz/pull/1401
    Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11366

 src/hb-ot-layout-gsub-table.hh | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 8982830d3ec54f50cc951de9569520fafc735e75
Author: Garret Rieger <grieger@google.com>
Date:   Mon Nov 19 13:00:24 2018 -0800

    [subset] add fuzzer testcase.

 ...z-testcase-minimized-hb-subset-fuzzer-5067936541179904 | Bin 0 ->
 172 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)

commit d0e81b2cc85d09d01905c5fc5b3382c25eaa3bb3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 21:20:39 2018 -0500

    [set] Rename

 src/hb-set.hh | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit e866910579e9cdc5b1ffa2e401fd0c056d44ca6a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 18:07:59 2018 -0500

    Enforce requiring null_size even if min_size is 0

    This concludes null-size enforcement changes

 src/hb-null.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 4d4fd64ff47da04a7008d410c92e8fb4ad970781
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 18:07:36 2018 -0500

    Allow non-nullable OffsetTo<> to non-Null'able objects

 src/hb-open-type.hh | 16 +++++++++++++++-
 1 file changed, 15 insertions(+), 1 deletion(-)

commit fa9f585ec53bc7145d3bed1a4bd756d64dae1e55
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 17:56:51 2018 -0500

    [glyf] Don't mark structs UNBOUNDED

    See comments.

 src/hb-ot-glyf-table.hh | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

commit f47a60a7543dbaf41086c25a1a22ae518d8b92a9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 17:53:29 2018 -0500

    Mark UnsizedArrayOf<> as UNBOUNDED

    Since min_size is 0, Null() still accepts this type.

 src/hb-open-type.hh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 199a0f7b41b691e371487fd569c0d0146da3c3f3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 17:31:07 2018 -0500

    [ot-shape] Simplify logic

 src/hb-ot-shape.cc | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

commit 014e4980ed9c8c473001abdb3a44121eb73fd50d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 16:21:49 2018 -0500

    Move

 src/hb-ot-shape.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 62890dee18b88865a2014fb6a1322c1c9218bd49
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 16:20:29 2018 -0500

    [aat] Zero mark advances if decided so even if there's cross-kerning

    Cross-kerning can only take care of positioning vertically.
    It doesn't
    adjust mark advance...

 src/hb-ot-shape.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a201fa74cd67f36a402a5c8093889c9d793e9fd5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 15:52:29 2018 -0500

    [aat] Tweak fallback positioning logic when applying morx

    Such that for Indic-like scripts (eg. Khmer), we don't do any
    fallback mark
    advance-zeroing / positioning, but we do for Latin, etc.  Reuses
    preferences
    of our script-specific OpenType shapers for those.

    Fixes regression: https://github.com/harfbuzz/harfbuzz/issues/1393
    Which means, fixes again:
    https://github.com/harfbuzz/harfbuzz/issues/1264
    While not regressing: https://github.com/harfbuzz/harfbuzz/issues/1357

 src/hb-ot-shape.cc | 38 +++++++++++++++++++++++---------------
 src/hb-ot-shape.hh |  3 +++
 2 files changed, 26 insertions(+), 15 deletions(-)

commit fa0bd8964d110c168a918bc331dcd350c3fed8c1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 14:46:39 2018 -0500

    [myanmar] Minor move

 src/hb-ot-shape-complex.hh | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit 7dc561984bdb1f29f09ae0793195b5fbf772522b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 14:45:46 2018 -0500

    [myanmar] If there's no GSUB table, pick myanmar shaper

    Needed for morx+kern mark-zeroing interaction.  All other scripts
    work this way.

 src/hb-ot-shape-complex.hh | 16 +++++++++++++---
 1 file changed, 13 insertions(+), 3 deletions(-)

commit 25f52f58c20715cc0dee2dd2885669078a128b08
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 14:41:01 2018 -0500

    [myanmar] Remove myanmar_old shaper

    Over time it has become the same as default shaper.  So, remove.

 src/hb-ot-shape-complex-myanmar.cc | 21 ---------------------
 src/hb-ot-shape-complex.hh         |  4 +---
 2 files changed, 1 insertion(+), 24 deletions(-)

commit eeed802b1d0f932c61a088d3e0156ae70645b9e2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 01:53:36 2018 -0500

    Fix spurious gcc warnings

    ../../src/hb-null.hh:53:39: warning: enum constant in boolean context
    [-Wint-in-bool-context]

 src/hb-null.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b96ecb9971a9ad089a631d0139f05ae9d880fc55
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 01:49:12 2018 -0500

    More

    This makes more of the gcc spurious warning:

    ../../src/hb-null.hh:53:39: warning: enum constant in boolean context
    [-Wint-in-bool-context]

    But not going to let that defeat correct code.  Type to switch
    to clang
    as my main compiler...

 src/hb-blob.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2737aa81e5aee721e868bf0c72f19c0245c721fe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 01:44:27 2018 -0500

    Fix up recent change

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1300

 src/hb-null.hh          | 12 +++++++++---
 src/hb-open-type.hh     |  5 -----
 src/hb-ot-glyf-table.hh |  4 ++--
 3 files changed, 11 insertions(+), 10 deletions(-)

commit fffea5aff7a631eedd13c38c1fb7ea4f5f950930
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 01:25:34 2018 -0500

    Minor

 src/hb-open-type.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 209b58ef731f102b92179ed76551e2fd6b5ed075
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 01:22:33 2018 -0500

    Minor

 src/hb-ot-kern-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 3b9fd176e83bbebc4d0b5fc967c15b08fdef7015
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 01:18:55 2018 -0500

    Disallow taking Null() of unbounded structs

    Not sure I've marked all such structs.  To be done as we discover.

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1300

 src/hb-aat-layout-common.hh |  2 +-
 src/hb-machinery.hh         |  4 ++++
 src/hb-ot-kern-table.hh     |  2 +-
 src/hb-ot-var-fvar-table.hh | 31 ++++++++++++++++---------------
 4 files changed, 22 insertions(+), 17 deletions(-)

commit f2b91d6510face95008151bb0d25837723536f9f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 01:10:22 2018 -0500

    Use Type::null_size for our structs in Null(), sizeof() for other
    types

 src/hb-null.hh | 17 +++++++++++++++--
 1 file changed, 15 insertions(+), 2 deletions(-)

commit 7dd945a8764cbbf76f686fd9387918b63f7d2fb4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 01:05:02 2018 -0500

    One more time..

 src/hb-machinery.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit d062ad10de6c63d94676660b76526a160cf4299e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 00:39:14 2018 -0500

    Fix bots happy again, hopefully

    So, our fallback static_assert cannot be had more than once per line
    of source.

 src/hb-machinery.hh | 16 +++++++---------
 1 file changed, 7 insertions(+), 9 deletions(-)

commit fb10c021c8a32f8dc054f008caf86af82667e109
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 00:21:49 2018 -0500

    Revert alignof() == 1 check

    Bots not happy with using "this" inside assertion...

    This reverts 2656644887e77a9d814bb12374af3c26b42fd935

 src/hb-machinery.hh | 12 ++++--------
 1 file changed, 4 insertions(+), 8 deletions(-)

commit 8d778877b88155dec1808a994416ead0b3d98ae7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 21 23:46:09 2018 -0500

    ..

 src/hb-machinery.hh | 8 ++++++--
 src/hb-null.hh      | 4 ++--
 2 files changed, 8 insertions(+), 4 deletions(-)

commit 8cfeed99486e87c3217dc141bc24b7768a460f32
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 21 23:42:31 2018 -0500

    Minor

 src/hb-machinery.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit e5d954a2fb0c390ea67e83763e3c3a47caa2eb50
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 21 23:30:50 2018 -0500

    Minor

 src/hb-machinery.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit e987059c618e03d2346c31ed64429d67ce0e367a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 21 23:25:06 2018 -0500

    Minor

 src/hb-machinery.hh | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit a2b6d308a40d737f54a79f00bc7ace226bad5aaf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 21 23:23:49 2018 -0500

    Remove DEFINE_SIZE_ARRAY2

 src/hb-machinery.hh        | 6 ------
 src/hb-ot-layout-common.hh | 8 ++++----
 src/hb-ot-post-table.hh    | 6 +++---
 3 files changed, 7 insertions(+), 13 deletions(-)

commit 2656644887e77a9d814bb12374af3c26b42fd935
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 21 23:23:21 2018 -0500

    Check alignof() structs are 1

 src/hb-machinery.hh | 16 +++++++++++-----
 1 file changed, 11 insertions(+), 5 deletions(-)

commit 6321fdf7040ce48e3de8d34fdcc57caa6433cb66
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 21 23:19:00 2018 -0500

    Whitespace

 src/hb-machinery.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit f961c1eb88af0d178e5d3431b9d57bdf79669488
Merge: ecdceea8 264439c6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 21 17:27:27 2018 -0500

    Merge pull request #1400 from harfbuzz/sharada-sandhi-mark

    Test U+111C9 SHARADA SANDHI MARK

commit 264439c6c308ac5f01c4ba4faf64daa2d642236a
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Wed Nov 21 16:33:45 2018 -0500

    Test U+111C9 SHARADA SANDHI MARK

 .../fonts/86cdd983c4e4c4d7f27dd405d6ceb7d4b9ed3d35.ttf    | Bin 0 ->
 968 bytes
 test/shaping/data/in-house/tests/use-syllable.tests       |   1 +
 2 files changed, 1 insertion(+)

commit ecdceea861952be003e1d435aa3282a4e3e200a9
Merge: b89c7fd3 b3d5b0a5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 21 16:12:32 2018 -0500

    Merge pull request #1399 from harfbuzz/sharada-sandhi-mark

    Fix USE categories for U+111C9 SHARADA SANDHI MARK

commit b89c7fd3dc505a958dd4b6acec0e0f8e57224fd8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 21 12:32:48 2018 -0500

    Allow defining HB_USE_ATEXIT to 0

    That's better use of that value than requiring extra macro
    HB_NO_ATEXIT

 src/hb-common.cc    | 10 +++++-----
 src/hb-ft.cc        | 12 ++++++------
 src/hb-glib.cc      |  6 +++---
 src/hb-icu.cc       |  6 +++---
 src/hb-ot-font.cc   |  6 +++---
 src/hb-shape.cc     |  6 +++---
 src/hb-shaper.cc    |  6 +++---
 src/hb-ucdn.cc      |  6 +++---
 src/hb-uniscribe.cc |  4 ++--
 src/hb.hh           |  5 ++++-
 10 files changed, 35 insertions(+), 32 deletions(-)

commit b3d5b0a5d92115ca672b8103999ab7ac88e39a4a
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Wed Nov 21 11:35:44 2018 -0500

    Fix USE categories for U+111C9 SHARADA SANDHI MARK

 src/gen-use-table.py                 | 7 ++++++-
 src/hb-ot-shape-complex-use-table.cc | 2 +-
 2 files changed, 7 insertions(+), 2 deletions(-)

commit f48bb9a3939067f24a81007e642caaac77cc7167
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 20 20:40:55 2018 -0500

    [var] Deprecated axis enumeration API and add new version

    New version has axis flags.

    New API:
    +hb_ot_var_axis_info_t
    +hb_ot_var_find_axis_info()
    +hb_ot_var_get_axis_infos()

    Deprecated API:
    -HB_OT_VAR_NO_AXIS_INDEX
    -hb_ot_var_axis_t
    -hb_ot_var_find_axis()
    -hb_ot_var_get_axes()

 docs/harfbuzz-sections.txt  |  14 +++---
 src/hb-deprecated.h         |  37 +++++++++++++++
 src/hb-ot-var-fvar-table.hh | 112
 ++++++++++++++++++++++++++++++++------------
 src/hb-ot-var.cc            |  43 ++++++++++++++---
 src/hb-ot-var.h             |  61 ++++++++++++------------
 test/api/test-ot-face.c     |   2 +-
 6 files changed, 192 insertions(+), 77 deletions(-)

commit b2d803cef6974519d5892af2c9efeb8dfba87618
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 20 11:42:25 2018 -0500

    Remove newly-added -hb_ot_var_axis_get_flags()

 src/hb-ot-var-fvar-table.hh |  6 ------
 src/hb-ot-var.cc            | 12 ------------
 src/hb-ot-var.h             |  4 ----
 3 files changed, 22 deletions(-)

commit 736897d7a1410fd281fbcedc084b85bf4ba1410c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 20 11:40:43 2018 -0500

    [var] Make sure hb_ot_var_axis_flags_t is int-sized

 src/hb-ot-var.h | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit eab5d15f6156e771cb606b760dd170b96c5cd398
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 20 11:33:33 2018 -0500

    [var] Move code

 src/hb-ot-var.h | 27 ++++++++++++++-------------
 1 file changed, 14 insertions(+), 13 deletions(-)

commit 1ecbf4d3e3de7edc86651c6f805788747d6d89af
Merge: 515f1a16 064f703c
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Nov 20 17:19:05 2018 -0800

    Merge branch 'master' into cff-subset

commit 064f703c7ac5a28803a8221720e922ea6dbd2505
Merge: be1828da 82951182
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 20 16:29:30 2018 -0500

    Merge pull request #1397 from harfbuzz/small-emoji-table

    Shrink the emoji table by merging adjacent ranges

commit 82951182799772a642d32195dd87e6f0c116f545
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Tue Nov 20 15:41:45 2018 -0500

    Shrink the emoji table by merging adjacent ranges

 src/gen-emoji-table.py        |  13 +--
 src/hb-unicode-emoji-table.hh | 189
 ++++--------------------------------------
 2 files changed, 23 insertions(+), 179 deletions(-)

commit be1828daaa1e1a72d971aed8d34fff54688d0f41
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 20 11:16:23 2018 -0500

    [var] Fix type of coords returned

    Ouch.  Wonder how none of the bots caught the float->int truncation.

 src/hb-ot-var-fvar-table.hh | 2 +-
 src/hb-ot-var.cc            | 2 +-
 src/hb-ot-var.h             | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

commit 8f3ee17ae468950a34439785d2e6ac4182efb65c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 20 01:38:23 2018 -0500

    [travis] Update Coverity token

 .travis.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f9552362986efd0973b2637d21b787edbc8479f2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 20 01:21:36 2018 -0500

    Add codecov.io badge

 README | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

commit 831ba74382e35f110006539f22bebce4d57c8502
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 20 01:16:08 2018 -0500

    Fix Codacy "issues"

 src/test-name-table.cc  |  2 +-
 src/test-ot-color.cc    | 14 +++++++-------
 test/api/test-buffer.c  |  5 +++--
 test/api/test-object.c  |  2 +-
 test/api/test-ot-name.c |  2 +-
 5 files changed, 13 insertions(+), 12 deletions(-)

commit c49e43c1ffee0e9664da6202ace493d932b725a1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 20 01:06:50 2018 -0500

    [travis] Another push for codecov.io after setting token

 .travis.yml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 96b24c5124a085b7601215360eed847ce5302699
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 20 01:03:42 2018 -0500

    [travis] Add codecov.io

 .travis.yml | 1 +
 1 file changed, 1 insertion(+)

commit 3c7792ca326abfb989285f794d6ee71ad9f6bf89
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Sat Oct 20 15:02:26 2018 -0400

    [use] Fix reordering

    Fixes #1235.

 src/hb-ot-shape-complex-use.cc                     |  48
 ++++++++++++++-------
 src/hb.hh                                          |   2 +
 .../4afb0e8b9a86bb9bd73a1247de4e33fbe3c1fd93.ttf   | Bin 0 -> 1824 bytes
 test/shaping/data/in-house/tests/use.tests         |   3 ++
 4 files changed, 38 insertions(+), 15 deletions(-)

commit 587d49fc657c10c8a20f2409a04d72bf80bb361e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 19 14:27:19 2018 -0500

    [fvar] Add named-instance API

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1241

 docs/harfbuzz-sections.txt  |  4 ++++
 src/hb-ot-var-fvar-table.hh | 55
 ++++++++++++++++++++++++++++++++++++++++++---
 src/hb-ot-var.cc            | 33 +++++++++++++++++++++++++++
 src/hb-ot-var.h             | 32 ++++++++++++++++++++++++++
 4 files changed, 121 insertions(+), 3 deletions(-)

commit 46c0da820fc313bad8afaf019d2cd9065fa5f514
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 19 13:32:48 2018 -0500

    Fix build

 src/hb-dsalgs.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 56c9238d3da8c034336cf80ba37e03e33c493718
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 19 13:09:53 2018 -0500

    [fvar] Rewrite sanitize

 src/hb-ot-var-fvar-table.hh | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

commit 4a6a692e3ea4fab632a0162c6d513dc151054d8f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 19 13:04:43 2018 -0500

    [fvar] Use hb_array_t for axes

 src/hb-dsalgs.hh            |  6 ++++++
 src/hb-ot-var-fvar-table.hh | 14 ++++----------
 2 files changed, 10 insertions(+), 10 deletions(-)

commit e0097396010c40cf62641cd12ceb12dd5d79c9c7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 19 12:53:53 2018 -0500

    [fvar] Minor

 src/hb-ot-var-fvar-table.hh | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

commit 1a2eb108b857de9c5e84cc5de0c12c7657e04498
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 19 12:36:56 2018 -0500

    [ot-var] Add hb_ot_var_axis_get_flags()

    Part of https://github.com/harfbuzz/harfbuzz/issues/1241

    New API:
    +hb_ot_var_axis_flags_t
    +hb_ot_var_axis_get_flags

 docs/harfbuzz-sections.txt  |  2 ++
 src/hb-buffer.h             |  2 ++
 src/hb-ot-var-fvar-table.hh |  9 +++++++++
 src/hb-ot-var.cc            | 12 ++++++++++++
 src/hb-ot-var.h             | 13 +++++++++++++
 5 files changed, 38 insertions(+)

commit bd6b2ba1d3910cc259db7abeb6c9bd7ed9494857
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 19 11:34:56 2018 -0500

    [ot-var] Add flags

    Unfortunate that we don't have room in hb_ot_var_axis_t to expose
    flags :(.

 src/hb-ot-var-fvar-table.hh | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

commit c076c7b85ce4d069ae8b2b04143aca4c4f052ae9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 19 11:30:40 2018 -0500

    [ot-var] Use hb_ot_name_id_t

 src/hb-ot-var.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 515f1a16140f78c9ec379854851f77a1b44af145
Merge: a6da9b94 e3a1a835
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Nov 16 17:38:47 2018 -0800

    Merge branch 'master' into cff-subset

commit a6da9b9415bae43c58f12a8e43b77ba31dd432a6
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Nov 16 17:29:03 2018 -0800

    fixed Charset format selection

 src/hb-subset-cff1.cc | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

commit e3a1a8350a6a7933b0a100194985f4425ab9de19
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 16 16:53:25 2018 -0800

    2.1.3

 NEWS             | 6 ++++++
 configure.ac     | 2 +-
 src/hb-version.h | 4 ++--
 3 files changed, 9 insertions(+), 3 deletions(-)

commit 9714e114b88893bd962b1bcf36382bdacbc4866c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 16 16:52:42 2018 -0800

    Fix recent commits

 src/hb-open-type.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0328a1ce41611ed981d41384ae5727479699f3a0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 16 16:48:28 2018 -0800

    Revert b4c61130324455bfd42095b01fa14ac901e441f1

    Was causing more trouble than it solved.  We use unsigned for
    indexing,
    and it's not helpful to allow that wrapping to negative integers on
    32bit machines.  The only way we could work around it would have been
    by accepting int64_t arg, but that's overkill.

    Ignore the MSVC 2008 build issue.  We don't support that compiler.

 src/hb-open-type.hh | 17 ++++-------------
 1 file changed, 4 insertions(+), 13 deletions(-)

commit 52f61cdb87b67ef42a25288d8624170d0b6d3a25
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 16 16:41:59 2018 -0800

    Detect over/under-flow in UnsizedArray::operator[]

    Was causing bad substitutions in mort table because of
    WordOffsetToIndex()
    producing negative numbers that were cast to unsigned int and
    returned as
    large numbers (which was desirable, so they would be rejected),
    but then
    they were cast to int when passed to this operator and acting as small
    negative integers, which was bad...

    Detect overflow.  Ouch, however, now I see this still fails on 32-bit.
    Guess I'm going to revert an earlier change.

 src/hb-open-type.hh | 21 ++++++++++++++++-----
 1 file changed, 16 insertions(+), 5 deletions(-)

commit 6910ff03e66f5f4c9eb5592262d414ef7d91df04
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 16 16:11:02 2018 -0800

    [aat] Fix mort shaping

    Ouch!

 src/hb-aat-layout.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit fdb29ab2b0058c9813f9fc44c83dd9048db92d16
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 16 15:38:11 2018 -0800

    2.1.2

 NEWS             | 13 ++++++++++++-
 configure.ac     |  2 +-
 src/hb-version.h |  4 ++--
 3 files changed, 15 insertions(+), 4 deletions(-)

commit cff4c6087fdb667a40f54f20ca3c49251bf076de
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 16 15:04:41 2018 -0800

    Fix vertical fallback space sign

    Ouch!

    Follow-up to cf203af8a33591c163b63dbdf0fd341bc4606190

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1343

 src/hb-ot-shape-fallback.cc                   |  8 ++++----
 test/shaping/data/in-house/tests/spaces.tests | 22 +++++++++++-----------
 2 files changed, 15 insertions(+), 15 deletions(-)

commit 7a97f7074052a5d746af29f0743abd20682b09a2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 16 14:46:40 2018 -0800

    Don't apply GPOS if applying morx

    That's what Apple does, and it wouldn't degrade our OpenType
    performance.

    Part of https://github.com/harfbuzz/harfbuzz/issues/1348

 src/hb-ot-shape.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit eafd515639497098436ecf4c7b836e231bced323
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 16 14:45:56 2018 -0800

    Prefer morx table if GSUB is empty (no scripts)

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1348

 src/hb-ot-shape.cc | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit aa06574823e27c4dbb378d2467a3e6f6f36af9fe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 16 14:31:05 2018 -0800

    Minor

 src/hb-aat-layout-trak-table.hh | 2 +-
 src/hb-ot-layout-gdef-table.hh  | 2 +-
 src/hb-ot-layout-gsubgpos.hh    | 2 +-
 src/hb-ot-math-table.hh         | 2 +-
 src/hb-ot-var-fvar-table.hh     | 2 +-
 5 files changed, 5 insertions(+), 5 deletions(-)

commit b6903bd6c4b0c792c821e37a8e223088ae40e5fa
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Nov 16 13:46:58 2018 -0800

    ensure fdmap initialized as identity for single-FD (non-CID) fonts

 src/hb-subset-cff1.cc | 13 ++++++++++---
 src/hb-subset-cff2.cc |  2 ++
 2 files changed, 12 insertions(+), 3 deletions(-)

commit b403be8ad98ffd2dbe95dad73e96c7ed1295d9fc
Merge: b67a7c73 50d1a41c
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Nov 16 12:29:18 2018 -0800

    Merge branch 'master' into cff-subset

commit b67a7c731f041323c19ab245f0285c304d9ae3d2
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Nov 16 12:28:24 2018 -0800

    drop dotsection as hint along with test case

 src/hb-subset-cff-common.hh             |   4 ++++
 src/hb-subset-cff1.cc                   |   1 +
 test/api/fonts/cff1_dotsect.nohints.otf | Bin 0 -> 3132 bytes
 test/api/fonts/cff1_dotsect.otf         | Bin 0 -> 3220 bytes
 test/api/test-subset-cff1.c             |  21 +++++++++++++++++++++
 5 files changed, 26 insertions(+)

commit 50d1a41c08ad3508a94240b52df03c383ae8f1f8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 16 08:52:57 2018 -0500

    [coretext] Hopefully the last one

 src/hb-coretext.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0aab861f9cda6fba5ce71562d9f087d924e8a161
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 16 08:43:25 2018 -0500

    [coretext] Another round

 src/hb-coretext.cc | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 0809b76a9a1d7bd53818df7e83a9c81e664dfe0e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 16 08:29:47 2018 -0500

    [coretext] One more try..

 src/hb-coretext.cc | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit 78bd4475946f2d255539306e4b1115f408c54b54
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 16 04:10:53 2018 -0500

    [coretext] One more try

 src/hb-coretext.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit fd27a23c824bbbd4f4c7e75701cc5d287289704b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 16 03:57:12 2018 -0500

    [coretext] Another build fix attemt

 src/hb-coretext.cc | 3 ---
 1 file changed, 3 deletions(-)

commit 729aedf0da90cbf11235a35588cfdc06ba87a784
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 16 03:26:46 2018 -0500

    [directwrite] Fix build

 src/hb-directwrite.cc | 2 --
 1 file changed, 2 deletions(-)

commit cfb9771a3b096006cbae98438f1ba101d222e0e4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 16 03:24:22 2018 -0500

    [coretext] Try to fix

 src/hb-coretext.cc  | 48 ++++++++++++++++++++++++++++++++++++++----------
 src/hb-machinery.hh | 15 +++++----------
 src/hb-shaper.hh    | 44 --------------------------------------------
 3 files changed, 43 insertions(+), 64 deletions(-)

commit e3e9547365417e547beec84494c8bf6e4e2947fb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 16 02:55:29 2018 -0500

    [coretext] Unbreak build

 src/hb-coretext.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit ce5da0f36a2ece29c387810a060531df15ad6c7b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 16 02:29:13 2018 -0500

    [shaper] Rewrite shaper data code to be more template-driven than
    macro-driven

 src/hb-coretext.cc       |  17 +++----
 src/hb-directwrite.cc    |   9 +---
 src/hb-face.cc           |  12 +----
 src/hb-face.hh           |  13 ++----
 src/hb-fallback-shape.cc |   5 --
 src/hb-font.cc           |  14 ++----
 src/hb-font.hh           |  12 ++---
 src/hb-graphite2.cc      |  11 ++---
 src/hb-machinery.hh      |  14 ++----
 src/hb-ot-shape.cc       |   5 --
 src/hb-shape-plan.cc     |   4 +-
 src/hb-shaper-impl.hh    |   9 +---
 src/hb-shaper.hh         | 117
 ++++++++++++++++++++++++++++++++---------------
 src/hb-uniscribe.cc      |  32 +++++--------
 14 files changed, 127 insertions(+), 147 deletions(-)

commit cb4bf85b14afb3761a85e3da130f2844ac94a49d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 16 02:02:24 2018 -0500

    [hdmx] Fix bounds checking

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

 src/hb-ot-hdmx-table.hh | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

commit af727b4e629f8b07d7afb809be69d053827f6a51
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 16 01:55:39 2018 -0500

    [hdmx] Minor

 src/hb-ot-hdmx-table.hh | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

commit 9e9f16c92debecb4caf533fa112898dfec116d98
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 16 01:48:26 2018 -0500

    [subset] Remove invalid glyphs from glypset to retain

    Fixes https://github.com/harfbuzz/harfbuzz/pull/1388

 src/hb-subset-plan.cc | 13 +++++++++++++
 1 file changed, 13 insertions(+)

commit 072c7aba92d3c92c84454a12578264f12439bb0d
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Nov 15 15:41:46 2018 -0800

    use 2-byte offset instead of 4-byte for local subrs

    more than enough since local subrs immediately follow its
    corresponding private dict, as the result 2-byte redunction for each
    font dict with local subrs
    updated api test expected subset fonts accordingly

 src/hb-subset-cff-common.hh                           |   4 ++--
 test/api/fonts/AdobeVFPrototype.abc.otf               | Bin 7460 ->
 7456 bytes
 test/api/fonts/AdobeVFPrototype.ac.nohints.otf        | Bin 6780 ->
 6780 bytes
 test/api/fonts/AdobeVFPrototype.ac.otf                | Bin 6996 ->
 6996 bytes
 .../fonts/SourceHanSans-Regular.41,4C2E.nohints.otf   | Bin 2380 ->
 2376 bytes
 test/api/fonts/SourceHanSans-Regular.41,4C2E.otf      | Bin 2576 ->
 2572 bytes
 test/api/fonts/SourceSansPro-Regular.abc.otf          | Bin 1812 ->
 1808 bytes
 test/api/fonts/SourceSansPro-Regular.ac.nohints.otf   | Bin 1592 ->
 1592 bytes
 test/api/fonts/SourceSansPro-Regular.ac.otf           | Bin 1708 ->
 1704 bytes
 test/api/fonts/cff1_seac.C0.otf                       | Bin 1604 ->
 1600 bytes
 10 files changed, 2 insertions(+), 2 deletions(-)

commit 9d0231cfe7c404da3b5bc360ad76180a7aded62c
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Nov 15 15:39:43 2018 -0800

    fixed a subset bug when no font dicts reduce

 src/hb-ot-cff-common.hh     | 11 +++++++++++
 src/hb-subset-cff-common.cc | 24 +++++++++++++-----------
 src/hb-subset-cff1.cc       | 27 ++++++---------------------
 src/hb-subset-cff2.cc       | 25 +++++--------------------
 4 files changed, 35 insertions(+), 52 deletions(-)

commit 11aa0468ac2c62ff734ba6b0f6eb43d1bd6f602b
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Nov 15 23:10:56 2018 +0330

    [subset] minor, adjust spaces

 src/hb-open-type.hh            |  70 ++++++------
 src/hb-ot-cmap-table.hh        | 182 +++++++++++++++----------------
 src/hb-ot-glyf-table.hh        | 242
 ++++++++++++++++++++---------------------
 src/hb-ot-hdmx-table.hh        |  20 ++--
 src/hb-ot-hmtx-table.hh        |  14 +--
 src/hb-ot-layout-common.hh     |  77 ++++++-------
 src/hb-ot-layout-gpos-table.hh |  16 +--
 src/hb-ot-layout-gsub-table.hh |   4 +-
 src/hb-ot-layout-gsubgpos.hh   |  88 +++++++--------
 src/hb-ot-os2-table.hh         |  24 ++--
 src/hb-ot-post-table.hh        |  26 ++---
 src/hb-subset-glyf.cc          | 182 +++++++++++++++----------------
 src/hb-subset-glyf.hh          |   6 +-
 src/hb-subset-input.cc         |   4 +-
 src/hb-subset-plan.cc          |  32 +++---
 src/hb-subset-plan.hh          |  12 +-
 src/hb-subset.cc               |  46 ++++----
 src/hb-subset.h                |   7 +-
 util/hb-subset.cc              |   2 +-
 19 files changed, 510 insertions(+), 544 deletions(-)

commit d7c50ff0d65192fd2b7b80704e227fa108c06de3
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Nov 15 23:10:49 2018 +0330

    [math] minor, adjust spaces

 src/hb-ot-math-table.hh | 28 ++++++++++++++--------------
 1 file changed, 14 insertions(+), 14 deletions(-)

commit 13735570f051c4131cdc481939799d76c38c758b
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Nov 15 12:10:23 2018 -0800

    reject nested seac

 src/hb-cff1-interp-cs.hh |  4 ++++
 src/hb-ot-cff1-table.cc  | 11 ++++++-----
 2 files changed, 10 insertions(+), 5 deletions(-)

commit c37aecd41c5b55e5ef496f3c4cc255a1e2ce7f9f
Merge: ecdb77f0 cabe433f
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Nov 15 11:03:46 2018 -0800

    Merge branch 'master' into cff-subset

commit ecdb77f0ae1ef9b129cf9195dbdaa9f6c4425ed5
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Nov 15 10:54:15 2018 -0800

    fixed CFF1 subset of std encoding & non-std charset combo

 src/hb-ot-cff-common.hh | 2 --
 src/hb-ot-cff1-table.hh | 2 ++
 src/hb-subset-cff1.cc   | 5 +++--
 3 files changed, 5 insertions(+), 4 deletions(-)

commit cabe433fbb81d314ad9e3cbed768dd13983a4477
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 15 02:48:50 2018 -0500

    [base] Add TODO items

 src/hb-ot-layout-base-table.hh | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

commit 3bf1ce748fa89316dd32de28bfdc636495e657fb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 14 21:08:54 2018 -0500

    [shaper] Rename

 src/hb-shape-plan.cc |  2 +-
 src/hb-shape.cc      |  2 +-
 src/hb-shaper.cc     | 16 ++++++++--------
 src/hb-shaper.hh     |  4 ++--
 4 files changed, 12 insertions(+), 12 deletions(-)

commit c221dc0ba70fd4af94d8f735a9cef1ab92cc6ede
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 14 14:49:34 2018 -0500

    [ot-shape] Move code around

 src/hb-aat-layout-common.hh |  4 ++--
 src/hb-aat-layout.cc        |  8 ++++----
 src/hb-aat-layout.hh        |  6 +++---
 src/hb-ot-layout.cc         |  2 +-
 src/hb-ot-layout.hh         |  2 +-
 src/hb-ot-shape.cc          | 44
 +++++++++++++++++++++++++++++---------------
 src/hb-ot-shape.hh          |  6 +++---
 7 files changed, 43 insertions(+), 29 deletions(-)

commit 892ab37e7c9580e35b35a4d82a99e2ea73ac7b0b
Merge: 3787c078 7867c2ba
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Nov 14 13:54:07 2018 -0800

    Merge branch 'master' into cff-subset

commit 3787c078561f1157bd04644f092c4467f63c717c
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Nov 14 13:38:03 2018 -0800

    Implemented seac for extents & subset along with API tests

 gtk-doc.make                    | 321
 +++++++++++++++++++++++++++++++++++++++-
 src/hb-cff-interp-common.hh     |   2 +-
 src/hb-cff-interp-cs-common.hh  |   7 +
 src/hb-cff1-interp-cs.hh        |  29 +++-
 src/hb-ot-cff1-table.cc         | 256 +++++++++++++++++++++++++-------
 src/hb-ot-cff1-table.hh         |  88 ++++++++---
 src/hb-subset-plan.cc           |  19 +++
 test/api/fonts/cff1_seac.C0.otf | Bin 0 -> 1604 bytes
 test/api/fonts/cff1_seac.otf    | Bin 0 -> 2260 bytes
 test/api/test-ot-extents-cff.c  |  31 ++++
 test/api/test-subset-cff1.c     |  19 +++
 11 files changed, 699 insertions(+), 73 deletions(-)

commit 7867c2bad05fe48f9e4a1b776fb7da67b747fb4e
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Nov 14 22:13:50 2018 +0330

    [STAT] Add table parsing (#1384)

 src/Makefile.sources    |   1 +
 src/hb-ot-face.hh       |   2 +
 src/hb-ot-font.cc       |   4 +-
 src/hb-ot-hmtx-table.hh |  11 +-
 src/hb-ot-stat-table.hh | 280
 ++++++++++++++++++++++++++++++++++++++++++++++++
 5 files changed, 290 insertions(+), 8 deletions(-)

commit 48d16c2ab2b181c733accd4fd9730963e59b6323
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 14 09:56:30 2018 -0500

    [hmtx] Fix signedness issue

    Fixes
    https://github.com/harfbuzz/harfbuzz/issues/1248#issuecomment-438689499

 src/hb-ot-hmtx-table.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 29db2a44a6b7a28ade5e288779dbf5a200b43acd
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Nov 14 12:13:16 2018 +0330

    [ot-color/svg] Note that it can be gzipped

 src/hb-ot-color.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a9c27d576ffe4452d1a3dae73964a8f4d6dcc088
Merge: 3c3eb5ea e543e1a0
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Nov 14 08:29:17 2018 +0330

    Merge pull request #1383 from punchcutter/master

    Add test for https://github.com/harfbuzz/harfbuzz/issues/1379

commit e543e1a0858bb5d7384d82600a789d40b62d9821
Author: punchcutter <zarijoscha@gmail.com>
Date:   Tue Nov 13 20:44:27 2018 -0800

    Add Grantha test

 .../fonts/dcf774ca21062e7439f98658b18974ea8b956d0c.ttf   | Bin 0 ->
 2568 bytes
 test/shaping/data/in-house/tests/use.tests               |   1 +
 2 files changed, 1 insertion(+)

commit 3c3eb5ea9ccf34d33e94f83b9961b3a5e903d196
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 13 21:10:10 2018 -0500

    [aat] Disable fallback mark advance zeroing and positioning if
    morx applied

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1357

 src/hb-ot-shape.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit dc4225ccd1d16a1139cbc6092353db9ed03e8980
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 13 20:48:46 2018 -0500

    Don't retry creating again and again in lazy_loader if create failed

    Still does that if get_null() returns nullptr.  Our shaper data
    objects
    are like that.  Shrug.

 src/hb-machinery.hh | 14 ++++++++++----
 1 file changed, 10 insertions(+), 4 deletions(-)

commit 086235f59310ed77542d4916d31a4285c68630ff
Merge: 2092f595 c565fc3f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 13 19:50:25 2018 -0500

    Merge pull request #1382 from punchcutter/master

    Change USE Category for Grantha Virama

commit 2092f595c7a4c591cace41cb99d31620fa6d5fa4
Merge: 475be9d5 eee5b5ed
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 13 19:49:06 2018 -0500

    Merge pull request #1380 from kbrow1i/cygwin

    Don't use Win32 API on Cygwin

commit c565fc3fb3b14c02e30af28b9d4d4289b0d2e162
Author: punchcutter <zarijoscha@gmail.com>
Date:   Tue Nov 13 12:51:10 2018 -0800

    Change USE Category for Grantha Virama
    https://github.com/harfbuzz/harfbuzz/issues/1379

 src/gen-use-table.py                 | 3 ++-
 src/hb-ot-shape-complex-use-table.cc | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

commit 475be9d5c672db6e1764d9425ed7fdaa0dff35c9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 13 13:01:13 2018 -0500

    Fix Windows build

 src/hb-atomic.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit fc44dea341f1750fec801faed66656b8a58dcded
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 13 11:54:33 2018 -0500

    Use atomic ints for upem and num_glyphs on face

 src/hb-aat-layout-lcar-table.hh |  3 ++-
 src/hb-face.cc                  | 10 +++++-----
 src/hb-face.hh                  | 24 ++++++++++++++----------
 src/hb-ot-color-sbix-table.hh   |  2 +-
 src/hb-static.cc                | 13 +++++++++----
 5 files changed, 31 insertions(+), 21 deletions(-)

commit 9579ed9755d7c3e47435c55881c9841a5f60ad7e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 13 11:45:12 2018 -0500

    Make atomic types' internal values non-mutable

    This resulted from confusion previously...

 src/hb-atomic.hh | 10 +++++-----
 src/hb-object.hh |  2 +-
 2 files changed, 6 insertions(+), 6 deletions(-)

commit c52d5bcd9405dbaa9289d720d9f0853aeac6b244
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 13 11:41:29 2018 -0500

    [ot-face] Add 'head' table

 src/hb-ot-face.hh       |  1 +
 src/hb-ot-glyf-table.hh | 11 +++--------
 src/hb-static.cc        |  5 +----
 3 files changed, 5 insertions(+), 12 deletions(-)

commit eee5b5ed04f588f618a2251397dd5b850c378627
Author: Ken Brown <kbrown@cornell.edu>
Date:   Mon Nov 12 21:05:39 2018 -0500

    Don't use Win32 API on Cygwin

    Cygwin is a Posix platform to the extent possible.  It should use the
    Posix API except in special circumstances.

 src/hb-atomic.hh                           |  2 +-
 src/hb-blob.cc                             | 10 +++++-----
 src/hb-mutex.hh                            |  2 +-
 src/hb-ot-shape-complex-arabic-fallback.hh |  2 +-
 src/hb.hh                                  |  2 +-
 5 files changed, 9 insertions(+), 9 deletions(-)

commit 56f541d0001f6d7e2e35cdd15217bdf52ebf8391
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 19:46:37 2018 -0500

    [shape-plan] Remove unused code

 src/hb-shape-plan.hh | 12 +-----------
 1 file changed, 1 insertion(+), 11 deletions(-)

commit 6c22f3fd95617a8c3cd558858c6758a0d548d370
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 19:26:01 2018 -0500

    [shape-plan] Implement fine-grained caching plans with user-features

    Only tag, value, and global-ness of features are considered, not their
    start/end offsets.

 src/hb-shape-plan.cc | 69
 ++++++++++++++++++++++++++++++----------------------
 src/hb-shape-plan.hh | 17 ++-----------
 2 files changed, 42 insertions(+), 44 deletions(-)

commit cc8428756a1b18b0445c2c5fbb38e05453693dad
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 18:48:10 2018 -0500

    [shape-plan] Cache shape plans with variations based on variation
    indices

 src/hb-aat-map.cc    |  4 +---
 src/hb-aat-map.hh    |  4 +---
 src/hb-ot-map.cc     | 18 +++++------------
 src/hb-ot-map.hh     |  6 +++---
 src/hb-ot-shape.cc   | 13 +++++--------
 src/hb-ot-shape.hh   | 28 +++++++++++++++++++++++---
 src/hb-shape-plan.cc | 55
 ++++------------------------------------------------
 src/hb-shape-plan.hh | 23 ++++++++++++++++++----
 8 files changed, 63 insertions(+), 88 deletions(-)

commit 8284cb9fb3600268e06d8a2ba8400700510de7a5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 18:18:20 2018 -0500

    [shape-plan] Refactor more

 src/hb-shape-plan.cc | 46 ++++++++++++++++++++++++++--------------------
 1 file changed, 26 insertions(+), 20 deletions(-)

commit 1082338525c96206f43785e283e41b3e959871fd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 18:05:02 2018 -0500

    [shape-plan] Only use shape-plan key to initialize hb_ot_shape_plan_t

    Such that we don't accidentally use info not in the cache key.

 src/hb-ot-shape.cc   | 25 +++++++++++--------------
 src/hb-ot-shape.hh   |  8 +++-----
 src/hb-shape-plan.cc |  7 +------
 3 files changed, 15 insertions(+), 25 deletions(-)

commit 7ac03f88a22325fb4d6b77ee7694ad11f6a99bcb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 17:50:30 2018 -0500

    [shape-plan] Minor

 src/hb-shape-plan.cc | 32 ++++++++++++++++----------------
 1 file changed, 16 insertions(+), 16 deletions(-)

commit c7be933439af1bc8251b2b19df75b42bd0f3bdb5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 17:49:15 2018 -0500

    [shape-plan] Refactor some more

 src/hb-shape-plan.cc | 147
 ++++++++++++++++++++++++++++-----------------------
 src/hb-shape-plan.hh |  15 ++++++
 2 files changed, 95 insertions(+), 67 deletions(-)

commit fc27777833e052dab91ca5777802e6c4e956deb4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 17:27:34 2018 -0500

    [shape-plan] Refactor more

 src/hb-shape-plan.cc | 44 +++++++++++++++++++++++---------------------
 1 file changed, 23 insertions(+), 21 deletions(-)

commit 566612295b7c9bc003e9f1723f2491113724b788
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 17:19:45 2018 -0500

    [shape-plan] Turn hb_shape_plan_proposal_t into hb_shape_plan_key_t

    And include it in hb_shape_plan_t itself.

 src/hb-shape-plan.cc | 206
 +++++++++++++++++++--------------------------------
 src/hb-shape-plan.hh |  27 +++----
 2 files changed, 92 insertions(+), 141 deletions(-)

commit af123bd1b814b4fb881ea3d11f1ef0bcced75942
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 16:27:08 2018 -0500

    Add hb_memcmp()

 src/hb-dsalgs.hh | 17 ++++++++++++-----
 src/hb-set.hh    |  2 +-
 2 files changed, 13 insertions(+), 6 deletions(-)

commit 65456bff37ef61094c35574a35c96f6437fd6015
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 16:15:26 2018 -0500

    [shape-plan] Minor

 src/hb-shape-plan.cc | 15 ++++++++-------
 src/hb-shape-plan.hh |  9 +++++----
 2 files changed, 13 insertions(+), 11 deletions(-)

commit 1db672a5e903de39f955e70b8814c275ccbe1b5c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 16:05:09 2018 -0500

    [shaper] Rename

 src/hb-shape-plan.cc |  2 +-
 src/hb-shape.cc      |  2 +-
 src/hb-shaper.cc     | 16 ++++++++--------
 src/hb-shaper.hh     |  4 ++--
 4 files changed, 12 insertions(+), 12 deletions(-)

commit 5212cd8af2171b9d0e9b78196e7758c37f148b80
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 14:25:18 2018 -0500

    [fuzzing] Add new test

 ...zz-testcase-minimized-hb-shape-fuzzer-5754863779053568 | Bin 0 ->
 100 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)

commit 274f4c726f461f49f54a79557d63bf95d22903cf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 14:24:36 2018 -0500

    Rename check_array2() to check_array()

 src/hb-aat-layout-kerx-table.hh | 2 +-
 src/hb-machinery.hh             | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

commit e014405a214bceff3a1ce80f0b98273c44078e82
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 14:23:31 2018 -0500

    Rename check_array(array, a, b) to check_range()

 src/hb-aat-layout-common.hh    |  8 ++++++--
 src/hb-machinery.hh            | 31 +++++++++++++++++++++++--------
 src/hb-open-type.hh            |  4 +++-
 src/hb-ot-layout-common.hh     |  5 +++--
 src/hb-ot-layout-gpos-table.hh | 11 ++++++++---
 src/hb-ot-var-hvar-table.hh    |  4 +++-
 src/hb-ot-var-mvar-table.hh    |  4 +++-
 7 files changed, 49 insertions(+), 18 deletions(-)

commit c8f4cc49272d8bcd47706a6306a625d724349f5a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 14:11:29 2018 -0500

    [kerx] Fix integer overflow in multiply

    Fixes https://oss-fuzz.com/v2/testcase-detail/5754863779053568

 src/hb-aat-layout-kerx-table.hh |  2 +-
 src/hb-machinery.hh             | 29 ++++++++++++++++-------------
 2 files changed, 17 insertions(+), 14 deletions(-)

commit 1300f027a938d8898cdc9abbcad71afadf70e6e6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 13:56:48 2018 -0500

    [kerx] Minor tweak on previous commit

 src/hb-aat-layout-kerx-table.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit d6666b3866037c9d3e8a497958af9ba8d2f47a73
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 13:21:14 2018 -0500

    [fuzzing] Remove limited-edition build of libraries

    Use normal, production, shared libraries.

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1237

 src/Makefile.am          | 31 -------------------------------
 test/fuzzing/Makefile.am | 39 +++++++++++++--------------------------
 2 files changed, 13 insertions(+), 57 deletions(-)

commit a549aa14a0b60436a16f7f8924a5b5f82b4d5b7e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 13:01:22 2018 -0500

    [kerx] Protect against stack underflow

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

 src/hb-aat-layout-kerx-table.hh                            |   2 +-
 ...uzz-testcase-minimized-hb-shape-fuzzer-5691469793329152 | Bin 0 ->
 69 bytes
 2 files changed, 1 insertion(+), 1 deletion(-)

commit 41a8bc7fd9399def8f580b02627a77f3972cc0e9
Merge: 0dfa584c 77bd0a64
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Nov 12 08:49:00 2018 -0800

    Merge branch 'master' into cff-subset

commit 0dfa584cb4af6be2852d038e9bd591f67ea9fc6e
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Nov 12 08:47:07 2018 -0800

    changed Adobe company name

 src/hb-cff-interp-common.hh      | 2 +-
 src/hb-cff-interp-cs-common.hh   | 2 +-
 src/hb-cff-interp-dict-common.hh | 2 +-
 src/hb-cff1-interp-cs.hh         | 2 +-
 src/hb-cff2-interp-cs.hh         | 2 +-
 src/hb-ot-cff-common.hh          | 2 +-
 src/hb-ot-cff1-table.cc          | 2 +-
 src/hb-ot-cff1-table.hh          | 2 +-
 src/hb-ot-cff2-table.cc          | 2 +-
 src/hb-ot-cff2-table.hh          | 2 +-
 src/hb-ot-vorg-table.hh          | 2 +-
 src/hb-subset-cff-common.cc      | 2 +-
 src/hb-subset-cff-common.hh      | 2 +-
 src/hb-subset-cff1.cc            | 2 +-
 src/hb-subset-cff1.hh            | 2 +-
 src/hb-subset-cff2.cc            | 2 +-
 src/hb-subset-cff2.hh            | 2 +-
 test/api/test-ot-extents-cff.c   | 2 +-
 test/api/test-subset-cff1.c      | 2 +-
 test/api/test-subset-cff2.c      | 2 +-
 20 files changed, 20 insertions(+), 20 deletions(-)

commit 3e284e02c2a5da758526360a45364a330b8ab8e9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 11 22:51:34 2018 -0500

    [shape-plan] Minor

 src/hb-ot-shape.cc   | 26 ++++++++++++++------------
 src/hb-ot-shape.hh   | 15 ++++++++-------
 src/hb-shape-plan.cc |  3 ++-
 3 files changed, 24 insertions(+), 20 deletions(-)

commit 420c9de6447cdb491184e7f8caf0811b0c962c05
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 11 22:38:05 2018 -0500

    [shape-plan] Minor rename

 src/hb-shape-plan.cc | 22 +++++++++++-----------
 1 file changed, 11 insertions(+), 11 deletions(-)

commit 77bd0a6458a9169df59f6be667a8eb79bd353dc9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 11 22:08:48 2018 -0500

    Add variation coords to shape_plan proposal

    This is the root cause of bug worked around in
    19e77e01bc13f44138e1d50533327d314dd0a018.

    Still no shape plan caching for variations though.

 src/hb-shape-plan.cc | 2 ++
 1 file changed, 2 insertions(+)

commit 9c767d075d0be85227b8dc146061de9bd24f3fec
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 11 22:03:15 2018 -0500

    Minor

 src/hb-shape-plan.cc | 31 +++++++++++++------------------
 1 file changed, 13 insertions(+), 18 deletions(-)

commit f521a28b4aad1566664cf14d70a911728ee0b962
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 11 21:32:01 2018 -0500

    Embed hb_ot_shape_plan_t into hb_shape_plan_t

    No other shaper will need shape_plan_data, by definition.  So, remove
    abstraction layer and always create hb_ot_shape_plan_t as part of
    hb_shape_plan_t.

 src/hb-coretext.cc       | 45 ----------------------
 src/hb-directwrite.cc    | 21 ----------
 src/hb-fallback-shape.cc | 22 -----------
 src/hb-graphite2.cc      | 22 -----------
 src/hb-ot-shape.cc       | 99
 ++++++++++++++++++++++--------------------------
 src/hb-ot-shape.hh       | 21 +++++-----
 src/hb-shape-plan.cc     | 22 ++++++-----
 src/hb-shape-plan.hh     |  3 +-
 src/hb-uniscribe.cc      | 22 -----------
 9 files changed, 70 insertions(+), 207 deletions(-)

commit fabb01210433ce1c6d5f630bc270f82a8a4a4014
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 11 17:10:23 2018 -0500

    Remove wrong comment

 src/hb-shape-plan.cc | 1 -
 1 file changed, 1 deletion(-)

commit 1fd183ee1c40e2eedf86b5e82d1b547c5650ebf5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 11 16:47:52 2018 -0500

    Finish off eecccc919ce15f60ae7ef9da5cfb311b4aa05c63

 src/hb-machinery.hh | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

commit 1beacdded9cd1e4467b52244cdfd8497516eb107
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 11 16:35:28 2018 -0500

    Minor

 src/hb-coretext.cc       | 8 ++++----
 src/hb-directwrite.cc    | 4 ++--
 src/hb-fallback-shape.cc | 4 ++--
 src/hb-graphite2.cc      | 4 ++--
 src/hb-ot-shape.cc       | 4 ++--
 src/hb-shaper.hh         | 3 ++-
 src/hb-uniscribe.cc      | 4 ++--
 7 files changed, 16 insertions(+), 15 deletions(-)

commit e88d47b7f2f9aee5b0b3cdc0b8f708884175a71f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 11 16:25:43 2018 -0500

    Minor

 src/hb-face.cc | 2 +-
 src/hb-face.hh | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 55c66c7c56c1ecd493f51fe66fd434b28addfb41
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 11 16:09:38 2018 -0500

    Revert "Declare Null() constexpr"

    This reverts commit 442a72d95ab1fb3a47b486d8d1eb68e909d0ffb8.

    Doesn't make sense.  No idea how my local compilers where happy
    with it!

 src/hb-null.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 98c6f03ccdd0630282ea0b166f66dcfb2a9c1f51
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 11 15:54:20 2018 -0500

    Minor

 src/hb-face.cc | 1 -
 1 file changed, 1 deletion(-)

commit 442a72d95ab1fb3a47b486d8d1eb68e909d0ffb8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 11 15:51:23 2018 -0500

    Declare Null() constexpr

 src/hb-null.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit eecccc919ce15f60ae7ef9da5cfb311b4aa05c63
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 11 15:48:47 2018 -0500

    Don't store to null object

    Ouch :).

 src/hb-machinery.hh | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

commit 903856ab505cbc6b756d7b904650df72e90f67a7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 11 15:45:58 2018 -0500

    Remove unused function

 src/hb-machinery.hh | 5 -----
 1 file changed, 5 deletions(-)

commit 0e0af11c62c6a55248a5d3c8868da91ef36384c5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 11 12:54:16 2018 -0500

    [hdmx] Renames

 src/hb-ot-hdmx-table.hh | 46
 +++++++++++++++++++++++-----------------------
 1 file changed, 23 insertions(+), 23 deletions(-)

commit da6aa3b0333de3f2169a5cfcb33374e1b2fe346e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 11 11:40:57 2018 -0500

    Add hb_blob_ptr_t.destroy()

 src/hb-blob.hh                 | 1 +
 src/hb-ot-cmap-table.hh        | 2 +-
 src/hb-ot-color-cbdt-table.hh  | 4 ++--
 src/hb-ot-color-sbix-table.hh  | 2 +-
 src/hb-ot-color-svg-table.hh   | 2 +-
 src/hb-ot-glyf-table.hh        | 4 ++--
 src/hb-ot-hmtx-table.hh        | 6 +++---
 src/hb-ot-layout-gdef-table.hh | 2 +-
 src/hb-ot-layout-gsubgpos.hh   | 2 +-
 src/hb-ot-name-table.hh        | 2 +-
 src/hb-ot-post-table.hh        | 2 +-
 11 files changed, 15 insertions(+), 14 deletions(-)

commit bb9abb4efd7d72198ffe8abb137ccf07ae17743e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 11 00:39:52 2018 -0500

    [hmtx/port] Use hb_blob_ptr_t

 src/hb-ot-hmtx-table.hh | 24 ++++++++++--------------
 src/hb-ot-post-table.hh | 11 +++++------
 2 files changed, 15 insertions(+), 20 deletions(-)

commit 0e2680a6e8d16afd38ffdb6e8cf244150a5e3837
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 11 00:28:47 2018 -0500

    [cmap] Port to hb_blob_ptr_t

    Although didn't need it...

 src/hb-ot-cmap-table.hh | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

commit 0b0fad3ea8888d57d1e077077f5897d1901c5371
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 11 00:26:55 2018 -0500

    [color] Port to hb_blob_ptr_t

    Fix hb_blob_ptr_t::get_length () as well.

 src/hb-blob.hh                |  2 +-
 src/hb-ot-color-cbdt-table.hh | 38 +++++++++++++-------------------------
 src/hb-ot-color-sbix-table.hh | 10 ++++------
 src/hb-ot-color-svg-table.hh  | 11 +++++------
 src/hb-ot-glyf-table.hh       | 22 ++++++++--------------
 5 files changed, 31 insertions(+), 52 deletions(-)

commit 925b7a214f06b83b6f2278052656dabc4ebdd6b7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 11 00:17:30 2018 -0500

    Comment

 src/hb-font.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit dcb63868333ba8e229fd8756377151440dd9fd23
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 11 00:16:17 2018 -0500

    [shape-plan] Remove use of custom null object

 src/hb-shape-plan.cc | 24 ------------------------
 src/hb-shape-plan.hh |  1 -
 2 files changed, 25 deletions(-)

commit 109891d49876de4de14a91adefbdf681c2b9acc2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 11 00:15:08 2018 -0500

    [shape-plan] Make null object all zeros

    To remove custom null object next..

 src/hb-shape-plan.cc | 8 ++++----
 src/hb-shape-plan.hh | 2 +-
 2 files changed, 5 insertions(+), 5 deletions(-)

commit 34185ff3bc7ece5620145fc05da07c79da950f34
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 11 00:12:30 2018 -0500

    [blob] Use default null object

 src/hb-blob.cc | 12 ------------
 src/hb-blob.hh |  1 -
 2 files changed, 13 deletions(-)

commit 2ee1d9f555fba60342bab63294a6dacca10466de
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 11 00:11:28 2018 -0500

    [blob] Change null object memory mode to DUPLICATE

    We never rely on that being equal to readonly.  Just not being
    writable.  Maybe not even that given that the object is inert.

    In prep for next commit, using default null pool.

 src/hb-blob.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 5d0078a48b246e713817e5bb6b4efada9618bea3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 10 23:52:15 2018 -0500

    Add hb_blob_ptr_t

    Use in a couple of places.  Push to bots to see how many unhappy
    before
    I convert the rest.

 src/hb-blob.hh                 | 23 +++++++++++++++++++++++
 src/hb-ot-layout-gdef-table.hh |  5 ++---
 src/hb-ot-layout-gsubgpos.hh   |  8 +++-----
 src/hb-ot-layout.cc            | 14 ++++++--------
 src/hb-ot-name-table.hh        | 12 +++++-------
 5 files changed, 39 insertions(+), 23 deletions(-)

commit e44046ec499949884b9b77c4c9937ad381386850
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 10 22:41:35 2018 -0500

    Minor

 src/hb-ot-layout.cc | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

commit 752bd8a192af209f44dacaf1d3510d0bfc6354b8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 10 21:13:13 2018 -0500

    [kerx] Fix Format1 tupleKern sanitization

    Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11312
    Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11305

 src/hb-aat-layout-kerx-table.hh                            |   6 +++---
 ...uzz-testcase-minimized-hb-shape-fuzzer-5629524117553152 | Bin 0 ->
 93 bytes
 2 files changed, 3 insertions(+), 3 deletions(-)

commit f9e0552debc45afedd86c848484bcd169af62dc2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 10 21:01:49 2018 -0500

    [fuzzing] Make "make lib" faster and more usable

 src/Makefile.am          |  2 +-
 test/fuzzing/Makefile.am | 12 +++++++-----
 2 files changed, 8 insertions(+), 6 deletions(-)

commit 4674655841bb810e7b68f03431d7b5a7c34c6f20
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 10 20:11:10 2018 -0500

    Minor

 src/hb-ot-shape-complex-arabic-fallback.hh | 3 +++
 1 file changed, 3 insertions(+)

commit a953b647507fe2ae8f5187fbfb04e69d2a2952e4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 10 20:10:03 2018 -0500

    Revert parts of previous commit that made clang unhappy

 src/hb-machinery.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 1d66cdcf770e45d995a318592352e4349faecb71
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 10 19:54:08 2018 -0500

    Better fix for MSVC 2008

    Follow up on b4c61130324455bfd42095b01fa14ac901e441f1

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1374

 src/hb-machinery.hh            | 8 ++++----
 src/hb-open-type.hh            | 8 ++++++++
 src/hb-ot-cmap-table.hh        | 4 ++--
 src/hb-ot-layout-gpos-table.hh | 4 ++--
 src/hb-ot-var-avar-table.hh    | 9 ++++-----
 5 files changed, 20 insertions(+), 13 deletions(-)

commit fb2a037f54f3cd323a447925f6534eccd1c709c1
Merge: 87984165 b4c61130
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Sat Nov 10 16:23:11 2018 -0800

    Merge branch 'master' into cff-subset

commit b4c61130324455bfd42095b01fa14ac901e441f1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 10 16:35:39 2018 -0500

    Try fixing MSVC 2008 build

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1374

 src/hb-open-type.hh | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

commit f2e942f3023e3c5cb3e732ee7b4782b3df170a85
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 10 16:11:14 2018 -0500

    Fix hb_bytes_t's unused template array constructor

 src/hb-dsalgs.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6213a75b68825037fbaf6f5ad4eef66e8bad4b3c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 10 16:09:21 2018 -0500

    Add trivial casts to hb_bytes_t

 src/hb-dsalgs.hh | 3 +++
 1 file changed, 3 insertions(+)

commit 8bb97d2ce140b7fe81d0726c32e024d887e0be1c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 10 15:54:33 2018 -0500

    Revert back hb_bytes_t.cmp() to the scheme it was

    But fix UBSan complaint.

    There's nothing in hb_bytes_t that guarantees lexical ordering, and
    ordering by length first is much faster.

 src/hb-dsalgs.hh | 13 ++++++-------
 1 file changed, 6 insertions(+), 7 deletions(-)

commit 534e1d7694c96f61e853daef481b41274d5d16d8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 10 15:43:16 2018 -0500

    Fix hb_bytes_t.cmp() for realz this time

 src/hb-dsalgs.hh | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

commit 929f07dbfc8b8c40771d27a502f6e5842c1c1e90
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 10 15:38:48 2018 -0500

    Fix hb_bytes_t.cmp()

    Ouch!

 src/hb-dsalgs.hh | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

commit 5547bfa9f2815df727fa524b0ea0f136a6f955b7
Merge: 3a9fa8c0 1d82b476
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 10 15:35:12 2018 -0500

    Merge pull request #1376 from ebraminio/minor

    [colr/feat/trak] minor

commit 1d82b4761d0a2e2e0be002e8a6bfe060f7b6dec3
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Nov 10 18:08:11 2018 +0330

    [colr/feat/trak] minor

 src/hb-aat-layout-feat-table.hh | 14 +++++++-------
 src/hb-aat-layout-trak-table.hh | 35 +++++++++++++++++++----------------
 src/hb-ot-color-colr-table.hh   | 18 ++++++------------
 3 files changed, 32 insertions(+), 35 deletions(-)

commit 3a9fa8c026bf28bf87e20ec95327f74fd7070b74
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 10 01:56:37 2018 -0500

    [qsort] Fix O(N^2) behavior if all array elements are the same

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

    Reported as https://github.com/noporpoise/sort_r/issues/7

 src/hb-dsalgs.hh                                        |  15
 +++++++++++----
 ...-testcase-minimized-hb-shape-fuzzer-5634443633491968 | Bin 0 ->
 41814 bytes
 2 files changed, 11 insertions(+), 4 deletions(-)

commit b308aaccf0773e252880b9b887f3d3d1dec00168
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 10 00:37:17 2018 -0500

    [post] Minor

 src/hb-ot-post-table.hh | 22 +++++++++-------------
 1 file changed, 9 insertions(+), 13 deletions(-)

commit 4111c3b8cd1b1c44f722877614ec1ee25111e78c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 10 00:26:36 2018 -0500

    [post] Move sanitize close to data fields

 src/hb-ot-post-table.hh | 26 +++++++++++++-------------
 1 file changed, 13 insertions(+), 13 deletions(-)

commit e26e6dbb336e48a5898738dbbd9e56e3a00b7bed
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 10 00:19:50 2018 -0500

    [post] Remove unnecessary hb_nonnull_ptr_t<>

 src/hb-ot-post-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6b8178c6499f8d0ee45a57332af778af0e48d1b5
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Nov 10 02:42:08 2018 +0330

    [glyf] minor

 src/hb-ot-glyf-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 87984165877c90bf4e0a0418a6407e44c048335d
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Nov 9 08:59:18 2018 -0800

    fixed vstem handling (lack thereof) in check_width

    bug exposed by U+2261 equivalence in SourceCodePro-Regular.otf

 src/hb-cff1-interp-cs.hh | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 5f97fe9956274d9de4e7813d7f2e850d9ffd8224
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 9 10:01:50 2018 -0500

    Fix a few MSVC 2008 warnings

    https://github.com/harfbuzz/harfbuzz/issues/1374

 src/hb-set.hh    | 4 ++--
 src/hb-vector.hh | 3 +++
 2 files changed, 5 insertions(+), 2 deletions(-)

commit f51bb6ee7bd4ebca9b432851adc527ec086360fe
Merge: 2d987110 b986fead
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 8 14:42:40 2018 -0500

    Merge pull request #1358 from ebraminio/lcar

    Hook AAT's lcar to _get_ligature_carets

commit b986fead0aee52d219ce85dd49c9109bfaf31801
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Nov 5 12:31:58 2018 +0330

    Hook AAT's lcar to _get_ligature_carets

 src/Makefile.sources               |   1 +
 src/hb-aat-layout-lcar-table.hh    |  92
 +++++++++++++++++++++++++++++++++++++
 src/hb-ot-face.hh                  |   1 +
 src/hb-ot-layout-gdef-table.hh     |   6 +--
 src/hb-ot-layout.cc                |  17 ++++---
 test/api/Makefile.am               |   1 +
 test/api/fonts/lcar.ttf            | Bin 0 -> 808 bytes
 test/api/test-ot-ligature-carets.c |  67 +++++++++++++++++++++++++++
 8 files changed, 175 insertions(+), 10 deletions(-)

commit 2d987110c067ccbf63b1399d2a87820121925e39
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Nov 8 21:46:26 2018 +0330

    [aat] Minor

 src/hb-aat-layout-just-table.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 9fae611740f514e5fc101a18c4551a20b4a47b59
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 8 12:17:09 2018 -0500

    [test/text-rendering-tests] Update from upstream

 test/shaping/data/text-rendering-tests/DISABLED          |  1 +
 test/shaping/data/text-rendering-tests/Makefile.sources  |  2 +-
 .../data/text-rendering-tests/tests/MORX-31.tests        | 16
 ++++++++--------
 3 files changed, 10 insertions(+), 9 deletions(-)

commit b989507fa6b36eb9950001d4e28f3946ffbe75f9
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Nov 8 20:48:54 2018 +0330

    [aat] Minor (#1369)

 src/hb-aat-layout-just-table.hh | 11 ++++++-----
 src/hb-aat-layout-trak-table.hh | 12 ++++++------
 2 files changed, 12 insertions(+), 11 deletions(-)

commit 26c291aaa023d31c793b6f505c76e0dd7acbff9b
Merge: 417963dd f9042384
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Nov 8 09:06:49 2018 -0800

    Merge branch 'master' into cff-subset

commit 417963dd9f93a316e672c77493e763978bfdbc28
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Nov 8 09:01:20 2018 -0800

    got rid of Remap::fullset() as incorrect, redundant, inefficient

 src/hb-ot-cff-common.hh | 22 ----------------------
 1 file changed, 22 deletions(-)

commit f90423847b07ff9c9f66be6dfa3b6071f9c7d9d3
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Nov 8 19:17:02 2018 +0330

    [just] Initial table implementation (#1364)

    A starting point, its sanitization is not tested however

 src/Makefile.sources            |   1 +
 src/hb-aat-layout-just-table.hh | 416
 ++++++++++++++++++++++++++++++++++++++++
 src/hb-aat-layout.cc            |   1 +
 3 files changed, 418 insertions(+)

commit b8b00fb3c60d23efca5720db15555c4a01c56a45
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Nov 8 18:53:14 2018 +0330

    [aat] Support Lookup<OffsetTo<>>, needed by just and lcar (#1368)

 src/hb-aat-layout-common.hh | 57
 +++++++++++++++++++++++++++++++++++++++++++++
 src/hb-open-type.hh         | 11 +++++++++
 2 files changed, 68 insertions(+)

commit 073d0a9fbcf4f9cf44878f3f91afa27615b14e5c
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Nov 8 10:59:50 2018 +0330

    [ci] minor

 .circleci/config.yml | 1 +
 1 file changed, 1 insertion(+)

commit 15326826bf20f1f3d5ef3ddde2ad17b0ccbfa605
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 21:58:04 2018 -0500

    [aat] Ignore cross-stream offset of deleted-glyphs

    I think it makes sense to accumulate it, but Ned tells me that's
    what CoreText does.

 src/hb-aat-layout.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 636a6833c57eb88ebaa92034c1f4722471f70781
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Nov 7 17:58:45 2018 -0800

    fixed ends_in_hint bug

    subr ends in hint itself should be regarded as hint
    this flag should propagate to its caller if the call itself is at
    the end of the caller

 src/hb-subset-cff-common.hh | 15 +++++++++++++--
 1 file changed, 13 insertions(+), 2 deletions(-)

commit 0bf76154f1bb15aa2fc361eb725977313f103a58
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 19:11:43 2018 -0500

    [fuzzing] Take whatever text we can

 test/fuzzing/hb-shape-fuzzer.cc | 24 +++++++++++++-----------
 1 file changed, 13 insertions(+), 11 deletions(-)

commit 517a1bac97b6273e03562deefcca129648698c31
Merge: 9d502769 b18a56a2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 18:40:48 2018 -0500

    Merge pull request #1362 from harfbuzz/cross-kern

    Vastly improve kern/kerx tables, including cross-stream "kerning"

commit b18a56a290bf5330e81019b33f15e6951dd86a8b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 18:13:22 2018 -0500

    [kerx] Comment

 src/hb-aat-layout-kerx-table.hh | 4 ++++
 1 file changed, 4 insertions(+)

commit 4d740206943ecb72e4be7cc4815e0a3aa3edaa9d
Merge: e0c30b96 9d502769
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Nov 7 15:09:30 2018 -0800

    Merge branch 'master' into cff-subset

commit e0c30b961de87d38bff8dd49e86785a5b74fcad3
Merge: 0996c0ff ae8fd0db
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Nov 7 15:08:55 2018 -0800

    merge with cff-subset branch

commit 006386be3a069199ebaf22bcc55fa7233c62e0d5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 18:04:53 2018 -0500

    [kern] Implement negative state numbers

    Let the fuzzing bots rip this code apart...

 src/hb-aat-layout-common.hh     | 90
 ++++++++++++++++++++++++++++++-----------
 src/hb-aat-layout-kerx-table.hh | 10 -----
 2 files changed, 66 insertions(+), 34 deletions(-)

commit 0996c0ff6279f377e2b14f08663df2ce82de2b14
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Nov 7 14:48:37 2018 -0800

    implented no-desubroutinize with CFF2 along with API test

    replaced AdobeVFPrototype.abc.otf with a hinted (maually) &
    subroutinized copy
    replaced expected results as well

 src/hb-cff-interp-dict-common.hh                   |   4 +-
 src/hb-cff2-interp-cs.hh                           |  16 +-
 src/hb-ot-cff-common.hh                            |  22 +--
 src/hb-subset-cff-common.hh                        |  64 +++++---
 src/hb-subset-cff2.cc                              | 180
 ++++++++++++++++++---
 test/api/fonts/AdobeVFPrototype.abc.nohints.otf    | Bin 7800 -> 0 bytes
 test/api/fonts/AdobeVFPrototype.abc.otf            | Bin 7800 ->
 7460 bytes
 test/api/fonts/AdobeVFPrototype.ac.nohints.otf     | Bin 7152 ->
 6780 bytes
 .../fonts/AdobeVFPrototype.ac.nosubrs.nohints.otf  | Bin 0 -> 6844 bytes
 test/api/fonts/AdobeVFPrototype.ac.nosubrs.otf     | Bin 0 -> 7060 bytes
 test/api/fonts/AdobeVFPrototype.ac.otf             | Bin 7336 ->
 6996 bytes
 test/api/test-subset-cff2.c                        |  51 +++++-
 12 files changed, 271 insertions(+), 66 deletions(-)

commit 29c5302376ff2bc8f04b0fc0efba3ce40ef564a7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 17:29:37 2018 -0500

    [morx] Minor

 src/hb-aat-layout-morx-table.hh | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit 385f78b3123f268e4c7ff423621e5ce9e8a5c54b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 17:19:21 2018 -0500

    [aat] Remove deleted-glyhs after applying kerx/kern

    Finally:  Fixes https://github.com/harfbuzz/harfbuzz/issues/1356

    Test case:
    $ ./hb-shape GeezaPro.ttc -u U+0628,U+064A,U+064E,U+0651,U+0629
    [u0629.final.tehMarbuta=4+713|u064e_u0651.shaddaFatha=1@0,-200+0|u064a.medial.yeh=1+656|u0628.initial.beh=0+656]

    The mark positioning (kern table CrossStream kerning) only works
    if deleted
    glyph (as result of ligation) is still in stream and pushed through
    the
    state machine.

 src/hb-aat-layout-morx-table.hh |  16 -------
 src/hb-aat-layout.cc            |  30 ++++++++++--
 src/hb-aat-layout.hh            |  12 +++--
 src/hb-ot-layout-gpos-table.hh  |   6 +--
 src/hb-ot-layout.cc             |  60 +++++++++++++++++++++--
 src/hb-ot-layout.hh             |  23 +++++----
 src/hb-ot-shape.cc              | 102
 ++++++++++++++--------------------------
 7 files changed, 142 insertions(+), 107 deletions(-)

commit 1909072235e59eb80f9169300279b65779b932a4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 16:42:16 2018 -0500

    [aat] Add debug info to state machine

 src/hb-aat-layout-common.hh | 3 +++
 1 file changed, 3 insertions(+)

commit ca23567f41a2d6389f6fd2483a994cf5aa6aeaf8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 16:19:51 2018 -0500

    Disable fallback mark positioning if kern table has cross-stream
    kerning

    Happens even if the cross-stream kerning is for cursive attachment
    only.  Oh well..

 src/hb-ot-layout.cc |  6 ++++++
 src/hb-ot-layout.hh |  3 +++
 src/hb-ot-shape.cc  | 14 ++++++--------
 src/hb-ot-shape.hh  |  2 +-
 4 files changed, 16 insertions(+), 9 deletions(-)

commit 5cf6f94dfd30a468ab8464435e846811c39d9226
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 16:07:22 2018 -0500

    Don't apply both kerx and kern

    Ouch!

 src/hb-ot-shape.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 41cff7afc916048810a7ea4aa33ecdee7401df74
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 16:05:36 2018 -0500

    Minor

 src/hb-ot-shape.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 9af983af24788afad4b37bd2297b86cdca7c5c29
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 16:03:09 2018 -0500

    [kern] Switch to dispatch

 src/hb-aat-layout-kerx-table.hh |  7 +++++--
 src/hb-ot-kern-table.hh         | 28 +++++++++++++++-------------
 src/hb-ot-layout.cc             |  6 ++----
 3 files changed, 22 insertions(+), 19 deletions(-)

commit bc06e2805ae55f5c152dfb70ee91c75830ad8f54
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 16:02:40 2018 -0500

    [kerx/kern] Add has_cross_stream()

 src/hb-aat-layout-kerx-table.hh | 15 +++++++++++++++
 src/hb-ot-kern-table.hh         |  9 +++++++++
 2 files changed, 24 insertions(+)

commit ea579f9ccc87718d4c2ca8945a997e6679428a12
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 15:44:40 2018 -0500

    [kerx] Fix peculiar indexing that was needed previously

    Not needed now that we use GPOS attachment for cursive kerx.

 src/hb-aat-layout-kerx-table.hh | 20 +++++++-------------
 1 file changed, 7 insertions(+), 13 deletions(-)

commit 6ee6cd93d8c61389cf242e42a531cc6e7214b21a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 15:40:55 2018 -0500

    [GPOS] Only mark unsafe-to-break if kerning happened

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1365

 src/hb-ot-layout-gpos-table.hh | 56
 ++++++++++++++++++++++++------------------
 1 file changed, 32 insertions(+), 24 deletions(-)

commit 501a364d9bb6c5828f9d660bae8b6e93b158b275
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 15:02:16 2018 -0500

    [GPOS] Add TODO item

 src/hb-ot-layout-gpos-table.hh | 2 ++
 1 file changed, 2 insertions(+)

commit 7a9629f2f11a11d1c064662a08a0172ac2001668
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 14:52:36 2018 -0500

    [kerx] Implement CrossStream kerning for non-state-machine subtables

    Untested.

 src/hb-aat-layout-kerx-table.hh | 12 ++++++------
 src/hb-kern.hh                  | 43
 +++++++++++++++++++++++++++++------------
 src/hb-ot-kern-table.hh         |  4 ++--
 3 files changed, 39 insertions(+), 20 deletions(-)

commit 0eb4157011e78c332d781e28b54b020aa08957c0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 14:42:15 2018 -0500

    [kerx] Disable backwards-kerning for non-state-machine tables

    That's what the spec says for Backwards flag, only applicable to
    formats 1 and 4.

 src/hb-aat-layout-kerx-table.hh | 8 +++-----
 src/hb-ot-kern-table.hh         | 2 +-
 2 files changed, 4 insertions(+), 6 deletions(-)

commit b2f687c2569a3cc0b1cd0335c5ca0f8d193f8a39
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 14:38:29 2018 -0500

    [kerx] Use GPOS attachment facilities for CrossStream kerning

 src/hb-aat-layout-kerx-table.hh | 51
 ++++++++++++++++++++++++++++-------------
 1 file changed, 35 insertions(+), 16 deletions(-)

commit e10a856eb24ae45e301c3ffa778caa4c0a995bb9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 14:11:48 2018 -0500

    [kerx] Format

 src/hb-aat-layout-kerx-table.hh | 58
 ++++++++++++++++++++---------------------
 1 file changed, 28 insertions(+), 30 deletions(-)

commit 649cc3ef2773950b0b5884d9d1caf414aac888bf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 14:04:04 2018 -0500

    [kerx] Don't disable crossKerning if kern feature is off

 src/hb-aat-layout-kerx-table.hh | 9 +++++----
 src/hb-ot-shape.cc              | 2 +-
 2 files changed, 6 insertions(+), 5 deletions(-)

commit 0c3b061ac244fa8a8657366e1b95523503fdf7be
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 13:58:41 2018 -0500

    [kern] Apply erlier, where GPOS/kerx are applied

 src/hb-aat-layout-kerx-table.hh |  3 +--
 src/hb-ot-shape-fallback.cc     |  9 +++++++++
 src/hb-ot-shape.cc              | 12 +++++-------
 3 files changed, 15 insertions(+), 9 deletions(-)

commit f4bad0086e40c70d66d6514f038ddda1411657c8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 13:51:17 2018 -0500

    [kerx] Implement tupleKerning for Format1

    Untested.

 src/hb-aat-layout-kerx-table.hh | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

commit 39b4ef6f18605e85c68cbcec534e137fc831dbca
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 13:48:45 2018 -0500

    [kerx] Better sanitize tupleKerning

 src/hb-aat-layout-kerx-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 14772da06f9c67d0d40712369e26064e3dee2a91
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 13:40:22 2018 -0500

    [kern/kerx] Share KernTable, renamed to KerxTable

 src/hb-aat-layout-kerx-table.hh |  77 ++++++++++++++++++++++--------
 src/hb-ot-kern-table.hh         | 103
 ++--------------------------------------
 2 files changed, 61 insertions(+), 119 deletions(-)

commit c038f5be6b70b8edffc701dd3e4e3cd08d14e2f0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 13:35:06 2018 -0500

    [fallback] Minor

 src/hb-ot-shape-fallback.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit db6e658e8c0c4953c2f026f6a67a5d2fb4bdc204
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 13:33:23 2018 -0500

    [kern/kerx] More towards sharing KernTable

 src/hb-aat-layout-kerx-table.hh | 48 ++++++++++++++++++---------------
 src/hb-ot-kern-table.hh         | 59
 ++++++++++++++++++++++++++++-------------
 2 files changed, 67 insertions(+), 40 deletions(-)

commit 89ec095979bde94bd203ed2c394f6e40629e9e78
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 13:10:05 2018 -0500

    [kern] Disable Format1 and Format3 for OT-style tables

 src/hb-ot-kern-table.hh | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit ab57bcae0fd4505c80bb4ccdef6838bb2805ce79
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 13:04:21 2018 -0500

    [kern] Minor

 src/hb-ot-kern-table.hh | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

commit 30af5b4a4c2071599dc87bc092a7329befcc45cc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 12:57:10 2018 -0500

    [kern] Move code

 src/hb-ot-kern-table.hh | 118
 +++++++++++++++++++++++++-----------------------
 1 file changed, 62 insertions(+), 56 deletions(-)

commit 1ff300464a1075b8cd5311970afbbcf4bb3b6f3d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 12:51:49 2018 -0500

    [kern] Massage more

 src/hb-ot-kern-table.hh | 15 +++++++--------
 1 file changed, 7 insertions(+), 8 deletions(-)

commit 8e9f6cd0fddd572e048487aae3141d3dbb1b99cb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 12:49:20 2018 -0500

    [kerx] More minor

 src/hb-aat-layout-kerx-table.hh | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

commit f8c3df7d4a685bb86a1c15a5ef95485e8ef30305
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 12:48:06 2018 -0500

    [kern/kerx] Minor

 src/hb-aat-layout-kerx-table.hh |  5 +++--
 src/hb-ot-kern-table.hh         | 19 ++++++++++---------
 2 files changed, 13 insertions(+), 11 deletions(-)

commit f5e0a63a22f91720a997f5070b84e982e57de661
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 12:32:39 2018 -0500

    [kern/kerx] Towards sharing KernTable

 src/hb-aat-layout-kerx-table.hh |  4 ++--
 src/hb-ot-kern-table.hh         | 19 +++++++------------
 2 files changed, 9 insertions(+), 14 deletions(-)

commit 330508497d301c0ba5d5fb5d0900b62c191aabb5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 12:27:44 2018 -0500

    [kern/kerx] Minor

 src/hb-aat-layout-kerx-table.hh | 2 +-
 src/hb-ot-kern-table.hh         | 5 +++--
 2 files changed, 4 insertions(+), 3 deletions(-)

commit 1a5ef8490034f4bd8965a3c71d34a5930ebe11b7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 12:19:52 2018 -0500

    [kern/kerx] Share Format2

    This, enables Format2 for kern table, which was disabled before.

 src/hb-aat-layout-kerx-table.hh |  6 ++++
 src/hb-ot-kern-table.hh         | 73
 +----------------------------------------
 2 files changed, 7 insertions(+), 72 deletions(-)

commit 8faec4e33486616fdc0d690ad80d4a38a73c8182
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 12:16:38 2018 -0500

    [kerx] Towards merging Format2

 src/hb-aat-layout-kerx-table.hh | 17 ++++++++++-------
 1 file changed, 10 insertions(+), 7 deletions(-)

commit ae8fd0dbfb57afadfe815c5bde4ad4a6485fd950
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Nov 7 09:16:12 2018 -0800

    clear stack after vsindex op

 src/hb-cff2-interp-cs.hh | 1 +
 src/hb-ot-cff2-table.hh  | 1 +
 2 files changed, 2 insertions(+)

commit 7fed7d80f72b35900b41878ae59e38fd1cb49dc8
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Nov 7 09:09:13 2018 -0800

    fixed off-by-one error in CFF1 Encoding lookup

 src/hb-ot-cff1-table.hh | 4 ++++
 1 file changed, 4 insertions(+)

commit d5c0ca210fef315fd039e5b1825a865f36606a3f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 12:08:44 2018 -0500

    [aat] Minor

 src/hb-aat-layout-common.hh | 16 ++++++++++------
 src/hb-ot-kern-table.hh     |  4 ++--
 2 files changed, 12 insertions(+), 8 deletions(-)

commit e72e041c3cda164b2ffb02d770b35d0d70954818
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 11:56:36 2018 -0500

    [kerx] Rename

 src/hb-aat-layout-kerx-table.hh | 22 +++++++++++-----------
 1 file changed, 11 insertions(+), 11 deletions(-)

commit 241ba7da518adee334fff105ae19dfb051868a57
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 11:51:40 2018 -0500

    [morx/kerx] Rename types

 src/hb-aat-layout-common.hh     |  4 ++--
 src/hb-aat-layout-kerx-table.hh | 17 +++++++++--------
 src/hb-aat-layout-morx-table.hh |  4 ++--
 src/hb-ot-kern-table.hh         |  4 ++--
 4 files changed, 15 insertions(+), 14 deletions(-)

commit c808e444da12840ac3ab1d78569504b9b7e876f9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 11:28:36 2018 -0500

    [kern/kerx] Share Format1 subtable

 src/hb-aat-layout-kerx-table.hh |   9 +-
 src/hb-ot-kern-table.hh         | 187
 +---------------------------------------
 2 files changed, 4 insertions(+), 192 deletions(-)

commit a244190afa90ac253724a2ff23a3bdf0c507d0e6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 11:43:25 2018 -0500

    [kerx] Minor

 src/hb-aat-layout-kerx-table.hh | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 2a720911964a00ad607ff712be09ea3ea0925c9b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 11:25:55 2018 -0500

    [kerx] Minor

 src/hb-aat-layout-kerx-table.hh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit f5f4ca7871ec2be2b5666a7b9e6e5e28133b8393
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 11:21:09 2018 -0500

    [kern/kerx] Enable crossStream kerning in vertical

    CoreText doesn't, but no reason we shouldn't do.

 src/hb-aat-layout-kerx-table.hh | 8 ++++----
 src/hb-ot-kern-table.hh         | 8 ++++----
 2 files changed, 8 insertions(+), 8 deletions(-)

commit d5c88af4a23bffc09840c43e6b1403b64a9f74d5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 11:20:14 2018 -0500

    [kerx] More towards sharing Format1

 src/hb-aat-layout-kerx-table.hh | 35 +++++++++++++++++++++++++++++++----
 src/hb-aat-layout-morx-table.hh | 10 ++++++----
 2 files changed, 37 insertions(+), 8 deletions(-)

commit b693fd0dc6c7979dcacdff060ecf12a2e107071d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 11:05:28 2018 -0500

    [morx] Simplify

 src/hb-aat-layout-morx-table.hh | 27 +++++++++++----------------
 1 file changed, 11 insertions(+), 16 deletions(-)

commit ce3451dc2aad2241c148953842e696e9f53b5deb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 11:02:04 2018 -0500

    [kerx] Towards sharing Format1

 src/hb-aat-layout-kerx-table.hh | 61
 +++++++++++++++++++++++++++++++----------
 1 file changed, 47 insertions(+), 14 deletions(-)

commit e890753ebbf0d20c1c86796837918d530610df3b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 10:58:50 2018 -0500

    [morx] Minor

 src/hb-aat-layout-morx-table.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 5b17853547ca6848ee652ef6990a81bb345ac06f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 10:45:25 2018 -0500

    [kern/kerx] Share Format0

 src/hb-aat-layout-kerx-table.hh | 22 +++++++++++++-----
 src/hb-ot-kern-table.hh         | 50
 ++++++-----------------------------------
 2 files changed, 23 insertions(+), 49 deletions(-)

commit c97dde5d55929df394fbe57c1ba1a725592c6732
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 10:39:39 2018 -0500

    [kern/kerx] Towards merge more

 src/hb-aat-layout-kerx-table.hh | 75
 ++++++++++++++++++++++++++++++-----------
 src/hb-kern.hh                  | 33 ------------------
 src/hb-ot-kern-table.hh         |  7 ++--
 3 files changed, 58 insertions(+), 57 deletions(-)

commit 540ccc38b0f95804d08047f8b2d059bfd1e09337
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 10:33:46 2018 -0500

    [kern/kerx] More towards sharing

 src/hb-aat-layout-kerx-table.hh |  7 ++++---
 src/hb-ot-kern-table.hh         | 10 +++++++---
 2 files changed, 11 insertions(+), 6 deletions(-)

commit d0f8f4c200670bc0bfbffbf301139a3613865a7f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 10:25:25 2018 -0500

    [kern] Move kern machine to hb-kern.hh

 src/Makefile.sources            |   1 +
 src/hb-aat-layout-kerx-table.hh |   5 +-
 src/hb-kern.hh                  | 153
 ++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-kern-table.hh         | 115 +-----------------------------
 src/hb-ot-shape-fallback.cc     |   2 +-
 5 files changed, 157 insertions(+), 119 deletions(-)

commit a6acff252c72457ecfa856fd6c57081b3a4290dd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 10:19:46 2018 -0500

    [kerx] Towards sharing subtables with kern

 src/hb-aat-layout-kerx-table.hh | 41
 +++++++++++++++++++++++------------------
 1 file changed, 23 insertions(+), 18 deletions(-)

commit befac337ca2c705e2cea60a9a92e40e0dbbc40aa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 09:53:02 2018 -0500

    [kern] Remove Override business

    Not used in any fonts.  Not well-specified when mixing kerning with
    Cross-Stream positioning.

 src/hb-ot-kern-table.hh | 16 ----------------
 1 file changed, 16 deletions(-)

commit 9d5027696e418b7c2a5ccbc18faafe6b9290d08b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 09:16:53 2018 -0500

    [post] Return true on truncation

    Client can check that buffer was completely filled out and reallocate.

 src/hb-ot-post-table.hh | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

commit 7d91f07edf29c4923716af6cee8eb94f948ac91f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 09:14:42 2018 -0500

    [post] Protect against huge empty tables

 src/hb-ot-post-table.hh | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 5ed816ab5900ac4ff7feca3d98cbd92e62fd1754
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 09:13:51 2018 -0500

    [post] Minor

 src/hb-ot-post-table.hh | 4 ++++
 1 file changed, 4 insertions(+)

commit 64f0becd89cc2b0136c7dc1609abc9f957525cf8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 09:10:55 2018 -0500

    [post] Fix bound checking

 src/hb-ot-post-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 7ec694ddf25a313483044256f7ed88b644432e15
Author: HinTak <htl10@users.sourceforge.net>
Date:   Wed Nov 7 13:19:36 2018 +0000

    Use non-GRID-fitted values for metrics (#1363)

    * Use non-GRID-fitted values for metrics

    See freetype/src/base/ftobjs.c:ft_recompute_scaled_metrics() and
    the usage of GRID_FIT_METRICS inside.

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

    * Update hb-ft.cc

 src/hb-ft.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 59e04e42312293c30714a666c4479e209aec3c0e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 00:25:48 2018 -0500

    [kern/kerx] Fix cursive joining

    Tested with Waseem TTC:

    $ hb-shape Waseem.ttc جحخج
    [F1Jeem_R2=3@0,180+479|M1Khah_L2_R2=2@0,682+403|M1Hah_L2_R2=1@0,1184+403|I1Jeem_L2=0@0,1184+744]

 src/hb-aat-layout-kerx-table.hh | 2 ++
 src/hb-ot-kern-table.hh         | 2 ++
 2 files changed, 4 insertions(+)

commit 8d0f797139e853d13cb2383d541c2e691d9dbae3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 7 00:04:40 2018 -0500

    [kern/kerx] Fix "reset" magic value

 src/hb-aat-layout-kerx-table.hh | 2 +-
 src/hb-ot-kern-table.hh         | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 0123976a0c1e2f629252969a7ff632dc2b1dbbc9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 6 21:45:40 2018 -0500

    [kerx] Adjust CrossStream kern to match 'kern' table

 src/hb-aat-layout-kerx-table.hh | 62
 +++++++++++++++++++++++++++++++----------
 1 file changed, 48 insertions(+), 14 deletions(-)

commit 80a33b9ac351d81793f35a92e0255ffbf5ceb8b9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 6 21:41:28 2018 -0500

    [kern] More tweaks

    Solves a mystery or two.  I'm fairly confident this is what CoreText
    does now.

 src/hb-ot-kern-table.hh | 40 ++++++++++++++++++++++------------------
 1 file changed, 22 insertions(+), 18 deletions(-)

commit 564e8ac0465d8ced3a98ecb55d09ffaa45eefc2f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 6 21:04:40 2018 -0500

    [kern] Adjust some more

    Getting closer.  So many open questions still...

 src/hb-ot-kern-table.hh | 36 ++++++++++++++++++++++--------------
 1 file changed, 22 insertions(+), 14 deletions(-)

commit 4d003b8503f9c984abe2ac0de8c526a276ea8e54
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 6 21:04:02 2018 -0500

    [kern] Add TODO

 src/hb-ot-kern-table.hh | 9 +++++++++
 1 file changed, 9 insertions(+)

commit 9810f0b80e5b6580a7a15debcec073dfc9ca759f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 6 19:24:04 2018 -0500

    [kern] Minor

 src/hb-ot-kern-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9c04b6058306cd4b2123a33a7cbeb47505434217
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 6 18:35:58 2018 -0500

    [kern] In Format1, adjust how kerning is done

    In a series of kerns in one action, kern all but last glyph forward,
    and the last one backward.  Seems to better match what CoreText
    is doing.

    Test cases, with GeezaPro Arabic:

    $ ./hb-shape GeezaPro_10_10.ttc -u U+0631,U+0628
    [u0628.beh=1+1415|u0631.reh=0@-202,0+700]

    $ ./hb-shape GeezaPro_10_10.ttc -u U+0628,U+064F
    [u064f.damma=0@0,-250+-250|u0628.beh=0@250,0+1665]

    In a later change, I'll make kern machine avoid producing negative
    kerns.

 src/hb-ot-kern-table.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit e8c47724638c29d78001905610c662de99c59cad
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 6 17:16:04 2018 -0500

    [kern] XXX Negate CrossKerning sign

    Not sure why, but seems to better match GeezaPro Arabic w CoreText.

    Quite possibly I'm doing something very wrong...

 src/hb-ot-kern-table.hh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 01bf43ac01576a6415336cc56c74bb1a872566d1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 6 14:48:42 2018 -0500

    [kern] Implement CrossStream kerning

 src/hb-aat-layout-kerx-table.hh | 75
 ++++++++++++++++++++++++++---------------
 src/hb-ot-kern-table.hh         | 63 ++++++++++++++++++++++++++++------
 2 files changed, 101 insertions(+), 37 deletions(-)

commit b11830c09e0d78bbdaf86ef02191d00b3d8256c4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 6 15:23:18 2018 -0500

    [kern] Improve Format 2

    Still disabled.

 src/hb-aat-layout-common.hh | 20 +++++++++-----------
 src/hb-ot-kern-table.hh     | 35 ++++++-----------------------------
 2 files changed, 15 insertions(+), 40 deletions(-)

commit c0383c6bb725bed2a48485988a427348384f3f87
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 6 15:07:19 2018 -0500

    Minor

 src/hb-aat-layout-common.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 10e6f708f30986bab9f7b506935f2555d6b79ff4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 6 13:32:13 2018 -0500

    [kern] Minor

 src/hb-ot-kern-table.hh | 30 +++++++++++-------------------
 1 file changed, 11 insertions(+), 19 deletions(-)

commit 164eedd9181345d84d5f8059475ad4b97784fd46
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 6 13:18:27 2018 -0500

    [kern] Minor

 src/hb-ot-kern-table.hh | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

commit 220a5991baa213b7bd173ea02090dc6fc8aef655
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 6 13:51:39 2018 -0500

    [kern/kerx] Fix trace numbering

 src/hb-aat-layout-kerx-table.hh | 1 +
 src/hb-ot-kern-table.hh         | 1 +
 2 files changed, 2 insertions(+)

commit 7b21319edfd6531a444846f71e87303bc09f4621
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Nov 6 13:59:07 2018 -0800

    don't reject empty Dict

 src/hb-cff-interp-dict-common.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 43ee0e4d006ce7b4ade4483f2c8ec3d39723fc94
Merge: ec6817c1 bfafe208
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Nov 6 09:57:17 2018 -0800

    Merge branch 'master' into cff-subset

commit bfafe208da11817b5ebf3751f02af2dcdf57bd19
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 6 12:11:45 2018 -0500

    [kern] Switch to dispatch

 src/hb-aat-layout-kerx-table.hh | 12 ++++++------
 src/hb-ot-kern-table.hh         | 31 +++++++++++++++----------------
 2 files changed, 21 insertions(+), 22 deletions(-)

commit 213fa3bf711dae5028e3d041e305cdd35223de77
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 6 12:07:15 2018 -0500

    [kern] Refactor to include header in each subtable type

 src/hb-ot-kern-table.hh | 189
 +++++++++++++++++++++++-------------------------
 1 file changed, 91 insertions(+), 98 deletions(-)

commit b0da2cd0b9c1346b7cda5997fb799e895e34aace
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 6 11:16:45 2018 -0500

    [kern] Some more

 src/hb-ot-kern-table.hh | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

commit 75b00b51c8fca5d605c479333eb3abd608623613
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 6 11:13:40 2018 -0500

    [kern] Renames

 src/hb-ot-kern-table.hh | 20 +++++++++-----------
 1 file changed, 9 insertions(+), 11 deletions(-)

commit 5c3ccbc634158ba9f84d365c9a31a596f6d8825b
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Tue Nov 6 18:10:56 2018 +0200

    Another missing backlash

    Did this ever work?

 test/api/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit d29602b962c13836f4c0d46796bc693f66f9b9fe
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Tue Nov 6 18:07:47 2018 +0200

    Add missing backslash

 test/api/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9bddfde25dc8c302c765a1e9a8a2c38c4a836e2e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 6 11:03:34 2018 -0500

    [util] Fix up previous commit

 util/options.cc | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

commit 3ec2e4fa7bec07ec181a0390e5f5fd695abee611
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 6 10:49:19 2018 -0500

    [util] Don't terminate string after a a 0 in -u

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1361

 util/options.cc | 4 +++-
 util/options.hh | 2 ++
 2 files changed, 5 insertions(+), 1 deletion(-)

commit 8790b2740a334f1789fb0cf329f2b8ac9733793c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 6 10:24:54 2018 -0500

    [fuzzing] Fix test

 test/fuzzing/hb-shape-fuzzer.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 3af0a7edd0c99aaef846ae787056d7664bc69d35
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 6 10:20:57 2018 -0500

    [fuzzing] Add make check-valgrind

 test/fuzzing/Makefile.am | 2 ++
 1 file changed, 2 insertions(+)

commit b062378ce640eb418cb413b595b79cc81a193209
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 6 10:20:36 2018 -0500

    [test] Minor

 test/api/.valgrind-suppressions | 0
 test/api/Makefile.am            | 2 +-
 2 files changed, 1 insertion(+), 1 deletion(-)

commit 37f421c951c853dff165df6731d0ab9c46350790
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 6 10:03:38 2018 -0500

    Minor

 src/hb-ot-layout.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b6112e5ea4d08fcbfa8f7cb4ef3903514a6e99f3
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Nov 6 11:42:47 2018 +0330

    [test] Fix -Weverything bot complain

 test/api/test-ot-name.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a49df419f04b4065fc7f70a77c5cbc453e6ba906
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Nov 6 11:26:30 2018 +0330

    [test] Test hb_ot_name_{list_names,get_utf8} on test-ot-name

 test/api/test-ot-name.c | 27 ++++++++++++++++++++++++---
 1 file changed, 24 insertions(+), 3 deletions(-)

commit 9139cc23ea9fb339be9426860e0c72038d32a2ab
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Nov 6 11:17:14 2018 +0330

    Fix link issue of some of the bots

    e.g. https://circleci.com/gh/harfbuzz/harfbuzz/52410

 src/hb-ot-layout.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 98b37f0c109d0f7454e91c9563c56d1903d6d496
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Nov 6 09:16:28 2018 +0330

    [mort] Fix table detection logic

    mort really needs some initial tests at least.

 src/hb-aat-layout.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit fa3ebf845fcffa827600fc4ca9fdde3aaa99f4c5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 5 23:34:07 2018 -0500

    Simplify some more

 src/hb-aat-layout.cc | 10 +++++-----
 src/hb-ot-layout.cc  |  2 +-
 2 files changed, 6 insertions(+), 6 deletions(-)

commit 61f52231f430c72e1b66b76dabb018cfe45a01d5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 5 23:28:52 2018 -0500

    [math] Shorten names a bit

 src/hb-ot-math-table.hh |  4 ++--
 src/hb-ot-math.cc       | 33 +++++++++++++++++++--------------
 2 files changed, 21 insertions(+), 16 deletions(-)

commit 737efbe65583a71d7df9ae7b423d9fb1d68599b7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 5 23:26:29 2018 -0500

    [ot-layout] Simplify GSUB/GPOS access

    This concludes simplifying table access to face->table.XXXX.

 src/hb-ot-layout.cc | 31 +++++++++++++------------------
 1 file changed, 13 insertions(+), 18 deletions(-)

commit 5e68cec17913e9f6e98e5017a56c78a5614e4030
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 5 23:23:57 2018 -0500

    [ot-layout] Simplify GDEF access

 src/hb-ot-layout.cc | 44 ++++++++++++++++----------------------------
 1 file changed, 16 insertions(+), 28 deletions(-)

commit 33b006cc51b0d27cbe1d8ed498bbf2b548cb6554
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 5 23:19:04 2018 -0500

    [ot-layout] Simplify some access

 src/hb-ot-layout-gdef-table.hh |  2 +-
 src/hb-ot-layout-gpos-table.hh |  9 +++++----
 src/hb-ot-layout-gsub-table.hh |  9 +++++----
 src/hb-ot-layout-gsubgpos.hh   |  2 +-
 src/hb-ot-layout.hh            | 12 +-----------
 5 files changed, 13 insertions(+), 21 deletions(-)

commit db35409f0db9faf91a10defc81e4d6d60dc7822a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 5 23:11:46 2018 -0500

    [ot-layout] Remove ensures

 src/hb-ot-layout.cc | 14 ++++----------
 1 file changed, 4 insertions(+), 10 deletions(-)

commit 9198de7b9b6020c1e3d6a48783e36db7e1f7e99a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 5 23:10:37 2018 -0500

    [ot-font] Remove ensure

 src/hb-ot-font.cc | 1 -
 1 file changed, 1 deletion(-)

commit ea6d9b661fc3cf6bc4366feeb7694c0b712abfae
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 5 23:09:29 2018 -0500

    [ot-face] Remove a few ensures

 src/hb-face.cc | 3 ---
 1 file changed, 3 deletions(-)

commit 0fe7a745c9a323a3fc76beb011b6ab8919cf905b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 5 23:08:33 2018 -0500

    [ot-face] Simplify more table access

 src/hb-face.cc      |  6 +++---
 src/hb-ot-face.hh   |  3 ---
 src/hb-ot-font.cc   |  4 +---
 src/hb-ot-layout.cc | 34 +++++++++++++++++-----------------
 4 files changed, 21 insertions(+), 26 deletions(-)

commit a35c92cbe771a75df40412fd248ad06f6a0cfebf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 5 22:58:43 2018 -0500

    [ot-face] Simplify table access

    Yoohoo!

 src/hb-aat-layout.cc | 107
 ++++++++++-----------------------------------------
 src/hb-ot-color.cc   |  66 ++++++++-----------------------
 src/hb-ot-layout.cc  |  20 ++--------
 src/hb-ot-math.cc    |  47 ++++++++--------------
 src/hb-ot-name.cc    |  11 +-----
 src/hb-ot-var.cc     |  33 ++++------------
 6 files changed, 64 insertions(+), 220 deletions(-)

commit 914b595f2598d5bdb2c750832d567a57d45db84e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 5 22:39:50 2018 -0500

    [ot-face] Include hb-ot-face directly in hb_face_t

    Simplifying access coming next.

 src/hb-face.cc     |  4 ++++
 src/hb-face.hh     |  3 +++
 src/hb-ot-face.cc  | 24 ++----------------------
 src/hb-ot-face.hh  | 39 +++++++++++++++------------------------
 src/hb-ot-font.cc  | 24 ++++++++++++------------
 src/hb-ot-math.cc  |  3 +--
 src/hb-ot-shape.cc |  5 +++--
 7 files changed, 40 insertions(+), 62 deletions(-)

commit 56ba998cddbb2ba5d24fb0b02d2bf77a46c0f23f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 5 19:49:54 2018 -0500

    [cmap] Push get_nominal_glyphs down into cmap accelerator

 src/hb-ot-cmap-table.hh | 21 +++++++++++++++++++++
 src/hb-ot-font.cc       | 13 +++----------
 2 files changed, 24 insertions(+), 10 deletions(-)

commit 36d85dce25abd079252d973f804220bf7b97e987
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 5 19:46:29 2018 -0500

    [cmap] Use hb_nonnullptr_t

 src/hb-ot-cmap-table.hh | 34 ++++++++++++++--------------------
 1 file changed, 14 insertions(+), 20 deletions(-)

commit 8be74d85534534dbdd39a0a6f496e26e9f3e661d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 5 18:47:22 2018 -0500

    2.1.1

 NEWS             | 8 ++++++++
 configure.ac     | 2 +-
 src/hb-version.h | 4 ++--
 3 files changed, 11 insertions(+), 3 deletions(-)

commit 6482fda519ca7d173e3bcb3717aa30e237f04b25
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 5 15:03:18 2018 -0500

    [fuzzing] Fuzz glyph-id etc in test-ot-face

 test/api/test-ot-face.c         | 57
 +++++++++++++++++++++--------------------
 test/fuzzing/hb-shape-fuzzer.cc | 19 +-------------
 2 files changed, 30 insertions(+), 46 deletions(-)

commit 252632c477b963f305116d69fcafacd8bf7b97bf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 5 14:33:41 2018 -0500

    [uniscribe] Fix use of deprecated API

 src/hb-uniscribe.cc | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

commit bb380ec18394b2c581b672ecbf98991e14897f2e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 5 13:45:12 2018 -0500

    [cmap] Make null accelerator safe

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1146

 src/hb-ot-cmap-table.hh | 50
 ++++++++++++++++++++++++-------------------------
 1 file changed, 25 insertions(+), 25 deletions(-)

commit f6fc5574d3dae177a54b10195e0d1f368a74f768
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 5 13:23:54 2018 -0500

    Add pointer magic operators to hb_atomic_ptr_t

 src/hb-atomic.hh                  | 3 +++
 src/hb-common.cc                  | 6 +++---
 src/hb-face.cc                    | 2 +-
 src/hb-graphite2.cc               | 8 ++++----
 src/hb-machinery.hh               | 1 +
 src/hb-ot-shape-complex-arabic.cc | 4 ++--
 src/hb-shape-plan.cc              | 2 +-
 7 files changed, 15 insertions(+), 11 deletions(-)

commit f6e7cb51b13aabb447dc97a59602d65eb42edc4b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 5 13:23:07 2018 -0500

    Fix const-confusion in hb_array_t as well

 src/hb-dsalgs.hh | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

commit 0da22fb0ada8a54fc59739057f281a406a993212
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 5 13:13:39 2018 -0500

    [null] Tweak hb_nonnull_ptr_t some more

 src/hb-null.hh | 18 ++++++------------
 1 file changed, 6 insertions(+), 12 deletions(-)

commit 03348ce0051cfae7172ac0d09b83ed5f82fa842a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 5 12:59:32 2018 -0500

    Minor

 src/hb-aat-layout.cc | 12 ++++++------
 src/hb-ot-color.cc   | 10 +++++-----
 src/hb-ot-font.cc    | 18 +++++++++---------
 src/hb-ot-layout.cc  |  2 +-
 src/hb-ot-math.cc    |  2 +-
 src/hb-ot-name.cc    |  2 +-
 src/hb-ot-var.cc     |  6 ++----
 7 files changed, 25 insertions(+), 27 deletions(-)

commit ec6817c1bd82a60b84cb868e4d7ff4c65cb80ccc
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Nov 5 07:59:08 2018 -0800

    remove build files accidentally pushed

 INSTALL                 |   370 -
 Makefile                |   954 --
 Makefile.in             |   954 --
 aclocal.m4              |  1496 ---
 ar-lib                  |   270 -
 autom4te.cache/output.0 | 23333
 ----------------------------------------------
 autom4te.cache/output.1 | 23333
 ----------------------------------------------
 autom4te.cache/output.2 | 23333
 ----------------------------------------------
 autom4te.cache/requests |   555 --
 autom4te.cache/traces.0 |  3823 --------
 autom4te.cache/traces.1 |  1229 ---
 autom4te.cache/traces.2 |  3823 --------
 compile                 |   347 -
 config.guess            |  1421 ---
 config.h                |   227 -
 config.h.in             |   226 -
 config.log              |  1560 ----
 config.status           |  2420 -----
 config.sub              |  1807 ----
 configure               | 23333
 ----------------------------------------------
 depcomp                 |   791 --
 install-sh              |   501 -
 libtool                 | 11805 -----------------------
 ltmain.sh               | 11147 ----------------------
 missing                 |   215 -
 stamp-h1                |     1 -
 test-driver             |   148 -
 27 files changed, 139422 deletions(-)

commit b721fdae662673ab706da897aaa1db126f8ca1a5
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Sun Nov 4 16:19:15 2018 -0800

    fixed leaks in CFF subr subset

 src/hb-ot-cff-common.hh     | 10 +++++++++-
 src/hb-subset-cff-common.hh | 10 +++++++++-
 2 files changed, 18 insertions(+), 2 deletions(-)

commit 85f5644e8e9fe18032e37d4153c3c928d087ac6a
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Sun Nov 4 14:17:30 2018 -0800

    added missing switch breaks

 src/hb-subset-cff-common.hh | 2 ++
 1 file changed, 2 insertions(+)

commit 1682d1bbecaeeddc8a1678a01c57c0e0023bf7c4
Merge: d8fadec0 b605db2f
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Sun Nov 4 13:25:41 2018 -0800

    Merge branch 'master' into cff-subset

commit d8fadec098935335e69e46c1101da3f142824638
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Sun Nov 4 13:12:20 2018 -0800

    added desubroutinize full font test profiles & expected fonts

    modified subset_test_suite.py to apply desubroutinize profiles to
    CFF only (not to TT)

 ...urceSansPro-Regular.default.1FC,21,41,20,62,63.otf | Bin 3640 ->
 3784 bytes
 .../SourceSansPro-Regular.default.61,62,63.otf        | Bin 3400 ->
 3496 bytes
 .../SourceSansPro-Regular.default.D7,D8,D9,DA,DE.otf  | Bin 3596 ->
 3612 bytes
 ...sPro-Regular.desubroutinize.1FC,21,41,20,62,63.otf | Bin 0 ->
 3640 bytes
 .../SourceSansPro-Regular.desubroutinize.61,62,63.otf | Bin 0 ->
 3400 bytes
 ...eSansPro-Regular.desubroutinize.D7,D8,D9,DA,DE.otf | Bin 0 ->
 3596 bytes
 ...eSansPro-Regular.drop-hints.1FC,21,41,20,62,63.otf | Bin 3480 ->
 3564 bytes
 .../SourceSansPro-Regular.drop-hints.61,62,63.otf     | Bin 3276 ->
 3340 bytes
 ...ourceSansPro-Regular.drop-hints.D7,D8,D9,DA,DE.otf | Bin 3448 ->
 3464 bytes
 ...r.drop-hints.desubroutinize.1FC,21,41,20,62,63.otf | Bin 0 ->
 3480 bytes
 ...Pro-Regular.drop-hints.desubroutinize.61,62,63.otf | Bin 0 ->
 3276 bytes
 ...gular.drop-hints.desubroutinize.D7,D8,D9,DA,DE.otf | Bin 0 ->
 3448 bytes
 ...-Regular.default.3042,3044,3046,3048,304A,304B.otf | Bin 6248 ->
 6324 bytes
 ...-Regular.default.3042,3044,3046,73E0,5EA6,8F38.otf | Bin 6432 ->
 6568 bytes
 .../SourceHanSans-Regular.default.61,63,65,6B.otf     | Bin 5428 ->
 5500 bytes
 ...-Regular.default.660E,6975,73E0,5EA6,8F38,6E05.otf | Bin 6552 ->
 6780 bytes
 .../japanese/SourceHanSans-Regular.default.660E.otf   | Bin 5196 ->
 5248 bytes
 ....otf => SourceHanSans-Regular.desubroutinize..otf} | Bin
 ...r.desubroutinize.3042,3044,3046,3048,304A,304B.otf | Bin 0 ->
 6248 bytes
 ...r.desubroutinize.3042,3044,3046,73E0,5EA6,8F38.otf | Bin 0 ->
 6432 bytes
 ...urceHanSans-Regular.desubroutinize.61,63,65,6B.otf | Bin 0 ->
 5428 bytes
 ...r.desubroutinize.660E,6975,73E0,5EA6,8F38,6E05.otf | Bin 0 ->
 6552 bytes
 .../SourceHanSans-Regular.desubroutinize.660E.otf     | Bin 0 ->
 5196 bytes
 ...gular.drop-hints.3042,3044,3046,3048,304A,304B.otf | Bin 6076 ->
 6132 bytes
 ...gular.drop-hints.3042,3044,3046,73E0,5EA6,8F38.otf | Bin 6180 ->
 6304 bytes
 .../SourceHanSans-Regular.drop-hints.61,63,65,6B.otf  | Bin 5312 ->
 5344 bytes
 ...gular.drop-hints.660E,6975,73E0,5EA6,8F38,6E05.otf | Bin 6248 ->
 6472 bytes
 .../SourceHanSans-Regular.drop-hints.660E.otf         | Bin 5088 ->
 5140 bytes
 ...rceHanSans-Regular.drop-hints.desubroutinize..otf} | Bin
 ...s.desubroutinize.3042,3044,3046,3048,304A,304B.otf | Bin 0 ->
 6076 bytes
 ...s.desubroutinize.3042,3044,3046,73E0,5EA6,8F38.otf | Bin 0 ->
 6180 bytes
 ...-Regular.drop-hints.desubroutinize.61,63,65,6B.otf | Bin 0 ->
 5312 bytes
 ...s.desubroutinize.660E,6975,73E0,5EA6,8F38,6E05.otf | Bin 0 ->
 6248 bytes
 ...HanSans-Regular.drop-hints.desubroutinize.660E.otf | Bin 0 ->
 5140 bytes
 test/subset/data/profiles/desubroutinize.txt          |   1 +
 .../data/profiles/drop-hints-desubroutinize.txt       |   2 ++
 test/subset/generate-expected-outputs.py              |   1 -
 test/subset/subset_test_suite.py                      |   7 ++++++-
 38 files changed, 9 insertions(+), 2 deletions(-)

commit b605db2f65e62ad6727a61481f78015933dbf207
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 4 12:58:02 2018 -0500

    [aat] Clean up ankr table include mess

 src/hb-aat-layout-ankr-table.hh |  2 ++
 src/hb-aat-layout-common.hh     | 31 +++++++++---------------------
 src/hb-aat-layout-kerx-table.hh | 16 ++++++++--------
 src/hb-aat-layout.cc            | 42
 +++++++++++++++++++++++++++++++++++++++--
 src/hb-ot-kern-table.hh         |  1 -
 src/hb-static.cc                |  1 -
 6 files changed, 59 insertions(+), 34 deletions(-)

commit bce437cf0b71e9b60bbf058eaf61593fed30ae33
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 4 02:47:34 2018 -0500

    [test] Call test-ot-face.c test from hb-shape-fuzzer

    Should increase coverage...

 test/api/test-ot-face.c         | 28 ++++++++++++++++++----------
 test/fuzzing/hb-shape-fuzzer.cc |  6 ++++++
 2 files changed, 24 insertions(+), 10 deletions(-)

commit 777c22425cae97009ca4dc5b1e400670c4aa0799
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 4 02:40:20 2018 -0500

    [test] More funcs in test-ot-face

 test/api/test-font.c    |  5 +++++
 test/api/test-ot-face.c | 21 +++++++++++++++++++--
 2 files changed, 24 insertions(+), 2 deletions(-)

commit 17335a8161e674e630287e18a6d304ec0c33767c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 4 02:25:07 2018 -0500

    Clean up buffer->swap_buffers() calls

    That function checks for buffer->successful already.  No need
    to check at call site.

 src/gen-vowel-constraints.py                 | 4 +---
 src/hb-aat-layout-common.hh                  | 3 +--
 src/hb-aat-layout-morx-table.hh              | 3 +--
 src/hb-ot-shape-complex-indic.cc             | 1 -
 src/hb-ot-shape-complex-khmer.cc             | 1 -
 src/hb-ot-shape-complex-myanmar.cc           | 1 -
 src/hb-ot-shape-complex-thai.cc              | 3 +--
 src/hb-ot-shape-complex-use.cc               | 1 -
 src/hb-ot-shape-complex-vowel-constraints.cc | 5 ++---
 src/hb-ot-shape.cc                           | 1 -
 10 files changed, 6 insertions(+), 17 deletions(-)

commit 191ca0f15b7fc9ab959e1f6472c48839687402ec
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Sat Nov 3 22:42:22 2018 -0700

    CFF1 no-desubr fixes

    make sure charstring/subrs not ending with endchar/return handled
    correctly
    if no local subrs, skip serializing Subrs op in Private
    misc fixes

 src/hb-ot-cff-common.hh     | 13 +++++++++-
 src/hb-subset-cff-common.hh | 59
 +++++++++++++++++++++++----------------------
 src/hb-subset-cff1.cc       | 27 +++++++++++++++------
 3 files changed, 62 insertions(+), 37 deletions(-)

commit 4eb52460c8c6dc48af240f2254f76fae065bfa97
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 3 21:45:39 2018 -0400

    Fix >>

 src/hb-ot-post-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ae9ad1076e536aee370f9863cde8351b79f01b3b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 3 21:41:50 2018 -0400

    Fix "Warning: extra ";" ignored."

 src/hb.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit d0163afb7bed83935c6a54d57a0e7366caeba0b3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 3 21:38:24 2018 -0400

    Revert "Add operator char * to the naked array types as well"

    This reverts commit db889c182ee5f54127285bfaab5bc94dafe46bda.

    Was resulting in ambigious overloads...

 src/hb-dsalgs.hh    | 4 +---
 src/hb-open-type.hh | 2 --
 2 files changed, 1 insertion(+), 5 deletions(-)

commit c8f94a1ca6928f07749285da910b63087d485537
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 3 21:07:39 2018 -0400

    Minor

 src/hb-ot-name.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 9779e602ed7ac214c0da2c90e104b38460422476
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 3 20:50:56 2018 -0400

    [test] Add test for empty face

 test/api/Makefile.am    |  1 +
 test/api/test-ot-face.c | 94
 +++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 95 insertions(+)

commit 1da4de7e7b71dfde734cb77ec6acb31f574585f2
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Sat Nov 3 15:41:29 2018 -0700

    fix for subset fuzzer failure

    A called subr must be freshly parsed or completely parsed. otherwise
    the prevoius parse must have terminated prematurely

 src/hb-subset-cff1.cc | 3 +++
 1 file changed, 3 insertions(+)

commit 0b0b38ec1e6a815a30bef98193043d255b52c4a1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 3 16:15:30 2018 -0400

    Fix null accelerator's

    Fixes all except for cmap.  To be done separately.

    Part of https://github.com/harfbuzz/harfbuzz/issues/1146

 src/hb-ot-color-cbdt-table.hh  | 10 ++--------
 src/hb-ot-color-sbix-table.hh  | 11 ++++-------
 src/hb-ot-color-svg-table.hh   | 11 ++++-------
 src/hb-ot-glyf-table.hh        |  6 +++---
 src/hb-ot-layout-gdef-table.hh |  2 +-
 src/hb-ot-layout-gsubgpos.hh   |  2 +-
 src/hb-ot-name-table.hh        |  2 +-
 src/hb-ot-post-table.hh        |  2 +-
 8 files changed, 17 insertions(+), 29 deletions(-)

commit db889c182ee5f54127285bfaab5bc94dafe46bda
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 3 16:04:19 2018 -0400

    Add operator char * to the naked array types as well

 src/hb-dsalgs.hh    | 4 +++-
 src/hb-open-type.hh | 2 ++
 2 files changed, 5 insertions(+), 1 deletion(-)

commit d6fdae310f2a98ca624c3a77c3aa03b8b3bd393a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 3 16:02:03 2018 -0400

    Add operator char * to hb_nonnull_ptr_t

 src/hb-null.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 7430ff604aa54bedcb07cc1c2962eae85fcade76
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 3 15:59:13 2018 -0400

    Template casts in hb_nonnull_ptr_t

 src/hb-null.hh | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit da408fce98153e0fab3d82fe28813085feed0974
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 3 15:49:37 2018 -0400

    [blob] Allow null parent in create_sub_blob()

    Like font and unicode.

 src/hb-blob.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit fb0f30f55a5d654b2f1f9b99efa9b8abc51dbf34
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 3 15:24:14 2018 -0400

    Add hb_nonnull_ptr_t

    Towards fixing https://github.com/harfbuzz/harfbuzz/issues/1146

 src/hb-null.hh | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

commit 8d98c51d133b058a845ed7a84bfe8a43083bbb03
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 3 15:14:57 2018 -0400

    [kern] Third try fix access violation in Format3

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

 src/hb-ot-kern-table.hh | 1 -
 1 file changed, 1 deletion(-)

commit f074da8c2b6a7061c71d12213a6c494c119eb20e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 3 15:06:45 2018 -0400

    [kern] Really fix access violation in Format3

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

 src/hb-ot-kern-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 93ef20a83b31e6528bb1835d2b4b83b913805885
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 3 15:03:06 2018 -0400

    Replace most uses of is_inert with is_immutable

 src/hb-buffer.cc     | 32 ++++++++++++++++----------------
 src/hb-coretext.cc   |  2 +-
 src/hb-font.cc       |  2 +-
 src/hb-set.hh        |  8 +++++---
 src/hb-shape-plan.cc |  2 +-
 5 files changed, 24 insertions(+), 22 deletions(-)

commit 0589787ff55bff9bd5849c4443229e926cc574a5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 3 14:58:54 2018 -0400

    [kern] Fix access violation in Format3

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

 src/hb-ot-kern-table.hh | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit 5570c87f21f061cc197e02bd0526ab44c63ed6f1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 3 14:51:38 2018 -0400

    Port objects to use header.writable instead of immutable

    Saves 4 or 8 bytes per object on 64bit archs.

 src/hb-blob.cc    | 12 ++++--------
 src/hb-blob.hh    |  2 --
 src/hb-face.cc    | 16 ++++++----------
 src/hb-face.hh    |  2 --
 src/hb-font.cc    | 46 +++++++++++++++++++---------------------------
 src/hb-font.hh    |  4 ----
 src/hb-ft.cc      |  2 +-
 src/hb-object.hh  | 11 ++++++++---
 src/hb-unicode.cc | 11 ++++-------
 src/hb-unicode.hh |  2 --
 10 files changed, 42 insertions(+), 66 deletions(-)

commit ee351a38ec0c62b76dd1b3f20fe56cb4d63e62be
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 3 14:28:55 2018 -0400

    [object] Add "writable"

 src/hb-object.hh | 14 +++++++++++++-
 1 file changed, 13 insertions(+), 1 deletion(-)

commit b8a78ce201608e9ac6d7f77447b2bbef6f09e9ff
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Nov 3 22:28:30 2018 +0330

    [BASE] Improvements (#1347)

 src/hb-ot-layout-base-table.hh | 610
 ++++++++++++++++++-----------------------
 src/hb-ot-layout.cc            |  65 ++++-
 src/hb-ot-layout.h             |  16 --
 test/api/Makefile.am           |   1 +
 test/api/fonts/base.ttf        | Bin 0 -> 5596 bytes
 test/api/test-baseline.c       |  58 ++++
 6 files changed, 380 insertions(+), 370 deletions(-)

commit c560ca92512c0283e826c059431273ffecf5d993
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Nov 3 13:03:36 2018 +0330

    [fuzz] A new testcase

 ...uzz-testcase-minimized-hb-shape-fuzzer-5735679418433536 | Bin 0 ->
 36 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)

commit 34b06d994a79124963d2a7432d0ec945e72bfdbd
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Nov 2 16:40:20 2018 -0700

    fixed FDSelect size calcluation

 src/hb-ot-cff-common.hh                               |   2 +-
 src/hb-subset-cff-common.cc                           |   6 +++---
 test/api/fonts/SourceHanSans-Regular.41,3041,4C2E.otf | Bin 2576 ->
 3892 bytes
 3 files changed, 4 insertions(+), 4 deletions(-)

commit 481fdfdc23f557400ad3aceeceeab07add78f005
Merge: 1bc710a8 2840a104
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Nov 2 15:28:09 2018 -0700

    Merge branch 'cff-subset' of https://github.com/harfbuzz/harfbuzz
    into cff-subset

commit 1bc710a8c94fbe08ca3a3e535c7b6597a57883df
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Nov 2 15:28:01 2018 -0700

    added CFF1 desubr api test cases & bug fixes

 src/hb-cff1-interp-cs.hh                           |   7 --
 src/hb-ot-cff-common.hh                            |  56 ++++++----
 src/hb-subset-cff-common.hh                        | 100
 +++++++++--------
 src/hb-subset-cff1.cc                              |  53 ++++-----
 .../fonts/SourceHanSans-Regular.41,3041,4C2E.otf   | Bin 3892 ->
 2576 bytes
 .../SourceHanSans-Regular.41,4C2E.nohints.otf      | Bin 0 -> 2380 bytes
 ...urceHanSans-Regular.41,4C2E.nosubrs.nohints.otf | Bin 0 -> 2360 bytes
 .../SourceHanSans-Regular.41,4C2E.nosubrs.otf      | Bin 0 -> 2548 bytes
 test/api/fonts/SourceHanSans-Regular.41,4C2E.otf   | Bin 2548 ->
 2576 bytes
 test/api/fonts/SourceSansPro-Regular.abc.otf       | Bin 3412 ->
 1812 bytes
 .../api/fonts/SourceSansPro-Regular.ac.nohints.otf | Bin 3228 ->
 1592 bytes
 .../SourceSansPro-Regular.ac.nosubrs.nohints.otf   | Bin 0 -> 1540 bytes
 .../api/fonts/SourceSansPro-Regular.ac.nosubrs.otf | Bin 0 -> 1632 bytes
 test/api/fonts/SourceSansPro-Regular.ac.otf        | Bin 3332 ->
 1708 bytes
 test/api/test-subset-cff1.c                        | 122
 +++++++++++++++++++++
 15 files changed, 232 insertions(+), 106 deletions(-)

commit 2c68f34bddbe506d0b22948562f2f59b9a5b6050
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Fri Nov 2 23:06:00 2018 +0200

    [os2] Capitalize table tag and struct

    Other tables follow the case of the OT tag, except this one.

 src/hb-ot-hmtx-table.hh |  6 +++---
 src/hb-ot-os2-table.hh  | 12 ++++++------
 src/hb-subset.cc        |  4 ++--
 3 files changed, 11 insertions(+), 11 deletions(-)

commit 8034d1dda091998d356e77f249d3c9f50501cc77
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 2 14:47:42 2018 -0400

    [kern] Implement Format1

    Also, implement backwards kerning for Format1 in kern and kerx.

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1350

 src/hb-aat-layout-kerx-table.hh |  11 +++-
 src/hb-ot-kern-table.hh         | 127
 ++++++++++++++++++++++++++++++++++++++++
 2 files changed, 136 insertions(+), 2 deletions(-)

commit 46b3885c1a8ea3b85efbdd1704edcee385797c5d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 2 14:43:38 2018 -0400

    [kern] Set subtable on sanitizer

 src/hb-ot-kern-table.hh | 2 ++
 1 file changed, 2 insertions(+)

commit 74c7a2c6c892446dcec574986e128967bd570e47
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 2 14:26:04 2018 -0400

    [kern] Respect more flags

 src/hb-ot-kern-table.hh | 21 +++++++++++++++------
 1 file changed, 15 insertions(+), 6 deletions(-)

commit 9f880bad0d7291eaab10d814567c7a680e139c48
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 2 13:57:41 2018 -0400

    [kern] Minor

    We like check_struct() more.

 src/hb-ot-kern-table.hh | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 04b82b181d06c229a98314c1620d3ae8a2825267
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 2 13:47:33 2018 -0400

    Remove pointer cast operators from ArrayOf<>

    ArrayOf<>, unlike UnsizedArrayOf<>, has data before the array.
    This was confusing.  Remove.

 src/hb-open-type.hh | 3 ---
 1 file changed, 3 deletions(-)

commit f1df441bedaf5b2c7fadf9954ea39616af87702a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 2 13:26:15 2018 -0400

    [kern] Comment

 src/hb-ot-kern-table.hh | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 095f5add0b1ca39dd09842594b80fae92f0796e4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 2 13:23:54 2018 -0400

    [kern] Push apply loop to each subtable

 src/hb-ot-kern-table.hh | 153
 ++++++++++++++++++++++++++++++++++++++----------
 src/hb-ot-layout.cc     |  28 ++++++---
 src/hb-ot-layout.hh     |   8 ++-
 src/hb-ot-shape.cc      |   2 +-
 4 files changed, 149 insertions(+), 42 deletions(-)

commit 949dad89a81ff5b6ef92e8737962b667249a3f2b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 2 12:47:55 2018 -0400

    [kern] Remove accelerator

    It wasn't doing anything.

 src/hb-ot-face.hh       |  2 +-
 src/hb-ot-kern-table.hh | 55
 ++++++++++++++-----------------------------------
 src/hb-ot-layout.cc     |  4 ++--
 3 files changed, 18 insertions(+), 43 deletions(-)

commit 0382b7184addf5b3723db40a57790e5e62ac1703
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 2 12:23:26 2018 -0400

    Use as_array in more places

 src/hb-aat-layout-morx-table.hh |  4 ++--
 src/hb-ot-layout-gsubgpos.hh    | 22 +++++++++++++---------
 2 files changed, 15 insertions(+), 11 deletions(-)

commit 91de9dfcf3bba7cbeef1e709679c8e24ab684c97
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 2 12:14:21 2018 -0400

    Fix &array_of<>

 src/hb-dsalgs.hh    | 3 +++
 src/hb-open-type.hh | 4 ++--
 2 files changed, 5 insertions(+), 2 deletions(-)

commit 9b7cb137946013592c9a5a9f0a3464fb4613577b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 2 12:00:55 2018 -0400

    Fixup

 src/hb-dsalgs.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6e06fe162ed79bb47f62aae03669cd72b99014a0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 2 11:56:55 2018 -0400

    [kern] Implement Format3

    Untested.

 src/hb-ot-kern-table.hh | 51
 +++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 51 insertions(+)

commit c6ef5dbd5c40cc8934756456221e080012a82530
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 2 11:51:21 2018 -0400

    Add cast operators to hb_array_t

 src/hb-dsalgs.hh | 21 +++++++++++++--------
 1 file changed, 13 insertions(+), 8 deletions(-)

commit 72462eb76584a2892f1d961c90fd289240ea9380
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 2 11:46:24 2018 -0400

    Add UnsizedArrayOf::as_array() instead of hb_array() template

 src/hb-aat-layout-trak-table.hh |  2 +-
 src/hb-dsalgs.hh                |  2 --
 src/hb-open-file.hh             |  2 +-
 src/hb-open-type.hh             | 11 +++--------
 src/hb-ot-color-cpal-table.hh   |  6 +++---
 5 files changed, 8 insertions(+), 15 deletions(-)

commit 1cf075ecb674cc0c7043bffe2fef5ef187c15335
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 2 11:38:00 2018 -0400

    Add get_size to UnsizedArrayOf

 src/hb-open-type.hh | 3 +++
 1 file changed, 3 insertions(+)

commit a4a7a623893fd4c8db3a987d81a1c80243006f1e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 2 11:16:43 2018 -0400

    [kern] Add buffer message

 src/hb-ot-kern-table.hh | 5 +++++
 1 file changed, 5 insertions(+)

commit 0b2870085ddecdde8370eebc7c2bb346b1992b93
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Nov 1 22:43:17 2018 -0700

    removed unused code

 src/hb-cff-interp-common.hh | 18 ------------------
 1 file changed, 18 deletions(-)

commit 6186dbf1be4da88d9c4f1ef5cea19fd7779f29ab
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Nov 1 17:25:23 2018 -0700

    added hb_subset_input_set_desubroutinize API

    hooked up with CFF1 subroutinizer
    a renaming

 src/hb-subset-cff-common.hh |  2 +-
 src/hb-subset-cff1.cc       |  4 ++--
 src/hb-subset-input.cc      | 13 +++++++++++++
 src/hb-subset.h             |  5 +++++
 util/hb-subset.cc           |  1 +
 util/options.cc             |  2 +-
 6 files changed, 23 insertions(+), 4 deletions(-)

commit b1d0c589154d080ff519c3e80aea923185787b13
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Nov 1 16:33:46 2018 -0700

    removed extraneous ;s

 src/hb-cff-interp-common.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 2840a104c1288af79cbda720afa9e37aec6fb29d
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Nov 1 16:18:13 2018 -0700

    tweaks to build with new merge

 src/hb-cff2-interp-cs.hh    | 11 +++++++----
 src/hb-ot-cff2-table.cc     |  9 +++++----
 src/hb-ot-cff2-table.hh     |  7 +++----
 src/hb-subset-cff-common.cc | 12 ++++--------
 src/hb-subset-cff-common.hh |  3 +--
 src/hb-subset-cff1.cc       |  3 +--
 src/hb-subset-cff2.cc       |  3 +--
 7 files changed, 22 insertions(+), 26 deletions(-)

commit e600e5440b3b77294df47fae947758137ea02501
Merge: 82248b92 de96e5c8
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Nov 1 16:13:56 2018 -0700

    Merge branch 'master' into cff-subset

commit de96e5c81c7f473520df93052ecea162baa5a350
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 1 18:13:58 2018 -0400

    [Crap] Avoid operator=

 src/hb-null.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f9353bd68c112dea8962dd586bf5e664f75a2a07
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 1 18:05:22 2018 -0400

    [aat] Rely on vector auto initialization

 src/hb-aat-map.hh | 10 +---------
 1 file changed, 1 insertion(+), 9 deletions(-)

commit 5a18d97b35d05c826c242e6847764c2418831a55
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 1 18:01:26 2018 -0400

    [aat] Remove unused forward declaration

 src/hb-aat-map.hh | 2 --
 1 file changed, 2 deletions(-)

commit 82248b9287e7b208c304e761393b745604a51c6e
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Nov 1 10:36:50 2018 -0700

    fix leak attempt ^2

 src/hb-subset-cff2.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a9c305c2b00b7e793dc3d8333eee43d677aebd42
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Nov 1 10:31:21 2018 -0700

    fix leaks

 src/hb-subset-cff1.cc | 4 ++--
 src/hb-subset-cff2.cc | 3 +--
 2 files changed, 3 insertions(+), 4 deletions(-)

commit 049ce078e51bebce50b17889f3edae3db3ea39f5
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Nov 1 08:46:21 2018 -0700

    fix bogus width with --no-hinting

 src/hb-cff1-interp-cs.hh | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

commit 07ec792212063851ee41eae33792d3d90d31e6a1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 1 10:31:12 2018 -0400

    Warning fix

 src/test-ot-color.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c32280b30fb3844addda31a0d97ae7cb55ef07d2
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Nov 1 15:31:14 2018 +0330

    [ot-layout] minor

 src/hb-ot-layout.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit cad90be4ea56a85ddc084f86f36dd7129850f6d7
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Nov 1 13:39:06 2018 +0330

    [test] minor

 test/api/test-ot-color.c | 2 --
 1 file changed, 2 deletions(-)

commit d56e338a903a5a7c4f8ccd0f4d983cd492243ed6
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Oct 31 22:30:34 2018 -0700

    CFF1 no-desubroutinize + no-hinting

    no-desubroutinize option is disabled for now
    code cleanup (esp. CFF1 width handling)
    bug fixes & renaming

 src/hb-cff-interp-common.hh      |  49 +++
 src/hb-cff-interp-cs-common.hh   |  93 +++++-
 src/hb-cff-interp-dict-common.hh |  45 +--
 src/hb-cff1-interp-cs.hh         |  66 +++-
 src/hb-cff2-interp-cs.hh         |   1 +
 src/hb-ot-cff-common.hh          |  85 ++---
 src/hb-ot-cff1-table.hh          |  20 +-
 src/hb-ot-cff2-table.hh          |  25 +-
 src/hb-subset-cff-common.hh      | 702
 ++++++++++++++++++++++++++++++++++++---
 src/hb-subset-cff1.cc            | 242 +++++++++++---
 src/hb-subset-cff2.cc            |  45 +--
 src/hb-subset-input.hh           |   1 +
 src/hb-subset-plan.cc            |   1 +
 src/hb-subset-plan.hh            |   1 +
 util/options.cc                  |   2 +
 util/options.hh                  |   2 +
 16 files changed, 1130 insertions(+), 250 deletions(-)

commit 52a00cd87f63c8ab32413a1a9ce792a3e2ec84e2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 31 19:05:53 2018 -0700

    [aat] Implement 'aalt' mapping

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1160

 src/hb-aat-map.cc | 8 ++++++++
 1 file changed, 8 insertions(+)

commit 6e3ea269fa1fe0a3de7a8a13c6e853c91231808e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 31 19:00:11 2018 -0700

    [aat] Add 'afrc' feature mapping

    https://github.com/harfbuzz/harfbuzz/issues/1342#issuecomment-434829028

 src/hb-aat-layout.cc | 1 +
 1 file changed, 1 insertion(+)

commit 40b19fd46951e2f9b402e59e1fbbf06fde7ecd61
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 31 18:51:45 2018 -0700

    [aat] Fallback to old style "Letter Case" small caps

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1342

 src/hb-aat-layout-morx-table.hh | 8 ++++++++
 1 file changed, 8 insertions(+)

commit f9289319481a1e9762ad366b287e781c44ba9fc6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 31 18:25:05 2018 -0700

    [test] Minor

 test/shaping/run-tests.py | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

commit cf203af8a33591c163b63dbdf0fd341bc4606190
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 31 18:21:48 2018 -0700

    Implement space fallback in vertical direction

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1343

 src/hb-ot-shape-fallback.cc                   | 36
 +++++++++++++++++++--------
 test/shaping/data/in-house/tests/spaces.tests | 17 +++++++++++++
 2 files changed, 42 insertions(+), 11 deletions(-)

commit e01250230b1ad85e49cc0021365d1ee43feb9855
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 31 18:14:00 2018 -0700

    [hmtx/vmtx] Fix a crasher

 src/hb-ot-hmtx-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 36e90ef56e6c0643ef61e947d7361c6fa4eadf10
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 31 15:09:09 2018 -0700

    [mort] Massage some more

 src/hb-aat-layout-common.hh     | 28 ++++++++++++++++++++++++++++
 src/hb-aat-layout-morx-table.hh | 21 +++++----------------
 2 files changed, 33 insertions(+), 16 deletions(-)

commit cbaff4ef1910e2872bfff61f3d5427c076b3673d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 31 15:06:12 2018 -0700

    [mort] Some more

 src/hb-aat-layout-morx-table.hh | 34 ++++++++++++++++------------------
 1 file changed, 16 insertions(+), 18 deletions(-)

commit 3087046d3144afb50bcc13e4afa2d20d9f71f2c8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 31 14:59:14 2018 -0700

    [mort] Refactor offset-to-index mapping

 src/hb-aat-layout-morx-table.hh | 27 ++++++++++++++++-----------
 1 file changed, 16 insertions(+), 11 deletions(-)

commit b9db610add702da0a257db2eb21f3a7fb56682f7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 31 14:22:31 2018 -0700

    Minor

 src/hb-font.cc | 28 ++++++++++++++--------------
 src/hb-font.h  |  2 +-
 2 files changed, 15 insertions(+), 15 deletions(-)

commit 995bf6c6f82d6b2dabcb81e1426910ee82b91b44
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 31 13:21:33 2018 -0700

    [sbix] Rely on blob->as<> checking size against Type::min_size

 src/hb-ot-color-sbix-table.hh | 6 ------
 1 file changed, 6 deletions(-)

commit 4d4e526b5cc703111eb445b7e319a4cd1917489f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 31 13:19:42 2018 -0700

    Improve blob->as<>

    It's true that blob->as<> should only be called on null or sanitized
    data.  But this change is safe, so keep it.

 src/hb-blob.hh          | 2 +-
 src/hb-ot-glyf-table.hh | 3 ++-
 2 files changed, 3 insertions(+), 2 deletions(-)

commit 5854d3fa251069f8158b97a831d1439c2ff8b510
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 31 10:42:49 2018 -0700

    [set] Warning fix with gcc 8.1

    https://github.com/harfbuzz/harfbuzz/pull/1334

 src/hb-dsalgs.hh | 6 ++++--
 src/hb-set.hh    | 4 ++--
 2 files changed, 6 insertions(+), 4 deletions(-)

commit 850a7af3a419c6c4ab92bff59991758a2951d41f
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Oct 31 14:20:23 2018 +0330

    [ot-color-test] Remove the non-working exact strike size storing
    (#1339)

 src/test-ot-color.cc | 135
 +++++++++++++++++++++++----------------------------
 1 file changed, 62 insertions(+), 73 deletions(-)

commit 2e639c47c9d35ff7dc4dde21f744f9ee695a27f3
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Oct 31 14:20:14 2018 +0330

    [aat] Fix older compilers by not referencing enum directly (#1340)

 src/hb-aat-layout-morx-table.hh | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

commit 642c9dcf1b34b51ffdbf88ccbef4762aa12a5cbe
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Oct 31 14:02:37 2018 +0330

    [aat] Minor, remove extra semicolons

 src/hb-aat-layout-morx-table.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit c962d5e714a6f88c4cb20bed219177b1bc4a2dfd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 31 01:16:33 2018 -0700

    [mort] Make ligatures work

     ./hb-shape Apple_Chancery_10_12.ttf  "Th th ll te to tr fr fu fj"
    [T_h=0+2308|space=2+569|t_h=3+1687|space=5+569|l_l=6+1108|space=8+569|t_e=9+1408|space=11+569|t_o=12+1531|space=14+569|t_r=15+1385|space=17+569|f_r=18+1432|space=20+569|f_u=21+1733|space=23+569|f_j=24+1098]

    Part of https://github.com/harfbuzz/harfbuzz/issues/1331

 src/hb-aat-layout-morx-table.hh | 25 +++++++++++++++++--------
 1 file changed, 17 insertions(+), 8 deletions(-)

commit c07798960004439fcd8fa0f4ae33e225428d1065
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 31 00:36:03 2018 -0700

    [mort] More Ligature work

 src/hb-aat-layout-morx-table.hh | 54
 ++++++++++++++++++++++++++++++-----------
 1 file changed, 40 insertions(+), 14 deletions(-)

commit 431c6e496be56e441ee4b9b705f40a1246bdd0d6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 31 00:15:00 2018 -0700

    [mort] Some Ligature work

 src/hb-aat-layout-morx-table.hh | 38
 +++++++++++++++++++++++++++++++-------
 1 file changed, 31 insertions(+), 7 deletions(-)

commit 28b68cffe4e5ebf82217ebf439f428431d672af3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 30 23:33:30 2018 -0700

    [mort] Implement / adjust Contextual substitution

 src/hb-aat-layout-morx-table.hh | 70
 ++++++++++++++++++++++++++++++-----------
 src/hb-open-type.hh             |  7 +++++
 2 files changed, 59 insertions(+), 18 deletions(-)

commit 11dbf0f12926b80d0c308c70a218342280045c23
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 30 21:49:59 2018 -0700

    [mort] More fixes]

 src/hb-aat-layout-common.hh | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

commit e1552af95b6c17571f7ee58ebac92f48d93c8f98
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 30 21:09:05 2018 -0700

    [maxp] Minor

 src/hb-ot-maxp-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0cf282a32e5b0fe1fec454ff293ffe04b33f1112
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 30 20:51:44 2018 -0700

    [mort] Grind some more

 src/hb-aat-layout-common.hh | 17 ++++++++++++-----
 1 file changed, 12 insertions(+), 5 deletions(-)

commit 90667b31bc3e61e68e27966e4781aba456c6b93b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 30 20:15:28 2018 -0700

    [mort] Hook up more

 src/hb-aat-layout.cc | 14 +++++++++++++-
 1 file changed, 13 insertions(+), 1 deletion(-)

commit 9346b1f158dfd7d25ed0057b40aaa6980a85ea17
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 30 20:04:13 2018 -0700

    [morx] Remove stale comment

 src/hb-aat-layout-morx-table.hh | 2 --
 1 file changed, 2 deletions(-)

commit f864ef215e1354a1e5a3c8796afafba761404e08
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 30 19:42:21 2018 -0700

    [mort] More massaging towards mort

 src/hb-aat-layout-morx-table.hh | 53
 +++++++++++++++++++++--------------------
 1 file changed, 27 insertions(+), 26 deletions(-)

commit 2d9467340b1498ccc0cd47bf915b84ab12dfa025
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 30 19:33:31 2018 -0700

    [mort] Fix version check in sanitize

 src/hb-aat-layout-morx-table.hh | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

commit c2527a1bc2b493473f06ea6ae79f0a87b722c4d3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 30 19:26:16 2018 -0700

    [mort] Make it compile / hook it up

    Untested.

 src/hb-aat-layout-common.hh     | 11 +++++-----
 src/hb-aat-layout-morx-table.hh |  2 +-
 src/hb-aat-layout.cc            | 47
 ++++++++++++++++++++++++++---------------
 3 files changed, 36 insertions(+), 24 deletions(-)

commit 933babdc075c27fbcc1b726c3c9b2aa67338c6ad
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 30 19:22:43 2018 -0700

    [mort] Fixup on previous commit

 src/hb-aat-layout-morx-table.hh | 24 ++++++++++++------------
 1 file changed, 12 insertions(+), 12 deletions(-)

commit b053cabacd99ff69144a1459fe02ffd574c2416c
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Oct 30 18:41:34 2018 +0330

    [mort] Bring back mort generalizations

    Started by reverting
    https://github.com/harfbuzz/harfbuzz/commit/1f1c85a5

    Just a starting point, if we agree even mort can come back.

 src/hb-aat-layout-common.hh     |  76 +++++++++++++++++++----
 src/hb-aat-layout-kerx-table.hh |  17 ++---
 src/hb-aat-layout-morx-table.hh | 133
 ++++++++++++++++++++++++----------------
 src/hb-aat-layout.cc            |  16 ++++-
 src/hb-ot-face.hh               |   1 +
 5 files changed, 171 insertions(+), 72 deletions(-)

commit 5cd544a621f10b307bb97aea27ea54e55aacb2e9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 30 19:16:00 2018 -0700

    Fix build

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1338

 src/test-ot-color.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 69297bb21640677532b7030332f803c0768c6579
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 30 19:06:21 2018 -0700

    [fuzzing] Call hb-ot-color API

 test/fuzzing/hb-shape-fuzzer.cc | 4 ++++
 1 file changed, 4 insertions(+)

commit 1019391046cf01524c4ef20c9256a47b7411610b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 30 15:52:26 2018 -0700

    2.1.0

 NEWS                   | 81
 ++++++++++++++++++++++++++++++++++++++++++++++++++
 RELEASING.md           |  3 +-
 configure.ac           |  2 +-
 docs/harfbuzz-docs.xml |  1 +
 src/hb-ot-color.cc     | 22 +++++++++-----
 src/hb-ot-color.h      |  4 +--
 src/hb-version.h       |  6 ++--
 7 files changed, 105 insertions(+), 14 deletions(-)

commit bfd549daaa078e7edba5a65971b1d3e872664f2d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 30 14:47:27 2018 -0700

    Fix everything-bot

 src/hb-ot-layout.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0e1ad5a075c6858ca60bad0e2da58b5256e15815
Author: Garret Rieger <grieger@google.com>
Date:   Tue Oct 30 11:29:58 2018 -0700

    [subset] Limit the number of scripts and langsys' that should be
    checked when collecting features.

 src/hb-ot-layout-common.hh |  8 ++++++++
 src/hb-ot-layout.cc        | 11 ++++++++++-
 2 files changed, 18 insertions(+), 1 deletion(-)

commit a7aba99baab2d6e6105675ceedbe22222fa0f166
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 30 14:04:09 2018 -0700

    [name] Rename hb_name_id_t to hb_ot_name_id_t

    https://github.com/harfbuzz/harfbuzz/pull/1254

 docs/harfbuzz-sections.txt    |  3 +-
 src/hb-ot-color-cpal-table.hh | 12 +++---
 src/hb-ot-color.cc            |  6 +--
 src/hb-ot-color.h             |  4 +-
 src/hb-ot-layout.cc           | 44 +++++++++----------
 src/hb-ot-layout.h            | 28 ++++++-------
 src/hb-ot-name-table.hh       |  6 +--
 src/hb-ot-name.cc             | 38 ++++++++---------
 src/hb-ot-name.h              | 98
 +++++++++++++++++++++----------------------
 test/api/test-ot-color.c      | 30 ++++++-------
 test/api/test-ot-name.c       |  8 ++--
 11 files changed, 139 insertions(+), 138 deletions(-)

commit 881e1054bc66fd07489d661dd5c3f84a5d077edc
Author: Simon Tooke <stooke@redhat.com>
Date:   Tue Oct 30 14:16:23 2018 -0400

    fix various GCC function pointer warnings

 src/hb-debug.hh | 6 +++---
 src/hb-set.hh   | 4 ++--
 2 files changed, 5 insertions(+), 5 deletions(-)

commit dc9bd29feac6675c79343b88a06f03f356f9175b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 30 13:16:07 2018 -0700

    [CBDT] Implement Format18 get_extens

    Part of https://github.com/harfbuzz/harfbuzz/issues/1327

 src/hb-ot-color-cbdt-table.hh | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

commit a2a7422aaf47dd43c2c55ad48dd15513f9d5b081
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 30 13:14:56 2018 -0700

    [CBDT] Bound checks in reference_png

 src/hb-ot-color-cbdt-table.hh | 57
 ++++++++++++++++++++++++++-----------------
 1 file changed, 34 insertions(+), 23 deletions(-)

commit f236f790884d7b5c7afb73768724c360d4ea5212
Author: Nathan Willis <nwillis@glyphography.com>
Date:   Tue Oct 30 11:24:56 2018 -0500

    Docs Makefile: sync SGML list to harfbuzz-docs.xml include
    list. Hopefully fixes distcheck failure.

 docs/Makefile.am | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

commit 9f4b375e396fe65b30c792b9524a732da0b477d1
Author: Nathan Willis <nwillis@glyphography.com>
Date:   Mon Oct 29 17:10:53 2018 -0500

    Usermanual: minor wording updates, build fixes.

 ...rmanual-buffers-language-script-and-direction.xml |  8 +++++++-
 docs/usermanual-clusters.xml                         |  6 ++++++
 docs/usermanual-fonts-and-faces.xml                  |  8 +++++++-
 docs/usermanual-getting-started.xml                  |  6 ++++++
 docs/usermanual-glyph-information.xml                |  8 +++++++-
 docs/usermanual-install-harfbuzz.xml                 | 20
 +++++++++++++++++---
 docs/usermanual-opentype-features.xml                |  8 +++++++-
 docs/usermanual-shaping-concepts.xml                 |  6 ++++++
 docs/usermanual-what-is-harfbuzz.xml                 | 12 +++++++-----
 9 files changed, 70 insertions(+), 12 deletions(-)

commit e110032b914db9f417cc152b2beb51cda0a91dd7
Author: Nathan Willis <nwillis@glyphography.com>
Date:   Mon Oct 29 16:42:59 2018 -0500

    Usermanual: update DTD in chapter XML to avoid HTML entity parsing
    errors.

 docs/usermanual-what-is-harfbuzz.xml | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

commit 01400f7425f7aec852f39ebee17aa502a74025fb
Author: Nathan Willis <nwillis@glyphography.com>
Date:   Sat Oct 20 17:21:49 2018 +0100

    Usermanual; minor wording changes.

 docs/usermanual-getting-started.xml  | 14 +++++++-------
 docs/usermanual-install-harfbuzz.xml | 10 +++++++++-
 docs/usermanual-what-is-harfbuzz.xml | 31 ++++++++++---------------------
 3 files changed, 26 insertions(+), 29 deletions(-)

commit e89f43dc0884cb4a73beff86e49b7bd8565a01f1
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Sat Oct 20 16:12:45 2018 +0100

    Minor; rewording unsafe-to-break note.

    Co-Authored-By: n8willis <nwillis@glyphography.com>

 docs/usermanual-getting-started.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ccdfb634382596a6114380c72f2f344b1af23f94
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Sat Oct 20 15:46:04 2018 +0100

    Trivial; typo.

    Co-Authored-By: n8willis <nwillis@glyphography.com>

 docs/usermanual-what-is-harfbuzz.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 722099487be72346e7109872b6abf30696f3b7c3
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Sat Oct 20 15:45:24 2018 +0100

    Minor; simplify example code

    Co-Authored-By: n8willis <nwillis@glyphography.com>

 docs/usermanual-getting-started.xml | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 6e4dd58a4af003eeec93cbe90d1258d91a38b53c
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Sat Oct 20 15:44:51 2018 +0100

    Minor: simplify example code

    Co-Authored-By: n8willis <nwillis@glyphography.com>

 docs/usermanual-getting-started.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f9ee0deceebd8952a8d80f3fd7b264b33e70f703
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Sat Oct 20 15:41:00 2018 +0100

    Minor; drop 'OpenType' from sentence

    Co-Authored-By: n8willis <nwillis@glyphography.com>

 docs/usermanual-what-is-harfbuzz.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f028da59d902c39e61021b48fc73f2821a9f3be2
Author: Nathan Willis <nwillis@glyphography.com>
Date:   Sat Oct 20 15:18:29 2018 +0100

    Minor.

 docs/harfbuzz-docs.xml | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

commit ed5547f828fe7559cc3331f05780ae9f041b1e0f
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Sat Oct 20 15:00:52 2018 +0100

    Use 'glyphs' instead of 'text'

    Co-Authored-By: n8willis <nwillis@glyphography.com>

 docs/harfbuzz-docs.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 236285545b5da8513f2b61fc8066ba78308a555a
Author: Nathan Willis <nwillis@glyphography.com>
Date:   Wed Oct 17 10:10:48 2018 -0500

    Docs: minor, update Makefile w new file name.

 docs/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 163ab81ab0f4000d968cc55b418402497e605e6c
Author: Nathan Willis <nwillis@glyphography.com>
Date:   Tue Oct 16 17:48:15 2018 -0500

    Docs: rename Hello HarfBuzz to Getting Started.

 docs/harfbuzz-docs.xml                                                 |
 2 +-
 docs/{usermanual-hello-harfbuzz.xml => usermanual-getting-started.xml}
 | 0
 2 files changed, 1 insertion(+), 1 deletion(-)

commit 9e7efa3f47557a77852a15d89619787fd9933ed1
Author: Nathan Willis <nwillis@glyphography.com>
Date:   Tue Oct 16 17:46:03 2018 -0500

    Docs: usermanual, add API Overview to Hello HarfBuzz chapter. Start
    Terminology section.

 docs/usermanual-hello-harfbuzz.xml | 309
 +++++++++++++++++++++++++------------
 1 file changed, 212 insertions(+), 97 deletions(-)

commit 3a27e8fb97f716c17b03e3a4a634a4900bcb6045
Author: Nathan Willis <nwillis@glyphography.com>
Date:   Fri Oct 12 18:23:26 2018 -0500

    Docs: usermanual, add Shaping Concepts chapter.

 docs/harfbuzz-docs.xml               |   5 +-
 docs/usermanual-shaping-concepts.xml | 368
 +++++++++++++++++++++++++++++++++++
 2 files changed, 371 insertions(+), 2 deletions(-)

commit 9aa865dcc68ec207741e07ba3f7aacf4ac750c1c
Author: Nathan Willis <nwillis@glyphography.com>
Date:   Fri Oct 12 18:22:41 2018 -0500

    Docs: usermanual, minor cleanup to What Is HarfBuzz chapter.

 docs/usermanual-what-is-harfbuzz.xml | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 443f87213272be5ae0579dce4749b2036dfe3815
Author: Nathan Willis <nwillis@glyphography.com>
Date:   Thu Oct 11 15:40:08 2018 -0500

    Docs: move harfbuzz-ng-vs-old discussion down below the TOC; put
    in note.

 docs/harfbuzz-docs.xml | 63
 ++++++++++++++++++++++++++++++++++----------------
 1 file changed, 43 insertions(+), 20 deletions(-)

commit 792af5d254fddcdc4292dffb76b81d65754e65a9
Author: Nathan Willis <nwillis@glyphography.com>
Date:   Thu Oct 11 14:05:59 2018 -0500

    Docs: flesh out config options in Usermanual:Install chapter.

 docs/usermanual-install-harfbuzz.xml | 108
 +++++++++++++++++++++++++++--------
 1 file changed, 85 insertions(+), 23 deletions(-)

commit 325e2745cfa55f9ef114ee8eeaf7bd8176743822
Author: Nathan Willis <nwillis@glyphography.com>
Date:   Wed Oct 10 17:01:21 2018 -0500

    Docs: add basic config-options section to Usermanual Installation
    chapter.

 docs/usermanual-install-harfbuzz.xml | 132
 ++++++++++++++++++++++++++++++++++-
 1 file changed, 131 insertions(+), 1 deletion(-)

commit 97c1c46cd2241d77b531a582dd1a2432af976357
Author: Nathan Willis <nwillis@glyphography.com>
Date:   Wed Oct 10 16:38:22 2018 -0500

    Docs: update and linearize build instructions; add installation
    overview material.

 docs/usermanual-install-harfbuzz.xml | 229
 ++++++++++++++++++++++++++++-------
 1 file changed, 188 insertions(+), 41 deletions(-)

commit 088755f9e654d2ec638dce0c68d523084b9eaf5a
Author: Nathan Willis <nwillis@glyphography.com>
Date:   Wed Oct 10 16:37:29 2018 -0500

    Docs: update usermanual What Is HarfBuzz material.

 docs/usermanual-what-is-harfbuzz.xml | 220
 +++++++++++++++++++++++++++--------
 1 file changed, 172 insertions(+), 48 deletions(-)

commit 0956ab41851d30f50c39c28730cf30ea0bbc5466
Author: Nathan Willis <nwillis@glyphography.com>
Date:   Fri Sep 28 17:15:59 2018 -0500

    Docs: Move What-HarfBuzz-doesnt-do to Usermanual-what-is-HarfBuzz.

 docs/usermanual-hello-harfbuzz.xml   |  98
 +++------------------------------
 docs/usermanual-what-is-harfbuzz.xml | 101
 +++++++++++++++++++++++++++++++++--
 2 files changed, 104 insertions(+), 95 deletions(-)

commit fd270beedb331c4685e918f5a3ef5789a23ffaeb
Author: Nathan Willis <nwillis@glyphography.com>
Date:   Fri Sep 28 16:36:38 2018 -0500

    Docs: Usermanual- What is HarfBuzz; add intro to shaping concepts.

 docs/usermanual-what-is-harfbuzz.xml | 51
 ++++++++++++++++++++++++++++++++++++
 1 file changed, 51 insertions(+)

commit d9fd92721002726c4aeaae9cc3a519a41f694e48
Author: Nathan Willis <nwillis@glyphography.com>
Date:   Fri Sep 28 16:07:37 2018 -0500

    Docs: update Usermanual-What Is HarfBuzz.

 docs/usermanual-what-is-harfbuzz.xml | 199
 +++++++++++++++++++++++------------
 1 file changed, 130 insertions(+), 69 deletions(-)

commit 0af3d176a64c0a57c7acb2a64ce8b9d08f449241
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Tue Oct 30 17:05:28 2018 +0200

    [sbix] Fix memory leak in early return

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

 src/hb-ot-color-sbix-table.hh                             |   3 +++
 ...zz-testcase-minimized-hb-shape-fuzzer-5768601332613120 | Bin 0 ->
 108 bytes
 2 files changed, 3 insertions(+)

commit edaa768253cfeb97d614537253f90d47aa93ff6f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 30 01:35:58 2018 -0700

    [util] Use fgets instead of getline such that windows passes

 util/hb-shape.cc | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

commit 56738429d667f6c35e5c7af30b51604fc133c23c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 30 01:33:22 2018 -0700

    [test] Fix warnings

 test/api/test-ot-tag.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 138f9e0f25752bbf7f8e867f230ca91442f40028
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 30 01:31:13 2018 -0700

    Minor

 src/hb-machinery.hh | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

commit 83a612739accf6b0f2e1cb1be15097402f7ecf33
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 30 01:24:23 2018 -0700

    [util] Minor

 util/options.cc | 6 ------
 util/options.hh | 8 ++------
 2 files changed, 2 insertions(+), 12 deletions(-)

commit 64e41d2c89c533f554e49ffbd18e6653a70ab999
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 30 01:08:34 2018 -0700

    [test] Fix Python3

 test/shaping/run-tests.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f7a08cd41df1ff3e44aa838306218ae0565b7273
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Oct 30 11:29:09 2018 +0330

    Fix extra semicolon issues and test that on CI (#1330)

 .circleci/config.yml         |  2 +-
 src/hb-machinery.hh          | 16 ++++++++--------
 src/hb-ot-layout-common.hh   |  6 +++---
 src/hb-ot-layout-gsubgpos.hh |  2 +-
 src/hb.hh                    |  2 +-
 util/options.hh              |  2 +-
 6 files changed, 15 insertions(+), 15 deletions(-)

commit 422debb830fe150c26e1628f77531f41f0871325
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 30 00:51:43 2018 -0700

    [test/shaping] Spawn one hb-shape per test file

    Speeds up runnings in-house tests from over 20s to 2s.

 test/shaping/run-tests.py | 32 ++++++++++++--------------------
 1 file changed, 12 insertions(+), 20 deletions(-)

commit 58e20f53bf61244e3eef09be8ebed60aaf52fb11
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 30 00:50:18 2018 -0700

    [util] Add hb-shape --batch

 util/hb-shape.cc | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

commit 6131fb6283cff87333db14b9b32e92be6139c3d6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 30 00:38:01 2018 -0700

    [util] Don't close stdin/stdout

 util/options.cc | 6 ++++++
 util/options.hh | 8 ++++++--
 2 files changed, 12 insertions(+), 2 deletions(-)

commit 7e998d193a1429b42bb69582f9e5738aa6fd1a72
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 29 23:31:42 2018 -0700

    Fix spurious warning re uninitialized use

 src/hb-ot-layout-common.hh | 1 +
 1 file changed, 1 insertion(+)

commit 1b7bfb5e1864fc355715b536faac6693b5ce0218
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Oct 30 10:19:40 2018 +0330

    [cmake] Make build of tests and subset optional (#1329)

 .circleci/config.yml |  2 +-
 CMakeLists.txt       | 19 ++++++-------------
 2 files changed, 7 insertions(+), 14 deletions(-)

commit b186274362725b7501211c2a782c1a0badd57107
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 29 23:21:14 2018 -0700

    [set/map] Fix uninitialized memory

    I keep forgetting that primitive types are NOT initialized during
    construction. :|

 src/hb-map.hh    | 4 ++--
 src/hb-object.hh | 1 +
 src/hb-set.hh    | 4 ++--
 3 files changed, 5 insertions(+), 4 deletions(-)

commit ad3cededdd5ee6a364161e9d27e4cf4d95a80177
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 29 22:53:16 2018 -0700

    [fuzzing] Make test runners less verbose

 test/fuzzing/run-shape-fuzzer-tests.py  | 3 ++-
 test/fuzzing/run-subset-fuzzer-tests.py | 1 -
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 4ef671f25f38895e3f87cd69687670c3d8ea4600
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 29 22:46:19 2018 -0700

    [unicode] Fix a long-standing double-declaration warning

 src/hb-unicode.cc | 31 +++++++------------------------
 1 file changed, 7 insertions(+), 24 deletions(-)

commit 166ae8b0aa3b1e7298a1bbb872647cb352a0f924
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 29 22:40:37 2018 -0700

    Remove now unused hb_auto_t<>

 src/hb-dsalgs.hh | 20 --------------------
 1 file changed, 20 deletions(-)

commit 56e0fd345c4e68753123a05cd80291e933d71061
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 29 22:35:44 2018 -0700

    Remove last use of hb_auto_t<>

 src/hb-ot-cmap-table.hh | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

commit ca5e5a4979fa4aca873ba986e60b3010aaf0b1de
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 29 22:30:21 2018 -0700

    Port Coverage::Iter off hb_auto_t<>

 src/hb-ot-layout-common.hh     |  4 +---
 src/hb-ot-layout-gpos-table.hh |  2 +-
 src/hb-ot-layout-gsub-table.hh | 26 +++++++++++++-------------
 src/hb-ot-layout-gsubgpos.hh   |  8 ++++----
 4 files changed, 19 insertions(+), 21 deletions(-)

commit 3a4e5dd425a2a37ff4c37db953943386c0b6e5d8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 29 18:05:25 2018 -0700

    Remove a few unnecessary hb_auto_t<>'s

    See a85641446c30247c4e948263f0f8c1147ed4efb9

 src/hb-coretext.cc             |  8 ++++----
 src/hb-ot-cmap-table.hh        |  6 ++----
 src/hb-ot-layout-gsub-table.hh |  8 ++++----
 src/hb-ot-layout-gsubgpos.hh   |  2 +-
 src/hb-ot-layout.cc            | 10 +++++-----
 src/hb-subset-plan.cc          |  2 +-
 src/hb-subset.cc               |  2 +-
 src/hb-uniscribe.cc            | 12 ++++++------
 8 files changed, 24 insertions(+), 26 deletions(-)

commit 67a22f377dee0dbd89f301f0a1fec6f787867b5e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 29 17:37:41 2018 -0700

    [set/map/vector] Make constructable, but not copy or assignable

    Disable copy/assign on them, as they shouldn't.

    Make constructor / destructor call init_shallow/fini_shallow,
    and make those idempotent.  So, these three can be constructed
    on stack now and no init/fini call is needed.  As such,
    hb_auto_t<> is not needed anymore.  I'll remove that separately.

 src/hb-map.hh    |  6 ++++++
 src/hb-set.hh    |  5 +++++
 src/hb-vector.hh | 37 ++++++++++++++++++++-----------------
 src/hb.hh        | 12 ++++++++++++
 4 files changed, 43 insertions(+), 17 deletions(-)

commit ea0e51d1b161245aaf5ad0f844bb5316b1cbcd5e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 29 16:00:23 2018 -0700

    Add HB_NO_CREATE_COPY_ASSIGN

 src/hb-open-type.hh | 10 +++++-----
 src/hb.hh           | 15 +++++++++------
 2 files changed, 14 insertions(+), 11 deletions(-)

commit 5b563640b2df5b100130c9901b666713b2e1767e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 29 15:58:44 2018 -0700

    Remove HB_DISALLOW_COPY_AND_ASSIGN from hb_ot_shape_planner_t

    It was arbitrary that this struct had it and not dozens of others.

 src/hb-ot-shape.hh | 3 ---
 1 file changed, 3 deletions(-)

commit 14b353c1852be64db244f84bf5e95b4b7f3e65b6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 29 15:29:13 2018 -0700

    One more iteration

 src/hb.hh | 1 -
 1 file changed, 1 deletion(-)

commit c7c5df9ffd4f7bcc84a9a02a565ccc1807cca529
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 29 15:16:52 2018 -0700

    Try fixing older bots

    Older C++ doesn't allow struct-with-constructor in union.

 src/hb.hh | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

commit be87959a67b8ccf2b21d3cfdb7d16202f18df670
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 29 15:16:38 2018 -0700

    [cmap] Minor

 src/hb-ot-cmap-table.hh | 16 ++--------------
 1 file changed, 2 insertions(+), 14 deletions(-)

commit 35d410f2bad62e98f3634c5ee156d0aea9031067
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 29 14:45:44 2018 -0700

    Remove ASSERT_POD

    Newer compilers / language allows structs with constructor in union.
    So, this was not actually testing anything.  Indeed, the recent
    change in DISALLOW_COPY *is* making some of our types non-POD.
    That broke some bots.

    Just remove this since it wasn't doing much, and I'd rather have
    DISALLOW_COPY.

 src/hb-blob.hh                             |  1 -
 src/hb-buffer.hh                           |  1 -
 src/hb-face.hh                             |  1 -
 src/hb-font.hh                             |  2 --
 src/hb-machinery.hh                        |  5 +----
 src/hb-object.hh                           |  6 +-----
 src/hb-ot-shape-complex-arabic-fallback.hh |  2 --
 src/hb-ot-shape-complex-arabic.cc          |  2 --
 src/hb-ot-shape-complex-hangul.cc          |  2 --
 src/hb-ot-shape-complex-indic.cc           |  2 --
 src/hb-ot-shape-complex-khmer.cc           |  2 --
 src/hb-ot-shape-complex-use.cc             |  2 --
 src/hb-set-digest.hh                       |  4 ----
 src/hb-shape-plan.hh                       |  1 -
 src/hb-subset-input.hh                     |  1 -
 src/hb-subset-plan.hh                      |  1 -
 src/hb-unicode.hh                          |  1 -
 src/hb.hh                                  | 26
 --------------------------
 18 files changed, 2 insertions(+), 60 deletions(-)

commit 6f0454e176efdb8b99c8aa59b5ad765ca455b8d6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 29 13:51:15 2018 -0700

    Fix extra-semicolon warnings

 src/hb-machinery.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit a256a92b3fbb72487cf073a63e646eab952b42ed
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 29 11:25:35 2018 -0700

    Make Array types uncopyable-unassignable

    Finally!  Catches hard-to-find errors like this:

    -    const SortedArrayOf<SVGDocumentIndexEntry> docs =
    this+svgDocEntries;
    +    const SortedArrayOf<SVGDocumentIndexEntry> &docs =
    this+svgDocEntries;

    We implement this for our array types.  This, in turn, trickles down
    into all types that embed the arrays.  So, as long as we define all
    open-ended structs in terms of Array types (all can be done using
    UnsizedArrayOf), this achieves the goal of making uncopyable all
    structs that are variable-sized.  Yay!

 src/hb-open-type.hh | 11 +++++++++++
 src/hb.hh           |  6 ++++++
 2 files changed, 17 insertions(+)

commit 31cc1f74b7028ef88fa0e93e7f12166c7e06de8e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 29 11:14:37 2018 -0700

    [svg] Minor

 src/hb-ot-color-svg-table.hh | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 1366bb9760d0f171f8f655e5739e74dfd2537652
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 29 11:01:25 2018 -0700

    Fix g-i warnings

 src/hb-ot-color.h | 4 +++-
 src/hb-ot-name.cc | 4 ++--
 2 files changed, 5 insertions(+), 3 deletions(-)

commit ae802c2c6e001492f8f639e4c24546f0e21d86c7
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Oct 29 13:42:14 2018 +0330

    [test-ot-color] Minor

 src/test-ot-color.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 7170e35096f0afd084be1350d080695c70c65d40
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Oct 29 13:11:01 2018 +0330

    Rename deprecated symbols list file name and clean it up (#1328)

 src/Makefile.am      | 6 +++---
 src/gen-def.py       | 9 ++++-----
 test/api/Makefile.am | 2 +-
 3 files changed, 8 insertions(+), 9 deletions(-)

commit 1dfe964378e97e45eedf9db9b9a7f675fe38c0bf
Merge: f10252b4 9c692e5b
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Oct 29 12:34:33 2018 +0330

    Merge pull request #1326 from ebraminio/test-ot-color

    Revive and rename dump-emoji to test-ot-color but use public APIs
    instead

commit 9c692e5b8d195d8e82538594d89865c609d708f3
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Oct 29 11:36:11 2018 +0330

    [test-ot-color] Use public APIs on the tool

 src/Makefile.am      |   9 +++
 src/test-ot-color.cc | 184
 +++++++++++++++++++++++++++++----------------------
 2 files changed, 113 insertions(+), 80 deletions(-)

commit fb525f8943b43fe241424c93461bee2b94af28e3
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Oct 29 09:43:17 2018 +0330

    Rename dump-emoji to test-ot-color

 src/{dump-emoji.cc => test-ot-color.cc} | 0
 1 file changed, 0 insertions(+), 0 deletions(-)

commit 81bcf47e9ea7eb447ff95ce48ecbc5c4439cb53f
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Oct 29 09:40:39 2018 +0330

    Revive dump-emoji

 src/dump-emoji.cc | 322
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 322 insertions(+)

commit f10252b4b637b4aa0b74bb75963ae1e1a41b5b9f
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Oct 29 10:29:58 2018 +0330

    [svg] Fix incorrect array referencing

 src/hb-ot-color-svg-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 5eb251aab041d89b06b0d3f65906ff6712608263
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 23:16:13 2018 -0700

    [cbdt] Implement strike selection logic

 src/hb-ot-color-cbdt-table.hh | 25 ++++++++++++++++++++-----
 1 file changed, 20 insertions(+), 5 deletions(-)

commit 98bddbc8ef3330bc5635f6255e6b9c16593a1934
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 23:14:15 2018 -0700

    [sbix] Minor

 src/hb-ot-color-sbix-table.hh | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 8cffee0577284839a24d9fb863206886d2373974
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 23:07:59 2018 -0700

    [cbdt] Simplify more

 src/hb-ot-color-cbdt-table.hh | 22 +++++++---------------
 1 file changed, 7 insertions(+), 15 deletions(-)

commit 574579d3766b7b42e62495cb9a98f3ffd91079e8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 23:04:37 2018 -0700

    [color] Rename get_strike() to choose_strike()

 src/hb-ot-color-cbdt-table.hh |  8 ++++----
 src/hb-ot-color-sbix-table.hh | 10 +++++-----
 2 files changed, 9 insertions(+), 9 deletions(-)

commit 0aa90271fdbb2b85389cd5af029b6d4468fb8146
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 23:03:20 2018 -0700

    [tests] Fix for recent rounding change in CBDT

 test/shaping/data/in-house/tests/color-fonts.tests | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e2ba96da4c39ba5fe941bf2704c1e7cc5f98034f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 23:01:57 2018 -0700

    [cbdt] Refactor get_strike()

 src/hb-ot-color-cbdt-table.hh | 39
 ++++++++++++++++-----------------------
 src/hb-ot-color.cc            |  2 +-
 2 files changed, 17 insertions(+), 24 deletions(-)

commit 6983cca9c865752fe0a9a065f9b0278b686c3abc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 22:46:18 2018 -0700

    [cbdt] Minor

 src/hb-ot-color-cbdt-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e998fb9fbfbd79b476d758238af60f6a4ddff20c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 22:45:53 2018 -0700

    [color] Round extents when scaling

 src/hb-ot-color-cbdt-table.hh | 12 +++++++-----
 src/hb-ot-color-sbix-table.hh | 12 ++++++------
 2 files changed, 13 insertions(+), 11 deletions(-)

commit c929ccfcea18c5c35d6d41ae921845eeffba978a
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Oct 29 08:41:13 2018 +0330

    [ot-color/png] Consider strike ppem on scaling

 src/hb-ot-color-cbdt-table.hh |  5 +++--
 src/hb-ot-color-sbix-table.hh | 23 +++++++++++++++++++----
 src/hb-ot-color.cc            |  2 +-
 src/hb-ot-font.cc             |  2 +-
 test/api/test-ot-color.c      |  4 ++--
 5 files changed, 26 insertions(+), 10 deletions(-)

commit a8c9facf7a73cca39e3fed1f637db4858e64414a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 18:32:37 2018 -0700

    [svg] Cosmetic

 src/hb-ot-color-svg-table.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 9c1460e5685448ad4eac8faff9f05e456f87ed28
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 18:29:14 2018 -0700

    [svg] Use SortedArrayOf.bsearch

 src/hb-ot-color-svg-table.hh | 18 +++---------------
 1 file changed, 3 insertions(+), 15 deletions(-)

commit 18dd6363a5021cfd770b431a6320386f94447674
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 18:26:49 2018 -0700

    [svg] Minor

 src/hb-ot-color-svg-table.hh | 23 +++++++++++------------
 1 file changed, 11 insertions(+), 12 deletions(-)

commit 4876c938a20af356988d566ba95472d3bcbb133d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 18:01:25 2018 -0700

    [sbix] Comment

 src/hb-ot-color-sbix-table.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 519fca101466283ca5c993dec2ec2c6891d8add5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 16:32:20 2018 -0700

    [color] Minor

 src/hb-ot-color.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e8ff27c2082ffcf3bd213e7a77d823dc1809857e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 16:29:09 2018 -0700

    Minor

 src/hb-open-type.hh        | 6 ++++--
 src/hb-ot-layout-common.hh | 4 ++--
 2 files changed, 6 insertions(+), 4 deletions(-)

commit 65621723815138150e8a6354413ed14d53cf35b5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 16:27:18 2018 -0700

    [sbix] Use LOffsetLArrayOf<>

 src/hb-open-type.hh           | 2 ++
 src/hb-ot-color-sbix-table.hh | 2 +-
 2 files changed, 3 insertions(+), 1 deletion(-)

commit a3ddd8067f266e49d9451c53a0fd40aff8551af7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 16:26:03 2018 -0700

    [sbix] Add get_strike

 src/hb-ot-color-sbix-table.hh | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

commit 95524ed9bccdcd0d6a46c5dcc372e96a0c34b5f0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 15:58:48 2018 -0700

    [sbix] Remove sbix_len

 src/hb-ot-color-sbix-table.hh | 29 +++++++++++++++++++++--------
 1 file changed, 21 insertions(+), 8 deletions(-)

commit 69e9846452f829f82f6866a683845167b3d3d6e5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 15:53:11 2018 -0700

    [sbix] Fix get_glyph_blob() on Null object

 src/hb-ot-color-sbix-table.hh | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

commit 4e0ee2af091634198c4b9b17036d9391a4e6b084
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 15:44:40 2018 -0700

    [sbix] Simplify ppem access

    If struct members are simple and needed publicly, we make them public.

 src/hb-ot-color-sbix-table.hh | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)

commit 6ac9a4eaa3a47c9b9f2c7aa123255e82ccc53551
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 15:43:54 2018 -0700

    [sbix] Simplify glyph_length calc

 src/hb-ot-color-sbix-table.hh | 22 +++++-----------------
 1 file changed, 5 insertions(+), 17 deletions(-)

commit 0730d623854dc17ce0c3f1f2755a90b656c8e52c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 15:38:42 2018 -0700

    [sbix] Check glyph data end is in range

 src/hb-ot-color-sbix-table.hh | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit b76dc03108d04975335dbf3580f8d02321cb5d25
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 15:36:17 2018 -0700

    [sbix] Reduce code

 src/hb-ot-color-sbix-table.hh | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

commit 50fb02a219dbf168d300c4ccf9f29aee38a78e6c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 15:33:12 2018 -0700

    [sbix] Check glyph id before looking into unsafe array

    That 'Z' at end of imageOffsetsZ is a reminder that you should
    check...

 src/hb-ot-color-sbix-table.hh | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit a8cb9c73da29afa89b0253b6475ff220613e100a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 15:30:57 2018 -0700

    [sbix] Simplify 'dupe' handling logic

 src/hb-ot-color-sbix-table.hh | 21 +++++++++++----------
 1 file changed, 11 insertions(+), 10 deletions(-)

commit d7eb534e59064633732959c3771b6557cc97005e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 15:27:04 2018 -0700

    [sbix] Check offsets before proceeding

 src/hb-ot-color-sbix-table.hh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit c8380bd3e4a2e51dfbe2e44e19738445be16ac75
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 15:20:33 2018 -0700

    [color] Remove more dump-emoji cruft

 src/hb-ot-color-cbdt-table.hh | 53
 -------------------------------------------
 src/hb-ot-color-sbix-table.hh | 13 -----------
 2 files changed, 66 deletions(-)

commit 68f2c832c894d71715073d4748ad321a9d271a0e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 15:18:55 2018 -0700

    Remove dump-emoji

 src/Makefile.am               |   9 --
 src/dump-emoji.cc             | 322
 ------------------------------------------
 src/hb-ot-color-sbix-table.hh |   4 +-
 3 files changed, 3 insertions(+), 332 deletions(-)

commit b46de42b3a4bdf110154f4f067656f153f5a7d1b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 15:13:45 2018 -0700

    [sbix] Fix order of parameters

 src/hb-ot-color-sbix-table.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit a91cda72abdfc5e401510474c59dd14026e8b6cb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 15:12:05 2018 -0700

    [sbix] Remove redundant parameter

 src/hb-ot-color-sbix-table.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit c712005f55b2a1e5c782302d8a548cf1231c01f0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 15:11:10 2018 -0700

    [sbix] Add get_strike()

 src/hb-ot-color-sbix-table.hh | 23 +++++++++++++----------
 1 file changed, 13 insertions(+), 10 deletions(-)

commit 400bc3f030b4ffebe24aa3562d8eb5fcc1cf4bdd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 15:05:40 2018 -0700

    [sbix] Remove a couple of extra checks

 src/hb-ot-color-sbix-table.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 3770282c837aacbf49b16be1986c91a608faa7da
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 15:02:53 2018 -0700

    [sbix] Rename sbix_table to table in accelerator

 src/hb-ot-color-sbix-table.hh | 26 +++++++++++++-------------
 1 file changed, 13 insertions(+), 13 deletions(-)

commit 7346841807ad96fc65bfc6ee9e78c3f190488f2a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 15:00:13 2018 -0700

    [cbdt] Rename reference_blob_for_glyph() to reference_png()

 src/hb-ot-color-cbdt-table.hh | 8 ++++----
 src/hb-ot-color.cc            | 2 +-
 2 files changed, 5 insertions(+), 5 deletions(-)

commit 1f33b8525d578323d6c798c08fc23c56896f9de0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 14:56:55 2018 -0700

    [sbix] Rename ugly reference_blob_for_glyph() to reference_png()

 src/hb-ot-color-sbix-table.hh | 16 +++++++---------
 src/hb-ot-color.cc            |  4 +---
 2 files changed, 8 insertions(+), 12 deletions(-)

commit 946b5344193183133bfc9799e26d3d0436d86404
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 14:52:25 2018 -0700

    [sbix] Fix uninitialized variables

 src/hb-ot-color-sbix-table.hh | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 01c7d53fb739b547f3633972194893f68a4738bc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 14:51:18 2018 -0700

    [sbix] Select best strike based on ppem

 src/hb-ot-color-sbix-table.hh | 50
 ++++++++++++++++++++++++-------------------
 src/hb-ot-color.cc            |  3 +--
 src/hb-ot-font.cc             |  2 +-
 3 files changed, 30 insertions(+), 25 deletions(-)

commit f9f26bff4c79d65a92affd6b73e2b3de017f2d6d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 14:20:50 2018 -0700

    [sbix] Move code around. Add get_extents()

 src/hb-ot-color-sbix-table.hh | 15 +++++++++++++--
 src/hb-ot-font.cc             |  2 +-
 2 files changed, 14 insertions(+), 3 deletions(-)

commit 48bc3039cb46d2b8cf672d86b63b4235a86252e6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 14:16:52 2018 -0700

    [sbix] Check blob length against PNG header leangth

 src/hb-ot-color-sbix-table.hh | 37 +++++++++++++++++++++++--------------
 1 file changed, 23 insertions(+), 14 deletions(-)

commit d3ec31a57cb99048fb33bca65041da9dc884d8cb
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Oct 29 00:28:44 2018 +0330

    [ot-color] More on PNGHeader fields

 src/hb-ot-color-sbix-table.hh | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

commit 35fa3d326096639a33635e19f204a9cb31f20826
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Oct 29 00:07:26 2018 +0330

    [ot-color] Apply Behdad comment

 src/hb-ot-color-sbix-table.hh | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 307d61867a2b70073eecd1e0cb9b7d912e1c3f06
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Oct 29 00:03:01 2018 +0330

    [ot-color] Make PNGHeader reading actually work

 src/hb-ot-color-sbix-table.hh | 6 +++---
 test/api/test-ot-color.c      | 4 ++--
 2 files changed, 5 insertions(+), 5 deletions(-)

commit 632e9af862aba49ab31343c4fd07dffef6d2749f
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Oct 28 23:43:50 2018 +0330

    [ot-color] Implement PNGHeader and test it, it doesn't work however

 src/hb-ot-color-sbix-table.hh | 20 +++++++++++++++-----
 src/hb-ot-font.cc             |  4 +---
 test/api/test-ot-color.c      | 16 ++++++++++++++++
 3 files changed, 32 insertions(+), 8 deletions(-)

commit 38706a0746822865008f810f9f577740c32580fa
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Oct 28 23:19:04 2018 +0330

    [ot-color] Preparation for setting PNG width/height in extents

 src/dump-emoji.cc             |  7 +++---
 src/hb-ot-color-sbix-table.hh | 52
 +++++++++++++++++++++++++++++++++++--------
 src/hb-ot-color.cc            | 14 +++++-------
 src/hb-ot-font.cc             |  7 +++++-
 4 files changed, 59 insertions(+), 21 deletions(-)

commit d6d6f3bc225bab57c1ab29b41876c98ac4ec1e4d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 11:41:33 2018 -0700

    [docs] Add comment

 src/hb-ot-font.cc | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 3d4c1f6a41022ec99adefa2bdd2489622e2f9a66
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Oct 28 21:38:56 2018 +0330

    [ot-color] Apply Behdad reviews

 docs/harfbuzz-sections.txt    |  4 ++--
 src/hb-ot-color-cbdt-table.hh | 15 ++++-----------
 src/hb-ot-color-sbix-table.hh |  6 ++----
 src/hb-ot-color.cc            |  8 ++++----
 src/hb-ot-color.h             |  4 ++--
 test/api/test-ot-color.c      | 14 +++++++-------
 6 files changed, 21 insertions(+), 30 deletions(-)

commit 8ef0d2ef928ac47278d7c6db8c8040a47f076e85
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Oct 28 20:09:40 2018 +0330

    [ot-color] Apply Behdad comment

 src/dump-emoji.cc             |  2 +-
 src/hb-ot-color-cbdt-table.hh | 16 +++++++---------
 src/hb-ot-color-sbix-table.hh | 14 ++++----------
 src/hb-ot-color.cc            | 22 +++++++---------------
 src/hb-ot-color.h             |  5 +----
 test/api/test-ot-color.c      | 15 ++++-----------
 6 files changed, 24 insertions(+), 50 deletions(-)

commit dbd419bedef06a07c844b6a748a5e2868016000c
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Oct 27 15:15:24 2018 +0330

    [ot-color] Add public API for CBDT/sbix/SVG color Emojis

 docs/harfbuzz-sections.txt |  4 ++++
 src/dump-emoji.cc          |  4 ++--
 src/hb-ot-color.cc         | 39 ++++-----------------------------------
 src/hb-ot-color.h          | 24 ++++++++++++++++++++++++
 test/api/test-ot-color.c   |  8 ++------
 5 files changed, 36 insertions(+), 43 deletions(-)

commit 6ce49a921a80f1238ddc537f77a1fceea5274a21
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 08:26:30 2018 -0700

    [name] Change hb_name_id_t back to unsigned int

    https://github.com/harfbuzz/harfbuzz/commit/d941f66c75fe26f909b1ba248535cc372bbde851#commitcomment-31076011

 docs/harfbuzz-sections.txt    |  2 --
 src/hb-ot-color-cpal-table.hh |  4 ++--
 src/hb-ot-layout.cc           | 12 ++++++------
 src/hb-ot-name-table.hh       |  2 +-
 src/hb-ot-name.h              |  6 +++---
 src/test-size-params.cc       |  2 +-
 6 files changed, 13 insertions(+), 15 deletions(-)

commit a4f4f5ba5f64174dea931e02367aa4067d034383
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 08:23:36 2018 -0700

    [docs] Fix titles here as well

 src/hb-map.cc        | 2 +-
 src/hb-set.cc        | 2 +-
 src/hb-shape-plan.cc | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

commit 213b6dd33564d0273b1db1c17a4e82548b727dfe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 27 18:36:24 2018 -0700

    [name] Make sure hb_name_id_t is int-sized

    https://github.com/harfbuzz/harfbuzz/commit/d941f66c75fe26f909b1ba248535cc372bbde851#commitcomment-31068905

 src/hb-ot-name.h | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 4740a3593d6bbb97758593b7d5cd1b86eccbed78
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 27 05:07:54 2018 -0700

    [docs] Divide reference API into three chapters

 docs/harfbuzz-docs.xml | 213
 +++++++++++++------------------------------------
 1 file changed, 56 insertions(+), 157 deletions(-)

commit 1d40d72f291ed5e11850f8bd51a8562b57de1997
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 27 05:00:42 2018 -0700

    [docs] Hook up hb-var

 docs/harfbuzz-docs.xml |  1 +
 src/hb-ot-var.cc       | 11 +++++++++++
 2 files changed, 12 insertions(+)

commit 80d9a427cf61f61512de13cd88bdc63d881019fe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 27 04:58:32 2018 -0700

    [docs] Document remaining sections

 src/hb-ot-color.cc  | 10 ++++++++++
 src/hb-ot-font.cc   | 10 ++++++++++
 src/hb-ot-layout.cc | 10 ++++++++++
 src/hb-ot-math.cc   | 11 +++++++++++
 src/hb-ot-name.cc   | 10 ++++++++++
 src/hb-ot-shape.cc  | 10 ++++++++++
 6 files changed, 61 insertions(+)

commit cf5fa57f00613d324b55732d9e21c779ba0d2de2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 27 04:50:38 2018 -0700

    [docs] Change section titles again

    I think I like the uniform "hb-*" more.

 src/hb-blob.cc      |  2 +-
 src/hb-buffer.cc    |  2 +-
 src/hb-common.cc    |  4 ++--
 src/hb-deprecated.h | 12 ++++++++++++
 src/hb-face.cc      |  2 +-
 src/hb-font.cc      |  2 +-
 src/hb-shape.cc     |  2 +-
 src/hb-unicode.cc   |  2 +-
 8 files changed, 20 insertions(+), 8 deletions(-)

commit 04981ee05d83ed30c9f818106589a4de9c3e9b7f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 27 04:40:43 2018 -0700

    [docs] More

 src/hb-coretext.cc        | 10 ++++++++++
 src/hb-ft.cc              | 11 +++++++++++
 src/hb-glib.cc            | 10 ++++++++++
 src/hb-gobject-structs.cc | 12 ++++++++++++
 src/hb-graphite2.cc       | 10 ++++++++++
 src/hb-icu.cc             | 10 ++++++++++
 src/hb-uniscribe.cc       | 10 ++++++++++
 7 files changed, 73 insertions(+)

commit 5dd86aa33b4e52a0de4fcd96b2ea7bafcae8dd34
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 27 04:28:40 2018 -0700

    [docs] Rename section titles to object names

    More useful.

 src/hb-blob.cc       | 2 +-
 src/hb-buffer.cc     | 2 +-
 src/hb-face.cc       | 4 ++--
 src/hb-font.cc       | 4 ++--
 src/hb-map.cc        | 2 +-
 src/hb-set.cc        | 2 +-
 src/hb-shape-plan.cc | 2 +-
 src/hb-unicode.cc    | 2 +-
 8 files changed, 10 insertions(+), 10 deletions(-)

commit 524fb70216d7fec17f5327237faa4d092ae15a00
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 27 04:27:36 2018 -0700

    [docs] More

 src/hb-map.cc | 11 ++++++++++-
 src/hb-set.cc | 11 ++++++++++-
 2 files changed, 20 insertions(+), 2 deletions(-)

commit 46072b7cb55bfeb8c46a78cbdb335dfdcce48298
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 27 04:21:20 2018 -0700

    [ot] Fold hb-ot-tag.h into hb-ot-layout.h

 docs/harfbuzz-docs.xml     |  1 -
 docs/harfbuzz-sections.txt | 20 +++++-------
 src/Makefile.sources       |  1 -
 src/hb-graphite2.cc        |  2 +-
 src/hb-ot-layout.h         | 42 ++++++++++++++++++++++++-
 src/hb-ot-tag.h            | 78
 ----------------------------------------------
 src/hb-ot.h                |  1 -
 src/hb-uniscribe.cc        |  2 +-
 8 files changed, 51 insertions(+), 96 deletions(-)

commit 00cf4e5eb6dcb04406d5a519712da799277cec2e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 27 04:07:33 2018 -0700

    [docs] Fill in some sections

 docs/harfbuzz-docs.xml     | 20 ++++++--------
 docs/harfbuzz-sections.txt | 65
 +++++++++++++++++++---------------------------
 src/hb-blob.cc             | 13 ++++++++++
 src/hb-buffer.cc           |  3 ++-
 src/hb-common.cc           | 23 ++++++++++++++++
 src/hb-face.cc             | 13 ++++++++++
 src/hb-font.cc             | 13 ++++++++++
 src/hb-shape-plan.cc       | 13 ++++++++++
 src/hb-shape.cc            |  4 ++-
 src/hb-unicode.cc          | 14 ++++++++++
 10 files changed, 129 insertions(+), 52 deletions(-)

commit 55a19d73b4d5e7ddd328263d241a442f16f005b2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 27 04:01:19 2018 -0700

    Move HB_EXTERN

 src/hb-common.h | 4 ++++
 src/hb.h        | 4 ----
 2 files changed, 4 insertions(+), 4 deletions(-)

commit 524e854c15f9d6c50c5456ae0e188f039dcf153c
Merge: 4ee3c827 8180c37d
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Oct 27 15:04:43 2018 +0330

    Merge pull request #1318 from ebraminio/png

    Add a non-hooked _png _svg get emoji blob

commit 8180c37df0a856dbc3564c0aefd8b2acab8baf8a
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Oct 27 14:45:00 2018 +0330

    [ot-color] Remove _png and _svg public APIs

 docs/harfbuzz-sections.txt |  4 ----
 src/dump-emoji.cc          | 11 ++++++++---
 src/hb-ot-color.cc         | 39 +++++++++++++++++++++++++++++++++++----
 src/hb-ot-color.h          | 24 ------------------------
 test/api/test-ot-color.c   |  8 ++++++--
 5 files changed, 49 insertions(+), 37 deletions(-)

commit 9aa6279a2d64ab8057b0d7acbcc77044442c6d0e
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Oct 27 14:24:58 2018 +0330

    [ot-color/png] Try to get image blob from sbix first options.aat
    is set

 src/hb-ot-color.cc | 16 +++++++++++-----
 1 file changed, 11 insertions(+), 5 deletions(-)

commit b42661ee91ea92309e827a970f370cacc62c73aa
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Oct 27 14:15:38 2018 +0330

    [ot-color] Add some documentation

 src/hb-ot-color.cc | 37 +++++++++++++++++++------------------
 src/hb-ot-color.h  |  2 +-
 2 files changed, 20 insertions(+), 19 deletions(-)

commit 4ee3c8272c31736980218cba95f97fed53d24e14
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 27 03:18:45 2018 -0700

    [docs] Fix hb_name_id_t

    Yep, was not recognized without this patch!

 src/hb-ot-name.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9435fb24daadf08add9a701816da01bd54c0cd78
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Oct 27 13:32:14 2018 +0330

    [ot-color/png] Implement CBDT part

 src/hb-ot-color-cbdt-table.hh | 56
 +++++++++++++++++++++++++++++++++++++++----
 src/hb-ot-color.cc            | 19 ++-------------
 src/hb-ot-color.h             |  4 ++++
 test/api/test-ot-color.c      | 25 ++++++++++++++++---
 4 files changed, 79 insertions(+), 25 deletions(-)

commit 9457cfd7bcc9c2fff38194f2bb82ab7be881bfeb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 27 03:15:34 2018 -0700

    [docs] Hook up hb-map

 docs/harfbuzz-docs.xml | 1 +
 1 file changed, 1 insertion(+)

commit d941f66c75fe26f909b1ba248535cc372bbde851
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 27 02:55:52 2018 -0700

    [name] Make hb_name_id_t be the enum

    This is like hb_script_t.

    We had this exposed as unsigned int since 2.0.0 release in two APIs,
    as well as hb_ot_layout_get_size_params() from earlier.
    But since no one uses those (right?!), let's just fix this now.

 docs/harfbuzz-docs.xml        |  6 ++++--
 docs/harfbuzz-sections.txt    |  4 +++-
 src/hb-ot-color-cpal-table.hh | 12 ++++++------
 src/hb-ot-layout.cc           | 16 ++++++++--------
 src/hb-ot-name-table.hh       |  2 +-
 src/hb-ot-name.h              | 15 ++++-----------
 src/test-size-params.cc       |  2 +-
 7 files changed, 27 insertions(+), 30 deletions(-)

commit 40496a54a03864c5e6a1224c18b4b93a1f578eed
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 27 02:49:32 2018 -0700

    [name] Move HB_NAME_ID_INVALID into the enum

    Don't know how to document anonymous enum members.

 src/hb-ot-name.h | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit a8a55b9f892a5e4f086b20bbe337dc29182210af
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 27 02:45:57 2018 -0700

    [name] Move around

 src/hb-ot-name.h | 74
 ++++++++++++++++++++++++++++----------------------------
 1 file changed, 37 insertions(+), 37 deletions(-)

commit 3b7e5f131383956e19642d28c938f1bc0d16295f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 27 02:39:20 2018 -0700

    [name] Rename hb_ot_name_get_names() to hb_ot_name_list_names()

    And swap return value positions, so can be annotated for
    gobject-introspectin.

 docs/harfbuzz-sections.txt |  2 +-
 src/hb-ot-name.cc          | 17 ++++++++---------
 src/hb-ot-name.h           |  6 +++---
 src/test-name-table.cc     |  4 ++--
 4 files changed, 14 insertions(+), 15 deletions(-)

commit 4025ad804383dc8d5ace9654ae21d4d726d0dbc4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 27 02:35:06 2018 -0700

    Document new API

 src/hb-common.h     | 30 +++++++++++++++++++++++++-
 src/hb-ot-color.cc  | 16 +++++++-------
 src/hb-ot-layout.cc |  2 +-
 src/hb-ot-name.cc   | 61
 ++++++++++++++++++++++++++++++++++++++++++++++++++++-
 src/hb-ot-name.h    | 15 +++++++++++++
 5 files changed, 113 insertions(+), 11 deletions(-)

commit 5e2a52f71a8d081441fbc1c57a3550e3a9573e46
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Oct 27 12:44:33 2018 +0330

    [sbix] Remove dump method from sbix accelerator

 src/dump-emoji.cc             | 36 ++++++++++++++++++++++++------------
 src/hb-ot-color-sbix-table.hh | 26 ++++++++++----------------
 2 files changed, 34 insertions(+), 28 deletions(-)

commit 0353ac6cde47df8f5386733f5c12cc60732a5bf4
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Oct 27 12:24:53 2018 +0330

    Fix test-name-table on older bots

 src/test-name-table.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit dc11a38107ac1f0a2d3edacae33ff7f10f5e894c
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Oct 27 12:15:25 2018 +0330

    [sbix] Set num_glyphs on accelerator

    dump-emoji was broken without it

 src/hb-ot-color-sbix-table.hh | 1 +
 1 file changed, 1 insertion(+)

commit 6a38fd68a8f4e66d9248e0c943ae3a1cf45c521b
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Oct 27 10:50:53 2018 +0330

    [ot-color/png] sbix runtime memory check

 src/hb-ot-color-cbdt-table.hh | 16 +++++++---------
 src/hb-ot-color-sbix-table.hh | 18 ++++++++++++------
 src/hb-ot-color-svg-table.hh  |  4 ++--
 3 files changed, 21 insertions(+), 17 deletions(-)

commit ca645accb97841e01846e45cda32e6bd2ad15940
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 27 00:39:31 2018 -0700

    Comment

 src/hb-ot-shape-complex-indic.cc | 2 ++
 1 file changed, 2 insertions(+)

commit 265ad408ca41e9d0b5a1056a751d834d4eadc911
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Oct 26 23:55:11 2018 +0330

    [ot-color/png] Implement sbix part

 docs/harfbuzz-sections.txt    |  2 +
 src/dump-emoji.cc             |  5 ++-
 src/hb-ot-color-cbdt-table.hh | 27 ++++++++----
 src/hb-ot-color-sbix-table.hh | 98
 +++++++++++++++++++++++++++++++++++++------
 src/hb-ot-color.cc            | 64 ++++++++++++++++++++++++++++
 src/hb-ot-color.h             |  9 ++++
 test/api/test-ot-color.c      | 32 ++++++++++++++
 7 files changed, 215 insertions(+), 22 deletions(-)

commit 7f5941e162bf7806299656edafd452a47b5a55b9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 27 00:06:48 2018 -0700

    Remove stale comment

    Ugliness was fixed in 30eab97a0072fbc22d353082249e0e6e546cd86b
    But yeah, my smell detector was working.  Ugliness was buggy.

 src/hb-ot-shape-normalize.cc | 1 -
 1 file changed, 1 deletion(-)

commit e7400c0275cad4f584eeaf21ce6d5c6adca29bbb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 26 22:09:17 2018 -0700

    [docs] Hook up new symbols

 docs/harfbuzz-docs.xml     | 46
 +++++++++++++++++++++++++++++++++++++++++-----
 docs/harfbuzz-sections.txt | 21 +++++++++++++++++++++
 src/hb-ot-color.cc         |  2 +-
 3 files changed, 63 insertions(+), 6 deletions(-)

commit 6aa019c4af6b64bb732205e6051f3e73e1b70721
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 26 22:02:17 2018 -0700

    [morx] Fix merge_cluster to end at last ligature component

    Don't assume current position was a component in the ligature.

 src/hb-aat-layout-morx-table.hh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 00ae4be6bf8b1d0800043167c5cf95187ac12515
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 26 21:59:20 2018 -0700

    [morx] Fix bailing out ligation at end-of-text

    Check was after a move_to, which wouldn't work.

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

 src/hb-aat-layout-morx-table.hh | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 30eab97a0072fbc22d353082249e0e6e546cd86b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 26 21:54:07 2018 -0700

    Fix invalid memory read

    Buffer might be relocated inside replace_glyphs().

    Fixes https://bugs.chromium.org/p/chromium/issues/detail?id=895117

 src/hb-ot-shape-normalize.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 79b2fa62ca7eb5a875778d3a2ecae63350083ba3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 26 21:21:18 2018 -0700

    [indic] Fix infinite loop

    Fixes https://bugs.chromium.org/p/chromium/issues/detail?id=863044

 src/hb-ot-shape-complex-indic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 39bd07aed5fe6ccddde53206bafceec32d56dcc1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 26 21:01:11 2018 -0700

    Fix bunch of unused parameter warnings

    Show up with gcc -O0.

    There's a few more but those are functions that need to be filled in.

    Maybe this is a lost battle...

 src/gen-vowel-constraints.py                 |  4 ++--
 src/hb-aat-layout-common.hh                  |  7 +++++--
 src/hb-aat-layout-kerx-table.hh              |  4 ++--
 src/hb-aat-layout-morx-table.hh              | 10 +++++-----
 src/hb-face.cc                               |  2 +-
 src/hb-font.cc                               | 29
 ++++++++++++++--------------
 src/hb-graphite2.cc                          |  9 ++++++---
 src/hb-machinery.hh                          |  4 ++--
 src/hb-ot-color-cbdt-table.hh                |  2 +-
 src/hb-ot-glyf-table.hh                      |  4 ++--
 src/hb-ot-hmtx-table.hh                      |  2 +-
 src/hb-ot-layout-gpos-table.hh               |  2 +-
 src/hb-ot-math-table.hh                      |  2 +-
 src/hb-ot-maxp-table.hh                      |  2 +-
 src/hb-ot-shape-complex-arabic-fallback.hh   |  6 +++---
 src/hb-ot-shape-complex-arabic.cc            |  6 +++---
 src/hb-ot-shape-complex-hangul.cc            |  2 +-
 src/hb-ot-shape-complex-khmer.cc             |  2 +-
 src/hb-ot-shape-complex-myanmar.cc           |  6 +++---
 src/hb-ot-shape-complex-use.cc               |  8 ++++----
 src/hb-ot-shape-complex-vowel-constraints.cc |  4 ++--
 src/hb-ot-shape-fallback.cc                  |  4 ++--
 src/hb-ot-shape-normalize.cc                 |  4 +++-
 src/hb-ot-shape.cc                           |  2 +-
 src/hb-ot-tag.cc                             |  3 +--
 src/hb-ot-vorg-table.hh                      |  2 +-
 src/hb-set.cc                                |  2 +-
 src/hb-shape-plan.cc                         |  2 +-
 src/hb-utf.hh                                |  2 +-
 29 files changed, 73 insertions(+), 65 deletions(-)

commit b2e1ec374cbd2a6e4d79419bd5601a4e2ecb9864
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 26 20:45:28 2018 -0700

    [subset] Fix warning

 src/hb-subset.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 337ea0b7175793305e9d8935aecf385b707a5bc4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 26 20:31:14 2018 -0700

    [fuzzing] Remove HB_NDEBUG

    Not sure why it ever was added.

 src/Makefile.am | 1 -
 1 file changed, 1 deletion(-)

commit 12058e44d100c28816f42c91c63a0f960a662181
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 26 16:23:50 2018 -0700

    [fuzzing] Add more test

 ...z-testcase-minimized-harfbuzz_fuzzer-5659690013556736 | Bin 0 ->
 2732 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)

commit c965eeadbc71943f2336a20dc16ac691c805b90e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 25 13:43:25 2018 -0700

    [name] Default to "en" if language is not specified

 src/hb-ot-name.cc | 3 +++
 1 file changed, 3 insertions(+)

commit 3fd6e5dbefe52a4a2e604c28a4edfbd40ed16027
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 24 13:42:38 2018 -0700

    [name] Add pre-defined nameIDs

 src/hb-ot-name.h | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

commit 20d0171d20cf9f3f93bdd6878bbc1d7d8329e75f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 24 13:20:19 2018 -0700

    [name] Fill out most missing language codes

 src/hb-ot-name-language.cc | 114
 +++++++++++++++++++++++----------------------
 1 file changed, 58 insertions(+), 56 deletions(-)

commit 622b014faf7bbe7a97f9aff959c434d1664c10d0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 24 12:40:15 2018 -0700

    [name] Skip enumerating names with unknown language

 src/hb-ot-name-table.hh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 2c39f359e4a7312e3b518f76815d79e42ee96a32
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 24 12:34:30 2018 -0700

    [utf] Remove unused typedef

 src/hb-utf.hh | 1 -
 1 file changed, 1 deletion(-)

commit ce81c7429810ad3902c37e50016ca54b9bae6f91
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 24 12:34:03 2018 -0700

    [utf] Fix ASCII

 src/hb-utf.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 327546e633b590d6dedfb901810ccf490a0bf922
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 23 23:33:44 2018 -0700

    [name] Hook up ltag table

 src/hb-aat-layout.cc     | 15 ++++++++++++++-
 src/hb-aat-layout.hh     |  5 +++++
 src/hb-aat-ltag-table.hh | 17 +++++++++++++++--
 src/hb-ot-face.hh        |  3 ++-
 src/hb-ot-name-table.hh  |  9 +++++----
 5 files changed, 41 insertions(+), 8 deletions(-)

commit dc9a5f88b401fcad598946fcf735010c563741ac
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 23 23:16:06 2018 -0700

    [name] Do record sanitization at run-time

 src/hb-dsalgs.hh        | 62
 +++++++++++++++++++++++++++----------------------
 src/hb-ot-name-table.hh | 22 +++++++++++-------
 src/hb-ot-name.cc       |  2 +-
 3 files changed, 49 insertions(+), 37 deletions(-)

commit a53d301b1c9f72cb42cc0fc321e2ad4dbac8e064
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 23 23:05:55 2018 -0700

    [name] Minor

 src/hb-ot-name-table.hh | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit c442fd9a10b3e91ab18720188afff08325adf6dc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 23 22:45:45 2018 -0700

    [name] Add src/test-name-table tool to show all font names

 src/Makefile.am        | 17 ++++++++-----
 src/test-name-table.cc | 67
 ++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 78 insertions(+), 6 deletions(-)

commit 7007bd9dff9f8eef3263f1b39327552ff1ebae3f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 23 22:44:36 2018 -0700

    [name] Rebuild language list, include missing entries

 src/hb-ot-name-language.cc | 634
 ++++++++++++++++++++++++++-------------------
 1 file changed, 370 insertions(+), 264 deletions(-)

commit 68f172101c1228a7d669d71da1d0eeb96a10565e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 23 22:19:09 2018 -0700

    [name] Fix cmp for invalid language

 src/hb-ot-name-table.hh | 3 +++
 1 file changed, 3 insertions(+)

commit 888a65615c7b11222749ae85c124aaa9a36fe863
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 23 22:16:32 2018 -0700

    [name] Fix nul-termination bug

 src/hb-ot-name.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9b532e2ed432611005b19c40cac7e626afcccd08
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 23 22:00:19 2018 -0700

    [name] Add language mapping

 src/Makefile.sources       |   2 +
 src/hb-ot-name-language.cc | 349
 +++++++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-name-language.hh |  40 ++++++
 src/hb-ot-name-table.hh    |  21 ++-
 4 files changed, 399 insertions(+), 13 deletions(-)

commit e2f9b657758cda3708c0a9db971c467ca59d5c19
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 23 21:19:56 2018 -0700

    [name] Start adding language support

 src/hb-ot-name-table.hh | 25 ++++++++++++++++++++++++-
 1 file changed, 24 insertions(+), 1 deletion(-)

commit 6db6bbe64bd63554919647c5b527e03aedbaee4e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 23 21:12:58 2018 -0700

    [name] Remove unused cmp function

 src/hb-ot-name-table.hh | 16 ----------------
 1 file changed, 16 deletions(-)

commit 4668a05006e6c4797df19651489b4589817e1e01
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 23 20:51:53 2018 -0700

    [name] Hook things up

    Accept Mac Latin name entries as ASCII as well.

 src/hb-ot-name-table.hh | 24 +++++++++++++++------
 src/hb-ot-name.cc       |  8 +++++--
 src/hb-utf.hh           | 55
 +++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 79 insertions(+), 8 deletions(-)

commit 69f5da0629f1e5a307fc49fe58490aa92d1bd0e2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 23 20:30:40 2018 -0700

    [name] More

    It assumes all names are encoded in UTF16-BE.  Other than that,
    and not
    listing languages correctly, it's *supposed* to work.

 src/hb-dsalgs.hh                | 21 +++++++++++++++++++++
 src/hb-ot-name-table.hh         | 37
 ++++++++++++++++++++++++++++++-------
 src/hb-ot-name.cc               | 12 ++++++++----
 src/hb-ot-os2-unicode-ranges.hh | 10 +++++-----
 src/hb-unicode.cc               |  8 ++++----
 src/hb-unicode.hh               |  2 +-
 6 files changed, 69 insertions(+), 21 deletions(-)

commit 64334aff8c2ea5aa066d77a95844bc6f84efe725
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 23 20:15:53 2018 -0700

    [name] Fix check

 src/hb-ot-name.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 5531bd068e759a5acb3b8d301c0ff9c64844166e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 23 20:04:05 2018 -0700

    [name] Flesh out UTF-X to UTF-X conversion routines

 src/hb-ot-name.cc |  84 ++++++++++++++++++++++++++++++++++++------
 src/hb-ot-name.h  |  10 ++---
 src/hb-utf.hh     | 107
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 182 insertions(+), 19 deletions(-)

commit 84811a06a26508effe9f4a9eaf1be15297ecf0cb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 23 03:16:03 2018 -0700

    [name] Fix for rebase changes to hb_array_t

 src/hb-ot-name-table.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 1046b1938b16ab6be861b0828b446fa13cf0377b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 17 05:42:23 2018 -0700

    [name] Some more

 src/hb-ot-name.cc | 19 +++++++++++++------
 1 file changed, 13 insertions(+), 6 deletions(-)

commit b4d4d1ea787c829dea023d99f974a38bdc3de0ae
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 16 19:55:17 2018 -0700

    [name] Return full string length from API

 src/hb-ot-name.cc | 6 +++---
 src/hb-ot-name.h  | 6 +++---
 2 files changed, 6 insertions(+), 6 deletions(-)

commit 8d304ef7f9094a71fabc3efd87b37a030c437adf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 16 19:04:48 2018 -0700

    [utf] Add UTF16-BE and UTF32-BE

 src/hb-buffer.cc |  4 +--
 src/hb-utf.hh    | 80
 ++++++++++++++++++++++++++++++++------------------------
 2 files changed, 48 insertions(+), 36 deletions(-)

commit a826a8730f21ae996ae8f4d12c44dc18b9e8e933
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 16 13:06:56 2018 -0700

    [name] Hide internal details from public API

 src/hb-ot-name-table.hh | 23 +++++++++++++----------
 src/hb-ot-name.h        |  3 +--
 2 files changed, 14 insertions(+), 12 deletions(-)

commit e7c595a9f09ba1552b2de1f8d56cbdcf376b9cad
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 15 23:34:54 2018 -0700

    [name] More

 src/hb-ot-name.cc | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 75cd8c86bd9b0973864bb92e0244bf038980765e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 15 23:32:08 2018 -0700

    [name] Add hb_ot_name_get_utf()

 src/hb-ot-name.cc | 24 ++++++++++++++++++------
 1 file changed, 18 insertions(+), 6 deletions(-)

commit c783d36324dd1e2031d3387064afab1ce5d90b6f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 15 23:28:49 2018 -0700

    [name] Pre-allocate array

 src/hb-ot-name-table.hh | 1 +
 1 file changed, 1 insertion(+)

commit c2aa409537c3e8a7b8592ef90f8304bd6588561d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 15 23:09:28 2018 -0700

    [name] Start implementing hb_ot_name_get_utf16()

 src/hb-ot-name-table.hh |  6 ++++--
 src/hb-ot-name.cc       | 22 ++++++++++++++++++++++
 src/hb-ot-name.h        |  8 ++++++--
 3 files changed, 32 insertions(+), 4 deletions(-)

commit 740cde8991283b8b4e1e77e022175251eb37d3d1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 15 23:00:27 2018 -0700

    [name] Implement hb_bytes_t get_name()

 src/hb-ot-name-table.hh | 24 +++++-------------------
 1 file changed, 5 insertions(+), 19 deletions(-)

commit c3425f2401dffb1f3b5bd6fdbc0c3e9aad0f4306
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 15 22:53:40 2018 -0700

    [name] Add hb-ot-name.cc for realz

 src/hb-ot-name.cc | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 50 insertions(+)

commit 90420ed8cb297f1ceff75f5a75c8fa7b6ea6f65e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 15 22:48:48 2018 -0700

    [name] Implement hb_ot_name_get_names()

 src/Makefile.sources    | 1 +
 src/hb-ot-name-table.hh | 3 +--
 src/hb-ot-name.h        | 4 ++--
 3 files changed, 4 insertions(+), 4 deletions(-)

commit 9a6c87c17d51fd57e4225c776a0fabbfd313f4f4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 15 22:42:04 2018 -0700

    [name] Finish accelerator sorting

 src/hb-ot-name-table.hh | 61
 +++++++++++++++++++++++++++++++++++++++++--------
 src/hb-ot-name.h        |  3 ++-
 2 files changed, 53 insertions(+), 11 deletions(-)

commit 2157e56b34e7b932dd144ee3563f5bd682bbed30
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 15 22:22:50 2018 -0700

    [name] Start implementing public API infrastructure

 src/hb-ot-face.cc       |  1 +
 src/hb-ot-face.hh       |  7 +++---
 src/hb-ot-name-table.hh | 60
 +++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-name.h        |  3 +++
 4 files changed, 68 insertions(+), 3 deletions(-)

commit 0bf93ec0fb549d838b0a246de02a95559a9b2772
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 15 21:34:10 2018 -0700

    [name] Add public API declarations

 src/hb-ot-name.h | 34 ++++++++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)

commit 982c2f4a65d127e56e09e7ab583f84099b8136bb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 26 15:40:12 2018 -0700

    [indic/khmer/myanmar/use] Clarify clear_syllable

    No logic change.

 src/hb-ot-shape-complex-indic.cc   |  3 ++-
 src/hb-ot-shape-complex-khmer.cc   |  4 +---
 src/hb-ot-shape-complex-myanmar.cc | 40
 ++++++++++++++++++--------------------
 src/hb-ot-shape-complex-use.cc     | 22 +++++++++++++++------
 4 files changed, 38 insertions(+), 31 deletions(-)

commit 143ffe65aa7f20d6c53219905cbc2520d680b8dd
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Oct 26 12:14:30 2018 +0330

    [fuzz] Add a new testcase

 ...z-testcase-minimized-hb-shape-fuzzer-5658272078495744 | Bin 0 ->
 2252 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)

commit 30f18039b3c0e5748101f8934ae82aebfc5a83f7
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Oct 26 09:34:34 2018 +0330

    [svg] Rename _svg_create_blob to _glyph_reference_blob_svg

 docs/harfbuzz-sections.txt | 2 ++
 src/dump-emoji.cc          | 2 +-
 src/hb-ot-color.cc         | 4 ++--
 src/hb-ot-color.h          | 2 +-
 test/api/test-ot-color.c   | 6 +++---
 5 files changed, 9 insertions(+), 7 deletions(-)

commit 5cb1ce868138a10c0663a18c3891bc717aa4bc64
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Oct 25 22:39:58 2018 +0330

    [svg] Collapse SVGDocumentIndex into SVG

 src/hb-ot-color-svg-table.hh | 54
 +++++++++++++++-----------------------------
 src/hb-ot-color.cc           |  2 +-
 test/api/test-ot-color.c     |  2 +-
 3 files changed, 20 insertions(+), 38 deletions(-)

commit 4ceabb8c2126fe365303b8d69e667005276c0241
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Oct 25 21:52:35 2018 +0330

    [svg] Hide start_glyph and end_glyph from API

 src/dump-emoji.cc            | 21 ++++++++-------------
 src/hb-ot-color-svg-table.hh | 42
 ++++++++++++------------------------------
 src/hb-ot-color.cc           |  9 ++-------
 src/hb-ot-color.h            |  5 +----
 test/api/test-ot-color.c     | 11 ++---------
 5 files changed, 25 insertions(+), 63 deletions(-)

commit c7a4e3dfb5c8dd4f8faf08e327bb1900c0096cf6
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Oct 23 18:00:48 2018 +0330

    [svg] Add public API

    * hb_ot_color_has_svg
    * hb_ot_color_glyph_svg_create_blob

 src/dump-emoji.cc             | 51 +++++++++++++++----------
 src/hb-open-type.hh           |  1 -
 src/hb-ot-color-sbix-table.hh |  2 +
 src/hb-ot-color-svg-table.hh  | 86
 ++++++++++++++++++++++++++++++++-----------
 src/hb-ot-color.cc            | 53 ++++++++++++++++++++++----
 src/hb-ot-color.h             | 13 +++++++
 src/hb-ot-face.cc             |  2 +
 src/hb-ot-face.hh             |  4 +-
 src/hb-ot-layout.cc           |  4 --
 test/api/test-ot-color.c      | 43 +++++++++++++++++++---
 10 files changed, 199 insertions(+), 60 deletions(-)

commit e98af6d1eda33346f72de8a45fbd317fc0e15935
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 25 22:25:29 2018 -0700

    [layout] Try to speed up collect_lookups some more

    Barely made a dent :(.

 src/hb-ot-layout-common.hh |  2 ++
 src/hb-ot-layout.cc        | 23 ++++-------------------
 2 files changed, 6 insertions(+), 19 deletions(-)

commit eb44bfc864f91c0c833c3156475d191ac1b79c72
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 25 21:42:19 2018 -0700

    [layout] Memoize collect_features

    Fixes https://github.com/harfbuzz/harfbuzz/pull/1317
    Fixes https://oss-fuzz.com/v2/testcase-detail/6543700493598720

 src/hb-ot-layout.cc | 55
 ++++++++++++++++++++++++++++++++++++++++++++++-------
 1 file changed, 48 insertions(+), 7 deletions(-)

commit 84098b1639775aea5bf3f5d91fa6e657b612ce3a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 25 21:33:12 2018 -0700

    [layout] Remove unintentionally added code

 src/hb-ot-layout-common.hh | 2 --
 1 file changed, 2 deletions(-)

commit 941600a9e06309f148d51403fa07dc56ce542572
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 25 21:26:08 2018 -0700

    [layout] Add hb_collect_features_context_t

    Towards https://github.com/harfbuzz/harfbuzz/pull/1317

 src/hb-ot-layout.cc | 66
 +++++++++++++++++++++++++++++------------------------
 1 file changed, 36 insertions(+), 30 deletions(-)

commit c237cdfcc74d33f77b2399b4d08228c2fcf50df5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 25 21:17:30 2018 -0700

    [lookup] Fold another function inline

 src/hb-ot-layout.cc | 48 +++++++++++++++++++++---------------------------
 1 file changed, 21 insertions(+), 27 deletions(-)

commit fe5520ddea3941f7a72888d908fd2b895e2f388e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 25 20:58:34 2018 -0700

    [layout] More prep work to memoize collect_features() work

 src/hb-ot-layout.cc | 62
 ++++++++++++++++++++---------------------------------
 1 file changed, 23 insertions(+), 39 deletions(-)

commit e8e67503ff0a50eb10ad410d6a76a282ea494cf4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 25 20:48:20 2018 -0700

    [lookup] More prep work for memoizing collect_features

    https://github.com/harfbuzz/harfbuzz/pull/1317

 src/hb-ot-layout-common.hh |  2 ++
 src/hb-ot-layout.cc        | 83
 +++++++++++++++++++++-------------------------
 2 files changed, 40 insertions(+), 45 deletions(-)

commit 96828b97a8fc2c50721ce040bdde63c462908791
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 25 20:34:29 2018 -0700

    [layout] Minor

    We were returning the accelerator's lookup count.  Returns table's.
    They are the same except for OOM cases.  Just shorter code.

 src/hb-ot-layout.cc | 14 +-------------
 1 file changed, 1 insertion(+), 13 deletions(-)

commit 73449cd213c3a12468e99b9c3d840fc60a334902
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 25 20:32:05 2018 -0700

    [layout] Fold one function inline

    Preparation for fixing https://github.com/harfbuzz/harfbuzz/pull/1317

 src/hb-ot-layout.cc | 22 +++-------------------
 1 file changed, 3 insertions(+), 19 deletions(-)

commit ba5ca6a762cb46a17f41673b14996a12e6cfe3d1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 25 17:41:26 2018 -0700

    [morx] Use deleted-glyph, instead of actual deletion, in Ligation

    Closer to what CoreText does.

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1302

 src/hb-aat-layout-morx-table.hh | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 5c272e3613667ca532f32764824784c63d797f57
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 25 17:36:33 2018 -0700

    [morx] Remove deleted-glyph at the end of processing

 src/hb-aat-layout-morx-table.hh | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

commit 1bb8ed86d6cfec0fc87c8e1930d9a86426b42001
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 25 17:33:48 2018 -0700

    [aat] Minor

 src/hb-aat-layout-common.hh | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

commit 102af615f15d04da20c17d80eb38f5948020f9ac
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 25 17:29:32 2018 -0700

    [aat] Start adding support for DELETED-GLYPH

    https://github.com/harfbuzz/harfbuzz/issues/1302

 src/hb-aat-layout-common.hh | 2 ++
 1 file changed, 2 insertions(+)

commit 955aa56b11e4fa14bc6d5b1b56cb810e28fab6cd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 25 16:50:38 2018 -0700

    [vector] Make it act more like pointer

    Add pointer cast operator and plus operator.

 src/hb-coretext.cc      |  2 +-
 src/hb-machinery.hh     |  2 +-
 src/hb-ot-cmap-table.hh |  2 +-
 src/hb-set.hh           |  8 ++++----
 src/hb-subset.cc        |  2 +-
 src/hb-uniscribe.cc     | 12 ++++++------
 src/hb-vector.hh        |  6 ++++++
 7 files changed, 20 insertions(+), 14 deletions(-)

commit 8d55e2adef9a376a5cf83c20aff2dba27dd64da8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 25 16:37:53 2018 -0700

    [set] Minor

 src/hb-set.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 64c32edfe18f5ef3b348e5c84077ee1f6faf4f48
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 25 16:35:36 2018 -0700

    [set] Make array access more explicit

    Follow up on 94e421abbfc7ede9aaf3c8d86bb0ff9992ea3123

 src/hb-set.hh | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit e3ceb2dde3525824de68914e12ad4e8a873ab90a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 25 14:30:24 2018 -0700

    Fix again

 test/shaping/data/in-house/fonts/DFONT.dfont | Bin 0 -> 3505 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)

commit eceeb85666814023f57ee3517bbb304830a60c55
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Oct 26 00:23:45 2018 +0330

    [docs] Add hb-ot-color section

 docs/harfbuzz-sections.txt | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

commit be746009e9b7063dcb57e30e342f9410387ef8b6
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Oct 25 13:40:40 2018 -0700

    dropped support of legacy CFF CharString ops

    along with test & font

 src/hb-cff1-interp-cs.hh          | 135
 +-------------------------------------
 test/api/fonts/cff1_legacyops.otf | Bin 3104 -> 0 bytes
 test/api/test-ot-extents-cff.c    |  23 -------
 3 files changed, 1 insertion(+), 157 deletions(-)

commit 1cfe702872058ebc50d6cb5543daa38fb3a7ebfb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 25 13:37:08 2018 -0700

    Fixup

 test/shaping/data/in-house/fonts/{TRAK.tff => TRAK.ttf} | Bin
 1 file changed, 0 insertions(+), 0 deletions(-)

commit 5739c876d0d080e7feaefd323245702c663f33be
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 25 13:23:33 2018 -0700

    [test] Rename some fonts

    If we have duplicae font files in different directories, that would
    break the oss-fuzz build currently.  So, rename some to avoid
    name class with text-rendering-test.  Would be better to find
    another solution.

 ...TestMORXTwentyeight.ttf => MORXTwentyeight.ttf} | Bin
 .../data/in-house/fonts/{TestTRAK.ttf => TRAK.tff} | Bin
 .../data/in-house/fonts/{TestTTC.ttc => TTC.ttc}   | Bin
 test/shaping/data/in-house/fonts/TestDFONT.dfont   | Bin 3505 -> 0 bytes
 test/shaping/data/in-house/tests/aat-morx.tests    |   2 +-
 test/shaping/data/in-house/tests/aat-trak.tests    |  22
 ++++++++++-----------
 test/shaping/data/in-house/tests/collections.tests |  12 +++++------
 7 files changed, 18 insertions(+), 18 deletions(-)

commit 21ede867df28d1214ca677a24ac65ab0b7e95f42
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 25 13:19:34 2018 -0700

    Fix possible overflow in bsearch impls

    From bungeman.

    Fixes https://github.com/harfbuzz/harfbuzz/pull/1314

 src/hb-dsalgs.hh               | 2 +-
 src/hb-open-type.hh            | 4 ++--
 src/hb-ot-cmap-table.hh        | 2 +-
 src/hb-ot-layout-gpos-table.hh | 2 +-
 src/hb-vector.hh               | 2 +-
 5 files changed, 6 insertions(+), 6 deletions(-)

commit 2ebf36010206cebdbe58bab6edf4e3bc011b6479
Merge: 36c2c374 94e421ab
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Oct 25 13:05:06 2018 -0700

    Merge branch 'master' into cff-subset

commit 94e421abbfc7ede9aaf3c8d86bb0ff9992ea3123
Author: Ben Wagner <bungeman@chromium.org>
Date:   Thu Oct 25 13:44:27 2018 -0400

    Remove some use of Crap in hb-set.

    When hb_set_t::page_for_insert needs to insert at the end of the
    page_map
    it ends up evaluating '&page_map[i + 1]' which has hb_vector return an
    lvalue of a Crap so that nothing can be moved to its address. This
    turns
    into issues with ThreadSanitizer on Crap when two threads modify
    different
    hb_set_t instances. This can be avoided by using '&page_map[i] + 1'
    instead.

 src/hb-set.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2798ac1c28edc4ba6f2283784d1027393f588f8c
Author: azure-pipelines[bot]
<azure-pipelines[bot]@users.noreply.github.com>
Date:   Thu Oct 25 15:22:54 2018 +0000

    Set up CI with Azure Pipelines

 azure-pipelines.yml | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

commit 9a830a17318446dab86e1439f7167d8a698eb856
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Thu Oct 25 01:55:10 2018 +0200

    [appveyor] Drop Cygwin builds again

    They are so slow and we had only a couple of Cygwin build failure
    reported in ~5 years.

 appveyor.yml | 11 -----------
 1 file changed, 11 deletions(-)

commit 00e51a10832965f4c1d65a6d71c9582782f02c2b
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Wed Oct 24 22:58:22 2018 +0200

    [appveyor] Limit make to three jobs

    https://github.com/harfbuzz/harfbuzz/pull/1309#issuecomment-432778270

 appveyor.yml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit ae9e8f292b2ad79b01776ae5785a94afbfc4b3e4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 24 16:46:07 2018 -0700

    [vowel-constraints] Reset continuation on all dottedcircles

    One of the was missed before.  Not intentional.

 src/gen-vowel-constraints.py                 | 9 +++++++--
 src/hb-ot-shape-complex-vowel-constraints.cc | 9 +++++++--
 2 files changed, 14 insertions(+), 4 deletions(-)

commit d2b20ba18dfe3fe507ee7cb64fd73e3f1e1e5ae0
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Wed Oct 24 11:37:09 2018 +0200

    [appveyor] Build on Cygwin and msys2 in parallel

 appveyor.yml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 0d2fa7fd4c4df0dcf7800b1267d1126e5a4b1ab1
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Wed Oct 24 11:23:21 2018 +0200

    [appveyor] Do not update msys2

    Looks like AppVeyor has new enough packages for our needs. Cuts
    CI build
    time by 5 minutes.

 appveyor.yml | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

commit 6a3ad245609ce8496d08404b28217dca8d01c10b
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Wed Oct 24 09:49:08 2018 +0200

    [appveyor] Organize config file a bit

 appveyor.yml | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit 0cd7d041d83ae28e8c7d8a156750464af76de291
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Wed Oct 24 09:43:10 2018 +0200

    [appveyor] Don’t build branches with open PR twice

 appveyor.yml | 3 +++
 1 file changed, 3 insertions(+)

commit 401cdf07922f66c762dabfd8e3d45c35e33de7c0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 23 17:00:49 2018 -0700

    [ot-font] Fix sign of ascent/descent

    Some fonts, like msmincho, have positive number as descent
    in vhea table.  That's wrong.  Just enforce sign on ascent/descent
    when reading both horizontal and vertical metrics.

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1248

 src/hb-ot-hmtx-table.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit ba502dea1e81981f3893b5353400909bf60e354f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 23 16:46:10 2018 -0700

    [morx] Fix cluster-merging when ligating

    Only merge when actual ligature happened.

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1305

 src/hb-aat-layout-morx-table.hh                          |   7 ++++---
 test/shaping/data/in-house/Makefile.sources              |   1 +
 test/shaping/data/in-house/fonts/TestMORXTwentyeight.ttf | Bin 0 ->
 2660 bytes
 test/shaping/data/in-house/tests/aat-morx.tests          |   1 +
 4 files changed, 6 insertions(+), 3 deletions(-)

commit aa5af8d041521507f8bc8ded8a365ee56098388c
Author: Garret Rieger <grieger@google.com>
Date:   Tue Oct 23 15:45:35 2018 -0700

    Fix size calculation in DEFINE_SIZE_ARRAY_SIZED.

 src/hb-machinery.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 36c2c374bf9c2d0ca903e601760e69bfc3da5388
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Oct 23 15:11:09 2018 -0700

    removed unused multi_val from DictVal

 src/hb-cff-interp-common.hh      | 16 ----------------
 src/hb-cff-interp-dict-common.hh |  3 ---
 src/hb-ot-cff1-table.hh          |  2 +-
 src/hb-ot-cff2-table.hh          |  1 -
 4 files changed, 1 insertion(+), 21 deletions(-)

commit f33ad6d69216a983624e832177895481549bdc07
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 23 14:31:51 2018 -0700

    [aat] Fix up previous commit and add files

 src/hb-aat-map.cc  |  62 +++++++++++++++++++++++++++++++
 src/hb-aat-map.hh  | 106
 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-map.cc   |   1 +
 src/hb-ot-shape.cc |  15 ++++++--
 4 files changed, 181 insertions(+), 3 deletions(-)

commit ffe347844803a6a9036d8357b744a982f5e5a6c9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 23 14:14:03 2018 -0700

    [aat] Allow enabling/disabling features

    Only works at entire-buffer range, not sub-ranges.

    Test with:

    $ hb-shape Zapfino.dfont Zapfino
    [Z_a_p_f_i_n_o=0+2333]

    $ hb-shape Zapfino.dfont Zapfino --features=-dlig
    [Z=0+416|a=1@-21,0+264|p_f=2+433|i=4+181|n=5+261|o=6+250]

    $ hb-shape Zapfino.dfont Zapfino --features=+dlig
    [Z_a_p_f_i_n_o=0+2333]

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1303

 src/Makefile.sources            |  2 ++
 src/hb-aat-layout-morx-table.hh | 29 +++++++++++++++++++++++++----
 src/hb-aat-layout.cc            |  8 ++++++++
 src/hb-aat-layout.hh            |  3 +++
 src/hb-ot-shape.cc              |  4 ++++
 src/hb-ot-shape.hh              |  5 +++++
 6 files changed, 47 insertions(+), 4 deletions(-)

commit 8be0e5fd4540b18e26b28b414bd99af3bb1548b1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 23 13:39:50 2018 -0700

    [ot-map] Minor

 src/hb-ot-map.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e8fccbc36b2cc5e1c9f218c83cad7f606c03e7a1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 23 13:25:03 2018 -0700

    Minor

 src/hb-ot-map.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 76324d95caa4b83cd4b515f516c2d3674455ea5e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 23 13:09:30 2018 -0700

    Shift code around

 src/hb-ot-shape.cc | 18 ++++++++++--------
 src/hb-ot-shape.hh |  9 +++------
 2 files changed, 13 insertions(+), 14 deletions(-)

commit e1241636d60a63cbfd741288716b55797a4dc8ee
Merge: 960267fc cf92d657
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Oct 23 11:25:51 2018 -0700

    Merge branch 'master' into cff-subset

commit cf92d6579e91d326598dcff93457fe85dfa962c2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 23 03:10:56 2018 -0700

    [trak] Allow disabling tracking for ranges of text

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1303

 src/hb-aat-layout-trak-table.hh                 |  4 ++++
 src/hb-ot-shape.cc                              | 11 +++++++----
 src/hb-ot-shape.hh                              |  5 ++++-
 test/shaping/data/in-house/tests/aat-trak.tests |  1 +
 4 files changed, 16 insertions(+), 5 deletions(-)

commit 8869436cb8a338b46c138305966a4b7b2c3ee374
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 23 03:07:48 2018 -0700

    When parsing feature ranges, accept ';' instead of ':'

 src/hb-common.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 22ecefd88e1ea1841f363057b948aa792ac871a6
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Oct 23 00:52:05 2018 +0330

    Make tracking optout possible using 'trak' ot feature

    So '--features=-trak' or 'font-feature-settings: 'trak' 0;'
    can prevent
    applying of tracking if used.

 src/hb-ot-shape.cc                              | 10 +++++++---
 test/shaping/data/in-house/tests/aat-trak.tests |  2 ++
 2 files changed, 9 insertions(+), 3 deletions(-)

commit 6d40eb8372a2c74a6e1294b44a2b19c99d11e7da
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 23 02:51:42 2018 -0700

    Touch up on previous commit

    https://github.com/harfbuzz/harfbuzz/pull/1273

 src/HBIndicVowelConstraints.txt              |  97 ++++++
 src/Makefile.am                              |   6 +-
 src/Makefile.sources                         |   1 +
 src/gen-vowel-constraints.py                 | 124 ++------
 src/hb-ot-shape-complex-indic.cc             |  10 +-
 src/hb-ot-shape-complex-use.cc               |  11 +-
 src/hb-ot-shape-complex-vowel-constraints.cc | 433
 ++++++++++++++++++++++++++
 src/hb-ot-shape-complex-vowel-constraints.hh | 447
 ++-------------------------
 8 files changed, 606 insertions(+), 523 deletions(-)

commit 205737acdc268b1c90cf00bde2d2038519a8bf48
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Fri Oct 12 16:54:54 2018 -0400

    [use] Prohibit visually ambiguous vowel sequences

 src/Makefile.am                                    |   7 +-
 src/Makefile.sources                               |   1 +
 src/gen-vowel-constraints.py                       | 286 ++++++++++++++
 src/hb-ot-shape-complex-indic.cc                   | 272 +------------
 src/hb-ot-shape-complex-use.cc                     |   3 +-
 src/hb-ot-shape-complex-vowel-constraints.hh       | 434
 +++++++++++++++++++++
 test/shaping/README.md                             |   4 +-
 .../46669c8860cbfea13562a6ca0d83130ee571137b.ttf   | Bin 0 -> 7184 bytes
 .../in-house/tests/use-vowel-letter-spoofing.tests |  94 +++++
 9 files changed, 827 insertions(+), 274 deletions(-)

commit 48ed598a356983f4623029dd5e87254fb59e3691
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 23 02:19:32 2018 -0700

    [VORG] Hook up to hb-ot-font's v_origin

    Fixes https://github.com/harfbuzz/harfbuzz/issues/544

    Test added with NotoSansCJK, eg. with U+FF38.

 src/hb-ot-face.cc                                        |   1 -
 src/hb-ot-font.cc                                        |  11
 +++++++++--
 src/hb-ot-vorg-table.hh                                  |   6 ++++--
 .../fonts/4cbbc461be066fccc611dcc634af6e8cb2705537.ttf   | Bin 0 ->
 2808 bytes
 test/shaping/data/in-house/tests/vertical.tests          |   1 +
 5 files changed, 14 insertions(+), 5 deletions(-)

commit 097ecfd4a991d4fa306bab7330d9952966e94d1f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 23 02:09:42 2018 -0700

    [VORG] Add get_y_origin()

    Unhooked.

 src/hb-ot-vorg-table.hh | 16 ++++++++++++++--
 1 file changed, 14 insertions(+), 2 deletions(-)

commit 6fb24d5e3e0cf61c0ed3574e5bcf4598a13d6b69
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 23 01:58:59 2018 -0700

    [VORG] Add VORG table

    Cherry-picked from cff-subset branch.

 src/Makefile.sources    |   1 +
 src/hb-ot-face.cc       |   1 +
 src/hb-ot-face.hh       |   1 +
 src/hb-ot-vorg-table.hh | 168
 ++++++++++++++++++++++++++++++++++++++++++++++++
 4 files changed, 171 insertions(+)

commit 531f9822b2e8a60f03c43d6f86ef9ed32c951f0e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 23 01:32:08 2018 -0700

    [morx] Add a few debug messages to Ligature chain

 src/hb-aat-layout-morx-table.hh | 10 ++++++++++
 1 file changed, 10 insertions(+)

commit 0e5bcdef7fb592f986ad5b4e07b80d2efb5e3344
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 23 00:39:44 2018 -0700

    [morx] Clear stack upon underflow when acting ligatures

 src/hb-aat-layout-morx-table.hh | 4 ++++
 1 file changed, 4 insertions(+)

commit 1bfb96a9c8d7653f0dee5c5fab3c6e85cea900cd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 22 23:41:47 2018 -0700

    [test/text-rendering-tests] Update from upstream

 test/shaping/data/text-rendering-tests/Makefile.sources  |   2 +-
 .../data/text-rendering-tests/fonts/TestTRAKOne.ttf      | Bin 0 ->
 1752 bytes
 2 files changed, 1 insertion(+), 1 deletion(-)

commit 792071de4075cb9af0793f0d7c70da0780923bb6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 22 23:38:34 2018 -0700

    [morx] Leave ligature on stack after ligating

    Test with Apple Color Emoji.ttf of ~66MB and following sequence:

    ./hb-shape Apple\ Color\ Emoji-old.ttf --font-funcs=ot -u
    U+1F468,200d,U+1F469,200d,U+1F467,200d,1f466

    Should form full family if matching works correctly.  It first makes
    family of three, then makes family of four out of that and the last
    two characters.

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1292

 src/hb-aat-layout-morx-table.hh | 1 -
 1 file changed, 1 deletion(-)

commit e1b8e933f099efae3c3e1f5706be19120b44de20
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Oct 23 09:23:48 2018 +0330

    [ci] Disable llvm-gcc

      #define Null(Type) Null<typename hb_remove_const<typename
      hb_remove_reference<Type>::value>::value>()

    raises:
      hb-blob.cc: In function 'hb_blob_t* hb_blob_get_empty()':
      hb-blob.cc:194: error: using 'typename' outside of template
      hb-blob.cc:194: error: using 'typename' outside of template

    Removing "typename"s fixes the issue but makes newer compiler fail
    apparently.

    Probably downstream can patch that locally till we get a solution.

 .circleci/config.yml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 8c78ced95b639730efd0edc521e4e81ad50af501
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 22 21:49:42 2018 -0700

    Unbreak builds

 src/hb-dsalgs.hh    | 2 +-
 src/hb-open-type.hh | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

commit 8d689f8a7bccda861bcb286d52f1a90fca52df0f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 22 21:33:18 2018 -0700

    Add hb_array<>() specialization for UnsizedArrayOf

    Related https://github.com/harfbuzz/harfbuzz/issues/1301

 src/hb-aat-layout-trak-table.hh | 2 +-
 src/hb-open-file.hh             | 2 +-
 src/hb-open-type.hh             | 8 ++++++++
 src/hb-ot-color-cpal-table.hh   | 6 +++---
 4 files changed, 13 insertions(+), 5 deletions(-)

commit abfbba191141c3e3cf2a391f365b5323f9dc37c0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 22 21:27:45 2018 -0700

    Add hb_array<>()

    Simplifies transient object creation.

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1301

 src/hb-aat-layout-trak-table.hh | 2 +-
 src/hb-dsalgs.hh                | 2 ++
 src/hb-open-file.hh             | 3 +--
 src/hb-ot-color-cpal-table.hh   | 6 +++---
 4 files changed, 7 insertions(+), 6 deletions(-)

commit 17ffbc070ff4190d8ebaf88f8db62f19e6fa370d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 22 21:22:25 2018 -0700

    [color] Use Index for colorIdx

    Doesn't matter, but matches the description.

 src/hb-ot-color-colr-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 07386ea410af13e8fc844eb939a6c6e47c2adaf1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 22 21:18:27 2018 -0700

    Remove const and references when binding Null()

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1299

    Removes anomaly I was seeing in cpal table trying to use implicit
    Null(NameID).

 src/hb-atomic.hh              | 5 +----
 src/hb-common.cc              | 2 +-
 src/hb-ft.cc                  | 2 +-
 src/hb-null.hh                | 4 ++--
 src/hb-open-type.hh           | 6 ++----
 src/hb-ot-color-cpal-table.hh | 8 ++------
 src/hb-static.cc              | 1 -
 src/hb.hh                     | 9 +++++++++
 8 files changed, 18 insertions(+), 19 deletions(-)

commit b18acab7bce062fef397d3d8b0efc7826f473b50
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 22 18:20:57 2018 -0700

    [color] Add HB_COLOR

    Normally I would have added to_string / from_string like other types
    have.  But since we don't use hb_color_t much, I'm not going to
    do that.
    Although, if we did, we could use it in hb-view to parse colors...

 src/hb-common.h | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

commit 228f96c9d09272c8f677935a640e75e173b817a3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 22 16:55:12 2018 -0700

    [color] Finish reviewing / revamping CPAL

    Now to hb_color_t.

 src/hb-ot-color-cpal-table.hh | 52
 ++++++++++++++++++++++---------------------
 src/hb-ot-color.cc            | 33 +++++----------------------
 src/hb-ot-color.h             | 10 ++++-----
 3 files changed, 38 insertions(+), 57 deletions(-)

commit 960267fc4315a138f0963e78407e3af2ec6007af
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Oct 22 16:37:39 2018 -0700

    fix build attempt ^4

 src/hb-ot-cff-common.hh | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

commit 683fad062792a199e2fe86fe161f41b9389d08c3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 22 16:35:03 2018 -0700

    [color] Minor

 src/hb-ot-color.cc | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

commit 14474d21040bf9b025b53bb9b0df599eaf260119
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 22 16:30:30 2018 -0700

    [color] Rely on CPALV1Tail Null object

 src/hb-ot-color-cpal-table.hh | 39
 ++++++++++++++-------------------------
 1 file changed, 14 insertions(+), 25 deletions(-)

commit d7865107ea4664e04c03a1d79678cdcadc0d5ea5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 22 16:18:34 2018 -0700

    Remove const from hb_array_t details

    Will come in through <T> if desired.

 src/hb-aat-layout-trak-table.hh | 6 +++---
 src/hb-dsalgs.hh                | 6 +++---
 src/hb-open-file.hh             | 4 ++--
 3 files changed, 8 insertions(+), 8 deletions(-)

commit f3336580dd0c6959a1871f92b4a37f7c0a4b2160
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 22 16:16:21 2018 -0700

    [color] Use hb_array_t in CPAL

    Doesn't work though, ouch :(.  Need to figure out if it's unreasonable
    to expect Null(T) inside hb_array_t<T> to see the later specialization
    of Null for NameID.

 src/hb-open-type.hh           |  3 ++-
 src/hb-ot-color-cpal-table.hh | 47
 ++++++++++++++++++++++---------------------
 src/hb-static.cc              |  1 +
 3 files changed, 27 insertions(+), 24 deletions(-)

commit 5ae18855d115577ff796158d483db7b890d9956f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 22 14:54:55 2018 -0700

    [color] Check for null CPAL arrays

    We cannot use a nullable offset here though.

 src/hb-ot-color-cpal-table.hh | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit 69ab72e4aa7cbf197873d38f7e623866b4e40502
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 22 14:51:40 2018 -0700

    [color] More CPAL rename

 src/hb-ot-color-cpal-table.hh | 104
 +++++++++++++++++++++---------------------
 src/hb-ot-color.cc            |   6 +--
 2 files changed, 54 insertions(+), 56 deletions(-)

commit 0befb06c468aa36f3337b5ef2235f6d69dda8397
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 22 14:46:21 2018 -0700

    [color] More CPAL rename

 src/hb-ot-color-cpal-table.hh | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

commit 3600d206037ef23d6448c79a3f010c4f903a971c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 22 14:43:12 2018 -0700

    [color] Rename vars in CPAL

 src/hb-ot-color-cpal-table.hh | 32 ++++++++++++++++----------------
 src/hb-ot-color.cc            |  1 +
 2 files changed, 17 insertions(+), 16 deletions(-)

commit ba055a8d53595ab49747ed3e02d90c9b6a3cf4f3
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Oct 22 16:20:04 2018 -0700

    fix build attempt ^3

 test/api/test-ot-extents-cff.c | 2 +-
 test/api/test-subset-cff1.c    | 1 +
 test/api/test-subset-cff2.c    | 1 +
 3 files changed, 3 insertions(+), 1 deletion(-)

commit b11032afaefb2c84f9a4bbffe95c91f6374df802
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Oct 22 15:52:37 2018 -0700

    fix build attempt ^2

 src/hb-ot-cff-common.hh        | 2 +-
 test/api/test-ot-extents-cff.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 3d3df5575c5be0e3c69b99ca1d8df2cea1672aaf
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Oct 22 15:23:39 2018 -0700

    fix build attempt

 src/hb-ot-cff-common.hh        |  5 ++++-
 test/api/test-ot-extents-cff.c | 11 +++++------
 test/api/test-subset-cff1.c    | 19 +++++++++----------
 test/api/test-subset-cff2.c    | 11 +++++------
 4 files changed, 23 insertions(+), 23 deletions(-)

commit 0babf761c986855f9cdd1a2679380ee6a02390c8
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Oct 23 01:33:45 2018 +0330

    Adopt dump-emoji with latest unreleased APIs changes (#1297)

 src/dump-emoji.cc | 24 +++++++++++-------------
 1 file changed, 11 insertions(+), 13 deletions(-)

commit 7997144b5f08c81b2cce2c7c2a085fb7eeb506e3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 22 13:02:04 2018 -0700

    [color] Revamp palette API

 src/hb-ot-color.cc       |  81 ++++++++++++++---------------
 src/hb-ot-color.h        |  26 +++++-----
 test/api/test-ot-color.c | 130
 +++++++++++++++++++++++------------------------
 3 files changed, 117 insertions(+), 120 deletions(-)

commit 3bf91bd2690cda34a7687ed5465dc4bb0672f2b6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 22 12:40:38 2018 -0700

    [color] Rewrite colr access

    COLR table has one function: return layers for a glyph, and we
    expose exactly
    that, so should just wire it through.  Also use sub_array() for
    verifiable
    safety.

    Also, BaseGlyphRecord's null object is enough.  We don't need to
    special-case
    the not-found.

 src/hb-dsalgs.hh              | 11 +++++++++
 src/hb-open-type.hh           |  2 +-
 src/hb-ot-color-colr-table.hh | 53
 +++++++++++++++++++++++--------------------
 src/hb-ot-color.cc            | 19 +---------------
 4 files changed, 41 insertions(+), 44 deletions(-)

commit 1de17bdb80b0668f4d4a4700e3f80c8caee3303d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 22 10:29:01 2018 -0700

    [colr] Add hb_ot_color_layer_t

    We never return parallel arrays from functions.  That's inconvenient
    and hard to bind.

 src/hb-ot-color.cc       | 18 ++++++++----------
 src/hb-ot-color.h        | 22 ++++++++++++++++------
 test/api/test-ot-color.c | 33 +++++++++++++++------------------
 3 files changed, 39 insertions(+), 34 deletions(-)

commit 3b3668acc8b16afacb96d8c525eff603ef5f411f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 21 19:23:11 2018 -0700

    [color] Rename / reorder a bit

    Implement has_data() for realz.

 src/hb-ot-color-colr-table.hh |  2 ++
 src/hb-ot-color-cpal-table.hh |  2 ++
 src/hb-ot-color.cc            | 78
 ++++++++++++++++++++++++-------------------
 src/hb-ot-color.h             | 33 ++++++++++++------
 test/api/test-ot-color.c      | 30 ++++++++---------
 5 files changed, 85 insertions(+), 60 deletions(-)

commit 570b77f7d2b41262ccb20fadbee2c6b455cd06c6
Merge: 857c5827 d440c8d3
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Oct 22 13:06:47 2018 -0700

    Merge branch 'master' into cff-subset

commit 9085a72deb041cf10edfa61d24b7c25f947f736b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 21 19:08:25 2018 -0700

    [cpal] Touch up palette flags

 src/hb-ot-color.h        | 16 ++++++++++------
 test/api/test-ot-color.c |  4 ++--
 2 files changed, 12 insertions(+), 8 deletions(-)

commit ee11fae9d0d2c16a3a4b4ecf5cf328ffe950bb03
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 21 19:02:47 2018 -0700

    [color] Rename "gid" to "glyph"

    We don't expose "gid" in API.

 src/hb-ot-color.cc | 12 ++++++------
 src/hb-ot-color.h  |  8 ++++----
 2 files changed, 10 insertions(+), 10 deletions(-)

commit 228fa71bf9186faedff48b3a259d696c7c07b5b5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 21 17:43:29 2018 -0700

    [colr] Move sanitize

 src/hb-ot-color-colr-table.hh | 17 ++++++++---------
 1 file changed, 8 insertions(+), 9 deletions(-)

commit d440c8d3fbb907f17b1eb9287918009ced27a8c1
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Oct 22 22:07:59 2018 +0330

    Add chromacheck Emoji test fonts and minor preparations (#1294)

 src/hb-ot-color.cc                  |  26 ++++++++++++++++++++++++++
 src/hb-ot-face.hh                   |   8 +++++---
 test/api/fonts/README               |   2 ++
 test/api/fonts/chromacheck-cbdt.ttf | Bin 0 -> 792 bytes
 test/api/fonts/chromacheck-colr.ttf | Bin 0 -> 652 bytes
 test/api/fonts/chromacheck-sbix.ttf | Bin 0 -> 864 bytes
 test/api/fonts/chromacheck-svg.ttf  | Bin 0 -> 792 bytes
 test/api/hb-test.h                  |   2 +-
 test/api/test-ot-color.c            |  21 +++++++++++++++++++++
 9 files changed, 55 insertions(+), 4 deletions(-)

commit 857c58279e82897ed69e8ade2f736073fa12883b
Merge: 51fba41c b92b9d7e
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Oct 22 09:57:20 2018 -0700

    Merge branch 'master' into cff-subset

commit b92b9d7e5290eaa83e94fd40cddaee71628a3c2a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 21 17:42:51 2018 -0700

    [colr] Move compare function into a static

    Not sure if MSVC would be unhappy about this.

 src/hb-ot-color-colr-table.hh | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

commit b6b171732a12b396a704984699bd0da906f5dc24
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 21 17:41:49 2018 -0700

    [colr] Minor

 src/hb-ot-color-colr-table.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit a6ade3471e730d7a8b56e4ed706a8eb126e957f6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 21 17:39:39 2018 -0700

    [colr] Move sanitize() to right place

    Sanitize always comes just before data member definitions, so
    it's easy to cross-check.

 src/hb-ot-color-colr-table.hh | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

commit 24adc1575745a711558dab79488760f1ceb24750
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 21 17:39:00 2018 -0700

    [colr] Touch up a bit

    When a struct is plain old data with no references, etc, it's okay
    to mark its members public.

 src/hb-ot-color-colr-table.hh | 36 +++++++++++++++++++++++-------------
 1 file changed, 23 insertions(+), 13 deletions(-)

commit cc6e77ca98e90fb531dd90a5c9c41d14d1dda9c4
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Sun Oct 21 13:29:40 2018 +0200

    [color] Fix documentation a bit

 src/hb-ot-color.cc | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit 37ba2413c19f6a1d62868178fc80f870ee44e7ab
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Oct 21 11:46:51 2018 +0330

    Minor

 src/hb-ot-color-cpal-table.hh | 10 +++++-----
 src/hb-ot-color.cc            | 25 ++++++++++++++-----------
 src/hb-ot-color.h             | 12 ++++++------
 3 files changed, 25 insertions(+), 22 deletions(-)

commit 44f79b4bf8ac341c5968a27f6a2a13a8af48b34f
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Oct 21 10:17:34 2018 +0330

    Remove _palette_entry_count as can be done with _palette_colors

 src/hb-ot-color.cc       | 18 ++----------------
 src/hb-ot-color.h        |  3 ---
 test/api/test-ot-color.c |  8 ++------
 3 files changed, 4 insertions(+), 25 deletions(-)

commit 6795dcfc0884b87b72fce8d902654f28ffe1366c
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Oct 21 09:51:15 2018 +0330

    [test] Test hb_ot_color_has_{colr,cpal}_data

 src/dump-emoji.cc        |  3 ++-
 src/hb-ot-color.cc       |  7 ++++---
 test/api/test-ot-color.c | 23 +++++++++++++++++++++++
 3 files changed, 29 insertions(+), 4 deletions(-)

commit b8ee3a0ec89d63721618ac90c01ac6da228f5055
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Oct 21 09:44:16 2018 +0330

    [CPAL] Add palette entry and enable palette flag API

 src/hb-ot-color-cpal-table.hh |  66 +++++++++++++++----------
 src/hb-ot-color.cc            | 109
 ++++++++++++++++++++++++------------------
 src/hb-ot-color.h             |  23 +++++++++
 test/api/test-ot-color.c      |  35 ++++++++++++--
 4 files changed, 158 insertions(+), 75 deletions(-)

commit d4261b4bb6d20fac7deebacfbe120fb84a92e423
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Oct 21 08:48:07 2018 +0330

    Add API test for hb_ot_color_get_color_layers

 src/dump-emoji.cc        |  3 ++-
 src/hb-ot-color.cc       |  2 +-
 src/hb-ot-color.h        |  2 ++
 test/api/test-ot-color.c | 31 +++++++++++++++++++++++++++++--
 4 files changed, 34 insertions(+), 4 deletions(-)

commit 456978d408cd41156e1123abfc3689800558e89b
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Oct 21 08:26:40 2018 +0330

    Address COLR/CPAL reviews and revive cpal_v1 tests

 src/dump-emoji.cc             |  26 ++++----
 src/hb-common.h               |  12 ++++
 src/hb-ot-color-cpal-table.hh |  37 +++++-------
 src/hb-ot-color.cc            | 136
 +++++++++++++++++++++++++-----------------
 src/hb-ot-color.h             |  38 +++---------
 test/api/test-ot-color.c      | 101 +++++++++++++++----------------
 6 files changed, 179 insertions(+), 171 deletions(-)

commit 687f679b80c071c69d0924f07a315f9d2691b7fc
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Oct 20 17:50:39 2018 +0330

    [color] Fix alpha channel value and adjust spaces

 src/dump-emoji.cc          | 36 ++++++++++++++++++------------------
 src/hb-buffer-serialize.cc | 14 +++++++-------
 src/hb-ot-color.cc         | 10 +++++-----
 3 files changed, 30 insertions(+), 30 deletions(-)

commit 00e94ce24efb1f5b3a9cd13c0b9f81f405ad8055
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Oct 20 00:31:04 2018 +0330

    [dump-emoji] Formatting

 src/dump-emoji.cc | 26 ++++++++++++++++----------
 1 file changed, 16 insertions(+), 10 deletions(-)

commit e9d798dc12d42e97ae8c19e7b73e25abc34d265a
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Oct 19 18:30:01 2018 +0330

    [test] Use hb_test_open_font_file

 test/api/test-ot-color.c | 16 ++--------------
 1 file changed, 2 insertions(+), 14 deletions(-)

commit e8a6f5b8039cce3f7ec568fd90fe73690e49a037
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Oct 19 18:23:42 2018 +0330

    Add three macros for separating color channels

 src/dump-emoji.cc        |  8 ++++----
 src/hb-ot-color.cc       |  1 -
 src/hb-ot-color.h        | 15 ++++++++++-----
 test/api/test-ot-color.c | 10 +++++-----
 4 files changed, 19 insertions(+), 15 deletions(-)

commit 0e33467e52942e62e04cf825a6bd105fa311c864
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Oct 19 17:44:06 2018 +0330

    Make ot-color tests pass

 test/api/test-ot-color.c | 52
 ++++++++++++++++++++++++------------------------
 1 file changed, 26 insertions(+), 26 deletions(-)

commit d4e928b1421c154adbda9b6e1f2cf804b21654cb
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Tue May 1 17:16:46 2018 +0200

    [color] Minimal API for COLR/CPAL

 src/Makefile.sources                               |   1 +
 src/dump-emoji.cc                                  | 114
 +++++++++++----------
 src/hb-ot-color-colr-table.hh                      |  12 +--
 src/hb-ot-color-cpal-table.hh                      |  51 +++------
 src/hb-ot-color.cc                                 |  87 +++++++++++-----
 src/hb-ot-color.h                                  |  85 +++++++++++++++
 src/hb-ot-face.hh                                  |   3 +
 src/hb-ot.h                                        |   1 +
 .../fonts/cpal-v0.ttf}                             | Bin
 .../fonts/cpal-v1.ttf}                             | Bin
 test/api/test-ot-color.c                           |  43 +++++---
 11 files changed, 257 insertions(+), 140 deletions(-)

commit 0229eaea299443b4faa3bd086f23ec1496d6112c
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Oct 22 10:51:37 2018 +0330

    [fuzz] Add a found hb-subset testcase

 ...z-testcase-minimized-hb-subset-fuzzer-5725847365877760 | Bin 0 ->
 880 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)

commit 0ecddad7c5948ecd7879bc7507f8a7a2d99eee86
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Oct 22 00:44:28 2018 +0330

    [ci] Disable flaky -windows-x64 and add a comment for iOS

 .circleci/config.yml | 20 +++++++++++---------
 1 file changed, 11 insertions(+), 9 deletions(-)

commit 9b3461574f6473c8ff7c995202858cf46012eed8
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Oct 21 11:37:38 2018 +0330

    [fuzz] Add more testcases

    Fixed already but better to have anyway.

    One didn't have minimized but it was only 164 B, so

 ...uzz-testcase-minimized-hb-shape-fuzzer-5706010589659136 | Bin 0 ->
 52 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)

commit 4fa94a3e39c21bc1dcdbbd5bda99bff1e1490b0e
Merge: 217a3728 c110878c
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Oct 21 11:36:41 2018 +0330

    Merge pull request #1290 from ebraminio/testopenfont

    [test] Unify font file opening across the tests

commit c110878cb61f5df99e9d97dda253f2987ddce58e
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Oct 21 11:07:17 2018 +0330

    [test] Unify font file opening across the tests

 test/api/hb-subset-test.h        | 21 ---------------------
 test/api/hb-test.h               | 21 +++++++++++++++++++++
 test/api/test-collect-unicodes.c |  6 +++---
 test/api/test-multithread.c      | 26 +++++---------------------
 test/api/test-ot-name.c          | 27 ++++-----------------------
 test/api/test-subset-cmap.c      |  8 ++++----
 test/api/test-subset-glyf.c      | 28 ++++++++++++++--------------
 test/api/test-subset-hdmx.c      | 14 +++++++-------
 test/api/test-subset-hmtx.c      | 20 ++++++++++----------
 test/api/test-subset-os2.c       |  4 ++--
 test/api/test-subset-post.c      |  4 ++--
 test/api/test-subset-vmtx.c      |  6 +++---
 test/api/test-subset.c           |  6 +++---
 13 files changed, 78 insertions(+), 113 deletions(-)

commit 217a3728b4991a855070678bc079cb400eee605a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 20 20:39:56 2018 -0700

    [fuzzing] Add more font

 .../clusterfuzz-testcase-hb-shape-fuzzer-5097734906839040 | Bin 0 ->
 164 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)

commit 1e39833ba8547c90a0a4ed7f265a6c4bc8eb8fe1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 20 16:56:06 2018 -0700

    [docs] Minor

 src/hb-buffer.h | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit a5ad8c658dac1fbe63d1034cdfe8df33f50462b6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 20 16:52:55 2018 -0700

    [docs] More fixes

 src/hb-ot-layout.cc | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit 2d9198f205fafda557520d7206f9cfbf3373353f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 20 16:50:39 2018 -0700

    [docs] Fix for hb-version.h being in src tree

 docs/Makefile.am | 1 -
 1 file changed, 1 deletion(-)

commit 314b1af74f1fb71ea5cfcb5a58766773f0b2a5a1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 20 16:49:16 2018 -0700

    [docs] Fix warning

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1260

 src/hb-deprecated.h | 6 ------
 src/hb-unicode.cc   | 1 +
 2 files changed, 1 insertion(+), 6 deletions(-)

commit b713c1397718bf1f702a2ead2afb4dcee2c1505a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 20 14:56:28 2018 -0700

    [kerx] Implement tuple-kerning in Format0

 src/hb-aat-layout-kerx-table.hh | 44
 ++++++++++++++++++++++++++++-------------
 1 file changed, 30 insertions(+), 14 deletions(-)

commit 0a3b7a0fb0734a66926dfda5d95d3cacea8890ce
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 20 13:14:07 2018 -0700

    2.0.2

 NEWS             | 6 ++++++
 configure.ac     | 2 +-
 src/hb-version.h | 4 ++--
 3 files changed, 9 insertions(+), 3 deletions(-)

commit 8931bc4a6b41a2a41069b99cb5c551fa30216f0b
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Oct 20 23:23:32 2018 +0330

    [test] Fix -Wunused-parameter on test-font.c

 test/api/test-font.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 68b705076808d4b0a4ac3bfa945b8f9ae23db1df
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 20 12:09:41 2018 -0700

    [kerx] Fix sanitize of KerxSubtableFormat2::array read

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

 src/hb-aat-layout-kerx-table.hh | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 00fdbca4f6a5c4623b9c4838da502cccce8aaa74
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 20 12:04:51 2018 -0700

    [aat] Fix LookupFormat10 sanitize

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

 src/hb-aat-layout-common.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f11c557662dee16a59bb54276c50a96e4e675201
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 20 11:56:30 2018 -0700

    [test] Fix leak

 test/api/test-font.c | 2 ++
 1 file changed, 2 insertions(+)

commit 440a675c7cc72c7c77b4ad7b20c855c53808ef48
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Oct 20 21:13:25 2018 +0330

    [TODO] Remove BCP 47 language handling item

    Closes https://github.com/harfbuzz/harfbuzz/issues/1286

 TODO | 2 --
 1 file changed, 2 deletions(-)

commit d39acc5a95f968b0dbfd5a942abda606d9aa3343
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Oct 20 12:20:30 2018 +0330

    [fuzzing] Add new testcases

 .../clusterfuzz-testcase-hb-shape-fuzzer-5688420752424960 | Bin 0 ->
 163 bytes
 ...zz-testcase-minimized-hb-shape-fuzzer-5688420752424960 | Bin 0 ->
 69 bytes
 2 files changed, 0 insertions(+), 0 deletions(-)

commit 1e55e21dea78aaaddc0715e7df96fd198ec8f78a
Merge: 964ae32a d084719f
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Oct 20 07:45:46 2018 +0330

    Merge pull request #1283 from khaledhosny/cygwin

    Cygwin fixes and CI build

commit 964ae32aac793540a49c44efab878592394d48db
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Oct 20 07:39:18 2018 +0330

    Run valgrind on run-shape-fuzzer only when RUN_VALGRIND is set (#1285)

 .circleci/config.yml                   | 2 +-
 test/fuzzing/run-shape-fuzzer-tests.py | 4 +++-
 2 files changed, 4 insertions(+), 2 deletions(-)

commit f70f994112b2577271c20a929f7b980fa1d17428
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 19 20:00:36 2018 -0700

    Minor

 test/api/test-ot-name.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 4e09fb8f7a93ec0c8d7f71cd58772ba468b5523f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 19 19:59:41 2018 -0700

    Oops. Fix build

 test/api/test-map.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9e288d29d86ef27acacd397b1abf04d512f1e61e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 19 19:47:27 2018 -0700

    [test-map] Cosmetic

 test/api/test-map.c | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

commit 7c2c8ac301b526da8b5384d6b90f156ca096568e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 19 19:37:46 2018 -0700

    2.0.1

 NEWS             | 15 ++++++++++++++-
 configure.ac     |  2 +-
 src/hb-version.h |  4 ++--
 3 files changed, 17 insertions(+), 4 deletions(-)

commit 5a24ea15e0c242c3e2a4a49980da3ab7dd61a3df
Author: Bruce Mitchener <bruce.mitchener@gmail.com>
Date:   Sat Oct 20 08:09:52 2018 +0700

    Make more 'coords' params const.

 src/hb-ot-layout-common.hh   | 8 ++++----
 src/hb-ot-layout-gsubgpos.hh | 2 +-
 src/hb-ot-var-hvar-table.hh  | 2 +-
 src/hb-ot-var-mvar-table.hh  | 2 +-
 4 files changed, 7 insertions(+), 7 deletions(-)

commit 08b7172969b442cc83b47f44e685a0495b2d8cd4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 19 19:12:33 2018 -0700

    [font] Fix parallel funcs passing to eachover in infinite-loop

    Fixes test just added.

 src/hb-font.cc | 20 +++++++++++++-------
 src/hb-font.hh |  8 ++++++++
 2 files changed, 21 insertions(+), 7 deletions(-)

commit 77d5c3df07bec8e9d2dd57f89d5810b768bdc4f5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 19 19:01:01 2018 -0700

    [font] Add failing test amongst font-func parallels infinite-looping

    Reported by Nona while updating Android to HarfBuzz 2.0.0.

 test/api/test-font.c | 64
 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 64 insertions(+)

commit d084719ff5a9e0e363bf352037f85b884bff11a7
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Sat Oct 20 00:18:36 2018 +0200

    Add Cygwin CI build

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1274

 appveyor.yml | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

commit 29d877518fc2c29083cd7b955b422087966235f7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 19 16:06:54 2018 -0700

    [kerx] Implement variation-kerning tables (without the variation part)

    SFSNDisplay uses these.  We just apply the default kern without
    variations right now.  But at least makes the default kern work.

 src/hb-aat-layout-kerx-table.hh | 37
 +++++++++++++++++++++++++++++--------
 1 file changed, 29 insertions(+), 8 deletions(-)

commit f7c0b4319c6f82f1e0020a0029469d8953a7a161
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 19 15:23:49 2018 -0700

    [aat] Implement LookupFormat10

 src/hb-aat-layout-ankr-table.hh |  6 +++--
 src/hb-aat-layout-common.hh     | 55
 ++++++++++++++++++++++++++++++++++++++---
 src/hb-machinery.hh             |  4 +++
 src/hb-open-type.hh             |  3 +++
 4 files changed, 63 insertions(+), 5 deletions(-)

commit cf92cb7e002f479505fed8c2c55ab12dcbea2d83
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Fri Oct 19 22:21:39 2018 +0200

    Use g_strdup instead of strdup

    Cygwin does not seem to have strdup.

 util/options.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 30cbe6158de1ddc0546d55e4edc1fe264e1b86ef
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Fri Oct 19 22:04:56 2018 +0200

    Use O_BINARY instead of _O_BINARY

    Cygwin does not seem to have the later

 src/hb-blob.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 257ded1f9ec653d15e79d2ea0a83bd8c5c53d831
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 19 11:20:14 2018 -0700

    [trak] Fix test for previous fix

 test/shaping/data/in-house/tests/aat-trak.tests | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 72bb139b807c21f1569058fb5fb260dcdd81eba4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 19 11:15:35 2018 -0700

    [RELEASING] Post-mortem

    Re https://github.com/harfbuzz/harfbuzz/issues/1271

 RELEASING.md | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 79b63561552bdfe8dc67a450d740fda8802486ad
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 19 11:00:20 2018 -0700

    [trak] Fix extrapolation at end side

 src/hb-aat-layout-trak-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2352cc3539b2e58d0481cdb8b9cd48cbc09a778e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 19 09:58:45 2018 -0700

    [kerx] Whitespace

 src/hb-aat-layout-kerx-table.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 114f66dda6a07d61b5e64da5c44b05db7aa51cc9
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Oct 19 12:05:26 2018 +0330

    Fix hb_map_is_empty logic

    This needs reviewing

 src/hb-map.hh       |  2 +-
 test/api/test-map.c | 13 ++++++++-----
 2 files changed, 9 insertions(+), 6 deletions(-)

commit 9df2fb1611e03e401f0d5a9432b440641085ba1e
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Oct 19 12:04:47 2018 +0330

    Add API tests for hb_map_t

 src/Makefile.am      |   2 +-
 test/api/Makefile.am |   6 ++-
 test/api/test-map.c  | 114
 +++++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 120 insertions(+), 2 deletions(-)

commit 8a5eba711069285e8d8b6d682eea0090256527bb
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Oct 19 10:20:16 2018 +0330

    [test] cosmetic, use g_assert_cmpint

 test/api/test-ot-name.c | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

commit c6eb5e852c24e12fec3138cf9def5eb76acedfd6
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Oct 19 10:14:25 2018 +0330

    Don't report deprecated symbols as unused symbols

 src/Makefile.am      | 2 ++
 test/api/Makefile.am | 4 +++-
 2 files changed, 5 insertions(+), 1 deletion(-)

commit 34f357c78a7a530fdb3580ec9d3d865600c06128
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Oct 19 10:13:53 2018 +0330

    Add test for hb_set_del

 test/api/test-set.c | 3 +++
 1 file changed, 3 insertions(+)

commit 4594730f64e534e975065afce925b581fd9c6acd
Author: Bruce Mitchener <bruce.mitchener@gmail.com>
Date:   Fri Oct 19 22:12:25 2018 +0700

    Remove redundant return at end of void-returning function.

 src/hb-ot-layout-gsubgpos.hh | 2 --
 1 file changed, 2 deletions(-)

commit 093c7c4a54b37f5b12ad21e2d67f109597d068b1
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Oct 19 18:46:41 2018 +0330

    [ci] Run valgrind on test/api

    run-shape-fuzzer-tests.py automatically runs valgrind if see available
    but test/api runs it by request, we probably should normalize the
    approaches
    later

 .circleci/config.yml | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit 8d1e479d1dcf7789be99a6cd0db0b883a90299dc
Author: Bruce Mitchener <bruce.mitchener@gmail.com>
Date:   Thu Oct 18 22:18:42 2018 +0700

    Use bool literals instead of 0/1.

 src/hb-common.cc               | 2 +-
 src/hb-coretext.cc             | 4 ++--
 src/hb-ot-layout-gpos-table.hh | 2 +-
 src/hb-ot-tag.cc               | 2 +-
 src/hb-shape-plan.cc           | 8 ++++----
 5 files changed, 9 insertions(+), 9 deletions(-)

commit 257d0e5aa36fd5b3e54e04918ce12bb7d7e0d177
Author: Bruce Mitchener <bruce.mitchener@gmail.com>
Date:   Fri Oct 19 22:49:21 2018 +0700

    Fix typos.

 BUILD.md                       | 2 +-
 CMakeLists.txt                 | 8 ++++----
 README.python.md               | 2 +-
 README.wine.md                 | 6 +++---
 src/hb-machinery.hh            | 2 +-
 src/hb-null.hh                 | 4 ++--
 src/hb-open-file.hh            | 2 +-
 src/hb-ot-layout-common.hh     | 2 +-
 src/hb-ot-layout-gdef-table.hh | 2 +-
 src/hb-ot-layout-gsub-table.hh | 2 +-
 src/hb-ot-layout-gsubgpos.hh   | 2 +-
 11 files changed, 17 insertions(+), 17 deletions(-)

commit b7cef8cb1dfaf1f0f2c0d79b96b171049b69466a
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Oct 19 09:24:21 2018 +0330

    Enable valgrind and dedicate a bot to it

 .circleci/config.yml                   | 13 +++++++++++++
 test/fuzzing/run-shape-fuzzer-tests.py | 31
 +++++++++++++++++++++++++++++++
 2 files changed, 44 insertions(+)

commit bccd09d6c7baa99fdaccb8c5b3ff7e1834edd3bf
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Oct 19 09:06:42 2018 +0330

    Minor, tweak spaces on hb-shape-fuzzer.cc

 test/fuzzing/hb-shape-fuzzer.cc | 42
 ++++++++++++++++++++---------------------
 1 file changed, 21 insertions(+), 21 deletions(-)

commit fbf665b307c8cc9f16f5897671bfdd8719a195b5
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Oct 19 08:09:53 2018 +0330

    [fuzz] Add more found cases (#1275)

 ...clusterfuzz-testcase-hb-shape-fuzzer-5728971283496960 | Bin 0 ->
 101 bytes
 ...terfuzz-testcase-minimized-hb-fuzzer-5713868010553344 | Bin 0 ->
 370 bytes
 ...terfuzz-testcase-minimized-hb-fuzzer-6278851874258944 | Bin 0 ->
 598 bytes
 ...z-testcase-minimized-hb-shape-fuzzer-5649959857160192 | Bin 0 ->
 3608 bytes
 ...z-testcase-minimized-hb-shape-fuzzer-5664873493561344 | Bin 0 ->
 400 bytes
 ...z-testcase-minimized-hb-shape-fuzzer-5762953198960640 | Bin 0 ->
 62 bytes
 ...z-testcase-minimized-hb-shape-fuzzer-5764636557705216 | Bin 0 ->
 2184 bytes
 ...-testcase-minimized-hb-subset-fuzzer-5690658895953920 | Bin 0 ->
 2735 bytes
 ...-testcase-minimized-hb-subset-fuzzer-5695279609675776 | Bin 0 ->
 135 bytes
 ...-testcase-minimized-hb-subset-fuzzer-5718215406125056 | Bin 0 ->
 107 bytes
 ...-testcase-minimized-hb-subset-fuzzer-5743250149736448 | Bin 0 ->
 103 bytes
 ...-testcase-minimized-hb-subset-fuzzer-5765071062958080 | Bin 0 ->
 329 bytes
 ...ized-hb-subset-get-codepoints-fuzzer-5930139383758848 | Bin 0 ->
 9410 bytes
 13 files changed, 0 insertions(+), 0 deletions(-)

commit 51fba41cc958ded3afc6c1e738895b0a81993e18
Merge: e555ed96 3d9a0306
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Oct 18 13:08:42 2018 -0700

    Merge branch 'master' into cff-subset

commit e555ed961e86104e059861efe4245b7b146dbd3b
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Oct 18 13:04:41 2018 -0700

    added flex extents test

 test/api/fonts/cff1_flex.otf   | Bin 0 -> 3152 bytes
 test/api/test-ot-extents-cff.c |  23 +++++++++++++++++++++++
 2 files changed, 23 insertions(+)

commit 8679d02b4b3f2f9147c4ea0319eb39851c4e40e6
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Oct 18 13:04:21 2018 -0700

    implement flex ops for glyph extents/subset

    also removed unused CSInterpEnv::move_[xy]_with_arg
    fixed bug a width being left over on argStack with CFF1

 src/hb-cff-interp-cs-common.hh | 157
 +++++++++++++++++++++++++++++++++++------
 src/hb-cff1-interp-cs.hh       |   1 +
 src/hb-subset-cff1.cc          |   4 --
 src/hb-subset-cff2.cc          |   4 --
 4 files changed, 138 insertions(+), 28 deletions(-)

commit 3d9a0306ebb48706778fd2c487c3cacc7d508d6c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 18 05:58:17 2018 -0700

    2.0.0

 NEWS                | 68
 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 configure.ac        |  2 +-
 src/hb-buffer.cc    |  4 ++--
 src/hb-common.h     |  4 ++--
 src/hb-deprecated.h | 18 +++++++-------
 src/hb-font.cc      |  6 ++---
 src/hb-font.h       |  2 +-
 src/hb-ot-layout.cc |  8 +++----
 src/hb-ot-name.h    |  4 ++--
 src/hb-ot-tag.cc    |  4 ++--
 src/hb-ot-tag.h     |  4 ++--
 src/hb-version.h    |  6 ++---
 12 files changed, 99 insertions(+), 31 deletions(-)

commit 535ca678bf9c8ab470ebf5ad84a090328d79d42b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 18 05:58:04 2018 -0700

    [test] Don't use newer glib API

 test/api/test-ot-tag.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 03e144135b5c691e3942d1aef917fe2246665fb6
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Oct 18 11:06:37 2018 +0330

    [ubsan] Use unsigned int instead enum where needed (#1270)

    Actually the check is right,

    On -myanmar.hh, on that particular switch, OT_C is indic_category_t
    but OT_D is myanmar_category_t so we are mixing the types in one
    variable.

    And on -arabic.cc, step can goes one number higher than step_t enum
    in the
    loop so we are actually using it as an unsinged int.

 .circleci/config.yml               |  2 +-
 src/hb-ot-shape-complex-arabic.cc  |  4 ++--
 src/hb-ot-shape-complex-myanmar.hh | 48
 +++++++++++++++++++-------------------
 3 files changed, 27 insertions(+), 27 deletions(-)

commit 64df6b0b0f9d221e14811084f2412a01cf4deb46
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 18 00:35:01 2018 -0700

    [AUTHORS] Add Ebrahim and Khaled

 AUTHORS | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

commit f1ced9be378d7c7ad3ea35a1cee6f9aff7a44a13
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 17 23:06:53 2018 -0700

    More warning fix

    Okay, let's see if the gods are happy now...

 src/hb-static.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 40606abd0cd40faf3973d0a8c30af90d36ae8231
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 17 23:06:37 2018 -0700

    Fix build

 src/hb-static.cc | 1 +
 1 file changed, 1 insertion(+)

commit c406aca19303e61fa5ba15d215386cfc6d920124
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 17 22:58:43 2018 -0700

    Fix warning

 src/hb-machinery.hh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 270a37c3244b32dd839a99eb379be241613ee895
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 17 22:42:47 2018 -0700

    Kick bots

 src/hb-aat-layout-common.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 6da8ef3f9f4706fe88715fabdba7904ff279539b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 17 22:37:34 2018 -0700

    Fix some wierdness...

 src/hb-static.cc | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

commit 83780308b41b029513ac2568b6688d3eaad77338
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 17 22:34:16 2018 -0700

    [aat] Fix sanitize slowdown

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

 src/hb-aat-layout-common.hh | 4 ++++
 src/hb-machinery.hh         | 2 +-
 2 files changed, 5 insertions(+), 1 deletion(-)

commit b9478e28ac4361353e4920d749cc5d29e5bfef67
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 17 21:52:14 2018 -0700

    Revert "[test] Remove not-fixed yet testcases (#1268)"

    This reverts commit 191eef823fe95355425621f8e002dfe7fe632383.

 ...rfuzz-testcase-minimized-hb-fuzzer-4548492505645056 | Bin 0 ->
 122 bytes
 ...rfuzz-testcase-minimized-hb-fuzzer-6210176798425088 | Bin 0 ->
 1420 bytes
 ...testcase-minimized-hb-shape-fuzzer-5738888765636608 | Bin 0 ->
 267731 bytes
 3 files changed, 0 insertions(+), 0 deletions(-)

commit af99b20dfddbca75e68f84c5aa465a54728990a6
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Oct 18 08:35:20 2018 +0330

    [ci/ubsan] Disable enum sanitization

    Behdad apparently not interested on them

 .circleci/config.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9e8a9b846ec24e9124d61706272a0e5fa58d7a24
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 17 21:41:25 2018 -0700

    [aat] Another try at fixing Lookup null objects...

    Ugly as hell, and don't even understand why some bits are needed.
    But the logic is sound.

 src/hb-aat-layout-common.hh | 23 ++++++++++++++++++++---
 src/hb-static.cc            |  4 ++++
 2 files changed, 24 insertions(+), 3 deletions(-)

commit 191eef823fe95355425621f8e002dfe7fe632383
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Oct 18 08:04:18 2018 +0330

    [test] Remove not-fixed yet testcases (#1268)

    I added them but now that I think, it is a bad idea to have them as
    fuzzing bots will find good seeds to tweak in order to find easy new
    testcases which causes duplicated issues.

 ...rfuzz-testcase-minimized-hb-fuzzer-4548492505645056 | Bin 122 ->
 0 bytes
 ...rfuzz-testcase-minimized-hb-fuzzer-6210176798425088 | Bin 1420 ->
 0 bytes
 ...testcase-minimized-hb-shape-fuzzer-5738888765636608 | Bin 267731 ->
 0 bytes
 3 files changed, 0 insertions(+), 0 deletions(-)

commit 392e1f4ddd7eb649e1a71755b9bcf6431739f98f
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Oct 18 07:42:20 2018 +0330

    [test/shape-fuzzer] fail on timeout and ubsan errors (#1267)

 test/fuzzing/run-shape-fuzzer-tests.py | 38
 ++++++++++++++++++++++++++++++----
 1 file changed, 34 insertions(+), 4 deletions(-)

commit eeddda3ec6c28b411d33c74938ec6198c7f6888d
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Oct 18 07:38:47 2018 +0330

    [util] Better file-not-found error from hb-shape / hb-view

    fixes #1266

 util/options.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 751c10e55e43e2266a5bba024d560c5127fae4b8
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Oct 18 06:36:48 2018 +0330

    [fuzz] Add more new testcases

 ...testcase-minimized-hb-shape-fuzzer-5718464350650368 | Bin 0 ->
 41 bytes
 ...testcase-minimized-hb-shape-fuzzer-5738888765636608 | Bin 0 ->
 267731 bytes
 2 files changed, 0 insertions(+), 0 deletions(-)

commit fd282eb3285e6d20f77e8a3a7237b677433ccbb4
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Oct 18 06:33:39 2018 +0330

    [fuzz] Add a new testcase

 .../clusterfuzz-testcase-hb-shape-fuzzer-5634395566768128 | Bin 0 ->
 106 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)

commit 9d42d70269b879e67f3c7724beab8e4cdbfc877a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 17 17:55:47 2018 -0700

    [trak] Fix calc

    We were getting the first track record always.  Ie. this line:

           if (trackTable[i].get_track_value () == 0.f)
           {
    -       trackTableEntry = &trackTable[0];
    +       trackTableEntry = &trackTable[i];
            break;
           }

    The rest is cleanup.

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1263 for the
    most part.

 src/hb-aat-layout-trak-table.hh | 17 ++++++++---------
 1 file changed, 8 insertions(+), 9 deletions(-)

commit 3341c7fbfb9bc8e137afd9f16da8cf18eb67b25b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 17 15:04:35 2018 -0700

    [fuzzing] Move fuzzing fonts from api/ here

 ...estcase-minimized-hb-subset-fuzzer-5521982557782016 | Bin 1228 ->
 0 bytes
 ...estcase-minimized-hb-subset-fuzzer-5542653037903872 | Bin 160249 ->
 0 bytes
 ...estcase-minimized-hb-subset-fuzzer-5609911946838016 | Bin 313 ->
 0 bytes
 ...estcase-minimized-hb-subset-fuzzer-5670861909524480 | Bin 1298 ->
 0 bytes
 ...estcase-minimized-hb-subset-fuzzer-5750092395970560 | Bin 72435 ->
 0 bytes
 ...estcase-minimized-hb-subset-fuzzer-6651660668502016 | Bin 15229 ->
 0 bytes
 ...ed-hb-subset-get-codepoints-fuzzer-5973295416475648 | Bin 109 ->
 0 bytes
 ...ed-hb-subset-get-codepoints-fuzzer-6136125075750912 | Bin 65816 ->
 0 bytes
 test/api/test-subset-glyf.c                            |   2 +-
 test/api/test-subset-hdmx.c                            |   4 ++--
 test/api/test-subset-hmtx.c                            |   2 +-
 test/api/test-subset.c                                 |   6 +++---
 .../crash-4b60576767ee4d9fe1cc10959d89baf73d4e8249     | Bin
 .../crash-b577db318b30f2851828a4c9ef97cb30678b1b54     | Bin
 .../crash-ccc61c92d589f895174cdef6ff2e3b20e9999a1a     | Bin
 .../crash-e4e0bb1458a91b692eba492c907ae1f94e635480     | Bin
 .../fonts/oom-6ef8c96d3710262511bcc730dce9c00e722cb653 | Bin
 .../fonts/oom-ccc61c92d589f895174cdef6ff2e3b20e9999a1a | Bin
 18 files changed, 7 insertions(+), 7 deletions(-)

commit 1f34388e8b40a77157f61c8e1a2fc7c4846c192e
Merge: 9ade3e7b 2e7c7165
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Oct 17 09:34:48 2018 -0700

    Merge branch 'master' into cff-subset

commit 2e7c716511e8b2cfcd059fa2a2ed4cdd48b351bf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 16 18:35:03 2018 -0700

    [buffer] Add an assert

    See if it helps debugging
    https://bugs.chromium.org/p/chromium/issues/detail?id=895117

 src/hb-buffer.cc | 2 ++
 1 file changed, 2 insertions(+)

commit 5842756b1398253d38749c4c8a23a1450e642caf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 16 18:28:55 2018 -0700

    [fuzzing] Delete blink fuzzed data

    These are text, not font.

 ...minimized-blink_harfbuzz_shaper_fuzzer-5099655095123968 | Bin 88 ->
 0 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)

commit 25fe7e7e1031401d38db1efed360cd75ea7910b9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 16 18:22:54 2018 -0700

    [aat] Comment

 src/hb-aat-layout-common.hh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 26092bb3d1aa239de5e933700e0371619d147f65
Author: HinTak <htl10@users.sourceforge.net>
Date:   Wed Oct 17 00:54:39 2018 +0100

    "allow-none" annotation for "out" parameters

    Fixes the following warnings:
    hb-ot-tag.cc:330: Warning: HarfBuzz: invalid "allow-none" annotation:
    only valid for pointer types and out parameters
    hb-ot-tag.cc:334: Warning: HarfBuzz: invalid "allow-none" annotation:
    only valid for pointer types and out parameters

 src/hb-ot-tag.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit ba42651608da1be0d152e03ad42ea96fc8476ac7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 16 17:35:46 2018 -0700

    Fix indent

 test/fuzzing/run-shape-fuzzer-tests.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 49bdb54427b17d439eadf31732a5f2a0add46bf5
Author: HinTak <htl10@users.sourceforge.net>
Date:   Wed Oct 17 00:36:04 2018 +0100

    typo in gobject annotation - "in/out" should be "inout"

    "in/out" should be "inout"

 src/hb-ot-layout.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c0c190c16a2c1b281f40dacdcf515dc5a59ab3bb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 16 16:39:29 2018 -0700

    [fuzzing] Run tests against fuzzing fonts

    Some disable.

 test/fuzzing/run-shape-fuzzer-tests.py        | 12 ++--
 test/fuzzing/run-subset-fuzzer-tests.py       | 35 ++++++-----
 test/shaping/data/in-house/Makefile.sources   |  1 -
 test/shaping/data/in-house/tests/fuzzed.tests | 84
 ---------------------------
 4 files changed, 24 insertions(+), 108 deletions(-)

commit 7b37705fb579a39334be0618c6215c1b887bf9fc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 16 16:33:06 2018 -0700

    [fuzzing] Rename

 ...ebdebc6.ttf => 0509e80afb379d16560e9e47bdd7d888bebdebc6} | Bin
 ...63b6daf.ttf => 1a6f1687b7a221f9f2c834b0b360d3c8463b6daf} | Bin
 ...28b22cb.ttf => 205edd09bd3d141cc9580f650109556cc28b22cb} | Bin
 ...f026462.ttf => 217a934cfe15c548b572c203dceb2befdf026462} | Bin
 ...ac34f18.ttf => 3511ff5c1647150595846ac414c595cccac34f18} | Bin
 ...675d5a3.ttf => 375d6ae32a3cbe52fbf81a4e5777e3377675d5a3} | Bin
 ...9c9a56b.ttf => 43979b90b2dd929723cf4fe1715990bcb9c9a56b} | Bin
 ...1a8e2b0.ttf => 558661aa659912f4d30ecd27bd09835171a8e2b0} | Bin
 ...0655fa8.ttf => 5a5daf5eb5a4db77a2baa3ad9c7a6ed6e0655fa8} | Bin
 ...c149ddc.ttf => 641bd9db850193064d17575053ae2bf8ec149ddc} | Bin
 ...bcf861f.ttf => 8240789f6d12d4cfc4b5e8e6f246c3701bcf861f} | Bin
 ...1386016.ttf => a34a9191d9376bda419836effeef7e75c1386016} | Bin
 ...bdae30e.ttf => a69118c2c2ada48ff803d9149daa54c9ebdae30e} | Bin
 ...6b31fe2.ttf => b9e2aaa0d75fcef6971ec3a96d806ba4a6b31fe2} | Bin
 ...14a0467.ttf => e88c339237f52d21e01c55f01b9c1b4cc14a0467} | Bin
 ...1395725.ttf => fab39d60d758cb586db5a504f218442cd1395725} | Bin
 16 files changed, 0 insertions(+), 0 deletions(-)

commit 3676c685d407cc7b9b813b4a08e7c5bcd9a47ea1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 16 16:32:26 2018 -0700

    [fuzzing] Move rest of fuzzing tests here

 .../fonts/0509e80afb379d16560e9e47bdd7d888bebdebc6.ttf  | Bin
 .../fonts/1a6f1687b7a221f9f2c834b0b360d3c8463b6daf.ttf  | Bin
 .../fonts/205edd09bd3d141cc9580f650109556cc28b22cb.ttf  | Bin
 .../fonts/217a934cfe15c548b572c203dceb2befdf026462.ttf  | Bin
 .../fonts/3511ff5c1647150595846ac414c595cccac34f18.ttf  | Bin
 .../fonts/375d6ae32a3cbe52fbf81a4e5777e3377675d5a3.ttf  | Bin
 .../fonts/43979b90b2dd929723cf4fe1715990bcb9c9a56b.ttf  | Bin
 .../fonts/558661aa659912f4d30ecd27bd09835171a8e2b0.ttf  | Bin
 .../fonts/5a5daf5eb5a4db77a2baa3ad9c7a6ed6e0655fa8.ttf  | Bin
 .../fonts/641bd9db850193064d17575053ae2bf8ec149ddc.ttf  | Bin
 .../fonts/8240789f6d12d4cfc4b5e8e6f246c3701bcf861f.ttf  | Bin
 .../fonts/a34a9191d9376bda419836effeef7e75c1386016.ttf  | Bin
 .../fonts/a69118c2c2ada48ff803d9149daa54c9ebdae30e.ttf  | Bin
 .../fonts/b9e2aaa0d75fcef6971ec3a96d806ba4a6b31fe2.ttf  | Bin
 .../fonts/e88c339237f52d21e01c55f01b9c1b4cc14a0467.ttf  | Bin
 .../fonts/fab39d60d758cb586db5a504f218442cd1395725.ttf  | Bin
 test/shaping/data/in-house/tests/fuzzed.tests           |  16
 ----------------
 17 files changed, 16 deletions(-)

commit 1487173dcf4137fb210b15d9a869aa1f0c626d15
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 16 16:30:38 2018 -0700

    [fuzzing] Delete duplicate fonts

 .../233c1e252e737ca79e03a9fd56b71aaa4a230f2b.ttf      | Bin 1048576 ->
 0 bytes
 .../243798dd281c1c77c065958e1ff467420faa9bde.ttf      | Bin 225 ->
 0 bytes
 .../9d8a94a67932a3ab75a596fc8b5c6d0392ca9e49.ttf      | Bin 4545 ->
 0 bytes
 .../b6acef662e0beb8d5fcf5b61c6b0ca69537b7402.ttf      | Bin 3301 ->
 0 bytes
 .../bbf4a308c402f0678c3e82844892a4da2ebe598f.ttf      | Bin 204 ->
 0 bytes
 .../dd9f0c7c7c36f75a18be0cab1cddf8f3ab0f366b.ttf      | Bin 2786 ->
 0 bytes
 .../ef2511f215aa3ca847cbfffbf861793b42170875.ttf      | Bin 1152 ->
 0 bytes
 test/shaping/data/in-house/tests/fuzzed.tests         |   7 -------
 8 files changed, 7 deletions(-)

commit 49c041f7c5b135cbcbd1663e18047afd54fc948b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 16 16:25:24 2018 -0700

    Minor

 test/fuzzing/clusterfuzz-testcase-6107935408390144 | Bin 16800 -> 0 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)

commit 36f38ea7033b4e52c6cd94a8a0d686a95c0cc148
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 16 16:24:03 2018 -0700

    [gpos] Protect mark attachment against out-of-bounds

    Not sure how can happen, but does...

 src/hb-ot-layout-gpos-table.hh | 14 ++++++++++----
 1 file changed, 10 insertions(+), 4 deletions(-)

commit 1147ce2392ac6b3d12fdabe69ac5da9bae97e30d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 16 16:18:32 2018 -0700

    [fuzzing] Add more tests

 .../fuzzing/fonts/clusterfuzz-testcase-6107935408390144 | Bin 0 ->
 16800 bytes
 ...-testcase-minimized-harfbuzz_fuzzer-5973566991106048 | Bin 0 ->
 4047 bytes
 ...-testcase-minimized-hb-shape-fuzzer-5633985665826816 | Bin 0 ->
 73 bytes
 3 files changed, 0 insertions(+), 0 deletions(-)

commit 12cbe195ae65656dbc9e32b4d50696bc4223136b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 16 16:13:53 2018 -0700

    [aat] Another non-null offset

 src/hb-aat-layout-ankr-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 87205ef935ede70365187549d133014669ea47f2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 16 15:40:44 2018 -0700

    [aat] Make sure Lookup offset is never nulled

    It has unbounded size...

    Fixes https://oss-fuzz.com/v2/testcase-detail/5718889451749376

 src/hb-aat-layout-ankr-table.hh |  2 +-
 src/hb-aat-layout-common.hh     |  3 ++-
 src/hb-aat-layout-kerx-table.hh | 18 ++++++++----------
 src/hb-aat-layout-morx-table.hh |  4 ++--
 src/hb-open-type.hh             | 12 ++++++------
 5 files changed, 19 insertions(+), 20 deletions(-)

commit 1aa353e4fc79dfa880559ff75113ed58fac8392b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 16 15:26:51 2018 -0700

    Fix tests

 test/shaping/data/in-house/tests/fuzzed.tests | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 98d4ad02b97628e5a9a7bfe3187ccc3851c00b18
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 16 15:17:31 2018 -0700

    [fuzzing] One more

 test/fuzzing/clusterfuzz-testcase-6107935408390144 | Bin 0 -> 16800 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)

commit e6f267c3dfe3e93dfc726266672da5a235fbd930
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 16 15:16:20 2018 -0700

    [fuzzing] Add more clusterfuzz tests I had lying around

 .../fonts/clusterfuzz-testcase-5517117891805184       | Bin 0 ->
 178 bytes
 ...sterfuzz-testcase-hb-shape-fuzzer-5746142327865344 | Bin 0 ->
 219 bytes
 ...sterfuzz-testcase-hb-shape-fuzzer-5750379279548416 | Bin 0 ->
 317 bytes
 .../clusterfuzz-testcase-minimized-4884742786777088   | Bin 0 ->
 393 bytes
 .../clusterfuzz-testcase-minimized-5255344882188288   | Bin 0 -> 65 bytes
 .../clusterfuzz-testcase-minimized-5720051798769664   | Bin 0 ->
 1048576 bytes
 .../clusterfuzz-testcase-minimized-5924299061854208   | Bin 0 ->
 2786 bytes
 .../clusterfuzz-testcase-minimized-6460279560863744   | Bin 0 ->
 589 bytes
 ...ized-blink_harfbuzz_shaper_fuzzer-5099655095123968 | Bin 0 -> 88 bytes
 ...estcase-minimized-hb-shape-fuzzer-5650286710882304 | Bin 0 -> 76 bytes
 ...stcase-minimized-hb-shape-fuzzer-5672261407735808} | Bin
 11 files changed, 0 insertions(+), 0 deletions(-)

commit e53206271db4a83834433ab5f82d16815a18b998
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Oct 17 01:42:04 2018 +0330

    Add all the fonts found by fuzzers to the repo (#1258)

 test/fuzzing/Makefile.am                           |   1 +
 ...clusterfuzz-testcase-hb-fuzzer-4666056377368576 | Bin 0 -> 1152 bytes
 ...clusterfuzz-testcase-hb-fuzzer-5662671558934528 | Bin 0 -> 242272
 bytes
 ...clusterfuzz-testcase-hb-fuzzer-6243458541944832 | Bin 0 -> 370187
 bytes
 ...clusterfuzz-testcase-hb-fuzzer-6303297511096320 | Bin 0 -> 4545 bytes
 ...clusterfuzz-testcase-hb-fuzzer-6696647723581440 | Bin 0 -> 3266 bytes
 ...z-testcase-minimized-hb-fuzzer-4523479581851648 | Bin 0 -> 322 bytes
 ...z-testcase-minimized-hb-fuzzer-4535496598355968 | Bin 0 -> 2786 bytes
 ...z-testcase-minimized-hb-fuzzer-4548492505645056 | Bin 0 -> 122 bytes
 ...z-testcase-minimized-hb-fuzzer-4595692015190016 | Bin 0 -> 225 bytes
 ...z-testcase-minimized-hb-fuzzer-4687441845813248 | Bin 0 -> 162 bytes
 ...z-testcase-minimized-hb-fuzzer-4706238090706944 | Bin 0 -> 350 bytes
 ...z-testcase-minimized-hb-fuzzer-4769173588672512 | Bin 0 -> 37 bytes
 ...z-testcase-minimized-hb-fuzzer-4827735151083520 | Bin 0 -> 1384 bytes
 ...z-testcase-minimized-hb-fuzzer-4841745322868736 | Bin 0 -> 660 bytes
 ...z-testcase-minimized-hb-fuzzer-4884742786777088 | Bin 0 -> 393 bytes
 ...z-testcase-minimized-hb-fuzzer-5216838347653120 | Bin 0 -> 157600
 bytes
 ...z-testcase-minimized-hb-fuzzer-5255344882188288 | Bin 0 -> 65 bytes
 ...z-testcase-minimized-hb-fuzzer-5294584596791296 | Bin 0 -> 1602 bytes
 ...z-testcase-minimized-hb-fuzzer-5303930168803328 | Bin 0 -> 7321 bytes
 ...z-testcase-minimized-hb-fuzzer-5331901587914752 | Bin 0 -> 3301 bytes
 ...z-testcase-minimized-hb-fuzzer-5388906574905344 | Bin 0 -> 9937 bytes
 ...z-testcase-minimized-hb-fuzzer-5517117891805184 | Bin 0 -> 178 bytes
 ...z-testcase-minimized-hb-fuzzer-5617496443846656 | Bin 0 -> 195 bytes
 ...z-testcase-minimized-hb-fuzzer-5672141338968064 | Bin 0 -> 176 bytes
 ...z-testcase-minimized-hb-fuzzer-5700697074958336 | Bin 0 -> 878 bytes
 ...z-testcase-minimized-hb-fuzzer-5720051798769664 | Bin 0 -> 1048576
 bytes
 ...z-testcase-minimized-hb-fuzzer-5924299061854208 | Bin 0 -> 2786 bytes
 ...z-testcase-minimized-hb-fuzzer-6023178755244032 | Bin 0 -> 2261 bytes
 ...z-testcase-minimized-hb-fuzzer-6111685556305920 | Bin 0 -> 586 bytes
 ...z-testcase-minimized-hb-fuzzer-6160439919509504 | Bin 0 -> 204 bytes
 ...z-testcase-minimized-hb-fuzzer-6210176798425088 | Bin 0 -> 1420 bytes
 ...z-testcase-minimized-hb-fuzzer-6260579246276608 | Bin 0 -> 700 bytes
 ...z-testcase-minimized-hb-fuzzer-6264625609834496 | Bin 0 -> 1731 bytes
 ...z-testcase-minimized-hb-fuzzer-6424351550210048 | Bin 0 -> 73 bytes
 ...z-testcase-minimized-hb-fuzzer-6460279560863744 | Bin 0 -> 589 bytes
 ...z-testcase-minimized-hb-fuzzer-6576177596596224 | Bin 0 -> 385 bytes
 ...z-testcase-minimized-hb-fuzzer-6595199411159040 | Bin 0 -> 1862 bytes
 ...z-testcase-minimized-hb-fuzzer-6624904746106880 | Bin 0 -> 42 bytes
 ...z-testcase-minimized-hb-fuzzer-6723367514144768 | Bin 0 -> 1074 bytes
 ...case-minimized-hb-shape-fuzzer-5630246225707008 | Bin 0 -> 109 bytes
 ...case-minimized-hb-shape-fuzzer-5635082459545600 | Bin 0 -> 52 bytes
 ...case-minimized-hb-shape-fuzzer-5652019562414080 | Bin 0 -> 49 bytes
 ...case-minimized-hb-shape-fuzzer-5656511058018304 | Bin 0 -> 28 bytes
 ...case-minimized-hb-shape-fuzzer-5659641787187200 | Bin 0 -> 3498 bytes
 ...case-minimized-hb-shape-fuzzer-5668791174823936 | Bin 0 -> 3608 bytes
 ...ase-minimized-hb-shape-fuzzer-56722614077358084 | Bin 0 -> 192 bytes
 ...case-minimized-hb-shape-fuzzer-5674361600606208 | Bin 0 -> 518 bytes
 ...case-minimized-hb-shape-fuzzer-5677421274071040 | Bin 0 -> 3608 bytes
 ...case-minimized-hb-shape-fuzzer-5679244475105280 | Bin 0 -> 256 bytes
 ...case-minimized-hb-shape-fuzzer-5685596677210112 | Bin 0 -> 58 bytes
 ...case-minimized-hb-shape-fuzzer-5695615258853376 | Bin 0 -> 194 bytes
 ...case-minimized-hb-shape-fuzzer-5696686572175360 | Bin 0 -> 256 bytes
 ...case-minimized-hb-shape-fuzzer-5718889451749376 | Bin 0 -> 1680 bytes
 ...case-minimized-hb-shape-fuzzer-5719982789361664 | Bin 0 -> 3608 bytes
 ...case-minimized-hb-shape-fuzzer-5725129603022848 | Bin 0 -> 3608 bytes
 ...case-minimized-hb-shape-fuzzer-5726089628876800 | Bin 0 -> 76 bytes
 ...case-minimized-hb-shape-fuzzer-5729361857085440 | Bin 0 -> 2250 bytes
 ...case-minimized-hb-shape-fuzzer-5733166795456512 | Bin 0 -> 78 bytes
 ...case-minimized-hb-shape-fuzzer-5734736291430400 | Bin 0 -> 66 bytes
 ...case-minimized-hb-shape-fuzzer-5740171484463104 | Bin 0 -> 186 bytes
 ...case-minimized-hb-shape-fuzzer-5750379279548416 | Bin 0 -> 219 bytes
 ...case-minimized-hb-shape-fuzzer-5762490181353472 | Bin 0 -> 101 bytes
 ...ase-minimized-hb-subset-fuzzer-5359635656605696 | Bin 0 -> 393270
 bytes
 ...ase-minimized-hb-subset-fuzzer-5521982557782016 | Bin 0 -> 1228 bytes
 ...ase-minimized-hb-subset-fuzzer-5542653037903872 | Bin 0 -> 160249
 bytes
 ...ase-minimized-hb-subset-fuzzer-5609911946838016 | Bin 0 -> 313 bytes
 ...ase-minimized-hb-subset-fuzzer-5629878397829120 | Bin 0 -> 3746 bytes
 ...ase-minimized-hb-subset-fuzzer-5651059347816448 | Bin 0 -> 2648 bytes
 ...ase-minimized-hb-subset-fuzzer-5669437462544384 | Bin 0 -> 284427
 bytes
 ...ase-minimized-hb-subset-fuzzer-5670861909524480 | Bin 0 -> 1298 bytes
 ...ase-minimized-hb-subset-fuzzer-5696607199166464 | Bin 0 -> 28 bytes
 ...ase-minimized-hb-subset-fuzzer-5711951464759296 | Bin 0 -> 284521
 bytes
 ...ase-minimized-hb-subset-fuzzer-5747265633779712 | Bin 0 -> 177090
 bytes
 ...ase-minimized-hb-subset-fuzzer-5750092395970560 | Bin 0 -> 72435 bytes
 ...ase-minimized-hb-subset-fuzzer-5758598970343424 | Bin 0 -> 64 bytes
 ...ase-minimized-hb-subset-fuzzer-6543700493598720 | Bin 0 -> 138425
 bytes
 ...ase-minimized-hb-subset-fuzzer-6651660668502016 | Bin 0 -> 15229 bytes
 ...b-subset-get-codepoints-fuzzer-5203067375976448 | Bin 0 -> 16310 bytes
 ...b-subset-get-codepoints-fuzzer-5630904853069824 | Bin 0 -> 580 bytes
 ...b-subset-get-codepoints-fuzzer-5687638085337088 | Bin 0 -> 1206 bytes
 ...b-subset-get-codepoints-fuzzer-5736539338833920 | Bin 0 -> 512 bytes
 ...b-subset-get-codepoints-fuzzer-5973295416475648 | Bin 0 -> 109 bytes
 ...b-subset-get-codepoints-fuzzer-6136125075750912 | Bin 0 -> 65816 bytes
 ...b-subset-get-codepoints-fuzzer-6394290358976512 | Bin 0 -> 1868 bytes
 test/fuzzing/run-shape-fuzzer-tests.py             |   4 +
 test/shaping/data/in-house/tests/fuzzed.tests      |  84
 +++++++++++++++++++++
 87 files changed, 89 insertions(+)

commit 2137582c9696b6e38d70b4a0d4199b315c9fd4ce
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 16 14:46:07 2018 -0700

    [morx] Reword ligation

    Still fails MORX-41.  Am talking to Sascha to better understand
    what CoreText
    is doing.

 src/hb-aat-layout-morx-table.hh                    | 25
 ++++++++++++----------
 test/shaping/data/text-rendering-tests/DISABLED    |  2 ++
 .../data/text-rendering-tests/Makefile.sources     |  2 +-
 3 files changed, 17 insertions(+), 12 deletions(-)

commit c53a25c6579a4d3fe8e6a6fc198d70add41035ec
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 16 13:57:35 2018 -0700

    [morx] Comment

 src/hb-aat-layout-morx-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c46d42f8f2c303817467c6a4e19d69d0e433dba6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 16 13:39:54 2018 -0700

    [test/text-rendering-tests] Update from upstream

 test/shaping/data/text-rendering-tests/Makefile.sources  |   1 +
 .../text-rendering-tests/fonts/TestMORXFourtyone.ttf     | Bin 0 ->
 2248 bytes
 .../data/text-rendering-tests/tests/MORX-41.tests        |   4 ++++
 3 files changed, 5 insertions(+)

commit 5eb7e7f6461bcf5b1e1d8ccb49eb904382762533
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 16 13:32:52 2018 -0700

    Revert "[vector] Simplify Sort" and "More of the same"

    This reverts commit de0b9a466490c2c13d6ec6f59d5122b0a87d3180.
    This reverts commit 921f0e6ec722940a1e37660e1291aa69f9f39db8.

    Annnnd, revert.  MSVC doesn't like it.

 src/hb-vector.hh | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

commit 661340c475dc928f227d54b3f36eaf6f41c2b6e3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 16 13:24:29 2018 -0700

    [kern] Scale kern pairs before applying

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1255
    Fixes https://github.com/harfbuzz/harfbuzz/issues/1252

 src/hb-ot-kern-table.hh     | 18 ++++++++++++------
 src/hb-ot-shape-fallback.cc |  2 +-
 2 files changed, 13 insertions(+), 7 deletions(-)

commit de0b9a466490c2c13d6ec6f59d5122b0a87d3180
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 15 22:20:26 2018 -0700

    [vector] More of the same

 src/hb-vector.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 921f0e6ec722940a1e37660e1291aa69f9f39db8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 15 22:19:17 2018 -0700

    [vector] Simplify sort

    Hopefully this fits fine with SFINAE with all our compilers.

 src/hb-vector.hh | 7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)

commit 61510b63c15e91d80e36a497260db0e2d6d36c66
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Oct 16 14:17:21 2018 +0330

    [test] Minor cleanup in test-multithread and test-ot-name (#1256)

 test/api/CMakeLists.txt                       |  2 +-
 test/api/Makefile.am                          |  2 +-
 test/api/test-multithread.c                   |  6 ++-
 test/api/{test-ot-nameid.c => test-ot-name.c} | 58
 ++++++++++++++-------------
 4 files changed, 36 insertions(+), 32 deletions(-)

commit 42b75dc3a701b13665115e2a234bfa5dedafef3f
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Oct 16 10:58:09 2018 +0330

    [kerx] Minor, remove debug bit

 src/hb-aat-layout-kerx-table.hh | 1 -
 1 file changed, 1 deletion(-)

commit 11703afce6cebbb4c5e7cdea59ca59a1787608b8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 15 21:16:58 2018 -0700

    [kerx] Fix Format6 sanitize

    Fixes https://oss-fuzz.com/v2/testcase-detail/5650286710882304

 src/hb-aat-layout-kerx-table.hh | 21 +++++++++++----------
 1 file changed, 11 insertions(+), 10 deletions(-)

commit 4c27da7638f6d072c3ff93223488c4ab316236c1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 15 19:46:45 2018 -0700

    [CBDT] Fix more offsetting

    Fixes https://oss-fuzz.com/v2/testcase-detail/5750379279548416

 src/hb-ot-color-cbdt-table.hh | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit 9ade3e7bb81be43b3c0811614b9b9533127894b0
Merge: 6420ffe0 0f85edb7
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Oct 15 14:03:23 2018 -0700

    Merge branch 'master' into cff-subset

commit 6420ffe00fc4f4c6ffa63b80d961f70bc36c2caf
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Oct 15 14:03:18 2018 -0700

    fixed type casting bug

 src/hb-cff-interp-common.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 0f85edb7781f4d5ec2de676979be75a0f6559d80
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 15 11:15:54 2018 -0700

    [morx] Another end-of-text corner case

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

 src/hb-aat-layout-morx-table.hh | 2 ++
 1 file changed, 2 insertions(+)

commit 55d5ea666c25f75e9b1bc2eb43cfb104a16ebe04
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 15 11:04:49 2018 -0700

    [kerx] Merge clusters in Ligature

 src/hb-aat-layout-morx-table.hh | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

commit bb35725cd760f07fdb0586453512a106e534b739
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 15 10:20:39 2018 -0700

    [kerx/morx] More end-of-text protection

 src/hb-aat-layout-kerx-table.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 8f3048a1f838484babc4948754c16dda8f53daf1
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Oct 15 12:16:47 2018 +0330

    [dump-emoji] minor

 src/dump-emoji.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 27e095a613ed0a753231405cab887da19e9aecd1
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Oct 15 12:04:14 2018 +0330

    [dump-emoji] better explaination of the usage

 src/dump-emoji.cc | 21 ++++++++++++++++++++-
 1 file changed, 20 insertions(+), 1 deletion(-)

commit 8dc6296818e3a52c003852aa185f2b7eb6afa5d3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 15 01:09:05 2018 -0700

    [ot-font] Implement TrueType v_origin

    Fixes https://github.com/harfbuzz/harfbuzz/issues/537

 src/hb-ot-font.cc                               | 31 +++++++++++++++++-
 src/hb-ot-hmtx-table.hh                         | 43
 ++++++++++++++++---------
 test/shaping/data/in-house/tests/vertical.tests |  2 +-
 3 files changed, 59 insertions(+), 17 deletions(-)

commit 6e07076fd094afc8c9c8ad8f08453e7882294592
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 14 22:22:45 2018 -0700

    [blob] Fix UBSan error

 src/hb-blob.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit fc812faaa96aa4e67814a92376b2da751d5a0aba
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 14 21:32:09 2018 -0700

    [CBDT] Fix more offsetting issues

    Fixes https://github.com/harfbuzz/harfbuzz/issues/960

    dump-emoji still segfaults.  Needs debugging.

 src/hb-ot-color-cbdt-table.hh | 28 +++++++++++++++-------------
 1 file changed, 15 insertions(+), 13 deletions(-)

commit 6aee3bb87cee88525b745a640df294cb721245f6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 14 21:08:42 2018 -0700

    [CBDT] Fix offset handling

    Fixes https://github.com/harfbuzz/harfbuzz/issues/960

 src/hb-ot-color-cbdt-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit da744c6b3e79b778f414ec9f4d9070d06ec2a706
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 14 20:49:21 2018 -0700

    [CBDT] More UnsizedArrayOf cleanup

 src/hb-ot-color-cbdt-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2995b4465bce52b30de2cb6ba24cc80d8602413d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 14 20:37:57 2018 -0700

    [CBDT] Simplify sanitize

 src/hb-ot-color-cbdt-table.hh | 7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)

commit 1c76c8f6ff7877e486f6e94d04b2dc65348b26d5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 14 19:39:31 2018 -0700

    [morx] Handle end-of-text conditions in Insertion

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

 src/hb-aat-layout-morx-table.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 60c13976733ea05e71c66c486d62e31ffbb71bac
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 14 19:36:46 2018 -0700

    [buffer] Fix output_glyph at end of buffer

    Part of https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10955

 src/hb-buffer.hh | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 7efa38257b6f79d1c6e2a9bad29c33af276abe29
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 14 19:30:44 2018 -0700

    [aat] More protection against buffer fail

 src/hb-aat-layout-common.hh | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit e1add2a275a8afa5efc22aa44a4e62646f0b0ba4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 14 16:26:03 2018 -0700

    [hmtx] Whitespace

 src/hb-ot-hmtx-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 62376a7d983442408059b0b8987e7ca8d1de154e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 14 15:20:50 2018 -0700

    Ignore signed-integer-overflow while kerning

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1247

 src/hb-ot-kern-table.hh | 1 +
 src/hb.hh               | 9 +++++++++
 2 files changed, 10 insertions(+)

commit 40f2b9355cf827c7b82ea5e55b112ce0032a9abf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 14 14:56:32 2018 -0700

    [kerx] Fix Format1 sanitize

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

 src/hb-aat-layout-kerx-table.hh | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit 44af1f93ee32e236a5c14085c72d3fa102a14f5e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 14 14:52:17 2018 -0700

    [aat] Whitespace

 src/hb-aat-layout-common.hh | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit db0d83ddc73ecf50ec4489fc10eddf3fa5835ae2
Merge: 9228db06 56b8dd17
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Sat Oct 13 17:25:38 2018 -0700

    Merge branch 'master' into cff-subset

commit 9228db06f46908afd0e62f5964470c37c66ba91f
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Sat Oct 13 17:25:09 2018 -0700

    added CFF1 Expert Encoding subset test & bug fixes

 src/hb-ot-cff1-table.hh                     |   8 +++++++-
 src/hb-subset-cff1.cc                       |  10 ++++++++--
 test/api/fonts/cff1_expert.2D,F6E9,FB00.otf | Bin 0 -> 3096 bytes
 test/api/fonts/cff1_expert.otf              | Bin 0 -> 3656 bytes
 test/api/test-subset-cff1.c                 |  21 +++++++++++++++++++++
 5 files changed, 36 insertions(+), 3 deletions(-)

commit 56b8dd17f677ffe97e4d917c47924e1ac7632c71
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 13 19:03:33 2018 -0400

    [aat] Finish off massaging table

 src/hb-aat-layout.cc | 163
 +++++++++++++++++++++++++--------------------------
 1 file changed, 81 insertions(+), 82 deletions(-)

commit e0c5e0d91bbc0c8b2bb547ba5cb118989affc617
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 13 18:37:14 2018 -0400

    [aat] WIP remove feature mapping here from hb-coretext

    Need to map enum values to numerics since we don't have CoreText
    headers.

 src/hb-aat-layout.cc |  94 +++++++++++++++++++++++++
 src/hb-aat-layout.hh |  22 ++++++
 src/hb-coretext.cc   | 189
 +--------------------------------------------------
 3 files changed, 117 insertions(+), 188 deletions(-)

commit cb057749131826dd89bc3b92527116a974ae3bbe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 13 17:03:32 2018 -0400

    [coretext] Prepare AAT feature mapping to be moved

 src/hb-coretext.cc | 39 ++++++++++++++++++++++-----------------
 1 file changed, 22 insertions(+), 17 deletions(-)

commit de6e414c565de5f27b9da8c7b8b11f88659a4c42
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 13 13:48:22 2018 -0400

    [kerx] Sanitize more

 src/hb-aat-layout-kerx-table.hh | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

commit 71f76f2f39c88998b430b171c99b85818d4fa0ab
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 13 13:36:27 2018 -0400

    [kerx] Fix-up previous commit

    A "&" was missing.  Go back to using pointers that are less
    error-prone.

 src/hb-aat-layout-kerx-table.hh | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

commit 6d4b054234b4736ca9927268ee3e2d9a0f8f6ead
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 13 12:20:33 2018 -0400

    [kerx] Use sanitizer instead of handcoded runtime sanitization

 src/hb-aat-layout-kerx-table.hh | 24 +++++++++---------------
 1 file changed, 9 insertions(+), 15 deletions(-)

commit 5733113662e668a25187e0042935d955e44fb488
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 13 12:16:12 2018 -0400

    [kerx] Wire up context down to get_kerning

 src/hb-aat-layout-kerx-table.hh | 32 ++++++++++++++------------------
 1 file changed, 14 insertions(+), 18 deletions(-)

commit c4502833b711a76cce1af0c5bf075692b965c991
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 13 11:48:49 2018 -0400

    [kerx] Use sanitizer.get_num_glyphs() instead of
    face->get_num_glyphs()

 src/hb-aat-layout-kerx-table.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit fc45e698f2d8a6d577f33b1e69a83714aceae528
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 13 11:39:12 2018 -0400

    [kerx] Protext against overflows

 src/hb-aat-layout-kerx-table.hh | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

commit ed2ee78136c40de8e7b915dfdfd3ca92880912c3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 13 09:47:51 2018 -0400

    [hangul] Fix use-after-free issue

    out_info might have moved since we copied it's position into local
    info var.

    Fixes https://bugs.chromium.org/p/chromium/issues/detail?id=894937

 src/hb-ot-shape-complex-hangul.cc | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

commit 63109432cf61333e01af4ef5163d4202bb43f84d
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Oct 13 14:00:05 2018 +0330

    Cosmetic and minor changes

 src/hb-buffer-serialize.cc   |   4 +-
 src/hb-ot-cmap-table.hh      |   4 +-
 src/hb-ot-layout-common.hh   |   4 +-
 src/hb-ot-layout-gsubgpos.hh |   8 +--
 src/hb-ot-layout.cc          | 127
 +++++++++++++++++++------------------------
 src/hb-ot-layout.h           |  25 +++++----
 src/hb-ot-math-table.hh      |   8 +--
 src/hb-ot-name.h             |   1 -
 src/hb-ot-shape-complex.hh   |  18 +++---
 9 files changed, 93 insertions(+), 106 deletions(-)

commit b64ef69b9e3d9cd4e81a2149cea3fe6e9e371cac
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Oct 12 14:14:21 2018 -0700

    from encode_int removed assert hit by fuzzer

    clamp the value instead

 src/hb-subset-cff-common.hh | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit c0a6814b49e376984a0cae9d385a6f6ba8c73579
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 12 16:05:56 2018 -0400

    Touch up new API

    New API:
    +hb_ot_layout_feature_get_name_ids()
    +hb_ot_layout_feature_get_characters()

 src/hb-ot-layout.cc       | 16 +++++++++-------
 src/hb-ot-layout.h        |  2 --
 test/api/test-ot-nameid.c | 16 ++++++++++------
 3 files changed, 19 insertions(+), 15 deletions(-)

commit 477bc9aafeaf89708d13a436869126351e2d9b50
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 12 15:52:31 2018 -0400

    Add hb-ot-name.h

    Actual name-fetching API to come later.

    New API:
    hb_name_id_t
    HB_NAME_ID_INVALID

 src/Makefile.sources       |  1 +
 src/hb-ot-layout-common.hh |  2 +-
 src/hb-ot-layout.h         | 12 ++---------
 src/hb-ot-name.h           | 54
 ++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-ot.h                |  1 +
 5 files changed, 59 insertions(+), 11 deletions(-)

commit dc49bd8d813571fe16d9e5342e4a3926ff947bd6
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Oct 12 03:00:59 2018 +0330

    Add two APIs for getting stylistic set labels

    * hb_ot_layout_feature_get_characters
    * hb_ot_layout_feature_get_name_ids

    However HarfBuzz currently doesn't expose an API for retrieving
    the actual
    information associated with NameId from the `name` table and that
    should be
    done separately.

 docs/harfbuzz-sections.txt |   2 +
 src/hb-ot-layout-common.hh |  14 +++++
 src/hb-ot-layout.cc        | 133
 +++++++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-layout.h         |  29 ++++++++++
 test/api/CMakeLists.txt    |   2 +
 test/api/Makefile.am       |   1 +
 test/api/fonts/cv01.otf    | Bin 0 -> 1956 bytes
 test/api/test-ot-nameid.c  |  96 ++++++++++++++++++++++++++++++++
 8 files changed, 277 insertions(+)

commit e9f9c0d81c73d8b6d87700aadb5b886bd289769a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 21:37:45 2018 -0400

    [sanitize] Reorder condition to silence bogus gcc warning

    Was givin a dozen of:

    ../../src/hb-machinery.hh: In member function ‘bool
    AAT::ankr::sanitize(hb_sanitize_context_t*) const’:
    ../../src/hb-machinery.hh:307:23: warning: missed loop optimization,
    the loop counter may overflow [-Wunsafe-loop-optimizations]
         bool ok = --this->max_ops > 0 &&
                   ~~~~~~~~~~~~~~~~~~~~~~
            this->start <= p &&
            ~~~~~~~~~~~~~~~~~~~
            p <= this->end &&
            ~~~~~~~~~~~~~~~^~
            (unsigned int) (this->end - p) >= len;
            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    I believe those are bogus, but this silences them and does not
    introduce
    logic issues I believe.

 src/hb-machinery.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 1a6b5ac6c300ed2ccdcd8eadde433120f6e07f2a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 21:22:49 2018 -0400

    Add HB_DEPRECATED_FOR and mark relevant symbols

 src/hb-common.h     |  8 ++++++++
 src/hb-deprecated.h | 10 +++++-----
 src/hb-graphite2.h  |  2 +-
 3 files changed, 14 insertions(+), 6 deletions(-)

commit c9413d7bb575093411b39ac21974795b6ad91454
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 21:19:39 2018 -0400

    [graphite] Add HB_DEPRECATED annotation

 src/hb-graphite2.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 68c86af187ff645a1305ac3b64832f3bb2350519
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 21:18:20 2018 -0400

    Always compile deprecated symbols

    We haven't been keeping this updated.  So, while we don't expose the
    symbols in the headers if HB_DISABLE_DEPRECATED is defined, we still
    always build them.

 src/hb-font.cc | 4 ----
 1 file changed, 4 deletions(-)

commit fc0153a1d4903a57b21974cc8d0b0a82d7bc43dc
Merge: 7d99a6ce c5510000
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Oct 12 12:16:50 2018 -0700

    Merge branch 'master' into cff-subset

commit 7d99a6cef80ec178c10dcf0e848394614c5e6912
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Oct 12 02:16:07 2018 -0700

    overhauled error handling in CFF interpreter

    minimized "if (error) return false" idiom

 src/hb-cff-interp-common.hh      | 138
 +++++++++++++++++++++++----------------
 src/hb-cff-interp-cs-common.hh   |  43 ++++++------
 src/hb-cff-interp-dict-common.hh |  72 +++++++++++---------
 src/hb-cff1-interp-cs.hh         |  72 +++++++++++---------
 src/hb-cff2-interp-cs.hh         |  50 +++++++-------
 src/hb-ot-cff1-table.hh          |  91 +++++++++++---------------
 src/hb-ot-cff2-table.hh          |  71 +++++++++-----------
 7 files changed, 281 insertions(+), 256 deletions(-)

commit c55100000bc20d7c8319cfc54294215a923ffc25
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Thu Oct 11 22:08:14 2018 -0400

    Add missing colons to GObject annotations

 src/hb-ot-tag.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 1e816d62efe1b3540ef605092b97794e68ec0832
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Thu Oct 11 20:37:49 2018 -0400

    Fix Indic script tags in Graphite

 src/hb-graphite2.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit bf8469be9a8932cc407b60daf4d494fef46e233b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 20:45:00 2018 -0400

    Attach CursivePositioning backwards, not forward

    This is how Uniscribe does it.  So, adjust.  This is only relevant
    to fonts that apply cursive positioning from a contextual lookup.

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1181

 src/hb-ot-layout-gpos-table.hh                      |  20
 ++++++++++----------
 .../9fc3e6960b3520e5304033ef5fd540285f72f14d.ttf    | Bin 0 -> 2380 bytes
 .../data/in-house/tests/cursive-positioning.tests   |   1 +
 3 files changed, 11 insertions(+), 10 deletions(-)

commit bdb53ca24a5ad9671d8e29e17d1d8981505bd882
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 20:20:00 2018 -0400

    [myanmar] Implement Zawgyi shaper

    Enabled if script tag 'Qaag' is passed to HarfBuzz.  Disables mark
    advance-zeroing and fallback mark-positioning.

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1162

 src/hb-ot-shape-complex-myanmar.cc                 |  22
 +++++++++++++++++++++
 src/hb-ot-shape-complex.hh                         |   5 +++++
 src/hb.hh                                          |   8 ++++++++
 test/shaping/data/in-house/Makefile.sources        |   1 +
 .../ab14b4eb9d7a67e293f51d30d719add06c9d6e06.ttf   | Bin 0 -> 1792 bytes
 .../data/in-house/tests/myanmar-zawgyi.tests       |   1 +
 6 files changed, 37 insertions(+)

commit 00c5c4a79dfb352a679a5c56bf9c756ab0fa98d2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 20:15:31 2018 -0400

    [myanmar] Shuffle

 src/hb-ot-shape-complex-myanmar.cc | 33 +++++++++++++++++----------------
 1 file changed, 17 insertions(+), 16 deletions(-)

commit ec8f493bf9fefc33f027db24c4b175990b2d751c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 20:15:00 2018 -0400

    [graphite] Remove assert

 src/hb-graphite2.cc | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 5646dcbd1125049c3af342fadfcfcbd523ce53d3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 19:39:07 2018 -0400

    Minor

 src/hb-ot-tag.cc | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

commit 788e1478557603d30966f12449eef0d0bd51c880
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 19:24:52 2018 -0400

    [test] Add test for USE indic3

 test/shaping/data/in-house/Makefile.sources              |   1 +
 .../fonts/3c96e7a303c58475a8c750bf4289bbe73784f37d.ttf   | Bin 0 ->
 3364 bytes
 test/shaping/data/in-house/tests/use-indic3.tests        |   1 +
 3 files changed, 2 insertions(+)

commit a11972787a2a90b541f92cc56bb885859390a0c0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 19:23:36 2018 -0400

    Minor

 test/shaping/record-test.sh | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 654365dc894326f04abaaba415f48ca5ba2d1286
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 17:51:21 2018 -0400

    Pass indic3 tags to USE shaper

    Fixes https://github.com/harfbuzz/harfbuzz/issues/539

 src/hb-ot-shape-complex.hh | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit 28d091d045b042506a1ec2cdefe7cf0d718e8b22
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Thu Oct 11 17:15:22 2018 -0400

    Parse Indic3 tags

 src/hb-ot-tag.cc       | 11 ++++++++---
 test/api/test-ot-tag.c | 44 +++++++++++++++++++++++++-------------------
 2 files changed, 33 insertions(+), 22 deletions(-)

commit 211cd3691ba01b1cb2eeb8a91ac3532181791a8a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 17:31:29 2018 -0400

    Remove remains of get-codepoint-fuzzer

 test/fuzzing/CMakeLists.txt             |  7 +------
 test/fuzzing/run-subset-fuzzer-tests.py | 12 ------------
 2 files changed, 1 insertion(+), 18 deletions(-)

commit 120ed0272569e6a34172a511d4a5a70a3a18f1d2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 17:08:12 2018 -0400

    [fuzzing] Fold get-codepoints-fuzzer into subset-fuzzer

 test/fuzzing/Makefile.am                        | 16 ----------------
 test/fuzzing/hb-subset-fuzzer.cc                |  5 +++++
 test/fuzzing/hb-subset-get-codepoints-fuzzer.cc | 23
 -----------------------
 3 files changed, 5 insertions(+), 39 deletions(-)

commit 2c824d3644e16643c2bbe85fb88f9fb6fed53ce7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 16:41:01 2018 -0400

    [aat] Fix two wrongs that made a right before!

    Unfortunately our static asserts (DEFINE_SIZE_STATIC) don't actually
    fail when used in templates, thanks to SFINAE.  Le sighs.

    Probably fixes
    https://oss-fuzz.com/v2/testcase-detail/5740171484463104

 src/hb-aat-layout-common.hh | 4 ++--
 src/hb-open-type.hh         | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

commit e940530c9723c3a581a5d5b31e5f419865dd6cc7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 15:56:17 2018 -0400

    [aat] Fix mul overflow

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

 src/hb-aat-layout-common.hh | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

commit 1d995a340b9e17fc8dca7a3e88e0918de2d8f02c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 15:42:54 2018 -0400

    Minor

 test/api/hb-subset-test.h   | 6 ++----
 test/api/test-multithread.c | 5 +----
 test/fuzzing/main.cc        | 2 +-
 3 files changed, 4 insertions(+), 9 deletions(-)

commit 0744a02cb12e4d800abb611dfa5d268bb2dfd9f3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 15:14:18 2018 -0400

    [arabic] Update to latest UTR#53

    From Lorna Evans: "That was a new character added to Unicode 11.0"

 src/hb-ot-shape-complex-arabic.cc | 1 +
 1 file changed, 1 insertion(+)

commit 57b05210b1a8968d18ccbbe70879b2e11b6a09f2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 15:03:21 2018 -0400

    [test] Fix use of deprecated symbols

 test/api/test-ot-tag.c | 60
 ++++++++++++++++++++++++++++++++++++++------------
 1 file changed, 46 insertions(+), 14 deletions(-)

commit ca37172ee3908bac12cc3d97768b95ae571530d2
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Oct 11 11:55:55 2018 -0700

    fixed leak

 test/api/test-ot-extents-cff.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 4f9e36e8cf5d9d3d3e5a1ed46149355ee5f5e9fb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 14:32:59 2018 -0400

    [graphite] Remove deprecated symbol use

 src/hb-graphite2.cc | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

commit da591f2a9d2ae2a5878d3b2ef78a6d589b19aab0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 14:30:15 2018 -0400

    Whitespace

 src/hb-ot-tag.cc | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 4d205f0462b19f371df495b9cc12c0128f507de9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 14:25:48 2018 -0400

    [graphite] Fix deva/dev2 resolution

    See
    https://github.com/harfbuzz/harfbuzz/pull/730#issuecomment-428277800

 src/hb-graphite2.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 8061664ad1a5933098adc3bc1dca0b5be48586ef
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 14:16:55 2018 -0400

    Add doc stubs for recently added API

    Thanks to David Corbett who revamped our script and language
    processing
    and implemented full BCP 47 support.

    https://github.com/harfbuzz/harfbuzz/pull/730

    New API:
    +hb_ot_layout_table_select_script()
    +hb_ot_layout_script_select_language()
    +HB_OT_MAX_TAGS_PER_SCRIPT
    +HB_OT_MAX_TAGS_PER_LANGUAGE
    +hb_ot_tags_from_script_and_language()
    +hb_ot_tags_to_script_and_language()

    Deprecated API:
    -hb_ot_layout_table_choose_script()
    -hb_ot_layout_script_find_language()
    -hb_ot_tags_from_script()
    -hb_ot_tag_from_language()

 src/hb-ot-layout.cc | 10 ++++++++++
 src/hb-ot-tag.cc    | 21 ++++++++++++++++-----
 src/hb-ot-tag.h     | 10 ++++++++++
 src/hb-unicode.h    |  2 +-
 4 files changed, 37 insertions(+), 6 deletions(-)

commit cf975ac653bff369f4ed7ba7fc04fae6ce2cec95
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 14:07:44 2018 -0400

    Remove use of deprecated function

 src/hb-ot-layout.cc | 23 ++++++++++++-----------
 src/hb-ot-layout.h  | 12 ++++++------
 2 files changed, 18 insertions(+), 17 deletions(-)

commit 66790d64c7120b75c72bf91c769dc52d95858909
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Mon Sep 10 13:15:00 2018 -0400

    Increase HB_OT_MAX_TAGS_PER_SCRIPT to 3

    No script has 3 tags yet, but the plan is for the Indic scripts
    to each
    get a third tag someday.

 src/hb-ot-tag.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit bca7a16938609539e4adb5cdf943734b7dfa1561
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Mon Sep 10 12:05:51 2018 -0400

    Update language system tag registry to OT 1.8.3

 src/gen-tag-table.py   | 10 +++++++++-
 src/hb-ot-tag-table.hh | 44 +++++++++++++++++++++++++++++++++-----------
 2 files changed, 42 insertions(+), 12 deletions(-)

commit 7f1fbfe2e312f397db9271dd17a8e701489ffc79
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Mon Jul 23 21:19:23 2018 -0400

    Add hb_ot_tags_to_script_and_language

 docs/harfbuzz-sections.txt |  3 +-
 src/hb-ot-map.cc           |  2 +-
 src/hb-ot-tag.cc           | 75
 ++++++++++++++++++++++++++++++++++++++++------
 src/hb-ot-tag.h            | 18 +++++++----
 test/api/test-ot-tag.c     | 33 ++++++++++++++++++--
 5 files changed, 112 insertions(+), 19 deletions(-)

commit 3f8877473fb4c72a6f3edfcfc927b9993a5f3616
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Thu Jul 19 13:48:07 2018 -0400

    Switch on the first char of a complex language tag

    This results in a tenfold speed-up for the common case of tags
    that are
    not complex, in the sense of `hb_ot_tags_from_complex_language`.

 src/gen-tag-table.py   |  171 ++++--
 src/hb-ot-tag-table.hh | 1580
 ++++++++++++++++++++++++------------------------
 2 files changed, 922 insertions(+), 829 deletions(-)

commit a754d44195021603306af2a296d06187eda95409
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Mon Jul 16 21:14:48 2018 -0400

    Map Quechua languages to closest ones with tags

    OpenType only officially maps four ISO 639 codes to Quechua languages,
    but prior versions of HarfBuzz also mapped qu to 'QUZ '. Because qu
    is a
    macrolanguage, the mapping now applies to all individual Quechua
    languages. OpenType calls 'QUZ ' "Quechua", but it really corresponds
    to
    Cusco Quechua, so the individual Quechua languages should not all
    necessarily be mapped to it.

 src/gen-tag-table.py   | 32 ++++++++++++++++++++++++++
 src/hb-ot-tag-table.hh | 62
 +++++++++++++++++++++++++++-----------------------
 2 files changed, 65 insertions(+), 29 deletions(-)

commit 65d01f77552a5102ee114d9917fd2ecf091a35c3
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Thu Jan 18 16:33:39 2018 -0500

    Test deprecated tag fallback in a font

    The font supports the deprecated tag 'DHV ' instead of 'DIV '. dv is
    mapped to 'DIV ' and 'DHV ', in that order. The test specifies
    `--language=dv`, demonstrating that if a font does not support
    the first
    OpenType tag mapped to a BCP 47 tag, it will fall back to the
    next tag.

 .../fonts/d3129450fafe5e5c98cfc25a4e71809b1b4d2855.ttf    | Bin 0 ->
 956 bytes
 test/shaping/data/in-house/tests/language-tags.tests      |   1 +
 2 files changed, 1 insertion(+)

commit 7c7cb2a98907d99ca86bdbfca0bf9c48bfa4ed49
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Sat Jan 20 15:53:09 2018 -0500

    Match extlang subtags

    If the second subtag of a BCP 47 tag is three letters long, it denotes
    an extended language. The tag converter ignores the language
    subtag and
    uses the extended language instead.

    There are some grandfathered exceptions, which are handled earlier.

 src/gen-tag-table.py   |  2 +-
 src/hb-ot-tag-table.hh | 21 +++++++++++++++++++++
 src/hb-ot-tag.cc       | 10 +++++++++-
 test/api/test-ot-tag.c |  7 +++++++
 4 files changed, 38 insertions(+), 2 deletions(-)

commit 2f1f961cc0f0f907916b4b00342d8a2dda8b4ee1
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Fri Dec 8 22:45:52 2017 -0500

    Autogenerate the BCP 47 to OpenType mappings

    The new script, gen-tag-table.py, generates `ot_languages`
    automatically
    from the [OpenType language system tag registry][ot] and the [IANA
    Language Subtag Registry][bcp47] with some manual modifications. If an
    OpenType tag maps to a BCP 47 macrolanguage, all the macrolanguage's
    individual languages are mapped to the same OpenType tag, except for
    individual languages with their own OpenType mappings. Deprecated
    BCP 47 tags are canonicalized.

    [ot]:
    https://docs.microsoft.com/en-us/typography/opentype/spec/languagetags
    [bcp47]:
    https://www.iana.org/assignments/language-subtag-registry/language-subtag-registry

    Some OpenType tags correspond to multiple ISO 639 codes. The mapping
    from ISO 639 codes lists OpenType tags in priority order, such
    that more
    specific or more likely tags appear first.

    Some OpenType tags have no corresponding ISO 639 code in the
    registry so
    their mappings use BCP 47 subtags besides the language. For example,
    any
    BCP 47 tag with a fonipa variant subtag is mapped to 'IPPH', and
    'IPPH'
    is mapped back to und-fonipa.

    Other OpenType tags have no corresponding ISO 639 code because it
    is not
    clear what they are for. HarfBuzz just ignores these tags.

    One such ignored tag is 'ZHP ' (Chinese Phonetic). It probably means
    zh-Latn. However, it is used in Microsoft JhengHei and Microsoft YaHei
    with the script tag 'hani', implying that it is not a romanization
    scheme after all. It would be simple enough to add this mapping to
    gen-tag-table.py once a definitive mapping is determined.

    The manual modifications are mainly either obvious mappings that the
    OpenType registry omits or mappings for compatibility with previous
    versions of HarfBuzz. Some of the old mappings were discarded, though,
    for homophonous language names. For example, OpenType maps 'KUI ' to
    kxu; previous versions of HarfBuzz also mapped it to kvd, because kvd
    and kxu both happen to be called "Kui".

    gen-tag-table.py also generates a function to convert multi-subtag
    tags
    like el-polyton and zh-HK to OpenType tags, replacing
    `ot_languages_zh`
    and the hard-coded list of special cases in
    `hb_ot_tags_from_language`.
    It also generates a function to convert OpenType tags to BCP 47,
    replacing the hard-coded list of special cases in
    `hb_ot_tag_to_language`.

 src/Makefile.am        |    9 +-
 src/Makefile.sources   |    1 +
 src/gen-tag-table.py   | 1013 ++++++++++++++++++++++++
 src/hb-ot-tag-table.hh | 1997
 ++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-tag.cc       |  842 +-------------------
 src/hb-ot-tag.h        |    2 +-
 test/api/test-ot-tag.c |   66 +-
 7 files changed, 3092 insertions(+), 838 deletions(-)

commit 2c7d4db7af16e228bb30eddf7334a524b74ae26c
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Fri Dec 29 20:19:05 2017 +0800

    Deprecate obsolete functions

    `hb_ot_tags` replaces `hb_ot_tags_from_script` and
    `hb_ot_tag_from_language`.

    `hb_ot_layout_table_select_script` replaces
    `hb_ot_layout_table_choose_script`.

    `hb_ot_layout_script_select_language` replaces
    `hb_ot_layout_script_find_language`.

 docs/harfbuzz-sections.txt |  8 ++++----
 src/hb-deprecated.h        | 23 +++++++++++++++++++++++
 src/hb-ot-layout.h         | 15 ---------------
 src/hb-ot-tag.h            |  8 --------
 4 files changed, 27 insertions(+), 27 deletions(-)

commit 91067716f5e7b15d9a642f69019246c83fc7c108
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Fri Dec 8 11:21:14 2017 -0500

    Refactor the selection of script and language tags

    The old hb-ot-tag.cc functions, `hb_ot_tags_from_script` and
    `hb_ot_tag_from_language`, are now wrappers around a new function:
    `hb_ot_tags`. It converts a script and a language to arrays of script
    tags and language tags. This will make it easier to add new script
    tags
    to scripts, like 'dev3'. It also allows for language fallback chains;
    nothing produces more than one language yet though.

    Where the old functions return the default tags 'DFLT' and 'dflt',
    `hb_ot_tags` returns an empty array. The caller is responsible for
    using the default tag in that case.

    The new function also adds a new private use subtag syntax for script
    overrides: "x-hbscabcd" requests a script tag of 'abcd'.

    The old hb-ot-layout.cc functions,`hb_ot_layout_table_choose_script`
    and
    `hb_ot_layout_script_find_language` are now wrappers around the new
    functions `hb_ot_layout_table_select_script` and
    `hb_ot_layout_script_select_language`. They are essentially the
    same as
    the old ones plus a tag count parameter.

    Closes #495.

 docs/harfbuzz-sections.txt |    5 +
 src/hb-ot-layout.cc        |   43 +-
 src/hb-ot-layout.h         |   16 +
 src/hb-ot-map.cc           |   13 +-
 src/hb-ot-tag.cc           | 1639
 ++++++++++++++++++++++++--------------------
 src/hb-ot-tag.h            |   11 +
 test/api/test-ot-tag.c     |  107 +++
 7 files changed, 1070 insertions(+), 764 deletions(-)

commit a03f5f4dfbbf885db567c3909241a55eb5869fce
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Thu Dec 28 22:59:29 2017 +0800

    Replace "ISO 639" with "BCP 47"

    `hb_language_from_string` accepts not only ISO 639 but also BCP
    47. Not
    all ISO 639 codes are valid BCP 47 tags but the function does
    not accept
    overlong language subtags anyway.

 src/hb-buffer.cc | 2 +-
 src/hb-common.cc | 6 +++---
 2 files changed, 4 insertions(+), 4 deletions(-)

commit ce6639cd27f79856466a5e8abf58f544f069e25d
Merge: a6b6faf2 0b9d60e1
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Oct 11 10:53:48 2018 -0700

    Merge branch 'master' into cff-subset

commit a6b6faf2b87f113fb23cf8e040f8b7875e2daf80
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Oct 11 10:53:44 2018 -0700

    Replaced CFF1 J subset font for better coverage

    in api test-ot-extents-cff

 test/api/fonts/SourceHanSans-Regular.41,3041,4C2E.otf | Bin 0 ->
 3892 bytes
 test/api/fonts/SourceHanSans-Regular.41,3041,4E9D.otf | Bin 5864 ->
 0 bytes
 test/api/fonts/SourceHanSans-Regular.41,4C2E.otf      | Bin 0 ->
 2548 bytes
 test/api/fonts/SourceHanSans-Regular.41,4E9D.otf      | Bin 5500 ->
 0 bytes
 test/api/test-ot-extents-cff.c                        |  15
 +++++++++++++++
 test/api/test-subset-cff1.c                           |  18
 +++++++++---------
 6 files changed, 24 insertions(+), 9 deletions(-)

commit 0b9d60e1a1c4b7867ac907bbd7c004191a14e697
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 13:26:58 2018 -0400

    [aat] Apply kerx if GPOS kern was not applied

    Ned tells me this is what Apple does.

 src/hb-ot-shape.cc | 18 ++++++++----------
 1 file changed, 8 insertions(+), 10 deletions(-)

commit b59a428af08d6451a47f40ed01e594815ebf6303
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 13:24:17 2018 -0400

    Minor

 src/hb-ot-shape.cc | 6 +++++-
 src/hb-ot-shape.hh | 5 +++--
 2 files changed, 8 insertions(+), 3 deletions(-)

commit 100e95f48e3d137c654d206e858d6419ea62a12c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 11:30:45 2018 -0400

    [trak] Add tests

 test/shaping/data/in-house/Makefile.sources     |   1 +
 test/shaping/data/in-house/fonts/TestTRAK.ttf   | Bin 0 -> 2456 bytes
 test/shaping/data/in-house/tests/aat-trak.tests |   8 ++++++++
 3 files changed, 9 insertions(+)

commit 04f72e8990ea61ffc6b62105c75e0a3e1b1ebab4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 11:25:07 2018 -0400

    [trak] Implement extrapolation

    This concludes trak, as well as AAT shaping support!

 src/hb-aat-layout-trak-table.hh | 39
 ++++++++++++++++++++-------------------
 1 file changed, 20 insertions(+), 19 deletions(-)

commit d6a12dba6da6262fd9e5d8397b46ac8516136cae
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 11:10:06 2018 -0400

    [trak] Fix, and hook up

    Works beautifully!  Test coming.

 src/hb-aat-layout-common.hh     |  4 ++--
 src/hb-aat-layout-trak-table.hh |  6 ++++--
 src/hb-aat-layout.cc            | 25 ++++++++++++++++++++++++-
 src/hb-aat-layout.hh            |  8 ++++++++
 src/hb-ot-shape.cc              |  2 ++
 5 files changed, 40 insertions(+), 5 deletions(-)

commit 3d7dea6dfdc9e75dcca100a79525aa3736dbe29c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 10:32:08 2018 -0400

    [trak] Handle nSizes=0 and 1

 src/hb-aat-layout-trak-table.hh | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

commit 451f3de521ff1b7f4d3b8ebb2cc0b95d88c9314a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 10:30:32 2018 -0400

    [trak] Fix counting

 src/hb-aat-layout-trak-table.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit a5be380cae9b49ed85c8620f1921209ef61a72ad
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 10:29:02 2018 -0400

    [trak] More

 src/hb-aat-layout-trak-table.hh | 26 +++++++++++++++++---------
 1 file changed, 17 insertions(+), 9 deletions(-)

commit d06c4a867f0d383d8c27f2957e646d9e3fe6853b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 10:22:01 2018 -0400

    [trak] Only adjust around first glyph

    Assumes graphemes only have one base glyph.

 src/hb-aat-layout-trak-table.hh | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit 071a2cbcddcbafae9458e674c21db5001b39518d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 10:18:46 2018 -0400

    [trak] Clean up

 src/hb-aat-layout-trak-table.hh | 67
 +++++++++++++++++++++++------------------
 1 file changed, 37 insertions(+), 30 deletions(-)

commit fbbd926dba163d9a2a6a62f380951f03363c2b14
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 01:22:29 2018 -0400

    [kerx] Implement Format4 action_type=1 contour-point-based attachment

    Untested.

    This concludes kerx table support!

 src/hb-aat-layout-kerx-table.hh | 17 ++++++++++++++++-
 1 file changed, 16 insertions(+), 1 deletion(-)

commit b6bc0d4ff62e4509643db3b304306a72bbcb2c38
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 01:17:57 2018 -0400

    [kerx] Implement Format4 action_type=2 coordinate-based attachment

    Untested.

 src/hb-aat-layout-kerx-table.hh | 21 ++++++++++++---------
 1 file changed, 12 insertions(+), 9 deletions(-)

commit 1622ba5943d14b2d50d45dc17fb723f4c9ddb0bb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 01:14:18 2018 -0400

    [kerx] Implement Format4 'ankr'-based mark attachment

    Tested with Kannada MN:

    $ HB_OPTIONS=aat ./hb-shape Kannada\ MN.ttc -u 0CCD,0C95,0CD6
    [kn_ka.vattu=0+230|kn_ai_length_mark=1@326,0+607]

 src/hb-aat-layout-common.hh     |  8 ++++++--
 src/hb-aat-layout-kerx-table.hh | 20 +++++++++++++++++---
 src/hb-aat-layout.cc            | 20 ++++++++++++++++----
 src/hb-ot-layout-gpos-table.hh  |  4 ----
 4 files changed, 39 insertions(+), 13 deletions(-)

commit 7bb4da7d9538f3d4b1d28030d43e0c3d720d821b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 00:52:07 2018 -0400

    [aat] Wire up 'ankr' table to apply context

 src/hb-aat-layout-common.hh | 7 +++++--
 src/hb-aat-layout.cc        | 8 +++++++-
 2 files changed, 12 insertions(+), 3 deletions(-)

commit 28f0367aab648c486d6e8d0e13dbbb2af1b65dcc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 11 00:12:49 2018 -0400

    [kerx] Flesh out Format4

    Doesn't apply actions yet.

 src/hb-aat-layout-kerx-table.hh | 122
 ++++++++++++++++++++++++++++++++++++++--
 1 file changed, 118 insertions(+), 4 deletions(-)

commit 947962a287d9aca2cb509c11f44cb5150aa6daf1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 23:07:03 2018 -0400

    [ankr] Implement table access

 src/hb-aat-layout-ankr-table.hh | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

commit 7281cb3eeb00091c6e6085895afd4a38a0516f35
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 22:56:52 2018 -0400

    [ankr] Start fixing

 src/hb-aat-layout-ankr-table.hh | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

commit 34caadc5c78e3d09faf11ef60bfade8f64f55de2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 22:17:07 2018 -0400

    Ugh. Re-enable accidentally disabled GPOS

 src/hb-ot-shape.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f7c45bc33ec1559c960a039b770d5c37bd82f057
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 22:15:13 2018 -0400

    [kerx] Allow granularly disabling kerning

 src/hb-aat-layout-kerx-table.hh | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

commit 2b72c4b63d29eea39b646c8a1a1cfc2db732e1a6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 21:53:14 2018 -0400

    [kerx] Comment

 src/hb-aat-layout-kerx-table.hh | 3 +++
 1 file changed, 3 insertions(+)

commit 9f450f07b0a1593962e3b45d00f2cf93916f3466
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 21:46:58 2018 -0400

    [kerx] Make Format1 work

    Tested using Kannada MN:

    $ HB_OPTIONS=aat ./hb-shape Kannada\ MN.ttc -u 0C95,0CCd,C95,CCD
    [kn_ka.virama=0+1299|kn_ka.vattu=0+115|_blank=0@-115,0+385]

    $ HB_OPTIONS=aat ./hb-shape Kannada\ MN.ttc -u 0C95,0CCd,C95,CCD
    --features=-kern
    [kn_ka.virama=0+1799|kn_ka.vattu=0+230|_blank=0+0]

    I don't see the GPOS table in the font do the same.  ¯\_(ツ)_/¯

 src/hb-aat-layout-kerx-table.hh | 15 ++++++++++-----
 1 file changed, 10 insertions(+), 5 deletions(-)

commit b5aa5dbb1158a5dfba29f7b119df9b4b319e8489
Merge: af61c3b1 ab1f30bd
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Oct 10 18:36:35 2018 -0700

    Merge branch 'master' into cff-subset

commit af61c3b10f83a00b4862cc0cb92fc9f0856e7dd6
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Oct 10 18:35:12 2018 -0700

    added vsindex test & fixed process_vsindex

 src/hb-cff2-interp-cs.hh                    |  12 +++++-----
 test/api/fonts/AdobeVFPrototype_vsindex.otf | Bin 0 -> 7036 bytes
 test/api/test-ot-extents-cff.c              |  33
 ++++++++++++++++++++++++++++
 3 files changed, 40 insertions(+), 5 deletions(-)

commit 504cb68fc972c7f606bf9fc62015376382f78f45
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 21:29:46 2018 -0400

    Disable mark advance zeroing as well as mark fallback positioning
    if doing kerx

 src/hb-ot-shape.cc | 50
 ++++++++++++++++++++++++++------------------------
 1 file changed, 26 insertions(+), 24 deletions(-)

commit 84967537966a76297c89460d95e7336f1bfc332d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 21:18:37 2018 -0400

    [kerx] Implement Format1

    Untested.

 src/hb-aat-layout-kerx-table.hh | 62
 +++++++++++++++++++++++++++++++++--------
 src/hb-aat-layout-morx-table.hh |  2 +-
 2 files changed, 52 insertions(+), 12 deletions(-)

commit c9165f5450b99e6d93e2a168b198384a221eef58
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 20:43:21 2018 -0400

    [kerx] More UnsizedArrayOf<>

 src/hb-aat-layout-kerx-table.hh | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

commit ca54eba4846d0afda4601929556617a7ebe51714
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 20:41:16 2018 -0400

    [kerx] Fix bound-checking error introduced a couple commits past

 src/hb-aat-layout-kerx-table.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 339036dd970625e03696b4533ced1e25fc4fd131
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 20:37:22 2018 -0400

    [kerx] Start fleshing out Format1

 src/hb-aat-layout-kerx-table.hh | 59
 +++++++++++++++++++++++++++++++++++------
 src/hb-aat-layout-morx-table.hh |  2 +-
 2 files changed, 52 insertions(+), 9 deletions(-)

commit ab1f30bd059f1d2270793e9726b60666b328d2b8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 20:10:20 2018 -0400

    [kerx] Implement Format6

    Untested.  The only Apple font shipping with this format is San
    Francisco fonts
    that use this for their kerx variation tables, which we don't support.

 src/hb-aat-layout-kerx-table.hh | 73
 +++++++++++++++++++++++++++++++++--------
 1 file changed, 60 insertions(+), 13 deletions(-)

commit c9a2ce9e05f91730a2150b9214dc6a49f31555c1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 20:00:44 2018 -0400

    [kerx] Move bounds-checking to subtable length itself

 src/hb-aat-layout-kerx-table.hh | 12 +++++-------
 1 file changed, 5 insertions(+), 7 deletions(-)

commit 22955b23cdeb48e46cdffd0eb906a855a420c4d1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 19:58:20 2018 -0400

    [kerx] Start fleshing out Format6

 src/hb-aat-layout-kerx-table.hh | 42
 ++++++++++++++++++++++++++++++++---------
 src/hb-open-type.hh             |  3 +++
 2 files changed, 36 insertions(+), 9 deletions(-)

commit f6aaad9b4ffb42e6cd8398f6439fe420e393c8f6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 19:20:06 2018 -0400

    [kerx] When rejecting variable kerning, also check for tupleCount

 src/hb-aat-layout-kerx-table.hh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 7ed5366d3cfca9c533250cb419e8cc878f32505d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 19:11:30 2018 -0400

    [kerx] No-op

    Tested that Format0 works with Kannada MN font:

    $ make -j5 lib -s && HB_OPTIONS=aat ./hb-shape Kannada\ MN.ttc
    -u 0C95,0CC2
    [kn_ka=0+1000|kn_matra_uu=0@-30,0+1345]

    $ make -j5 lib -s && HB_OPTIONS=aat ./hb-shape Kannada\ MN.ttc -u
    0C95,0CC2 --features=-kern
    [kn_ka=0+1030|kn_matra_uu=0+1375]

    Note that GPOS does the same with 'dist' feature, and applies the
    whole difference to the
    same glyph:

    $ make -j5 lib -s && ./hb-shape Kannada\ MN.ttc -u 0C95,0CC2
    [kn_ka=0+970|kn_matra_uu=0+1375]

    $ make -j5 lib -s && ./hb-shape Kannada\ MN.ttc -u 0C95,0CC2
    --features=-dist
    [kn_ka=0+1030|kn_matra_uu=0+1375]

 src/hb-aat-layout-kerx-table.hh | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

commit 7fa69e92ca3dd9d8fa92aba0e01098165d2b7975
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 19:02:32 2018 -0400

    Comment

 src/hb-machinery.hh | 7 +++++++
 1 file changed, 7 insertions(+)

commit 7e6e5bf6147596d6d096e2ba37f3a6eefd7429cd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 18:59:07 2018 -0400

    Fix option string matching

 src/hb-common.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 5d34164d98f04816aafaa0abfc44cd899c7d70b3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 18:14:41 2018 -0400

    [kern/kerx] Fix offset base

    Disable kern Format2.

    Fix kerx Format2.  Manually tested this with Tamil MN font and
    it works:

    $ HB_OPTIONS=aat ./hb-shape Tamil\ MN.ttc -u 0B94,0B95
    [tgv_au=0+3435|tgc_ka=1@-75,0+1517]

     HB_OPTIONS=aat ./hb-shape Tamil\ MN.ttc -u 0B94,0B95 --features=-kern
    [tgv_au=0+3510|tgc_ka=1+1592]

 src/hb-aat-layout-kerx-table.hh | 73
 +++++++++++++++++++++++++----------------
 src/hb-ot-kern-table.hh         |  7 ++++
 2 files changed, 52 insertions(+), 28 deletions(-)

commit 60f86d32d7c735ccf783b382e18ecdc096eaa682
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 18:10:05 2018 -0400

    [kerx] Don't loop over kerning subtables if kerning disabled

 src/hb-aat-layout-kerx-table.hh | 12 ++++++++++++
 src/hb-ot-shape.cc              |  4 ++--
 src/hb-ot-shape.hh              |  1 +
 3 files changed, 15 insertions(+), 2 deletions(-)

commit 38a7a8a89ed035a1d1fc34a675a1860ad660b6ff
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 17:44:46 2018 -0400

    Allow HB_OPTIONS=aat to prefer AAT tables over OT

    Fixes https://github.com/harfbuzz/harfbuzz/issues/322

 src/hb-common.cc   | 23 +++++++++++++++++++++--
 src/hb-debug.hh    |  7 ++++---
 src/hb-ot-shape.cc | 24 ++++++++++++++++--------
 3 files changed, 41 insertions(+), 13 deletions(-)

commit 44f09afd5bd4f4f1ea47ca54ac9d605219b06910
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 17:32:32 2018 -0400

    [kerx] Skip variation subtables

 src/hb-aat-layout-kerx-table.hh | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

commit 1e8fdd285f90b7b715b6d9ca9222a3c91cbea6b8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 16:32:35 2018 -0400

    Remove HAVE_OT

    We never tested compiling without it.  Just kill it.  We always build
    our own shaper.

 CMakeLists.txt        | 1 -
 configure.ac          | 6 ------
 src/Makefile.am       | 2 --
 src/hb-shaper-list.hh | 2 --
 src/hb.hh             | 2 --
 test/api/Makefile.am  | 4 +---
 test/api/test-c.c     | 5 +----
 util/Makefile.am      | 4 ----
 util/options.cc       | 4 ----
 util/options.hh       | 2 --
 10 files changed, 2 insertions(+), 30 deletions(-)

commit 7727e737566ddc826647e19fc645b296ad5a0cac
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 13:24:51 2018 -0400

    [kerx] Actually hook up, and fix crash

 src/hb-aat-layout-common.hh     | 6 ++++++
 src/hb-aat-layout-kerx-table.hh | 4 ++--
 src/hb-ot-shape.cc              | 4 ++--
 3 files changed, 10 insertions(+), 4 deletions(-)

commit b3390990f508def9c375716614b92fc7b0038228
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 12:07:49 2018 -0400

    Add per-subtable set-digests

    This speeds up Roboto shaping by ~10%.  I was hoping for more.
    Still, good defense against lookups with many subtables.

 src/hb-null.hh               |   2 +-
 src/hb-ot-layout-gsubgpos.hh | 108
 +++++++++++++++++++++++--------------------
 2 files changed, 59 insertions(+), 51 deletions(-)

commit e78549edfb4df617128a5f5ddd12692f1d0af4bf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 11:54:48 2018 -0400

    Move apply down into subtables accel

 src/hb-ot-layout-gsubgpos.hh | 10 +++++++++-
 src/hb-ot-layout.cc          | 17 +++--------------
 2 files changed, 12 insertions(+), 15 deletions(-)

commit 78c09bf21335a0f2b538b37de6647af08e3b1161
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 11:50:46 2018 -0400

    Move subtable array into lookup accel

 src/hb-null.hh               |  2 +-
 src/hb-ot-layout-gsubgpos.hh | 14 +++++++++++---
 src/hb-ot-layout.cc          | 16 ++++++----------
 3 files changed, 18 insertions(+), 14 deletions(-)

commit 97e5913d5ac2cd313fb3923e9602358d7f75f11d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 11:41:05 2018 -0400

    Move more code

 src/hb-ot-layout-gsubgpos.hh               | 17 +++++++++++++++++
 src/hb-ot-layout.cc                        | 12 ++++++------
 src/hb-ot-layout.hh                        | 20 ++------------------
 src/hb-ot-shape-complex-arabic-fallback.hh |  2 +-
 4 files changed, 26 insertions(+), 25 deletions(-)

commit c8f2d9334c0f91ec30f1c7821eb44bb5149bd31c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 11:36:28 2018 -0400

    Move code

    In preparation to move add per-subtable set digests...

 src/hb-ot-layout-gsubgpos.hh | 50 ++++++++++++++++++++++++++++++++++++++
 src/hb-ot-layout.cc          | 57
 ++++----------------------------------------
 2 files changed, 54 insertions(+), 53 deletions(-)

commit a03850a3567d532c3a4d7655aa71bfe73dfb0e33
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 10:57:28 2018 -0400

    Fix GPOS/kern interaction

    Oops.  Was checking for kern feature in GSUB, not GPOS.

 src/hb-ot-shape.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit d1be805e784dfaadf2ce9caa830a3f851fdd67da
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 10:49:45 2018 -0400

    More rewriting plan compile

    Hopefully more clear.

 src/hb-ot-shape.cc | 55
 ++++++++++++++++++++++++++++++++++++++----------------
 src/hb-ot-shape.hh |  1 -
 2 files changed, 39 insertions(+), 17 deletions(-)

commit 961ab46b24ca9f3ef42a56398646191f106bf5bd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 10:42:10 2018 -0400

    More reshuffle plan compile

 src/hb-ot-shape.cc | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

commit 2091b509e3e3b7fb7315539679fae81da2879280
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 10:41:08 2018 -0400

    [kerx] Hook up to shaper

 src/hb-aat-layout.cc | 31 ++++++++++++++++++++++++-------
 src/hb-aat-layout.hh |  3 +++
 src/hb-ot-shape.cc   |  6 ++++--
 src/hb-ot-shape.hh   |  1 +
 4 files changed, 32 insertions(+), 9 deletions(-)

commit 8d00c39bfc558895c63e22148d88db51cde39164
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 10:18:39 2018 -0400

    [kern] Minor

 src/hb-ot-shape-fallback.cc | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit e655fd38cf20eefb1c071a52282a4caccb6f08ea
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 10:16:09 2018 -0400

    Apply TT or fallback kerning when GPOS does not have kern feature

    Previously we only did if there was no GPOS whatsoever.  This applies
    to Arial, Times New Roman, etc in Win7.  Was not kerning before.  It
    is now.

 src/hb-ot-shape.cc | 25 ++++++++++++++++---------
 1 file changed, 16 insertions(+), 9 deletions(-)

commit 754cf440bf80ced36461a98a5d4607a700f44fd3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 10 10:04:05 2018 -0400

    Minor

 src/hb-ot-shape-fallback.cc | 2 ++
 1 file changed, 2 insertions(+)

commit 187df7d7a9a1d9cd67cb2f72d4d6ed8cae1eed61
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Oct 10 17:12:52 2018 +0330

    [circleci] Add an iOS bot (#1233)

 .circleci/config.yml |  12 +++++
 CMakeLists.txt       | 140
 ++++++++++++++++++++++++++++++++-------------------
 2 files changed, 100 insertions(+), 52 deletions(-)

commit c06a5dff0b0f8d1c5aba53bcfd7fb0b680f1ca92
Merge: 83c5298f 0537a401
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Oct 9 22:00:10 2018 -0700

    Merge branch 'master' into cff-subset

commit 83c5298f33e66cfd3d84d246297683f0de80c57d
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Oct 9 21:59:36 2018 -0700

    added cff1_legacyops.otf as test-ot-extents-cff test case

    fixed roll operator bugs uncovered by the test

 src/hb-cff-interp-common.hh       |   4 ++--
 test/api/fonts/cff1_legacyops.otf | Bin 0 -> 3104 bytes
 test/api/test-ot-extents-cff.c    |  23 +++++++++++++++++++++++
 3 files changed, 25 insertions(+), 2 deletions(-)

commit 0537a40193e803d50a99cd6b993d6d9301e84ebf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 23:35:07 2018 -0400

    [kerx] Comment

 src/hb-aat-layout-kerx-table.hh | 2 +-
 src/hb-ot-kern-table.hh         | 1 +
 2 files changed, 2 insertions(+), 1 deletion(-)

commit 362d3241195bb7054c395fb4b029b6d55da4612a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 23:27:00 2018 -0400

    [aat] Rename

 src/hb-aat-layout-kerx-table.hh | 4 ++--
 src/hb-aat-layout-morx-table.hh | 6 +++---
 2 files changed, 5 insertions(+), 5 deletions(-)

commit 54c9ecb92d196e62901eef3f8bc025c024ed16bb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 23:18:19 2018 -0400

    [morx] Use subtable range for embedded sanitizer here as well

 src/hb-aat-layout-morx-table.hh | 2 ++
 1 file changed, 2 insertions(+)

commit d35315cc028e70dd1b3ffc8cb079a2336b22a0c3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 23:17:32 2018 -0400

    [aat] Fixup recent commit

    For 329f2401082011007d9ce12b15ce0225cd267c57

    max_ops is signed.

 src/hb-aat-layout-common.hh | 2 +-
 src/hb-machinery.hh         | 5 ++++-
 2 files changed, 5 insertions(+), 2 deletions(-)

commit 948f59a13a4c643ae310f5fc643e29fefd6c3787
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 23:07:47 2018 -0400

    [kerx] Use subtable range for runtime checks

 src/hb-aat-layout-kerx-table.hh | 4 +++-
 src/hb-machinery.hh             | 8 ++++++++
 2 files changed, 11 insertions(+), 1 deletion(-)

commit 329f2401082011007d9ce12b15ce0225cd267c57
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 23:02:53 2018 -0400

    [aat] Set embedded sanitizer max ops really high

    Since we consume it legitimately during shaping.

 src/hb-aat-layout-common.hh | 1 +
 src/hb-machinery.hh         | 2 ++
 2 files changed, 3 insertions(+)

commit ad763074861da60ed51211931788ca5b27fc1512
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 22:57:00 2018 -0400

    [kerx] Comment

 src/hb-aat-layout-kerx-table.hh | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit db9600bbe15035cea6c2d4e8e9d184a5e23e357e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 22:55:47 2018 -0400

    [kerx] Remove junk

 src/hb-aat-layout-kerx-table.hh | 16 ----------------
 1 file changed, 16 deletions(-)

commit 27db859416c0362f211e2b42dc9a2ebb53b0e0f4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 22:52:41 2018 -0400

    [kern/kerx] Adjust bounds check

 src/hb-aat-layout-kerx-table.hh | 8 +++-----
 src/hb-ot-kern-table.hh         | 8 +++-----
 2 files changed, 6 insertions(+), 10 deletions(-)

commit c66f7f8c5deaac109e34bf65fc16cff92b74e69a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 22:49:33 2018 -0400

    [kerx] Implement Format2 apply()

    Still, not hooked.

 src/hb-aat-layout-kerx-table.hh | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

commit 4b461785bdf356e4b5586cb6e5b226f47da04b7d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 22:46:30 2018 -0400

    Fix check

 src/hb-aat-layout-kerx-table.hh | 2 ++
 src/hb-aat-layout.cc            | 4 +++-
 2 files changed, 5 insertions(+), 1 deletion(-)

commit 4df8eb200def767d342762654b96d5d9314e5b21
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 22:46:12 2018 -0400

    [kern] Use kern subtable length for sanitizing in the accelerator

 src/hb-ot-kern-table.hh | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

commit 8bff1d2994876a5202c8605d1cc37522431c6c84
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 22:39:31 2018 -0400

    [kern] Minor

 src/hb-ot-kern-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 53e55945000347fb19168bb4c13a470d30d46251
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 22:35:22 2018 -0400

    [kerx] Implement Format0 apply()

    Not hooked up to be called yet.

 src/hb-aat-layout-common.hh     |  6 ++++--
 src/hb-aat-layout-kerx-table.hh | 29 ++++++++++++++++++++++++++---
 src/hb-aat-layout.cc            |  6 ++++--
 src/hb-aat-layout.hh            | 12 +++++++-----
 src/hb-ot-shape.cc              |  2 +-
 5 files changed, 42 insertions(+), 13 deletions(-)

commit 60318f87153b559e5da103f0bfcce6bad8bab3b0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 22:25:53 2018 -0400

    Minor

 src/hb-mutex.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 210f899acad1959d60892538ac1968a36dbbb51b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 21:56:37 2018 -0400

    [kern] Sanitize 4 bytes, not 2

 src/hb-ot-kern-table.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 588518ea51b2226bdb41417946848d18c3913a67
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Oct 9 14:48:04 2018 -0700

    fixed test-ot-extents-cff failure on some platforms

 test/api/test-ot-extents-cff.c | 11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)

commit be2f148da474d6dd30132c22dd467ea33a942edf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 16:24:50 2018 -0400

    [ft] Use mutex to lock access to FT_Face

    Makes our FT-backed hb_font_t safe to use from multiple threads.
    Still,
    the underlying FT_Face should NOT be used from other threads by client
    or other libraries.

    Maybe I add a lock()/unlock() public API ala PangoFT2 and cairo-ft.
    Maybe not.

 src/hb-ft.cc                | 18 +++++++++++++++++-
 src/hb-mutex.hh             |  8 ++++++++
 test/api/test-multithread.c |  7 ++-----
 3 files changed, 27 insertions(+), 6 deletions(-)

commit d18c3c5861d40291077eb8b8667dc2f12b649cf2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 16:07:55 2018 -0400

    [ft] Remove (probably) stale comment

 src/hb-ft.cc | 7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)

commit 7003b601afd02b0ba7e839510a7d0b886da09aaa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 15:55:26 2018 -0400

    Minor

 src/hb-ot-shape-complex-arabic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 07899435b8065d494e563f83e0a35300c828eefe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 15:39:51 2018 -0400

    Install ot-funcs on newly created funcs

    **Finally**!  Casual users can stop caring about font-funcs
    completely now,
    like they haven't been needing to care re unicode-funcs for a
    few years.

 src/hb-font.cc | 39 ++++++++++++++++++++++++++-------------
 1 file changed, 26 insertions(+), 13 deletions(-)

commit 55153553675445e8aad06e363295d399aa79c54f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 15:12:09 2018 -0400

    [ot-font] Don't pre-load cmap table

    Now that we have get_h_advances() and get_nominal_glyphs()
    implemented, the
    overhead of doing a proper atomic load would be once per run, NOT
    once per
    glyph.  So, no need to pre-load the tables to avoid that overhead.

    As such, hb_ot_font_set_funcs() has become really cheap.
    Can *finally* make
    it be default font functions on all newly created fonts!

 src/hb-ot-font.cc | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

commit ec84460e46fdaa5f8a3c16c8d48dabe2b0c869da
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 15:07:04 2018 -0400

    [ot/ft] Implement get_nominal_glyphs() callback

    Some more measurable speedup.  The recent commits' speedups are
    as follows:

    Testing with Roboto, ****when disabling kern and liga****:

    Before:

    FT --features=-kern,-liga
    user↦   0m0.521s

    OT --features=-liga,-kern
    user↦   0m0.568s

    After:

    FT --features=-liga,-kern
    user↦   0m0.428s

    OT --features=-liga,-kern
    user↦   0m0.470s

    So, 17% speedup.

    Note that FT callbacks are faster than OT these days since we added
    an advance
    cache to FT.  I don't think the difference is enough to justify
    adding a cache
    to OT.

    When not disabling kern, the thing is three times slower, so the
    speedups
    are three times less impressive...  Still, 5% not bad for a codebase
    that I
    otherwise thought is optimized out.

    Note that, because of this and other optimiztions in our main shaper,
    disabling kern and liga, the OT shaper is now *faster* than the
    fallback
    shaper.  So, that's my recommendation to clients that need the
    absolute
    fastest...

 src/hb-ft.cc      | 26 ++++++++++++++++++++++++++
 src/hb-ot-font.cc | 24 ++++++++++++++++++++++++
 2 files changed, 50 insertions(+)

commit e883f52732a25f5495ec30656489954afd8cc3a4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 14:50:57 2018 -0400

    Call get_nominal_glyphs() for runs of simple clusters at a time

    Even without FT or OT font funcs implementing get_nominal_glyphs(),
    there's measurable
    speedup.

 src/hb-buffer.hh             | 20 +++++++++++++++++++-
 src/hb-ot-shape-normalize.cc |  9 +++++++++
 2 files changed, 28 insertions(+), 1 deletion(-)

commit 8008bca83b0bb310fc434dbdd339545af951193b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 14:38:23 2018 -0400

    Whitespace

 src/hb-font.hh               |  2 +-
 src/hb-ot-shape-normalize.cc | 52
 ++++++++++++++++++++++++--------------------
 2 files changed, 29 insertions(+), 25 deletions(-)

commit 30c114ffec335770452e60729224b1634586c5b0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 14:37:08 2018 -0400

    Avoid sort and recompose stages if all clusters simple

    Even has measurable speedup...

 src/hb-ot-shape-normalize.cc | 52
 ++++++++++++++++++++++++--------------------
 1 file changed, 29 insertions(+), 23 deletions(-)

commit 9f79365c3b183278d14352ba6241c7d4ec274984
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 14:36:25 2018 -0400

    Fix warning

    How come this one is not generated by clang everything bot?!

    ../../../test/api/test-multithread.c:37:26: warning: initialization
    discards ‘const’ qualifier from pointer target type
    [-Wdiscarded-qualifiers]
     static char *font_path = "fonts/Inconsolata-Regular.abc.ttf";
                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ../../../test/api/test-multithread.c:38:21: warning: initialization
    discards ‘const’ qualifier from pointer target type
    [-Wdiscarded-qualifiers]

 test/api/test-multithread.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 24382debe893450088acd1e4b387ac31145d4553
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 14:33:24 2018 -0400

    Rewrite main normalizer loop to isolate runs of simple clusters

 src/hb-ot-shape-normalize.cc | 24 +++++++++++++++++++-----
 1 file changed, 19 insertions(+), 5 deletions(-)

commit b5371f18effbeb91565fd8c554c120b911641f0b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 14:12:59 2018 -0400

    Inline decompose_cluster

    Towards separating the common case into its own loop.

 src/hb-ot-shape-normalize.cc | 14 ++++----------
 1 file changed, 4 insertions(+), 10 deletions(-)

commit f5f505b5120c316f06306318c6c2f0db4496ba04
Merge: 8b349040 4035158d
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Oct 9 10:10:35 2018 -0700

    Merge branch 'master' into cff-subset

commit b314c4e9abf4236c6650a63d1287471b61f64885
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 09:23:51 2018 -0400

    [font] Add get_nominal_glyphs() callback (note the plural)

    Unused as of now.  To be wired up to normalizer, which would remove
    overhead and allow hb-ot-font initialization to become a no-op, so
    we can enable it by default.

 docs/harfbuzz-sections.txt |  3 +++
 src/hb-font.cc             | 33 +++++++++++++++++++++++++++++++++
 src/hb-font.h              | 24 ++++++++++++++++++++++++
 src/hb-font.hh             | 13 +++++++++++++
 4 files changed, 73 insertions(+)

commit ca6a317012a13ee84b58a69e14e74c94c5b158ff
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 09:06:07 2018 -0400

    Minor

 src/hb-font.cc | 6 +++---
 src/hb-font.h  | 8 ++++----
 src/hb-font.hh | 2 +-
 3 files changed, 8 insertions(+), 8 deletions(-)

commit 4035158de46ce373b7521daf61c5b6df83312968
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Wed Jul 25 18:26:10 2018 +0800

    test/api/test-subset-*.c: Fix build on pre-C99

    Ensure that we have the variables at the beginning of the block.
    These
    are the only fixes that we need for building HarfBuzz on older
    compilers.

 test/api/test-collect-unicodes.c |  9 ++++++---
 test/api/test-subset-glyf.c      | 19 +++++++++++++------
 test/api/test-subset-hdmx.c      |  8 ++++++--
 test/api/test-subset-hmtx.c      |  3 ++-
 test/api/test-subset-post.c      |  3 ++-
 test/api/test-subset-vmtx.c      |  6 ++++--
 test/api/test-subset.c           | 12 +++++++++---
 7 files changed, 42 insertions(+), 18 deletions(-)

commit 8e4ad1d7a0a35298ca04828ef1ef18b4c019ec03
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Wed Jul 25 18:12:34 2018 +0800

    builds: Fix and clean up MSVC DLL builds

    Instead of passing a CFLAG/CXXFLAG to define HB_EXTERN, define it
    directly in src/hb.hh as __declspec(dllexport) extern when we are
    building HarfBuzz as DLLs on Visual Studio.  Define HB_INTERNAL
    as nothing without defining HB_NO_VISIBILITY when building HarfBuzz as
    DLLs to avoid linker errors on Visual Studio builds.

    Also "install" harfbuzz-subset.dll into $(PREFIX)\bin as the
    hb-subset utility will depend on that DLL at runtime, when HarfBuzz is
    built as DLLs.  Since it consists of private APIs that are subject to
    change, we do not install its headers nor .lib file.

 CMakeLists.txt |  7 ++++++-
 src/hb.hh      | 10 ++++++++--
 2 files changed, 14 insertions(+), 3 deletions(-)

commit e640f3a6b16f41cee5f7868ec738fda01244e96a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 08:28:07 2018 -0400

    Another old bot fix

 src/hb-aat-layout-kerx-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e4f27f368f8f0509fa47f6a28f3984e90b40588f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 08:20:10 2018 -0400

    Try fixing older bots

 src/hb-ot-shape-fallback.cc | 42
 +++++++++++++++++++++---------------------
 1 file changed, 21 insertions(+), 21 deletions(-)

commit bee93e269711a3eda4e7d762b730522564fe6e87
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 08:01:49 2018 -0400

    Add const to get_*_advances API

    Ouch!

 src/hb-font.cc    | 10 +++++-----
 src/hb-font.h     |  8 ++++----
 src/hb-font.hh    |  6 +++---
 src/hb-ft.cc      |  2 +-
 src/hb-ot-font.cc |  4 ++--
 5 files changed, 15 insertions(+), 15 deletions(-)

commit eb2be97f864c726feaa2434e290f962ddfa97069
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 07:48:52 2018 -0400

    Port test off deprecated API

 test/api/test-shape.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit cc126f2817844a2e83e973129e5b2caa18de599f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 01:10:15 2018 -0400

    Minor

 src/Makefile.am          | 2 +-
 test/shaping/Makefile.am | 2 ++
 test/subset/Makefile.am  | 2 +-
 3 files changed, 4 insertions(+), 2 deletions(-)

commit b2fbe55b828ea5864bc0aed54db7109a2e189de2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 01:07:36 2018 -0400

    [icu] Unbreak

 src/hb-icu.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit a353c1768dc1d7934b8ac293761620f561304bb2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 01:05:28 2018 -0400

    Remove test for deprecated hb_set_invert()

 test/api/test-set.c | 4 ----
 1 file changed, 4 deletions(-)

commit a52bc039c33b3c01dbb96b815dc24df7f03bc4be
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 00:56:33 2018 -0400

    Properly remove deprecated stuff

 src/hb-glib.cc | 15 ++++++---------
 src/hb-icu.cc  | 15 ++++++---------
 src/hb-ucdn.cc | 15 ++++++---------
 3 files changed, 18 insertions(+), 27 deletions(-)

commit 8b349040e92b8894a7f8a609fac8070bcb110f96
Merge: df964a09 fc509165
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Oct 8 21:46:23 2018 -0700

    Merge branch 'master' into cff-subset

commit fc50916589a300e49183b5ee598e64ca28d0bd9a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 00:39:42 2018 -0400

    Remove deprecated decompose_compatibility stuff

 src/hb-glib.cc          | 31 +-----------------------------
 src/hb-icu.cc           | 33 +-------------------------------
 src/hb-ucdn.cc          |  8 +-------
 test/api/test-unicode.c | 51
 -------------------------------------------------
 4 files changed, 3 insertions(+), 120 deletions(-)

commit eed737f6726d3408191a4e64592805b70d8bb247
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 00:33:30 2018 -0400

    Remove deprecated eastasian_width

 src/hb-glib.cc          |  8 +------
 src/hb-icu.cc           | 19 +--------------
 src/hb-ucdn.cc          |  9 +------
 test/api/test-unicode.c | 64
 -------------------------------------------------
 4 files changed, 3 insertions(+), 97 deletions(-)

commit 47030b1855f04c0d75899ffb6f5021fea3c19b90
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 00:30:45 2018 -0400

    [ft/ot] Remove implementation of deprecated kerning funcs

 src/hb-ft.cc      | 19 -------------------
 src/hb-ot-font.cc | 13 -------------
 2 files changed, 32 deletions(-)

commit 977c8a8e5c811995f47b0eb721199d0dc3689e48
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 00:22:08 2018 -0400

    [kern] Minor

 src/hb-ot-kern-table.hh | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

commit ed5cfa42c7fb8d5ff2d74bdb452a0590174f4e19
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 00:20:35 2018 -0400

    [kern] Minor

 src/hb-aat-layout-kerx-table.hh | 1 +
 1 file changed, 1 insertion(+)

commit d219f899f4b2fb4b39ebc1dff9fb648fc5d6d112
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 9 00:01:09 2018 -0400

    Deprecate font kern API

 docs/harfbuzz-sections.txt | 16 +++++++-------
 src/hb-deprecated.h        | 54
 ++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-font.cc             |  3 +++
 src/hb-font.h              | 51
 -------------------------------------------
 4 files changed, 65 insertions(+), 59 deletions(-)

commit a51958819fcf51ade3f8eb38001e680a419ebbba
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 8 23:57:45 2018 -0400

    Apply TrueType/OpenType kern table when GPOS kern feature is not
    available

    Fixes https://github.com/harfbuzz/harfbuzz/issues/250

 src/hb-ot-kern-table.hh     | 24 +++++++++++--------
 src/hb-ot-layout.cc         | 57
 ++++++++++++++++++++-------------------------
 src/hb-ot-layout.hh         | 13 +++++++++++
 src/hb-ot-shape-fallback.cc |  4 ++--
 src/hb-ot-shape.cc          | 10 +++++---
 src/hb-ot-shape.hh          |  1 +
 6 files changed, 62 insertions(+), 47 deletions(-)

commit 09ad2613c8d8a60dac69a878c2d568adfea054c8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 8 23:30:24 2018 -0400

    Separate fallback kern vs mark positioning

 src/hb-ot-shape-fallback.cc | 12 ++++++------
 src/hb-ot-shape-fallback.hh | 12 ++++++------
 src/hb-ot-shape.cc          | 15 ++++++++-------
 src/hb-ot-shape.hh          |  4 ++--
 4 files changed, 22 insertions(+), 21 deletions(-)

commit 3c23ff9b7c4241ec23054a95f1fdfbdef2c51f40
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 8 23:26:26 2018 -0400

    [kern] Add kerning driver to TT kern table

 src/hb-ot-kern-table.hh     | 19 +++++++++++++++++--
 src/hb-ot-shape-fallback.cc |  2 +-
 2 files changed, 18 insertions(+), 3 deletions(-)

commit 683c3a95330928129cfbb1488650f708414d68ba
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 8 23:09:48 2018 -0400

    [kern] Abstract away kerning machine

 src/hb-font.hh              |  2 +-
 src/hb-ot-kern-table.hh     | 71
 +++++++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-shape-fallback.cc | 67
 +++++++++++-------------------------------
 3 files changed, 89 insertions(+), 51 deletions(-)

commit fb4f43838154a77912a9fc3437110c81e9d34aac
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 8 22:44:16 2018 -0400

    Add HB_DEPRECATED

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1232

 src/hb-common.h     |  9 +++++++++
 src/hb-deprecated.h | 12 ++++++------
 2 files changed, 15 insertions(+), 6 deletions(-)

commit 80e3102b8a216f9a751d073f9a2f7900ca758086
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 8 22:41:08 2018 -0400

    [kerx] Process coverage flags

 src/hb-aat-layout-kerx-table.hh | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

commit 26d7305da7a7e2cf765b068f565836442872ffe7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 8 22:31:35 2018 -0400

    Deprecate decompose_compatibility stuff

 docs/harfbuzz-sections.txt |  7 +++---
 src/hb-deprecated.h        | 63
 ++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-unicode.h           | 47 ----------------------------------
 3 files changed, 67 insertions(+), 50 deletions(-)

commit 42b51eee54f143854b7c6c3be5d84bfbbd895100
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 8 22:26:39 2018 -0400

    Deprecate eastasian_width stuff

 docs/harfbuzz-sections.txt |  5 +++--
 src/hb-deprecated.h        | 37 +++++++++++++++++++++++++++++++++++++
 src/hb-unicode.h           | 28 ----------------------------
 3 files changed, 40 insertions(+), 30 deletions(-)

commit df964a09319bbf5b0a7528b906311726d4f640d6
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Oct 8 15:38:05 2018 -0700

    fixed test-subset-cff2

 src/hb-cff2-interp-cs.hh | 7 +++----
 src/hb-ot-cff2-table.cc  | 2 +-
 2 files changed, 4 insertions(+), 5 deletions(-)

commit a90fd8b9feeee3b02d139f2e7db774766d7855cb
Merge: b51418f5 e42cd58c
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Oct 8 15:07:58 2018 -0700

    Merge branch 'master' into cff-subset

commit b51418f596097aa5d1b28fb0a02b613c36bacd8e
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Oct 8 15:05:36 2018 -0700

    added CFF2 get_extents

    added source hb-ot-cff2-table.cc
    augmented VariationData to return scalars
    misc bug fixes, renaming, cleanup

 src/Makefile.sources             |   2 +
 src/hb-cff-interp-common.hh      |  37 ++++++-----
 src/hb-cff-interp-cs-common.hh   | 134
 +++++++++++++++++++-------------------
 src/hb-cff-interp-dict-common.hh |   6 +-
 src/hb-cff2-interp-cs.hh         | 102 ++++++++++++++++++++++++-----
 src/hb-ot-cff1-table.hh          |   4 +-
 src/hb-ot-cff2-table.cc          | 135
 +++++++++++++++++++++++++++++++++++++++
 src/hb-ot-cff2-table.hh          |  71 ++++++++++++--------
 src/hb-ot-face.cc                |   1 +
 src/hb-ot-face.hh                |   1 +
 src/hb-ot-font.cc                |   4 ++
 src/hb-ot-layout-common.hh       |  28 +++++++-
 src/hb-subset-cff1.cc            |   2 +-
 src/hb-subset-cff2.cc            |   4 +-
 test/api/test-ot-extents-cff.c   |  36 +++++++++++
 15 files changed, 426 insertions(+), 141 deletions(-)

commit 286a45641fc6732bb7cab02f06c90396834541b1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 8 16:41:08 2018 -0400

    Minor

 src/hb-ot-shape-normalize.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c0d3bf1bafe7b6d2e8f2798c1f55aaec71350d90
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 8 16:32:44 2018 -0400

    Minor

 src/hb-ot-shape.cc | 26 +++++++++++++-------------
 1 file changed, 13 insertions(+), 13 deletions(-)

commit 9c1bb81f5c5ca64ad1c665edd16947e4bc6f6c46
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 8 16:10:54 2018 -0400

    [test/text-rendering-tests] Update from upstream

 test/shaping/data/text-rendering-tests/DISABLED            | 3 ---
 test/shaping/data/text-rendering-tests/Makefile.sources    | 2 +-
 test/shaping/data/text-rendering-tests/tests/MORX-35.tests | 4 ++--
 3 files changed, 3 insertions(+), 6 deletions(-)

commit 1a5a3325a26f4989ab8c4bb91515d4898ffa4631
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 7 23:08:39 2018 -0400

    [kerx] Minor

 src/hb-aat-layout-kerx-table.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit d62b4011cc600ade2b130f81a077dd08d4e4464f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 7 22:58:06 2018 -0400

    [kern] Shout less

 src/hb-ot-kern-table.hh | 36 +++++++++++++++++++-----------------
 1 file changed, 19 insertions(+), 17 deletions(-)

commit c6bb3a588f493630b40d8823532b482f407bacbf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 7 22:52:53 2018 -0400

    [kerx] Clean up Format2

 src/hb-aat-layout-kerx-table.hh | 48
 ++++++++---------------------------------
 1 file changed, 9 insertions(+), 39 deletions(-)

commit 8aa83d97f9e7f63e2fcb4ae965b75a39961c7d87
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 7 22:43:59 2018 -0400

    [kern/kerx] Fix Format2 offsetting

    "The values in the right class table are stored pre-multiplied by the
    number of bytes in a single kerning value, and the values in the left
    class table are stored pre-multiplied by the number of bytes in one
    row. This eliminates needing to multiply the row and column values
    together to determine the location of the kerning value. The array can
    be indexed by doing the right- and left-hand class mappings,
    adding the
    class values to the address of the array, and fetching the kerning
    value to which the new address points."

 src/hb-aat-layout-kerx-table.hh | 2 +-
 src/hb-ot-kern-table.hh         | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit ed2a404272bc99234c6f71f22b5a642834e59e6c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 7 22:33:41 2018 -0400

    [kerx] Clean up Format0

 src/hb-aat-layout-kerx-table.hh | 48
 +++++++++++------------------------------
 1 file changed, 12 insertions(+), 36 deletions(-)

commit 4c3b19d52ec7a1fa46f8d0971e377a7d29b87e27
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 7 22:30:42 2018 -0400

    Support HBUINT32 BinSearchArrayOf

 src/hb-open-type.hh | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

commit 456a68c506238e9c6b019244237d4443bd3589af
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 7 22:28:45 2018 -0400

    Move code

 src/hb-aat-layout-common.hh | 105
 --------------------------------------------
 src/hb-open-type.hh         | 105
 +++++++++++++++++++++++++++++++++++++++++++-
 2 files changed, 104 insertions(+), 106 deletions(-)

commit 3515c8b187e2316dcf3abaefc84917b09449d485
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 7 22:27:00 2018 -0400

    [aat] Rename

 src/hb-aat-layout-common.hh | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit e42cd58c997adafca5517faa9aacf651b90520f5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 7 20:46:11 2018 -0400

    Rename invisible_codepoint to invisible_glyph in API

    Deleted recently added API:
        hb_buffer_set_invisible_codepoint()
        hb_buffer_get_invisible_codepoint()

        hb-shape / hb-view --invisible-codepoint

    New API:
        hb_buffer_set_invisible_glyph()
        hb_buffer_get_invisible_glyph()

        hb-shape / hb-view --invisible-glyph

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1216

 docs/harfbuzz-sections.txt |  4 ++--
 src/hb-buffer.cc           | 12 ++++++------
 src/hb-buffer.h            |  6 +++---
 util/options.cc            |  2 +-
 util/options.hh            |  6 +++---
 5 files changed, 15 insertions(+), 15 deletions(-)

commit 2a5cb37fdb43230217e055f3d7c770a35cfd5c21
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 7 20:36:46 2018 -0400

    Revert "[morx] Fix MORX-35"

    This reverts commit f62f6e90ad1f1a83f77771ad65ee1ffb79470a8a.

 src/hb-aat-layout-morx-table.hh                         | 14
 +++++---------
 test/shaping/data/text-rendering-tests/DISABLED         |  3 +++
 test/shaping/data/text-rendering-tests/Makefile.sources |  2 +-
 3 files changed, 9 insertions(+), 10 deletions(-)

commit 14ebf8af0c04efcae6ca788ac85601bfe462f28d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 7 20:35:06 2018 -0400

    [buffer] Improve shift_forward()

    "Improve" is a strong word in this case though, I understand.

 src/hb-buffer.cc | 16 +++++++++++++---
 1 file changed, 13 insertions(+), 3 deletions(-)

commit f62f6e90ad1f1a83f77771ad65ee1ffb79470a8a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 7 18:06:53 2018 -0400

    [morx] Fix MORX-35

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1224

 src/hb-aat-layout-morx-table.hh                         | 14
 ++++++++++----
 test/shaping/data/text-rendering-tests/DISABLED         |  3 ---
 test/shaping/data/text-rendering-tests/Makefile.sources |  2 +-
 3 files changed, 11 insertions(+), 8 deletions(-)

commit 94368855c6bd7201d562cab3d2107685589e69c8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 7 18:52:12 2018 -0400

    Remove some code

    We use scratch-flags to short-circuit this function.  No need for
    previous
    early loop.

 src/hb-ot-shape.cc | 16 +++-------------
 1 file changed, 3 insertions(+), 13 deletions(-)

commit c07b91b812dc66b38b11329cd6a93258a3769f9e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 7 18:00:14 2018 -0400

    [test/text-rendering-tests] Update from upstream

 test/shaping/data/text-rendering-tests/Makefile.sources  |   6 +++++-
 .../data/text-rendering-tests/fonts/TestMORXForty.ttf    | Bin 0 ->
 2408 bytes
 .../text-rendering-tests/fonts/TestMORXThirtyeight.ttf   | Bin 0 ->
 2444 bytes
 .../text-rendering-tests/fonts/TestMORXThirtynine.ttf    | Bin 0 ->
 2436 bytes
 .../text-rendering-tests/fonts/TestMORXThirtyseven.ttf   | Bin 0 ->
 2444 bytes
 .../data/text-rendering-tests/tests/MORX-35.tests        |   4 ++--
 .../data/text-rendering-tests/tests/MORX-37.tests        |   4 ++++
 .../data/text-rendering-tests/tests/MORX-38.tests        |   4 ++++
 .../data/text-rendering-tests/tests/MORX-39.tests        |   4 ++++
 .../data/text-rendering-tests/tests/MORX-40.tests        |   4 ++++
 10 files changed, 23 insertions(+), 3 deletions(-)

commit fdce1e15434f14b7f4802edd67f7af737cf2b075
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 7 14:01:33 2018 -0400

    [kerx] Clean up kerx and KerxTable structures

 src/hb-aat-layout-kerx-table.hh | 169
 ++++++++++++++++++++++++++--------------
 src/hb-aat-layout-morx-table.hh |   2 +-
 2 files changed, 113 insertions(+), 58 deletions(-)

commit 71b65eb27dd0867f51d9906887b9e372eb37f54a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 7 18:41:52 2018 +0200

    Add API for setting invisible-codepoint

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1216

    New API:
    hb_buffer_set_invisible_codepoint()
    hb_buffer_get_invisible_codepoint()

    hb-shape / hb-view --invisible-codepoint

 docs/harfbuzz-sections.txt |  2 ++
 src/hb-buffer.cc           | 42
 ++++++++++++++++++++++++++++++++++++++++++
 src/hb-buffer.h            |  7 +++++++
 src/hb-buffer.hh           |  1 +
 src/hb-ot-shape.cc         |  8 ++++----
 util/options.cc            |  1 +
 util/options.hh            |  3 +++
 7 files changed, 60 insertions(+), 4 deletions(-)

commit 13da3be0b342e8e2f060eba8753c6957c477c4ee
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 7 18:23:45 2018 +0200

    [ot-font] Load hmtx/vmtx lazily

    Since we have get_*_advanes() API now, the overhead is once per shape,
    not once per glyph.

    Only cmap is warmed-up at set_funcs() time now.

 src/hb-ot-font.cc | 26 +++++++++++++-------------
 1 file changed, 13 insertions(+), 13 deletions(-)

commit 856db4c9184e39c0457cc07c815f90058937c8a2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 7 18:21:15 2018 +0200

    Minor

 src/hb-ot-font.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f92330b5e0b1a5a61768494bd7081e3fc235b182
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 7 17:51:50 2018 +0200

    Minor

 test/api/test-multithread.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit b2e398c077cf9437298bfe2ee53b7407a5865c14
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 7 16:31:33 2018 +0200

    [coretext] Fix OS X check

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1230

 src/hb-coretext.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 55942ad5c1ee999c9f590b8cc8fbde12e937aa6f
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Sat Oct 6 14:49:44 2018 -0700

    Merge branch 'master' into cff-subset

 TODO                                               |  10 +--
 configure.ac                                       |   2 +-
 src/hb-aat-layout-common.hh                        |   4 +-
 src/hb-aat-layout-morx-table.hh                    |   9 +-
 src/hb-aat-layout.cc                               |   6 ++
 src/hb-aat-layout.hh                               |   2 +
 src/hb-face.cc                                     |   2 +-
 src/hb-machinery.hh                                |   2 +-
 src/hb-ot-cmap-table.hh                            |   2 +-
 src/hb-ot-post-table.hh                            |   2 +-
 src/hb-ot-shape.cc                                 |  27 ++++--
 src/hb-ot-shape.hh                                 |   5 ++
 src/hb-set.hh                                      |   4 +-
 src/hb-subset.cc                                   |   2 +-
 src/hb-vector.hh                                   | 100
 ++++++++++++++-------
 test/shaping/data/text-rendering-tests/DISABLED    |  35 +-------
 .../data/text-rendering-tests/Makefile.sources     |  18 ++--
 .../data/text-rendering-tests/extract-tests.py     |  18 +++-
 .../text-rendering-tests/fonts/TestGSUBThree.ttf   | Bin 0 -> 1504 bytes
 .../fonts/TestMORXThirtyfive.ttf                   | Bin 0 -> 1968 bytes
 .../fonts/TestMORXThirtyfour.ttf                   | Bin 0 -> 3608 bytes
 .../fonts/TestMORXThirtysix.ttf                    | Bin 0 -> 1836 bytes
 .../fonts/TestMORXThirtythree.ttf                  | Bin 0 -> 1520 bytes
 .../fonts/TestMORXTwentyfour.ttf                   | Bin 0 -> 1828 bytes
 .../data/text-rendering-tests/tests/GSUB-3.tests   |   1 +
 .../data/text-rendering-tests/tests/MORX-24.tests  |   1 +
 .../data/text-rendering-tests/tests/MORX-32.tests  |   8 +-
 .../data/text-rendering-tests/tests/MORX-33.tests  |   3 +
 .../data/text-rendering-tests/tests/MORX-34.tests  |   1 +
 .../data/text-rendering-tests/tests/MORX-35.tests  |   2 +
 .../data/text-rendering-tests/tests/MORX-36.tests  |   1 +
 test/shaping/run-tests.py                          |  19 ++--
 util/view-cairo.hh                                 |   2 +-
 33 files changed, 173 insertions(+), 115 deletions(-)

commit 7ee50af8366547c382047a30a94f7f5f739aabcb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 6 21:31:44 2018 +0200

    [morx] Fix memory access issues with unsafe_to_break

 src/hb-aat-layout-common.hh | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

commit f58c5175890e666503b6f140d238e1abca91598e
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Oct 6 22:42:56 2018 +0330

    Make msan output a little more readable

 .circleci/config.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e9abe33963739f753cdfb007eed40101ce33f550
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Oct 6 12:19:33 2018 +0330

    Use tempfile in run-tests as a fix for Windows CI fails (#1228)

 test/shaping/run-tests.py | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

commit 0816a549789a1b647443c2b33cfda3f4400a0f87
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 6 02:40:57 2018 +0200

    [uniscribe/coretext] Fix for previous change

 src/hb-coretext.cc  |  2 +-
 src/hb-uniscribe.cc | 12 ++++++------
 2 files changed, 7 insertions(+), 7 deletions(-)

commit 341206eb609202e4b2f0d03d29cb577ebe8390b9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 5 18:39:48 2018 +0200

    [vector] Make hb_vector_t relocatable / nestable

    Ugly, but...
    Fixes https://github.com/harfbuzz/harfbuzz/issues/1227

 src/hb-face.cc          |  2 +-
 src/hb-machinery.hh     |  2 +-
 src/hb-ot-cmap-table.hh |  2 +-
 src/hb-ot-post-table.hh |  2 +-
 src/hb-set.hh           |  4 +--
 src/hb-subset.cc        |  2 +-
 src/hb-vector.hh        | 94
 +++++++++++++++++++++++++++++++------------------
 7 files changed, 66 insertions(+), 42 deletions(-)

commit 5469d80707d32c733b1c60f79ab2f217e879de55
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 5 18:21:08 2018 +0200

    Add hb_vector_t::fini_deep ()

 src/hb-vector.hh | 8 ++++++++
 1 file changed, 8 insertions(+)

commit 4831e615d173be9c7e140be0fa9017e4d9e499af
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 5 18:14:13 2018 +0200

    [morx] Fix memory access issue

    If buffer was enlarged, info was being outdated.

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1225

 src/hb-aat-layout-common.hh | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

commit 5a41cf6be69adb0b5b29976a33c4c6dd6ce7afc5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 5 11:33:19 2018 +0200

    [test/text-rendering-tests] Update from upstream

 test/shaping/data/text-rendering-tests/DISABLED          |   3 +++
 test/shaping/data/text-rendering-tests/Makefile.sources  |   2 ++
 .../text-rendering-tests/fonts/TestMORXThirtyfive.ttf    | Bin 0 ->
 1968 bytes
 .../text-rendering-tests/fonts/TestMORXThirtysix.ttf     | Bin 0 ->
 1836 bytes
 .../data/text-rendering-tests/tests/MORX-35.tests        |   2 ++
 .../data/text-rendering-tests/tests/MORX-36.tests        |   1 +
 6 files changed, 8 insertions(+)

commit a62f37d6fa412b799b7247b813f6e65a968e7645
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 5 02:49:29 2018 +0200

    Change vendor features from Harf/Buzz to HARF/BUZZ

    https://github.com/harfbuzz/harfbuzz/commit/a01194aaf4c15160330b4042066263b2c963b658#commitcomment-30772041

    "The tag space of tags consisting of four uppercase letters (A-Z)
    with no punctuation,
    spaces, or numbers, is reserved as a vendor space. Font vendors may
    use such tags to
    identify private features."

 src/hb-ot-shape.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit e7a045e4db39e037badcab0ad1239c0cb56c1170
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Oct 4 14:16:07 2018 -0700

    fixed leak exposed by test-ot-extents-cff

 src/hb-cff-interp-common.hh      | 3 +++
 src/hb-cff-interp-dict-common.hh | 4 ++++
 2 files changed, 7 insertions(+)

commit 6238edbd8b654d105bbd191dffabc7820f0a3223
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Oct 4 13:59:36 2018 -0700

    added CFF glyph extents API test

 test/api/Makefile.am           |  1 +
 test/api/test-ot-extents-cff.c | 65
 ++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 66 insertions(+)

commit 0222d57c357c775f25866653700b9dcb7d5bb807
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Oct 4 09:37:57 2018 -0700

    tweaked previous warning fixes

 src/hb-cff-interp-common.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 7b3ae5ffd202346cb3742fe0f8cfafe8c36a4bd5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 4 16:36:42 2018 +0200

    More bot fixes

 test/shaping/run-tests.py | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 310bdac4a08b99a25de6a16a20464873f90b52e4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 4 16:31:14 2018 +0200

    Fix a warning

 util/view-cairo.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0abce58139bb58b8b97171db6387d2ac7eebdee0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 4 16:23:42 2018 +0200

    [test] Choose 'ot' shaper specifically

    Now that we added morx support, our OS X bot is running them through
    CoreText
    and failing (with a DoS / infinite loop no less!).  Always run
    tests through
    our own shaper.

 test/shaping/run-tests.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c93d379bf2414eb6ee6d38fb9753ddf818a777ea
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 4 13:28:13 2018 +0200

    [TODO] Clean up

 TODO | 10 +---------
 1 file changed, 1 insertion(+), 9 deletions(-)

commit a01194aaf4c15160330b4042066263b2c963b658
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 4 13:00:37 2018 +0200

    Enable two OpenType features, 'Harf' and 'Buzz'

    One early, before script-specific features, one late, after.
    Allows font
    developers to detect us and behave differently if needed.

 src/hb-ot-shape.cc | 4 ++++
 1 file changed, 4 insertions(+)

commit 55468ca01b4cdf274900fb752fbf9ae05a78705e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 4 12:13:55 2018 +0200

    [test/text-rendering-tests] Update from upstream

 test/shaping/data/text-rendering-tests/Makefile.sources  |   6 +++++-
 test/shaping/data/text-rendering-tests/extract-tests.py  |  12
 ++++++++++++
 .../data/text-rendering-tests/fonts/TestGSUBThree.ttf    | Bin 0 ->
 1504 bytes
 .../text-rendering-tests/fonts/TestMORXThirtyfour.ttf    | Bin 0 ->
 3608 bytes
 .../text-rendering-tests/fonts/TestMORXThirtythree.ttf   | Bin 0 ->
 1520 bytes
 .../text-rendering-tests/fonts/TestMORXTwentyfour.ttf    | Bin 0 ->
 1828 bytes
 .../shaping/data/text-rendering-tests/tests/GSUB-3.tests |   1 +
 .../data/text-rendering-tests/tests/MORX-24.tests        |   1 +
 .../data/text-rendering-tests/tests/MORX-32.tests        |   8 ++++----
 .../data/text-rendering-tests/tests/MORX-33.tests        |   3 +++
 .../data/text-rendering-tests/tests/MORX-34.tests        |   1 +
 test/shaping/run-tests.py                                |  15
 +++++++++------
 12 files changed, 36 insertions(+), 11 deletions(-)

commit 6ff8a8a10b62a54a87d53b0af66ccaba5d58b107
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 4 12:09:45 2018 +0200

    Minor

 test/shaping/data/text-rendering-tests/extract-tests.py | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 14ff3cbe0f30dea24e1bb175b1e8e41039f6afdc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 4 11:34:21 2018 +0200

    Apply morx if there's no GSUB!

 src/hb-ot-shape.cc                                 | 23 ++++++++++++----
 src/hb-ot-shape.hh                                 |  5 ++++
 test/shaping/data/text-rendering-tests/DISABLED    | 32
 ----------------------
 .../data/text-rendering-tests/Makefile.sources     | 14 +++++-----
 4 files changed, 29 insertions(+), 45 deletions(-)

commit 3417037eb13a59dce6add0b1691ddb1b2b54c1e4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 4 11:08:15 2018 +0200

    [aat] Add +hb_aat_layout_has_substitution

 src/hb-aat-layout-morx-table.hh | 2 ++
 src/hb-aat-layout.cc            | 6 ++++++
 src/hb-aat-layout.hh            | 2 ++
 3 files changed, 10 insertions(+)

commit 1f14107f71a6c3da8270ed21c3588f945fa91733
Author: Sascha Brawer <sascha@brawer.ch>
Date:   Thu Oct 4 09:17:08 2018 +0200

    Minor: Fix autoconf warning

    Before this change, autoconf was emitting the following warnings:

    ```
    configure.ac:22: warning: AC_COMPILE_IFELSE was called before
    AC_USE_SYSTEM_EXTENSIONS
    ../../lib/autoconf/specific.m4:368: AC_USE_SYSTEM_EXTENSIONS is
    expanded from...
    configure.ac:22: the top level
    configure.ac:22: warning: AC_RUN_IFELSE was called before
    AC_USE_SYSTEM_EXTENSIONS
    ../../lib/autoconf/specific.m4:368: AC_USE_SYSTEM_EXTENSIONS is
    expanded from...
    configure.ac:22: the top level
    configure.ac:22: warning: AC_COMPILE_IFELSE was called before
    AC_USE_SYSTEM_EXTENSIONS
    ../../lib/autoconf/specific.m4:368: AC_USE_SYSTEM_EXTENSIONS is
    expanded from...
    configure.ac:22: the top level
    configure.ac:22: warning: AC_RUN_IFELSE was called before
    AC_USE_SYSTEM_EXTENSIONS
    ../../lib/autoconf/specific.m4:368: AC_USE_SYSTEM_EXTENSIONS is
    expanded from...
    configure.ac:22: the top level
    configure.ac:22: warning: AC_COMPILE_IFELSE was called before
    AC_USE_SYSTEM_EXTENSIONS
    ../../lib/autoconf/specific.m4:368: AC_USE_SYSTEM_EXTENSIONS is
    expanded from...
    configure.ac:22: the top level
    configure.ac:22: warning: AC_RUN_IFELSE was called before
    AC_USE_SYSTEM_EXTENSIONS
    ../../lib/autoconf/specific.m4:368: AC_USE_SYSTEM_EXTENSIONS is
    expanded from...
    configure.ac:22: the top level
    configure.ac:22: warning: AC_COMPILE_IFELSE was called before
    AC_USE_SYSTEM_EXTENSIONS
    ../../lib/autoconf/specific.m4:368: AC_USE_SYSTEM_EXTENSIONS is
    expanded from...
    configure.ac:22: the top level
    configure.ac:22: warning: AC_RUN_IFELSE was called before
    AC_USE_SYSTEM_EXTENSIONS
    ../../lib/autoconf/specific.m4:368: AC_USE_SYSTEM_EXTENSIONS is
    expanded from...
    configure.ac:22: the top level
    ```

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 7810bb1a59ea71afeed7ea489400801ebdf642e4
Author: Sascha Brawer <sascha@brawer.ch>
Date:   Thu Oct 4 09:24:08 2018 +0200

    [morx] Only insert glyphs at mark when a mark has been set before

    This reverts commit f4072e8cb81072cd6d51a2607efedb76c02e7db1.
    https://github.com/harfbuzz/harfbuzz/issues/1195

 src/hb-aat-layout-morx-table.hh | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

commit 3ef358909eb7e26ca9630e61c7ba142d9e94389e
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Oct 3 18:08:25 2018 -0700

    fixed warnings

 src/hb-cff-interp-common.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 1aeaee9dfc7ee3ca410919c41e55452a0b6b9bf6
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Oct 3 17:44:45 2018 -0700

    fixed cff2 subset test data

 test/api/fonts/AdobeVFPrototype.abc.nohints.otf | Bin 0 -> 7800 bytes
 test/api/test-subset-cff2.c                     |   4 ++--
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 8be5a9186be3ca4c50c73f372be4dbad08ac1863
Merge: d7b384ad 5de2d9cd
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Oct 3 17:06:18 2018 -0700

    Merge branch 'master' into cff-subset

commit 5de2d9cdbdca870901c0ba9472f5b78c48ba0a58
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Oct 4 02:14:18 2018 +0330

    Minor, fix double-promotion warnings (#1221)

 .circleci/config.yml        | 2 +-
 src/dump-emoji.cc           | 2 +-
 src/hb-common.cc            | 2 +-
 src/hb-ot-var-fvar-table.hh | 2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

commit c2c7e6471ca912c91c82f6d71338082978f13dc6
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Oct 4 00:29:40 2018 +0330

    State our graphite2 dependency no-deprecated compile flag (#1220)

 .circleci/config.yml | 2 +-
 .travis.yml          | 2 --
 configure.ac         | 2 +-
 3 files changed, 2 insertions(+), 4 deletions(-)

commit e4e74c2751ac24178086cce2811d34d8019b6f85
Author: mhosken <mhosken@users.noreply.github.com>
Date:   Thu Oct 4 02:33:26 2018 +0700

    Update Graphite API to latest (#1215)

 src/hb-graphite2.cc | 28 +++++++++++++++++++++++++++-
 1 file changed, 27 insertions(+), 1 deletion(-)

commit 81f5eb09eca010337ffb3369000a3d5c1e8e2cda
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 3 21:30:48 2018 +0200

    Add emoji test for recent work

 test/shaping/data/in-house/Makefile.sources             |   2 +-
 .../fonts/3cf6f8ac6d647473a43a3100e7494b202b2cfafe.ttf  | Bin 0 ->
 16596 bytes
 test/shaping/data/in-house/tests/emoji-flag-tags.tests  |   2 --
 test/shaping/data/in-house/tests/emoji.tests            |   4 ++++
 4 files changed, 5 insertions(+), 3 deletions(-)

commit 9e2824cca0e42a53fafda7b2feb095986df40675
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Oct 3 22:49:02 2018 +0330

    [ci] Delete azure-pipelines

    End of experiment, we might get back to it later

 azure-pipelines.yml | 10 ----------
 1 file changed, 10 deletions(-)

commit b710ea4fdeb1a620b396bd07665fc129fe5fc074
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 3 21:17:59 2018 +0200

    Clean Fitzpatrick hack

 src/hb-ot-layout.hh |  2 +-
 src/hb-ot-shape.cc  |  9 +++++++--
 src/hb-unicode.hh   | 20 --------------------
 3 files changed, 8 insertions(+), 23 deletions(-)

commit 95e5f1ae69036108f318b93b11d85b2ebc19109b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 3 21:11:13 2018 +0200

    Unbreak Fitzpatrick

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1159

 src/hb-ot-layout.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 03fb6dd4c7d12a98cc0ef325432658c3c76ab208
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 3 21:02:16 2018 +0200

    Rewrite grapheme-formation in terms of new work

    Also, don't attach ZWNJ to previous cluster.  Closer to Unicode
    graphemes.

 src/hb-coretext.cc                                 |  2 +-
 src/hb-ot-shape.cc                                 | 48
 ++++++----------------
 .../in-house/tests/indic-joiner-candrabindu.tests  |  2 +-
 .../data/in-house/tests/indic-joiners.tests        |  6 +--
 4 files changed, 18 insertions(+), 40 deletions(-)

commit 68106b1d9b96caf79b0a778a7da75caf54e7d44a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 3 20:50:12 2018 +0200

    Minor

 src/hb-ot-layout.hh | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 3f1c741b7a85d9c2d66e7f2446e988470c538b49
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 3 20:45:19 2018 +0200

    [test] Split a test

 .../fonts/4d4206e30b2dbf1c1ef492a8eae1c9e7829ebad8.ttf | Bin 0 ->
 51924 bytes
 .../fonts/bb29ce50df2bdba2d10726427c6b7609bf460e04.ttf | Bin 74856 ->
 0 bytes
 .../in-house/tests/mongolian-variation-selector.tests  |  17
 ++++++++++++++++-
 3 files changed, 16 insertions(+), 1 deletion(-)

commit ba813aab0909375af0c8f8e0c34595680c2762a4
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Oct 3 21:52:15 2018 +0330

    Update azure-pipelines.yml

 azure-pipelines.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 06922acbc4558699e43a4ed98ffb21f1e84abfc6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 3 20:19:17 2018 +0200

    Fix distcheck

 src/Makefile.sources | 1 +
 1 file changed, 1 insertion(+)

commit 4eea2e279b019ac627b2b9e2234a194957971022
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 3 20:16:03 2018 +0200

    [thai] Set continuation on decomposed nikhahit

 src/hb-ot-shape-complex-thai.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 8edc91022c3943fb306cee26ed6eb85381b5ea76
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 3 20:13:20 2018 +0200

    [indic] Reset continuation on inserted dottedcircle

 src/hb-ot-shape-complex-indic.cc | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 2a6f15213ec30e5eb07465dd9dc81c2c386cb1e0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 3 20:09:14 2018 +0200

    [buffer] Inline some more

 src/hb-buffer.cc | 44 --------------------------------------------
 src/hb-buffer.hh | 52
 ++++++++++++++++++++++++++++++++++++++++++++--------
 2 files changed, 44 insertions(+), 52 deletions(-)

commit 6f39c22029867c6d00cf70d7df242a28ca8f12bc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 3 20:06:32 2018 +0200

    Add code

 src/hb-ot-layout.hh | 5 +++++
 1 file changed, 5 insertions(+)

commit 19d50aa2620f1464da8e00185b746e46fb0d80c4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 3 20:05:28 2018 +0200

    [indic] Simplify dottedcircle

 src/hb-ot-shape-complex-indic.cc | 23 +++++++++++++++--------
 1 file changed, 15 insertions(+), 8 deletions(-)

commit 3b7831851052ecf2611a115cc2b80ef970d83df8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 3 19:44:15 2018 +0200

    [emoji] Mark emoji contination sequences as continuation

    This adds a new grapheme bit.  Not used yet.

    Part of https://github.com/harfbuzz/harfbuzz/issues/1159

 src/hb-ot-layout.hh | 83
 +++++++++++++++++++++++++----------------------------
 src/hb-ot-shape.cc  | 24 ++++++++++++++++
 src/hb-unicode.hh   |  5 ----
 3 files changed, 63 insertions(+), 49 deletions(-)

commit 123326e20a30a51e25339c2eca272e4e6c847742
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 3 19:19:51 2018 +0200

    Dotted-circle all marks, not just non-spacing, at text beginning

 src/hb-ot-shape.cc | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 4146c00caa29e53ee9a29def151f12792ac76596
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Oct 3 21:26:58 2018 +0330

    [test] Use an in-repo font for test-multithread (#1218)

    As Khaled's suggestion, hard-coded font paths was only for my own
    testing.

 test/api/hb-subset-test.h   | 13 +++++++++----
 test/api/test-multithread.c | 41
 ++++++++++++++++++++++++++---------------
 test/fuzzing/main.cc        |  6 ++++++
 3 files changed, 41 insertions(+), 19 deletions(-)

commit fde9b8852d7cd6224afeffcfe363f4b445ab1ece
Author: azure-pipelines[bot]
<azure-pipelines[bot]@users.noreply.github.com>
Date:   Wed Oct 3 17:47:05 2018 +0000

    [ci] Add a test Azure Pipelines Linux bot

    Related #1219

 azure-pipelines.yml | 10 ++++++++++
 1 file changed, 10 insertions(+)

commit 674560cf244054a7e8c16073a59aa1b01e1ba5ea
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 3 19:10:28 2018 +0200

    Fix build

 src/test-unicode-ranges.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 45e55f70801e2ccd28e1ee30bdf5341b1ac6efe5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 3 18:07:49 2018 +0200

    [indic] Fix clang everything

 src/hb-ot-shape-complex-indic.cc | 14 ++++++++++----
 1 file changed, 10 insertions(+), 4 deletions(-)

commit 4df02e3240ada0734748a47572baa2fc1c6afbd1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 3 17:54:09 2018 +0200

    Minor

 src/hb-ot-os2-unicode-ranges.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 1e8f195b96765480007808da60789de9ac501c3b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 3 17:46:48 2018 +0200

    [emoji] Add emoji Extended_Pictographic table and function

    Part of https://github.com/harfbuzz/harfbuzz/issues/1159

    .

 src/Makefile.am                 |  12 +-
 src/gen-emoji-table.py          |  64 ++++++++++
 src/hb-ot-os2-table.hh          |   2 +-
 src/hb-ot-os2-unicode-ranges.hh |   6 +-
 src/hb-unicode-emoji-table.hh   | 269
 ++++++++++++++++++++++++++++++++++++++++
 src/hb-unicode.cc               |  16 +++
 src/hb-unicode.hh               |  37 +++++-
 7 files changed, 398 insertions(+), 8 deletions(-)

commit 1dc601b04a816a5b5ed12ae1c01ddcfd60a8398f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 3 17:27:46 2018 +0200

    [os2] Minor rename/shuffle

 ...unicode-ranges.py => gen-os2-unicode-ranges.py} |  2 +-
 src/hb-ot-os2-unicode-ranges.hh                    | 45
 +++++++++++-----------
 2 files changed, 24 insertions(+), 23 deletions(-)

commit 7a1ab0464d3ee1ca5c9b31215fbffb8601ae860d
Author: lantw44 <lantw44@gmail.com>
Date:   Wed Oct 3 23:22:43 2018 +0800

    Fix test-multithread build on FreeBSD (#1217)

    Add the default font path used by FreeBSD ports.

 test/api/test-multithread.c | 2 ++
 1 file changed, 2 insertions(+)

commit df32eaae42b505b00de4a8b5efce9ab948bed847
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 3 14:44:25 2018 +0200

    [indic] Disallow vowel mark combinations that spoof other vowel marks

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1019

    New numbers:

    BENGALI: 353725 out of 354188 tests passed. 463 failed (0.130722%)
    DEVANAGARI: 707261 out of 707394 tests passed. 133 failed (0.0188014%)
    GUJARATI: 366353 out of 366457 tests passed. 104 failed (0.0283799%)
    GURMUKHI: 60729 out of 60747 tests passed. 18 failed (0.0296311%)
    KANNADA: 951300 out of 951913 tests passed. 613 failed (0.0643966%)
    MALAYALAM: 1048136 out of 1048334 tests passed. 198 failed
    (0.0188871%)
    ORIYA: 42327 out of 42329 tests passed. 2 failed (0.00472489%)
    SINHALA: 271596 out of 271847 tests passed. 251 failed (0.0923313%)
    TAMIL: 1091754 out of 1091754 tests passed. 0 failed (0%)
    TELUGU: 970555 out of 970573 tests passed. 18 failed (0.00185457%)

    Devanagari regressed because Uniscribe doesn't enforce the full set.

    Tests added with the *-vowel-letters.txt files in tree and Noto fonts.

 src/hb-ot-shape-complex-indic.cc                   | 256
 ++++++++++++++++++++-
 test/shaping/data/in-house/Makefile.sources        |   1 +
 .../03e3f463c3a985bc42096620cc415342818454fb.ttf   | Bin 0 -> 2904 bytes
 .../1a5face3fcbd929d228235c2f72bbd6f8eb37424.ttf   | Bin 0 -> 8188 bytes
 .../2c25beb56d9c556622d56b0b5d02b4670c034f89.ttf   | Bin 0 -> 2460 bytes
 .../604026ae5aaca83c49cd8416909d71ba3e1c1194.ttf   | Bin 0 -> 4120 bytes
 .../738d9f3b8c2dfd03875bf35a61d28fd78faf17c8.ttf   | Bin 0 -> 2336 bytes
 .../7d18685e1529e4ceaad5b6095dfab2f9789e5bce.ttf   | Bin 0 -> 3452 bytes
 .../881642af1667ae30a54e58de8be904566d00508f.ttf   | Bin 0 -> 2760 bytes
 .../af85624080af5627fb050f570d148a62f04fda74.ttf   | Bin 0 -> 2656 bytes
 .../tests/indic-vowel-letter-spoofing.tests        |  53 +++++
 11 files changed, 309 insertions(+), 1 deletion(-)

commit 1b8d5e999192035c08f918aa1fcfcebdea67d82e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 3 14:44:19 2018 +0200

    [thai] Minor

 src/hb-ot-shape-complex-thai.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit d3d0cbd27831a6ea41b89f50d380296565c0016d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 3 13:54:21 2018 +0200

    Typo

 .../{bengali-vowel-leters.txt => bengali-vowel-letters.txt}
 | 0
 .../{gujarati-vowel-letter.txt => gujarati-vowel-letters.txt}
 | 0
 2 files changed, 0 insertions(+), 0 deletions(-)

commit 0dd9101fd0ddff80fff10ba98e93523aed95c8f5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 3 13:26:26 2018 +0200

    Minor

 src/hb-ot-shape-complex-indic.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 9c4ffd10c4040ada9b1ffeb13c35f1330336359e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 3 12:53:54 2018 +0200

    Minor

 src/hb-ot-shape-complex.hh | 11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)

commit bd1be8738fc4c73635cab7d77965264748d747cc
Author: HinTak <htl10@users.sourceforge.net>
Date:   Wed Oct 3 07:11:22 2018 +0800

    Missing colon for gobject annotation

    There should be a colon separating "(transfer full)" and the
    rest. Warned by g-ir-scanner.

 src/hb-face.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 75114e01d29b90f72a9398ed5dbc4298aba5a6b8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 3 12:29:56 2018 +0200

    [use] Add Halant_Or_Vowel_Modifier category

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1102

 src/gen-use-table.py                               |   7 +-
 src/hb-ot-shape-complex-use-machine.hh             | 518
 +++++++++++----------
 src/hb-ot-shape-complex-use-machine.rl             |   9 +-
 src/hb-ot-shape-complex-use-table.cc               |   4 +-
 src/hb-ot-shape-complex-use.hh                     |   5 +-
 .../28f497629c04ceb15546c9a70e0730125ed6698d.ttf   | Bin 0 -> 1496 bytes
 .../shaping/data/in-house/tests/use-syllable.tests |   3 +
 7 files changed, 301 insertions(+), 245 deletions(-)

commit d7b384ad0d0a3e1d35ef92a6e98a97bb9c367f48
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Oct 2 21:08:36 2018 -0700

    silence warning ^3

 src/hb-subset-cff1.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e9cc71ac86bd771d9fcb2ee1eb620060db92ac1a
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Oct 2 20:44:30 2018 -0700

    silence warning ^2

 src/hb-subset-cff1.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2700db9ade23cbf69d17a7a1802a7f144c25f8dc
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Oct 2 15:05:26 2018 -0700

    rm build files

 build/test/api/.libs/test-collect-unicodes | Bin 14336 -> 0 bytes
 build/test/api/.libs/test-multithread      | Bin 10936 -> 0 bytes
 build/test/api/test-collect-unicodes       | 210
 -----------------------------
 build/test/api/test-multithread            | 210
 -----------------------------
 4 files changed, 420 deletions(-)

commit 51d5bf4ca2ebb9b8aa3b2777781e328fb93ceea7
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Oct 2 14:38:06 2018 -0700

    silence warnings

 src/hb-cff-interp-cs-common.hh | 2 +-
 src/hb-subset-cff1.cc          | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 35b64dfb57cac0d949363e9b19352dd4274c2584
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Oct 2 14:13:36 2018 -0700

    silence & fix new warnings

 src/hb-cff-interp-dict-common.hh | 3 ++-
 src/hb-cff1-interp-cs.hh         | 9 +++++----
 src/hb-ot-cff-common.hh          | 4 ++--
 src/hb-subset-cff1.cc            | 4 ++--
 src/hb-subset-cff2.cc            | 4 ++--
 5 files changed, 13 insertions(+), 11 deletions(-)

commit eed7e6bbc8e7be99d59a7822a1c37bc715c379b3
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Oct 2 13:45:14 2018 -0700

    redefine OpCodes as define instead of enum

    in order to eradicate duplicate enum warnings

 src/hb-cff-interp-common.hh | 348
 ++++++++++++++++++++++----------------------
 1 file changed, 174 insertions(+), 174 deletions(-)

commit 9cdd70b344b9dc34a29aeca79028cbb5d949ca1d
Merge: 3dd43f02 6353cc1f
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Oct 2 13:43:21 2018 -0700

    Merge branch 'master' into cff-subset

commit 6353cc1f83c862910860976411a1157f7ed571bc
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Oct 2 21:39:19 2018 +0330

    [circleci] Fix some of warnings from clang-everything bot (#1211)

    * -Wshift-sign-overflow
    * -Wmissing-prototypes

 .circleci/config.yml             |  4 ++--
 src/dump-emoji.cc                | 19 ++++++++++---------
 src/hb-ucdn.cc                   |  3 +++
 src/test-unicode-ranges.cc       |  4 ++--
 test/fuzzing/hb-subset-fuzzer.cc | 32 +++++++++++++++++---------------
 util/ansi-print.cc               |  4 ++--
 6 files changed, 36 insertions(+), 30 deletions(-)

commit 9f1dee32fbad3b1486725c18570199156b57a94d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 2 18:56:20 2018 +0200

    [tests] Allow test-runner to ignore shaping output

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1212

 test/shaping/data/in-house/tests/fuzzed.tests | 46
 +++++++++++++--------------
 test/shaping/run-tests.py                     |  2 +-
 2 files changed, 24 insertions(+), 24 deletions(-)

commit fef7af1e22efb399517137b35d0ba9f307411ca3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 2 18:46:13 2018 +0200

    [tibetan] Remove unused Tibetan shaper

 src/Makefile.sources               |  1 -
 src/hb-ot-shape-complex-tibetan.cc | 63
 --------------------------------------
 src/hb-ot-shape-complex.hh         |  1 -
 3 files changed, 65 deletions(-)

commit 32a438166fbccac6e0d9a615a492fc8cabfd21ab
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 2 18:43:29 2018 +0200

    [tibetan] Route Tibetan through USE

    Fixes https://github.com/harfbuzz/harfbuzz/pull/933
    https://github.com/harfbuzz/harfbuzz/issues/1012

    Tibetan failures go from 0 to 2:

    TIBETAN: 208467 out of 208469 tests passed. 2 failed (0.000959375%)

 src/gen-use-table.py                 | 30 ++++++++++------
 src/hb-ot-shape-complex-use-table.cc | 70
 ++++++++++++++++++++++--------------
 src/hb-ot-shape-complex.hh           |  8 +----
 3 files changed, 65 insertions(+), 43 deletions(-)

commit 77792187be1405599e6aecfc3ed1fc771d505ddb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 2 18:20:16 2018 +0200

    [khmer] Remove unused khmer_position()

 src/dump-khmer-data.cc           | 8 +++-----
 src/hb-ot-shape-complex-khmer.hh | 1 -
 2 files changed, 3 insertions(+), 6 deletions(-)

commit 5101abd42f4027edf182eddfa58c629b11c2a7f6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 2 17:49:06 2018 +0200

    [indic/use] Factor common expressions in ragel machine

    No machine change.

 src/hb-ot-shape-complex-indic-machine.hh | 46
 ++++++++++++++++----------------
 src/hb-ot-shape-complex-indic-machine.rl | 10 ++++---
 src/hb-ot-shape-complex-use-machine.hh   | 38 +++++++++++++-------------
 src/hb-ot-shape-complex-use-machine.rl   | 20 +++++++-------
 4 files changed, 58 insertions(+), 56 deletions(-)

commit 6f457f8370de5d96452ee3a2d1b0a97b025ef1d1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 2 17:46:27 2018 +0200

    [indic] Minor flip grammar around

    No behavior change.

 src/hb-ot-shape-complex-indic-machine.rl | 2 +-
 src/hb-ot-shape-complex-use-machine.rl   | 1 -
 2 files changed, 1 insertion(+), 2 deletions(-)

commit d992982d23ef0c39ea42595ed0e8a4752977d1a5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 2 17:16:01 2018 +0200

    [indic] Add some confusable sequences from Unicode Standard

 .../script-bengali/bengali-vowel-leters.txt        |  3 ++
 .../devanagari-atomic-consonants.txt               | 33
 ++++++++++++++++++++++
 .../script-devanagari/devanagari-vowel-letters.txt | 17 +++++++++++
 .../script-gujarati/gujarati-vowel-letter.txt      |  8 ++++++
 .../script-gurmukhi/gurmukhi-vowel-letters.txt     |  9 ++++++
 .../script-kannada/kannada-vowel-letters.txt       |  3 ++
 .../script-malayalam/malayalam-vowel-letters.txt   |  5 ++++
 .../script-oriya/oriya-vowel-letters.txt           |  3 ++
 .../script-telugu/telugu-vowel-letters.txt         |  5 ++++
 9 files changed, 86 insertions(+)

commit 40d5d19d5b875eef526a2a66892c3f638f633fa3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 2 17:04:05 2018 +0200

    [ragel] Use ts/te (token-start / token-end) instead of manual tracking

 src/hb-ot-shape-complex-indic-machine.hh   | 22 ++++++++++------------
 src/hb-ot-shape-complex-indic-machine.rl   |  8 +++-----
 src/hb-ot-shape-complex-khmer-machine.hh   | 22 ++++++++++------------
 src/hb-ot-shape-complex-khmer-machine.rl   |  8 +++-----
 src/hb-ot-shape-complex-myanmar-machine.hh | 22 ++++++++++------------
 src/hb-ot-shape-complex-myanmar-machine.rl |  8 +++-----
 src/hb-ot-shape-complex-use-machine.hh     | 22 ++++++++++------------
 src/hb-ot-shape-complex-use-machine.rl     |  8 +++-----
 8 files changed, 52 insertions(+), 68 deletions(-)

commit 9efddb9de821fc909a3ea8354f3dfd39c823e97b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 2 16:05:26 2018 +0200

    Treat a base+mark... ligature as base, not ligature

    Fixes https://github.com/harfbuzz/harfbuzz/issues/746

 src/hb-ot-layout-gsubgpos.hh | 22 +++++++++++++++-------
 1 file changed, 15 insertions(+), 7 deletions(-)

commit 3cca978723db43233d25402254d297dfccf991a3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 2 15:02:16 2018 +0200

    Move code around

 src/hb-ot-layout-gsub-table.hh |  3 ---
 src/hb-ot-layout-gsubgpos.hh   | 22 +++++++++++-----------
 2 files changed, 11 insertions(+), 14 deletions(-)

commit 0a371fee4d22ed63207aa76c00b05b75bbc95f5f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 2 14:48:39 2018 +0200

    Minor

 src/hb-ot-map.hh                   | 6 ++++--
 src/hb-ot-shape-complex-arabic.cc  | 6 +++---
 src/hb-ot-shape-complex-myanmar.cc | 4 ++--
 src/hb-ot-shape-complex-use.cc     | 8 ++++----
 src/hb-ot-shape.cc                 | 4 ++--
 5 files changed, 15 insertions(+), 13 deletions(-)

commit 94d15528f80dbb7110d816fb5845f257f605a0be
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 2 14:45:09 2018 +0200

    Minor

 src/hb-ot-map.hh   |  1 +
 src/hb-ot-shape.cc | 39 ++++++++++++++++++---------------------
 2 files changed, 19 insertions(+), 21 deletions(-)

commit 729f634728fb553300021d52089495271dfb19fd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 2 14:40:14 2018 +0200

    Disable joiner-skipping when looking back for base to attach mark to

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1189

 src/hb-ot-shape.cc                                      |   5 ++++-
 test/shaping/data/in-house/Makefile.sources             |   1 +
 .../fonts/641ca9d7808b01cafa9a666c13811c9b56eb9c52.ttf  | Bin 0 ->
 11492 bytes
 .../data/in-house/tests/arabic-mark-attach.tests        |   1 +
 4 files changed, 6 insertions(+), 1 deletion(-)

commit c36f3f5bef52e660541933f003fafa6e3a14785d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 2 14:34:29 2018 +0200

    [arabic] Use manual-zwj instead of flipping joiners

 src/hb-buffer.hh                  |  3 +--
 src/hb-ot-layout.hh               | 12 ++----------
 src/hb-ot-shape-complex-arabic.cc | 41
 ++++++---------------------------------
 3 files changed, 9 insertions(+), 47 deletions(-)

commit 48c513fec978819927535bc86b43be74315f746c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 2 14:17:42 2018 +0200

    Minor

 src/hb-ot-shape-complex-arabic.cc  |  2 +-
 src/hb-ot-shape-complex-default.cc |  2 +-
 src/hb-ot-shape-complex-hangul.cc  |  2 +-
 src/hb-ot-shape-complex-hebrew.cc  | 14 +-------------
 src/hb-ot-shape-complex-indic.cc   |  2 +-
 src/hb-ot-shape-complex-indic.hh   |  2 --
 src/hb-ot-shape-complex-khmer.cc   |  2 +-
 src/hb-ot-shape-complex-myanmar.cc |  4 ++--
 src/hb-ot-shape-complex-thai.cc    |  2 +-
 src/hb-ot-shape-complex-tibetan.cc |  2 +-
 src/hb-ot-shape-complex-use.cc     |  2 +-
 src/hb-ot-shape-complex.hh         | 11 ++++-------
 src/hb-ot-shape.cc                 |  8 ++++----
 13 files changed, 19 insertions(+), 36 deletions(-)

commit cca757ae56d6a82cfad35edc6dbae58049a34f91
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 2 13:27:11 2018 +0200

    Minor

 src/hb-ot-shape.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 96eca87f89588126d3fa5c7f3884ae2f302a91e1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 2 13:24:40 2018 +0200

    Move things

 src/hb-ot-shape.cc | 22 ++++++++++------------
 src/hb-ot-shape.hh |  3 +++
 2 files changed, 13 insertions(+), 12 deletions(-)

commit 588a4ac8bc9fd20464c7a77ead27ae34478c9bc8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 2 13:13:47 2018 +0200

    Rename

 src/hb-ot-face.cc | 20 +++++++-------
 src/hb-ot-face.hh | 78
 +++++++++++++++++++++++++++----------------------------
 2 files changed, 49 insertions(+), 49 deletions(-)

commit 10b6c7c63870fa04cd8adcf9f38644c2a799db8a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 2 13:11:18 2018 +0200

    Minor include cleanup

 src/hb-ot-shape-complex.hh | 1 +
 src/hb-ot-shape.cc         | 4 +---
 src/hb-ot-shape.hh         | 2 +-
 3 files changed, 3 insertions(+), 4 deletions(-)

commit 1d1734e985e1f2a746b4fff0cd82d96d477577d5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 2 13:04:05 2018 +0200

    Shuffle code around

 src/hb-ot-shape-complex-hebrew.cc |  2 +-
 src/hb-ot-shape-fallback.cc       |  2 +-
 src/hb-ot-shape-normalize.cc      |  2 +-
 src/hb-ot-shape.cc                | 32 ++++++++++++++++++++++++++++----
 src/hb-ot-shape.hh                | 29 ++++++-----------------------
 5 files changed, 37 insertions(+), 30 deletions(-)

commit bf5088b3dcd94106937290c180f3f40bc8524b48
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Oct 2 11:07:06 2018 +0330

    Minor, fix -Weverthing bot warnings (#1210)

 test/api/test-buffer.c      | 8 ++++----
 test/api/test-multithread.c | 3 +--
 2 files changed, 5 insertions(+), 6 deletions(-)

commit d27e5ec3a236b8eb37ef9ce558ad54077e46b003
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Tue Oct 2 08:25:29 2018 +0200

    Skip BOM in the Python sample file

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1208

 src/sample.py | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit f9ea3dc4c6e85c417dd4c8546e5ebe02b67131b9
Author: HinTak <htl10@users.sourceforge.net>
Date:   Tue Oct 2 06:43:06 2018 +0100

    Missing "out" indicator (#1209)

    Missing "out" indicator. Affect gobject introspection.

 src/hb-font.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9742679b8253919f8bfec8a77532092044e951aa
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Oct 2 03:20:48 2018 +0330

    [circleci] Remove some of the not needed flags

 .circleci/config.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f72b748371da2d7ce327a5d15feea46960aa7dd3
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Oct 2 00:16:08 2018 +0330

    [circleci] Fix "msan" and "everything" bots (#1205)

 .circleci/config.yml                    | 13 ++++++-------
 src/check-symbols.sh                    |  2 --
 test/fuzzing/main.cc                    | 22 +++++++++-------------
 test/fuzzing/run-shape-fuzzer-tests.py  |  2 --
 test/fuzzing/run-subset-fuzzer-tests.py |  2 --
 5 files changed, 15 insertions(+), 26 deletions(-)

commit 8bf4027d23318c7e1ff7fe9f5e7ad8b0380e5415
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 1 20:05:00 2018 +0200

    [indic] Remove Consonant_Medial from grammar and code

    The only Indic CM is U+0A75 GURMUKHI SIGN YAKASH, which Uniscribe
    doesn't treat
    specially, and font designers design for that.  So, do the same.

 src/hb-ot-shape-complex-indic-machine.hh | 1244
 ++++++++++++++----------------
 src/hb-ot-shape-complex-indic-machine.rl |   10 +-
 src/hb-ot-shape-complex-indic.cc         |    2 +-
 src/hb-ot-shape-complex-indic.hh         |    6 +-
 4 files changed, 589 insertions(+), 673 deletions(-)

commit ab4c37f73a7d4fcf48584cda3fff94e98a672086
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 1 19:35:48 2018 +0200

    [khmer] Add mark-ordering tests

    Fixes https://github.com/harfbuzz/harfbuzz/issues/667

 test/shaping/data/in-house/Makefile.sources        |   2 ++
 .../b6031119874ae9ff1dd65383a335e361c0962220.ttf   | Bin 0 -> 2564 bytes
 .../data/in-house/tests/khmer-mark-order.tests     |  25
 +++++++++++++++++++++
 3 files changed, 27 insertions(+)

commit 51436547162a18e88144e7125ad6ce4a69a08d4b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 1 19:09:58 2018 +0200

    [khmer] Rewrite grammar completely

    Based on experimenting with Uniscribe to extract grammar and
    categories.

    Failures down from 44 to 35:

    KHMER: 299089 out of 299124 tests passed. 35 failed (0.0117008%)

    We still don't enforce the one-matra rule pre-decomposition,
    but enforce
    an order and one-matra-per-position post-decomposition.

    https://github.com/harfbuzz/harfbuzz/issues/667

 src/hb-ot-shape-complex-indic.hh         |   2 +-
 src/hb-ot-shape-complex-khmer-machine.hh | 300
 ++++++++++++++++++++-----------
 src/hb-ot-shape-complex-khmer-machine.rl |  42 +++--
 src/hb-ot-shape-complex-khmer.cc         |   4 +-
 src/hb-ot-shape-complex-khmer.hh         |  99 +++++-----
 5 files changed, 270 insertions(+), 177 deletions(-)

commit 3dd43f0234febd434d89927adf2ee19f0489c5a7
Merge: ab16b24c eb1e6028
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Oct 1 10:22:06 2018 -0700

    Merge branch 'master' into cff-subset

commit aaaa65baa7fcfb65ae814528bdd93cc5c4ea540d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 1 16:59:48 2018 +0200

    [khmer] Remove unused code

 src/hb-ot-shape-complex-khmer.hh | 12 ------------
 1 file changed, 12 deletions(-)

commit eb1e60287732ede6040ce6f7498c10909448d248
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 1 15:31:50 2018 +0200

    [test] Try import unicodedata2 as unicodedata

 test/shaping/hb_test_tools.py | 4 ++++
 1 file changed, 4 insertions(+)

commit 81afdbe803ca949d915d03cab4a6ed6c6e6ff304
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 1 15:01:04 2018 +0200

    [use] Disable automatic ZWJ for 'akhn' feature

    Fixes https://github.com/harfbuzz/harfbuzz/issues/746

 src/hb-ot-shape-complex-use.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ceef311dcaea7e1ecfedb4f1257a705572611f0f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 1 12:45:06 2018 +0200

    [use] Change categories for Left_And_* matras

    These are only relevant to Sinhala, because they decompose in other
    cases.  The USE spec categorizes them all as VPst.  No idea why we
    weren't following that before.

 src/gen-use-table.py                 |  4 ++--
 src/hb-ot-shape-complex-use-table.cc | 24 ++++++++++++------------
 2 files changed, 14 insertions(+), 14 deletions(-)

commit 3426a361571a1996b5a895fb9374ce3a4a7f9af3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 1 12:55:57 2018 +0200

    Unbreak bots

 src/hb-cache.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 98ac01d3b3deb7c7f5411f6f25c6e7588d84b5f9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 1 12:10:00 2018 +0200

    [morx] Break out if buffer gets into error

    Was getting stuck not making progress somehow.

 src/hb-aat-layout-common.hh     | 2 ++
 src/hb-aat-layout-morx-table.hh | 4 ++++
 2 files changed, 6 insertions(+)

commit df827a6ab88cd8bde346176fc53a5c2d57eee808
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 1 11:34:20 2018 +0200

    [cache] Fix cache coherency corner-case

    If key_bits+value_bits-cache_bits==32 then -1 is ambiguous...

 src/hb-cache.hh | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit 0fa1edbd3bbf825be078677dc46c3440f9802551
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Oct 1 09:40:29 2018 +0330

    [circleci] Couple of fixes (#1200)

    * Raise error on warnings on -everything
    * Enable fontconfig to two bots
    * Fix msan bot now that all of its real complain are gone

 .circleci/config.yml                    | 14 ++++++--------
 src/check-symbols.sh                    |  2 ++
 src/hb-ucdn.cc                          |  2 ++
 test/fuzzing/run-shape-fuzzer-tests.py  |  2 ++
 test/fuzzing/run-subset-fuzzer-tests.py |  2 ++
 util/helper-cairo.cc                    |  2 ++
 6 files changed, 16 insertions(+), 8 deletions(-)

commit 3babb0813c69d2b419f06773f366a44a9ad32cdb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 30 20:02:30 2018 +0200

    [msan] Disable icu explicitly

 .circleci/config.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit dc9b47ae87096d34d146e50e44e742a76861976f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 30 18:35:12 2018 +0200

    [msan] Remove uninstrumented libraries

 .circleci/config.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ad1c190ecfbac66ffeef69db769073a33331eed3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 30 18:26:45 2018 +0200

    Correct fix for glib-mkenum warning

 src/hb-buffer.h | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 1dd1e56bf42af5b11afc3e34f78869e93d39867e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 30 18:25:58 2018 +0200

    Revert "Fix glib-mkenum warning"

    This reverts commit 247756a7d89008ee6a7d1171dc07ba22454c6034.

    Was wrong.  Right fix coming.

 src/hb-buffer.h | 2 ++
 1 file changed, 2 insertions(+)

commit 3f08750fa6772e7e342b96192b84cb9963f7335b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 30 18:23:34 2018 +0200

    Move _POSIX_SOURCE to hb.hh

 src/hb-blob.cc | 5 -----
 src/hb.hh      | 4 ++++
 2 files changed, 4 insertions(+), 5 deletions(-)

commit 90dd255e570bf8ea3436e2f29242068845256e55
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 30 18:19:54 2018 +0200

    Change _HB_SCRIPT_MAX_VALUE from 0xFFFFFFFF to 0x7FFFFFFF

    Fixes https://github.com/harfbuzz/harfbuzz/issues/504

 src/hb-common.h | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

commit dcfcb950b81a2865ef01f5a69087264b79ed1bfd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 30 18:14:50 2018 +0200

    [test] Fix -Wunused-parameter warnings

 test/api/hb-test.h          |  1 +
 test/api/test-blob.c        |  2 +-
 test/api/test-c.c           |  2 +-
 test/api/test-font.c        | 16 ++++++++--------
 test/api/test-multithread.c |  2 +-
 test/api/test-ot-color.c    |  2 +-
 test/api/test-shape.c       | 14 +++++++-------
 test/api/test-unicode.c     | 10 +++++-----
 8 files changed, 25 insertions(+), 24 deletions(-)

commit be0b2ed3162f465dbf44a0f018d4e2af5dcdf87c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 30 18:01:20 2018 +0200

    More warning fixes

 test/api/test-multithread.c | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

commit 5c65ed800de4caef5ee9ad2111225fa5d8235737
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 30 17:48:55 2018 +0200

    Fix bug introduced in 9b0b40b3c1ac8155c80ed5dc976228f4d3ec7e1f

    Also discovered by msan bot.

 src/hb-ot-shape-fallback.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 247756a7d89008ee6a7d1171dc07ba22454c6034
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 30 13:10:54 2018 +0200

    Fix glib-mkenum warning

      GEN      hb-gobject-enums.h
    WARNING: Failed to parse "/*< private >*/" in ../../src/hb-buffer.h

 src/hb-buffer.h | 2 --
 1 file changed, 2 deletions(-)

commit 0a89f9572fe2d0d9fbf0297e0a69307f0ba1a17c
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Sep 30 17:44:15 2018 +0330

    [circleci] Pass ‌freetype compile flags to right place

 .circleci/config.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ad701f05cc86c22e8e53b7f5458887457e3a5e5f
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Sep 30 17:30:42 2018 +0330

    [circleci] Use an instrumented freetype on msan bot

 .circleci/config.yml | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit 57aabbc29ec6dfa7f1b57da7b6c62fdc547f8ef8
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Sep 30 16:31:28 2018 +0330

    [circleci] Another on fixing msan

 .circleci/config.yml | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 24f148df3ecc899c9cf6d5359d3d35ee5e84a98c
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Sep 30 14:46:56 2018 +0330

    [circleci] minor

 .circleci/config.yml | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 0a9aab672287149540e8d90b5063ad4c562c423c
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Sep 30 14:45:43 2018 +0330

    [circleci] Try to fix msan bot

 .circleci/config.yml | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit b5285b34798cb7ee672343d00cbe066ea8a2ef83
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 30 12:23:01 2018 +0200

    [util] Remove unneeded virtual

    clang warning:

    ../../util/options.hh:72:13: warning: destination for this 'memset'
    call is a pointer to dynamic class
          'option_parser_t'; vtable pointer will be overwritten
          [-Wdynamic-class-memaccess]
        memset (this, 0, sizeof (*this));
        ~~~~~~  ^
    ../../util/options.hh:72:13: note: explicitly cast the pointer to
    silence this warning
        memset (this, 0, sizeof (*this));
                ^
                (void*)

 util/options.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 89ed040b21b366c927199bedd0e4cb060389d076
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 30 06:06:26 2018 -0400

    [util] Fix more non-virtual-destructor warnings

 util/options.hh | 28 ++++++++++++++++++----------
 1 file changed, 18 insertions(+), 10 deletions(-)

commit 2382dd07fa6ff49638b146a523e9d2e93cf69ceb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 30 05:54:47 2018 -0400

    Minor

 util/options.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 9caa432d0c5c09c8151cfce1e2cc184fbdd89594
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 30 05:49:08 2018 -0400

    [util] Use HB_FALLTHROUGH

    Sure, gcc knows to warn about this as well:

    ../../util/options.cc:175:17: warning: this statement may fall through
    [-Wimplicit-fallthrough=]
         case 1: m.r = m.t;
                 ~~~~^~~~~
    ../../util/options.cc:176:5: note: here
         case 2: m.b = m.t;
         ^~~~

    But HOLY SMOKES, look at clang -Weverything bot message:

    options.cc:176:5: warning: unannotated fall-through between switch
    labels [-Wimplicit-fallthrough]
        case 2: m.b = m.t;
        ^
    options.cc:176:5: note: insert 'HB_FALLTHROUGH;' to silence this
    warning
        case 2: m.b = m.t;
        ^
        HB_FALLTHROUGH;

    Right, it's telling me to insert "HB_FALLTHROUGH;" there!!!!!!!!!

 util/options.cc | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit 2e728a7d86c714d845524a0722c2b653feb9d915
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 30 05:47:36 2018 -0400

    [util] Mark var static

    From clang -Weverything bot:

    options.cc:39:3: warning: no previous extern declaration
    for non-static variable 'supported_font_funcs'
    [-Wmissing-variable-declarations]

 util/options.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e910a1aef4b2413c627240fc06d2a5696b24747a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 30 05:46:20 2018 -0400

    [util] Add empty virtual destructor to option_group_t

    From clang -Weverything bot:

    ./options.hh:57:8: warning: 'option_group_t' has virtual functions
    but non-virtual destructor [-Wnon-virtual-dtor]
    struct option_group_t
           ^

 util/options.hh | 2 ++
 1 file changed, 2 insertions(+)

commit b1e07e1e6cc7a8e5445c7aeb9491ae629029011b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 30 05:43:22 2018 -0400

    [indic/khmer] Remove use of global constructors

    Alternative woul have been to resurrect F_COMBINE that I removed in
    70136a78cb9eda244767f8e8a3d30d0f3c569d01

    But this does it for now.  I'm not sure why check-static-inits.sh
    didn't
    catch this before.  Clang -Weverything bot did:

      CXX      libharfbuzz_la-hb-ot-shape-complex-indic.lo
    hb-ot-shape-complex-indic.cc:99:1: warning: declaration requires a
    global constructor [-Wglobal-constructors]
    indic_features[] =
    ^
    1 warning generated.
      CXX      libharfbuzz_la-hb-ot-shape-complex-khmer.lo
    hb-ot-shape-complex-khmer.cc:36:1: warning: declaration requires a
    global constructor [-Wglobal-constructors]
    khmer_features[] =
    ^
    1 warning generated.

 src/hb-ot-map.hh                 |  2 ++
 src/hb-ot-shape-complex-indic.cc | 34 +++++++++++++++++-----------------
 src/hb-ot-shape-complex-khmer.cc | 18 +++++++++---------
 3 files changed, 28 insertions(+), 26 deletions(-)

commit 00cd00e64130694ff7b49456d4bc421a153b4e6d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 30 05:34:30 2018 -0400

    Tweak HB_TAG and HB_UNTAG

    uint32_t was getting promoted to signed int, which is not what
    we wanted...

    Wow, clang has become good at generating warnings...

    ../../src/hb-common.h:349:29: warning: signed shift result
    (0xFF000000) sets the sign bit of the shift expression's type ('int')
    and becomes negative [-Wshift-sign-overflow]
      _HB_SCRIPT_MAX_VALUE                          = HB_TAG_MAX, /*<
      skip >*/
                                                      ^~~~~~~~~~
    ../../src/hb-common.h:93:20: note: expanded from macro 'HB_TAG_MAX'
     define HB_TAG_MAX HB_TAG(0xff,0xff,0xff,0xff)
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~
    ../../src/hb-common.h:89:57: note: expanded from macro 'HB_TAG'
     define HB_TAG(c1,c2,c3,c4)
     ((hb_tag_t)((((uint8_t)(c1))<<24)|(((uint8_t)(c2))<<16)|(((uint8_t)(c3))<<8)|((uint8_t)(c4))))
                                             ~~~~~~~~~~~~~~~^ ~~
    ../../src/hb-common.h:349:3: warning: ISO C restricts enumerator
    values to range of 'int' (4294967295 is too large) [-Wpedantic]
      _HB_SCRIPT_MAX_VALUE                          = HB_TAG_MAX, /*<
      skip >*/
      ^                                               ~~~~~~~~~~

 src/hb-common.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 8a31e406291f4cb27480fc85049f08abd739cb59
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 30 05:27:39 2018 -0400

    [font] Make *_advance() fallback to *_advances

    And remove redundant implementations.

 src/hb-font.cc    | 12 ++++++++++++
 src/hb-ft.cc      | 19 -------------------
 src/hb-ot-font.cc | 22 ----------------------
 3 files changed, 12 insertions(+), 41 deletions(-)

commit bd07d2878ff28baecf7b4b587a18ffbb744b7eb1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 30 03:54:40 2018 -0400

    Use buffer scratch_flags to remember if we had any joiners

 src/hb-buffer.hh                  |  3 ++-
 src/hb-ot-layout.hh               | 12 ++++++++++--
 src/hb-ot-shape-complex-arabic.cc |  3 +++
 3 files changed, 15 insertions(+), 3 deletions(-)

commit ba0f0f156fe05bda760efcb0c8d34f303fa26ab0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 30 03:49:52 2018 -0400

    Document setlocale() threadsafety issue

    "Fixes" //github.com/harfbuzz/harfbuzz/issues/1191

 src/hb-buffer.cc | 2 ++
 src/hb-common.cc | 7 +++++++
 2 files changed, 9 insertions(+)

commit 06be2aa93fa6ea8cc32684a4b51bfe927c5202bb
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Sep 30 00:15:25 2018 +0330

    [ci] Build glib and freetype and enable msan bot (#1198)

 .circleci/config.yml | 41 +++++++++++++++++++++--------------------
 1 file changed, 21 insertions(+), 20 deletions(-)

commit cefdef0247026f941eba8930c73b66b0498bb63c
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Sep 29 10:19:54 2018 +0330

    Minor on test-multithread, align the actual and expected results

 test/api/test-multithread.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 678beff64ca3b2963de25d8a76a2bf3710c3d7a6
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Sep 29 10:16:14 2018 +0330

    [circleci] Add -Wno-reserved-id-macro to clang-everything

 .circleci/config.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c763b9440189b541316054ba4f623e728b5aae77
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 28 20:53:07 2018 -0400

    [test-multithread] Disable FreeType funcs

 test/api/test-multithread.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

commit 9b0b40b3c1ac8155c80ed5dc976228f4d3ec7e1f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 28 11:16:18 2018 -0400

    Fix fallback kerning to check for current glyph's mask

 src/hb-ot-shape-fallback.cc | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

commit 909a07b587884e9cd1d92ba9f3d5b96d8774c67a
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Sep 29 03:10:13 2018 +0330

    [circleci] Improve clang-everything bot log, more to come

    #1196

 .circleci/config.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9be8062b4d241f02bb96df436e98f10f08bda4f8
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Sep 29 02:11:05 2018 +0330

    [ci] Another try on mingw bot

 appveyor.yml | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit d4d261a97723b27fb9ad9a69b8dc7fd8c560a98b
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Sep 29 01:57:50 2018 +0330

    [ci] Another try on fixing mingw bots

    Per
    https://github.com/Alexpux/MSYS2-packages/issues/163#issuecomment-73555971

 appveyor.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 7b68edf2abc7680199360d52ed283cfc4f49b7d5
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Sep 28 20:53:48 2018 +0330

    [tests] Don't try to get glyph names on failures

    As it may cause a race unrelated to the issue actually happened

 test/api/test-multithread.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit d289d6381864649504abfb1196ac20a1d4664a4e
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Sep 28 20:47:21 2018 +0330

    [ci] Trying to fix mingw bot

    As https://github.com/Alexpux/MSYS2-packages/issues/702

 appveyor.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 33231a855f0e3d2a14e5e2fcb921c6fc773ae6cf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 28 11:06:49 2018 -0400

    Fix pthread fail for real

    Using a hack...

 test/api/Makefile.am | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 8cb8209c911a69442f23f744981e3ed01e44a3fc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 28 10:55:28 2018 -0400

    Fix bot fails

 test/api/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f4072e8cb81072cd6d51a2607efedb76c02e7db1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 28 10:14:23 2018 -0400

    [morx] Remove mark_set from Insertion

    text-rendering-tests test MORX-32 shows that for Insertion, an unset
    mark is treated
    as mark set at 0.  This is unlike the Reordering lookup where un
    unset mark performs
    nothing.

    Fixes MORX-32.

 src/hb-aat-layout-morx-table.hh | 7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)

commit 0d18ec5467818fa8f763ec2871146a64d39987e7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 28 10:00:07 2018 -0400

    [morx] unsafe-to-break in Insertion

    Makes MORX-29, MORX-30, MORX-31 pass.

 src/hb-aat-layout-morx-table.hh | 2 ++
 1 file changed, 2 insertions(+)

commit 02bebe42c1ffbd8e11b232c943317c8cd8141afb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 28 09:51:35 2018 -0400

    [test/text-rendering-tests] Update from upstream

 test/shaping/data/text-rendering-tests/DISABLED          |   4 ++++
 test/shaping/data/text-rendering-tests/Makefile.sources  |   4 ++++
 .../text-rendering-tests/fonts/TestMORXThirtyone.ttf     | Bin 0 ->
 2964 bytes
 .../text-rendering-tests/fonts/TestMORXThirtytwo.ttf     | Bin 0 ->
 2948 bytes
 .../text-rendering-tests/fonts/TestMORXTwentynine.ttf    | Bin 0 ->
 3012 bytes
 .../data/text-rendering-tests/tests/MORX-29.tests        |   4 ++++
 .../data/text-rendering-tests/tests/MORX-30.tests        |   4 ++++
 .../data/text-rendering-tests/tests/MORX-31.tests        |   8 ++++++++
 .../data/text-rendering-tests/tests/MORX-32.tests        |   4 ++++
 9 files changed, 28 insertions(+)

commit 4cd342baea323bf9709340bbabfc092c976c239c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 28 09:47:45 2018 -0400

    Fix ubsan bot

 test/api/Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit b435df3a5b6f7fddc091c4362a36840305144a57
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 28 09:13:14 2018 -0400

    More atomic tuneup

 src/hb-atomic.hh | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

commit 7e6e094abd27fd022fe9aea1872ef82f6a0cdcec
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 28 08:45:57 2018 -0400

    [test-multithread] Install ot funcs before filling ref buffer

 test/api/test-multithread.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 21fbee831e0eab2c2f4513825c939158f4578156
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 28 08:43:37 2018 -0400

    [test-multithread] Take num-threads and num-iters from command-line

 test/api/test-multithread.c | 5 +++++
 1 file changed, 5 insertions(+)

commit 598be3bb38fd11a288f8155b8c27ffef4ebdd8b9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 28 08:33:26 2018 -0400

    Minor

 test/api/test-multithread.c | 1 +
 1 file changed, 1 insertion(+)

commit c09bf3d50589c8eb95b322ef3e4eb8a288dacebe
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Sep 28 16:13:01 2018 +0330

    test-multithread, check the results on every iteration (#1194)

 test/api/test-multithread.c | 59
 ++++++++++++++++++++++++---------------------
 1 file changed, 32 insertions(+), 27 deletions(-)

commit dbc3070a15290310bb5aade11d04eb24fe958094
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Sep 28 16:01:15 2018 +0330

    Make test-multithread pass the tsan bot test (#1193)

 test/api/test-multithread.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit d2542cd28c70b2ba7ab28c0fe5459a1b4a873478
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 27 17:23:24 2018 -0400

    More atomic fixup

 src/hb-atomic.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 3ee96984f4633852736b33640c89d1706bc77e0b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 27 17:20:26 2018 -0400

    Fixup atomics from recent change

 src/hb-atomic.hh | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

commit 305468708dc9ce9dadad36c117c380f13bcc6a26
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 27 16:54:23 2018 -0400

    [cache] Use atomic writes in clear()

    To help TSan.

 src/hb-cache.hh | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 9e9a36ee651502b69717895385387951a2d0802a
Author: Volker Krause <vkrause@kde.org>
Date:   Thu Sep 27 16:33:49 2018 +0200

    Fix infinite loop when walking up the directory hierarchy (#1183)

    A single find_package(harfbuzz) line in user code resulted in
    this loop
    getting stuck when _harfbuzz_libdir_iter became "/".

 src/harfbuzz-config.cmake.in | 4 ++++
 1 file changed, 4 insertions(+)

commit 0c1d852bc41a4f69f890be4817c84bd7de56e07a
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Sep 27 11:53:17 2018 +0330

    Use clang for compiling freetype for tsan bot

 .circleci/config.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ab16b24cc94389ac66a9353327d2a87a7c230ed4
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Sep 26 18:51:36 2018 -0700

    tweaked get_fd fix

 src/hb-ot-cff-common.hh | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit dac70f252a84e1a255375eaacffc2cb3f3fc6e58
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Sep 26 16:30:26 2018 -0700

    Added CFF1 J font subset to api test

    Also fixed FDSelect3_4::get_fd
    Fixed test_subset_cff1_strip_hints (wrong font names!)

 src/hb-ot-cff-common.hh                            |   2 +-
 .../fonts/SourceHanSans-Regular.41,3041,4E9D.otf   | Bin 0 -> 5864 bytes
 test/api/fonts/SourceHanSans-Regular.41,4E9D.otf   | Bin 0 -> 5500 bytes
 test/api/test-subset-cff1.c                        |  25
 +++++++++++++++++++--
 4 files changed, 24 insertions(+), 3 deletions(-)

commit 662f7d7e8bfa77b21ffa05e853f61dda993dcc8a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 26 18:42:37 2018 -0400

    [arabic] Do the joiner-flipping only for rlig feature

    See comment.

 src/hb-ot-shape-complex-arabic.cc | 24 +++++++++++++++++++-----
 1 file changed, 19 insertions(+), 5 deletions(-)

commit 7f30629cddcf0196d7b754df0cb2d4a8e5fed4b6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 26 16:40:23 2018 -0400

    [ft] Make TSan happy

 src/hb-ft.cc | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit ec743fce2a72a1cb76ac9401747a442a03a051d9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 26 16:37:18 2018 -0400

    Add more atomic intrinsics

 src/hb-atomic.hh | 21 ++++++++++++++++++---
 1 file changed, 18 insertions(+), 3 deletions(-)

commit d183b33c1dd42055a9432f4a756ea20856913201
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 26 16:29:35 2018 -0400

    Rename test

 test/api/Makefile.am                                           | 2 +-
 test/api/{test-subset-codepoints.c => test-collect-unicodes.c} | 0
 2 files changed, 1 insertion(+), 1 deletion(-)

commit c9c75fe3d9eb36f166d594ceb5889a1dc0b14fe6
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Sep 27 00:08:06 2018 +0330

    [ci] Compile freetype on tsan and put sanitizer flags on correct
    places (#1188)

 .circleci/config.yml | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

commit 39da1914b4fd1c58d61cb29c78a0904ff6b905c6
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Sep 26 23:32:45 2018 +0330

    Test freetype funcs on test-multithread (#1187)

 test/api/Makefile.am        |  6 ++++--
 test/api/test-multithread.c | 25 +++++++++++++++++--------
 2 files changed, 21 insertions(+), 10 deletions(-)

commit e88009a93f5d13ed31b6262f928761e9574dcef1
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Sep 26 22:53:02 2018 +0330

    Minor, remove the no longer needed comment on test-multithread

 test/api/test-multithread.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 90a0f9fa0c020c268ac3ba31c7f1337eed85f35e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 26 15:03:07 2018 -0400

    Make TSan happy with make_immutable()

 src/hb-blob.cc    | 2 ++
 src/hb-face.cc    | 2 ++
 src/hb-font.cc    | 4 ++++
 src/hb-unicode.cc | 2 ++
 4 files changed, 10 insertions(+)

commit 34d5a2595331c568ae524057d031c9d5d2573978
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 26 15:02:21 2018 -0400

    Fix test-multithread and increase num_threads to 30

    What were you thinking? ;)

 test/api/test-multithread.c | 56
 +++++++++++++++++++++------------------------
 1 file changed, 26 insertions(+), 30 deletions(-)

commit 8bb73dad7f3279e1f1362cf9a137504e8ef08985
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Sep 26 20:50:51 2018 +0330

    Add a multithreaded test (#1184)

 test/api/Makefile.am        |   6 ++
 test/api/test-multithread.c | 146
 ++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 152 insertions(+)

commit 04caf11608d2db13eb6ed2ecc3d406e284b4c13c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 26 12:13:47 2018 -0400

    [hb-view] Change subpixel bits from 8 to 6

    To match FreeType units, such that FreeType gets correct size from us.
    This matters more now that we allow setting --ft-load-flags.

 util/hb-view.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 824111d4842b9a7bbbdcd147325f8f372ed3d37c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 25 12:47:37 2018 -0400

    Fix iOS build

    Fixes https://github.com/harfbuzz/harfbuzz/pull/1179

 src/hb-coretext.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 4b4be7701f635f8378e7f868cfbe8d4571fc841f
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Sep 25 09:24:35 2018 +0330

    [circle] Add an obsessive clang bot (#1178)

 .circleci/config.yml | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

commit ae7f0e83d4417fac2455c44eaea15b3cca03d18e
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Sep 24 22:49:44 2018 -0700

    fixed memory leaks

    in CFF1 & CFF2 accelerators, VORG subsetter

 src/hb-ot-cff1-table.hh | 2 ++
 src/hb-ot-cff2-table.hh | 2 ++
 src/hb-ot-vorg-table.hh | 3 +++
 3 files changed, 7 insertions(+)

commit 258b456566abd266657725b3fc4e70f18b370d5d
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Sep 24 16:50:47 2018 -0700

    Added CFF1 & CFF2 api tests

 test/api/Makefile.am                               |   4 +
 test/api/fonts/AdobeVFPrototype.abc.otf            | Bin 0 -> 7800 bytes
 test/api/fonts/AdobeVFPrototype.ac.nohints.otf     | Bin 0 -> 7152 bytes
 test/api/fonts/AdobeVFPrototype.ac.otf             | Bin 0 -> 7336 bytes
 test/api/fonts/SourceSansPro-Regular.abc.otf       | Bin 0 -> 3412 bytes
 .../api/fonts/SourceSansPro-Regular.ac.nohints.otf | Bin 0 -> 3228 bytes
 test/api/fonts/SourceSansPro-Regular.ac.otf        | Bin 0 -> 3332 bytes
 test/api/test-subset-cff1.c                        | 104
 +++++++++++++++++++++
 test/api/test-subset-cff2.c                        | 104
 +++++++++++++++++++++
 9 files changed, 212 insertions(+)

commit 8282e881b51363811078bce53fad6aa5b41f7b41
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 24 19:43:01 2018 -0400

    Disable msan bot again

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1175

 .circleci/config.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6c0e7eb6a6f3f888442c0a97ce6a771631990ed6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 24 19:07:23 2018 -0400

    Minor

 src/hb-ot-map.hh                 |  1 +
 src/hb-ot-shape-complex-indic.cc | 34 +++++++++++++++++-----------------
 src/hb-ot-shape-complex-khmer.cc | 18 +++++++++---------
 3 files changed, 27 insertions(+), 26 deletions(-)

commit d748dc76644f28d4130f9cb1dee7a22cbe81c25d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 24 18:30:50 2018 -0400

    More iter inits

 src/hb-ot-layout-gsubgpos.hh | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit d9867497d09af929554eaa89cc6fee865b018646
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 24 18:11:59 2018 -0400

    Minor

 src/hb-ot-shape.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 70136a78cb9eda244767f8e8a3d30d0f3c569d01
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 24 18:03:34 2018 -0400

    Remove F_COMBINE

    Now I wonder if any bots will be unhappy we calling | in static
    const initializations...
    Or would that cost runtime init?  Our tests don't detect any..

 src/hb-ot-map.hh                  | 2 --
 src/hb-ot-shape-complex-arabic.cc | 2 +-
 2 files changed, 1 insertion(+), 3 deletions(-)

commit f048ead84a4d3fe0bb712ed228c2f39c01ce9705
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 24 18:01:53 2018 -0400

    Some more

 src/hb-ot-map.cc                   |  5 +++--
 src/hb-ot-map.hh                   | 13 +++++++------
 src/hb-ot-shape-complex-arabic.cc  | 18 +++++++++---------
 src/hb-ot-shape-complex-hangul.cc  |  2 +-
 src/hb-ot-shape-complex-indic.cc   |  8 ++++----
 src/hb-ot-shape-complex-khmer.cc   |  8 ++++----
 src/hb-ot-shape-complex-myanmar.cc | 10 +++++-----
 src/hb-ot-shape-complex-tibetan.cc |  2 +-
 src/hb-ot-shape-complex-use.cc     | 20 ++++++++++----------
 src/hb-ot-shape.cc                 | 30 +++++++++++++++---------------
 10 files changed, 59 insertions(+), 57 deletions(-)

commit 1676f608c8e4f880789252ca448bb008f6dd51b4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 24 17:55:03 2018 -0400

    Minor refactoring

 src/hb-ot-map.hh                   | 15 ++++++++++-
 src/hb-ot-shape-complex-hangul.cc  |  2 +-
 src/hb-ot-shape-complex-indic.cc   | 52
 +++++++++++++++-----------------------
 src/hb-ot-shape-complex-khmer.cc   | 38 ++++++++++------------------
 src/hb-ot-shape-complex-myanmar.cc |  2 +-
 5 files changed, 51 insertions(+), 58 deletions(-)

commit 10203339600e85d6aaffba6034ac250e72fdfc12
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Sep 25 01:00:32 2018 +0330

    [circleci] Update sanitizer bots with newer clang and Ubuntu version
    (#1176)

 .circleci/config.yml | 48
 ++++++++++++++++++++++++++++++++----------------
 1 file changed, 32 insertions(+), 16 deletions(-)

commit 12b8baa7653741ba13a89cd40f1f36b8bac11666
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 24 17:22:39 2018 -0400

    [msan] Enable again to get a build log, and try to play with
    suppressions

 .circleci/config.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit aec0d3cbc923a8801c5bd9e9ae05801a31a7260c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 24 13:12:15 2018 -0400

    [ubsan] Re-enable now that it passes locally

 .circleci/config.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 4839807340cc73d5ba826dff4b4ba358775a213d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 24 13:11:34 2018 -0400

    [check-static-inits.sh] Allow some if ubsan is in effect

 src/check-static-inits.sh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 0604bf2b3846b200c56447ffe542bf69c0529a06
Merge: 76e54d2b 45f5aa97
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Sep 24 10:09:25 2018 -0700

    Merge branch 'master' into cff-subset

commit e45ba31dc723988150ef766758fa89fecd50ca03
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 24 13:04:48 2018 -0400

    [check-symbols.sh] Allow weak objects "V"

    ubsan generates these.

 src/check-symbols.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit d07f3111b4bc38798e16a2459b80a16d7a9f9ff1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 24 13:01:35 2018 -0400

    Link API test programs with C++ linker

    Needed to make ubsan work.

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1174

 test/api/Makefile.am | 2 ++
 1 file changed, 2 insertions(+)

commit a96508cfc9bd9013d24b18547fcd9c03e08fe2f2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 24 12:52:42 2018 -0400

    [msan] Add MSAN_OPTIONS=exitcode=42

    Default exit value is 77, which causes autotools to "skip" test.

 .circleci/config.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 45f5aa97905996e3486c6dbba8493b11cfa0cf15
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 24 12:43:29 2018 -0400

    [circleci] Disable msan and ubsan builds

    https://github.com/harfbuzz/harfbuzz/issues/1174
    https://github.com/harfbuzz/harfbuzz/issues/1175

 .circleci/config.yml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 2d93148a0f915bb52433ecc9d66845191a2f9135
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 24 11:52:22 2018 -0400

    Ignore weak symbols in check-symbols.sh

    Some clang versions leave a std::round(float) weak symbol around...

 src/check-symbols.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 55bae6825ed2058255a512a73293e3cdff0e78a4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 24 10:43:06 2018 -0400

    [docs] A few improvements

    If we wrote just this much every day...

 src/hb-buffer.cc |  4 ++++
 src/hb-buffer.h  | 20 +++++++++++++++-----
 src/hb-face.cc   | 11 +++++++----
 src/hb-font.cc   | 12 +++++++-----
 4 files changed, 33 insertions(+), 14 deletions(-)

commit 57fa2c23de8b6b66894d6872d192ac90ec8bf05a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 24 09:57:52 2018 -0400

    Readjust Hebrew composition again

 src/hb-ot-shape-complex-hebrew.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 7f335390f3a498119319a0e6c3ce7656a3902066
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 24 09:56:18 2018 -0400

    Revert change that would decompose text if GPOS mark feature is
    available

    https://github.com/harfbuzz/harfbuzz/issues/653#issuecomment-423905920

 src/hb-ot-shape-normalize.cc | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit a6f4b2f7cd088aeb44e1aac672434641f4f9e484
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 24 09:54:37 2018 -0400

    Fix normalization

    https://github.com/harfbuzz/harfbuzz/commit/62d1e0852a5549a1b510ad46a4b89f12730bb708#commitcomment-30613091

 src/hb-ot-shape-normalize.cc | 1 -
 1 file changed, 1 deletion(-)

commit 3583fb03b14a10ec5ab5f9c480e150934101fd0b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 23 22:33:38 2018 -0400

    Simplify ZWJ-skipping a bit

    Towards disabling ZWJ-skipping in certain GPOS contexts.

    Part of https://github.com/flutter/flutter/issues/16886

 src/hb-ot-layout-gsubgpos.hh       |  6 +++---
 src/hb-ot-shape-complex-indic.cc   | 21 ++++++++++++++++-----
 src/hb-ot-shape-complex-khmer.cc   | 21 ++++++++++++++-------
 src/hb-ot-shape-complex-myanmar.cc | 15 ++++++++++++++-
 src/hb-ot-shape-complex-use.cc     | 15 +++++++++++++--
 5 files changed, 60 insertions(+), 18 deletions(-)

commit 9516cbd3df7ccdb40b27a7ba99a1e0da8a6b170c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 23 22:00:34 2018 -0400

    Reinit skippy iters when auto_zwj / auto_zwnj change

    Ouch.  How did we not hit this bug before...

 src/hb-ot-layout-gsubgpos.hh | 17 +++++++++--------
 1 file changed, 9 insertions(+), 8 deletions(-)

commit 62d1e0852a5549a1b510ad46a4b89f12730bb708
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 23 21:32:18 2018 -0400

    Prefer decomposed form if font has GPOS mark feature

    Fixes https://github.com/harfbuzz/harfbuzz/issues/653

 src/hb-ot-shape-complex-hebrew.cc |   2 +-
 src/hb-ot-shape-normalize.cc      | 126
 ++++++++++++++++++++------------------
 src/hb-ot-shape-normalize.hh      |   7 ++-
 3 files changed, 72 insertions(+), 63 deletions(-)

commit d7f21777e6a797758ab234555f5f7e07c87278f9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 23 19:12:52 2018 -0400

    [ot-font] Fix leak

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1171

    I'm glad we have leak-detector bots now.

 src/hb-ot-post-table.hh | 1 +
 1 file changed, 1 insertion(+)

commit ae39a53f55e6b812defb4c7b48562651c9eb13a3
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Sep 22 14:22:17 2018 +0330

    Add bots with address- and thread-sanitizer

 .circleci/config.yml | 52
 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 52 insertions(+)

commit 24dd6c1a9d8d571c30dce4d39c1975b1d1cedc2a
Author: Matt Oliver <protogonoi@gmail.com>
Date:   Sun Sep 23 18:08:30 2018 +1000

    src/hb-blob.cc: Fix mmap functionality with UWP.

 src/hb-blob.cc | 27 +++++++++++++++++++++++++++
 src/hb.hh      |  4 +++-
 2 files changed, 30 insertions(+), 1 deletion(-)

commit b7f1bbc2f8b14a402fa9e42e88919dc0173373ce
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Sat Sep 22 16:41:56 2018 +0200

    [test] Fix printing subprocess error messages

    Decode the string as Python 3 returns bytes string, and also don’t
    assume that it ends with a new line.

 test/shaping/run-tests.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 403019482b0d7f17fbdb5def2be5f43e28bafcf3
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Sep 22 17:24:03 2018 +0330

    Fix test-subset-* leak issues

    See also https://github.com/harfbuzz/harfbuzz/pull/1169

 test/api/hb-subset-test.h | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

commit f6ebe1f4dc95a7c4b3a0af23086873a11867c1d9
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Sep 22 17:05:52 2018 +0330

    Fix test-ot-math leak issue

    See also https://github.com/harfbuzz/harfbuzz/pull/1169

 test/api/test-ot-math.c | 4 ++++
 1 file changed, 4 insertions(+)

commit 669ac81ac52e9d559324db851a9ee46ef651e7b0
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Sep 22 16:49:23 2018 +0330

    Fix test-set leak issue

    See also https://github.com/harfbuzz/harfbuzz/pull/1169

 test/api/test-set.c | 1 +
 1 file changed, 1 insertion(+)

commit ef9307fd2227bf0f750d8f7fafae466affc81454
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Sep 22 16:45:31 2018 +0330

    Fix test-font leak issue

    See also https://github.com/harfbuzz/harfbuzz/pull/1169

 test/api/test-font.c | 1 +
 1 file changed, 1 insertion(+)

commit 76e54d2bd804414183858ca198157050419dfe6c
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Sep 21 12:16:36 2018 -0700

    fixed subroutinized CFF2 flattening

    and some code cleanup

 src/hb-cff-interp-common.hh    |  2 +-
 src/hb-cff-interp-cs-common.hh | 13 -------------
 src/hb-cff2-interp-cs.hh       |  7 ++++---
 3 files changed, 5 insertions(+), 17 deletions(-)

commit 321e592333014f713557e8ce8041dcb5de710218
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Sep 20 10:31:06 2018 -0700

    Added desubroutinize option to generate-expected-outputs.py

    Currently hb-subset always desubroutinizes CFF fonts.
    Note that even with this option fonttools won't generate the expected
    subset CFF fonts. They were manually created & tweaked to match
    hb-subset output.

 test/subset/generate-expected-outputs.py | 1 +
 1 file changed, 1 insertion(+)

commit f212c050ad50898d5105d1d3a6ea3498f94ee462
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Sep 20 09:45:43 2018 -0700

    Added VORG struct and its subsetter

    new file: hb-ot-vorg-table.hh

 src/Makefile.sources    |   1 +
 src/hb-ot-vorg-table.hh | 163
 ++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-subset.cc        |   5 +-
 3 files changed, 168 insertions(+), 1 deletion(-)

commit 5fd8bce945e7efaa48d0c29eb8b2700027bd3c0b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 19 22:34:09 2018 -0400

    [morx] Fix mark_set check

 src/hb-aat-layout-morx-table.hh | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

commit 1377adc8a88c627891cb8b9cea511d8f9f5324f9
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Sep 19 17:00:10 2018 -0700

    Added SourceHanSans-Regular for CFF subset test

    Disabled FDSelect serialization to format 0 for compatibility with
    fonttools

 src/hb-subset-cff-common.cc                          |  16
 +++++++++++++---
 .../japanese/SourceHanSans-Regular.default..otf      | Bin 0 ->
 2340 bytes
 ...Regular.default.3042,3044,3046,3048,304A,304B.otf | Bin 0 ->
 6248 bytes
 ...Regular.default.3042,3044,3046,73E0,5EA6,8F38.otf | Bin 0 ->
 6432 bytes
 .../SourceHanSans-Regular.default.61,63,65,6B.otf    | Bin 0 ->
 5428 bytes
 ...Regular.default.660E,6975,73E0,5EA6,8F38,6E05.otf | Bin 0 ->
 6552 bytes
 .../japanese/SourceHanSans-Regular.default.660E.otf  | Bin 0 ->
 5196 bytes
 .../japanese/SourceHanSans-Regular.drop-hints..otf   | Bin 0 ->
 2188 bytes
 ...ular.drop-hints.3042,3044,3046,3048,304A,304B.otf | Bin 0 ->
 6076 bytes
 ...ular.drop-hints.3042,3044,3046,73E0,5EA6,8F38.otf | Bin 0 ->
 6180 bytes
 .../SourceHanSans-Regular.drop-hints.61,63,65,6B.otf | Bin 0 ->
 5312 bytes
 ...ular.drop-hints.660E,6975,73E0,5EA6,8F38,6E05.otf | Bin 0 ->
 6248 bytes
 .../SourceHanSans-Regular.drop-hints.660E.otf        | Bin 0 ->
 5088 bytes
 test/subset/data/fonts/SourceHanSans-Regular.otf     | Bin 0 ->
 16427580 bytes
 test/subset/data/tests/japanese.tests                |   1 +
 15 files changed, 14 insertions(+), 3 deletions(-)

commit 0739b28169eb63332b31420deb5bf58b5446f154
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 19 17:32:21 2018 -0400

    [aat] Minor

 src/hb-aat-layout-common.hh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 7671cb9b04770d50b1b2a05a24f6fadc35993cd1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 19 17:10:26 2018 -0400

    [coretext] Minor

 src/hb-coretext.cc | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

commit dc8ed45292ce4e522c3bda03fd83873da7b6591e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 19 16:46:41 2018 -0400

    [morx] Implement forward/backward processing

    We reverse too many times. Can be optimized. But I doubt many fonts
    use reverse lookups, so doesn't matter.

    Other than not applying user features, this completes morx table
    implementation.

 src/hb-aat-layout-morx-table.hh | 40
 ++++++++++++++++++++++++++++++++++++++++
 1 file changed, 40 insertions(+)

commit 3bccd62196b5dff70d446c3fe053b1b47bb9c19e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 19 16:24:34 2018 -0400

    [morx] Implement horiz-only/vert-only subtables

 src/hb-aat-layout-morx-table.hh | 24 +++++++++++++++++++++++-
 1 file changed, 23 insertions(+), 1 deletion(-)

commit 041a08de3d0ca74d3e2fdccfa5311ff26a8b97e4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 19 16:02:56 2018 -0400

    [morx] Improve buffer position in Insertion w DontAdvance and wo

    Just speculation. Needs tests to determine which is correct behavior.

 src/hb-aat-layout-morx-table.hh | 23 ++++++++++++++++++-----
 1 file changed, 18 insertions(+), 5 deletions(-)

commit ebeccf3e63bff96b7a7766dea566704a9cbeae44
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Sep 18 17:24:30 2018 -0700

    fixed char widths & standard Encoding in subset CFF

    also merged flush_n_args to flush_args into one
    takes start index of the arguments on stack instead of count

 src/hb-cff-interp-cs-common.hh | 20 +++++---------------
 src/hb-cff1-interp-cs.hh       | 11 +++++++----
 src/hb-cff2-interp-cs.hh       |  2 +-
 src/hb-subset-cff1.cc          | 22 ++++++++++++++++------
 src/hb-subset-cff2.cc          | 12 ++++++------
 5 files changed, 35 insertions(+), 32 deletions(-)

commit bf4eb2e4cf8d08b674f81954e22b331cca2b3721
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Sep 18 15:53:37 2018 -0700

    Added SourceSansPro-Regular along as CFF full-font test case

    derived "expected" subset fonts from fonttools then manually tweaked
    further so they resemble hb-subset output

 ...ourceSansPro-Regular.default.1FC,21,41,20,62,63.otf | Bin 0 ->
 3640 bytes
 .../SourceSansPro-Regular.default.61,62,63.otf         | Bin 0 ->
 3400 bytes
 .../SourceSansPro-Regular.default.D7,D8,D9,DA,DE.otf   | Bin 0 ->
 3596 bytes
 ...ceSansPro-Regular.drop-hints.1FC,21,41,20,62,63.otf | Bin 0 ->
 3480 bytes
 .../SourceSansPro-Regular.drop-hints.61,62,63.otf      | Bin 0 ->
 3276 bytes
 ...SourceSansPro-Regular.drop-hints.D7,D8,D9,DA,DE.otf | Bin 0 ->
 3448 bytes
 test/subset/data/fonts/SourceSansPro-Regular.otf       | Bin 0 ->
 220852 bytes
 test/subset/data/tests/full-font.tests                 |   1 +
 test/subset/run-tests.py                               |   4 ++--
 test/subset/subset_test_suite.py                       |   5 +++++
 10 files changed, 8 insertions(+), 2 deletions(-)

commit e75e7224c9c02ab99e132a51fe8801e29827cac5
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Sep 17 15:34:39 2018 -0700

    include curve control points in extents

    this makes results consistent with FT
    also optimized handling of path end points

 src/hb-cff-interp-cs-common.hh |  6 +++---
 src/hb-ot-cff1-table.cc        | 27 +++++++++++++++++++++++++--
 2 files changed, 28 insertions(+), 5 deletions(-)

commit 98b94f8ba53276887ab583eeeb4cb097c7b84b2c
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Sep 17 13:56:39 2018 -0700

    fix static_assert failure in OffsetTo<TopDict>

 src/hb-ot-cff2-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit d050ab8d3e73debfb414fc8c9426180459150b61
Merge: f0a4e0c2 388ab916
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Sep 17 13:07:29 2018 -0700

    Merge branch 'master' into cff-subset

commit f0a4e0c2ca5ee0225765590384216d5d5367de7e
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Sep 17 12:11:56 2018 -0700

    fix build attempt ^3

 src/hb-ot-cff1-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f0d74971aee5ce309bdfa2a4397667f14ee15f42
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Sep 17 12:02:12 2018 -0700

    fix attempt ^2: unuse INT32_MAX/MIN

 src/hb-ot-cff1-table.cc | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 4d963a2711e6035e97e246241d8420273363f857
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Sep 17 11:28:33 2018 -0700

    fix build attempt

 src/hb-ot-cff1-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 388ab91642734e1ba0d7a4a4f29a17b15f1b249d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 17 19:29:34 2018 +0200

    [morx] Implement InsertionChain

 src/hb-aat-layout-morx-table.hh | 87
 ++++++++++++++++-------------------------
 1 file changed, 33 insertions(+), 54 deletions(-)

commit c0c85b852d37dad75eeef473e6dd3ec91a3b559b
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Sep 17 11:14:56 2018 -0700

    implemented get_glyph_extents with CFF1

    Implemented path operators in a new struct PathProc hooked up
    to CSOpSet
    Added current point to CSInterpEnv

 src/hb-cff-interp-common.hh    |  86 ++++++++-
 src/hb-cff-interp-cs-common.hh | 425
 +++++++++++++++++++++++++++++++++++++++--
 src/hb-cff1-interp-cs.hh       |  18 +-
 src/hb-cff2-interp-cs.hh       |  10 +-
 src/hb-null.hh                 |   2 +-
 src/hb-ot-cff1-table.cc        |  82 ++++++++
 src/hb-ot-cff1-table.hh        |  95 +++++----
 src/hb-ot-face.cc              |   1 +
 src/hb-ot-face.hh              |   1 +
 src/hb-ot-font.cc              |   2 +
 src/hb-subset-cff1.cc          |   4 +-
 src/hb-subset-cff2.cc          |  10 +-
 12 files changed, 657 insertions(+), 79 deletions(-)

commit d8d1e7df0057c79f54d855b7bfec2d21f59b09e8
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Mon Sep 17 11:09:51 2018 -0400

    Don't enforce a native direction for Old Hungarian

 src/hb-common.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6a97d0f3d377a35ea691d15ac142ce043f953e71
Author: Simon Hausmann <hausmann@gmail.com>
Date:   Mon Sep 17 10:33:34 2018 +0200

    Fix installation of cmake config when building with cmake (#1161)

    When building with the auto tools, the manually mantained
    harfbuzz-config.cmake is installed. When building with cmake, we
    can use
    cmake to generate the correct config files for us and install them.

 CMakeLists.txt | 5 +++++
 1 file changed, 5 insertions(+)

commit 606bf57430370810f7bb62ba12b9685d8943685d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 16 19:33:48 2018 +0200

    Revert forcing use of single-parameter static_assert()

    Some clang versions define static_assert as a macro apparently,
    so we cannot
    redefine it...

    This reverts commit 94bfea0ce6a7b4d5641c198d50751748a353df11.
    This reverts commit 4e62627831e7457ed60ff87712570065b14b200a.

 src/hb-atomic.hh                           |  4 ++--
 src/hb-buffer.cc                           |  2 +-
 src/hb-buffer.hh                           |  4 ++--
 src/hb-cache.hh                            |  4 ++--
 src/hb-coretext.cc                         |  2 +-
 src/hb-debug.hh                            |  2 +-
 src/hb-dsalgs.hh                           |  4 ++--
 src/hb-machinery.hh                        |  4 ++--
 src/hb-null.hh                             |  8 +++----
 src/hb-open-type.hh                        |  4 ++--
 src/hb-ot-layout-common.hh                 |  2 +-
 src/hb-ot-layout-gdef-table.hh             |  6 +++---
 src/hb-ot-layout.cc                        | 14 ++++++------
 src/hb-ot-map.cc                           |  2 +-
 src/hb-ot-math-table.hh                    |  2 +-
 src/hb-ot-shape-complex-arabic-fallback.hh |  2 +-
 src/hb-ot-shape-complex-indic.hh           |  2 +-
 src/hb-ot-shape-complex-use.cc             |  2 +-
 src/hb-set-digest.hh                       |  4 ++--
 src/hb-set.hh                              |  6 +++---
 src/hb-uniscribe.cc                        |  2 +-
 src/hb.hh                                  | 34
 +++++++++++++-----------------
 util/options.cc                            |  3 ++-
 23 files changed, 58 insertions(+), 61 deletions(-)

commit cbcaba6ffdf6b147d45baa95d62fd29cec67ed54
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 16 19:25:19 2018 +0200

    One more bot fix

 src/hb-unicode.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 94bfea0ce6a7b4d5641c198d50751748a353df11
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 16 19:12:19 2018 +0200

    Fix build, another try

 util/options.cc | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 89dd4b959773d35981299551074ccc7a1eb332bd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 16 18:11:46 2018 +0200

    Fix bots

    "Unused private member" warning turned error.  ugh.

 src/hb-aat-layout-morx-table.hh | 2 ++
 1 file changed, 2 insertions(+)

commit 4e62627831e7457ed60ff87712570065b14b200a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 16 18:09:36 2018 +0200

    Enforce single-param static_assert() only

    So we don't accidentally break it again.

 src/hb-atomic.hh                           |  4 ++--
 src/hb-buffer.cc                           |  2 +-
 src/hb-buffer.hh                           |  4 ++--
 src/hb-cache.hh                            |  4 ++--
 src/hb-coretext.cc                         |  2 +-
 src/hb-debug.hh                            |  2 +-
 src/hb-dsalgs.hh                           |  4 ++--
 src/hb-machinery.hh                        |  4 ++--
 src/hb-null.hh                             |  8 +++----
 src/hb-open-type.hh                        |  4 ++--
 src/hb-ot-layout-common.hh                 |  2 +-
 src/hb-ot-layout-gdef-table.hh             |  6 +++---
 src/hb-ot-layout.cc                        | 14 ++++++------
 src/hb-ot-map.cc                           |  2 +-
 src/hb-ot-math-table.hh                    |  2 +-
 src/hb-ot-shape-complex-arabic-fallback.hh |  2 +-
 src/hb-ot-shape-complex-indic.hh           |  2 +-
 src/hb-ot-shape-complex-use.cc             |  2 +-
 src/hb-set-digest.hh                       |  4 ++--
 src/hb-set.hh                              |  6 +++---
 src/hb-uniscribe.cc                        |  2 +-
 src/hb.hh                                  | 34
 +++++++++++++++++-------------
 22 files changed, 60 insertions(+), 56 deletions(-)

commit f1a86e1e6f3906f33fc89de694a4bbbc3e40d2bc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 16 18:01:32 2018 +0200

    Remove unused try

 src/hb-null.hh | 13 -------------
 1 file changed, 13 deletions(-)

commit ebd50b3c83a22a0fdba53271275b8619a23739aa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 16 17:57:12 2018 +0200

    Fix static_assert

 src/hb-open-type.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 10642b3fbfbc1776e784b190c43a9e0693dd423a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Sep 15 19:43:33 2018 +0200

    Disallow null-enabled offsets to unsized structures...

    ...like UnsizedArrayOf<>.

    This fixes a class of crasher bugs, mostly with color and AAT tables.
    We
    cannot use nullable offsets to varsized data that does not declare
    min_size,
    because it's nost safe to use our fixed-size null pool for types
    that have
    their size external.  So, use non_null'able offsets for these.

    A further enhancement would be to make use of min_size in Null<>
    itself.
    Will try that after.

 src/hb-aat-layout-common.hh     |  8 ++++----
 src/hb-aat-layout-feat-table.hh |  2 +-
 src/hb-aat-layout-morx-table.hh | 10 +++++-----
 src/hb-aat-layout-trak-table.hh |  4 ++--
 src/hb-aat-ltag-table.hh        |  2 +-
 src/hb-open-type.hh             |  5 +++++
 src/hb-ot-color-cbdt-table.hh   |  4 +---
 src/hb-ot-color-colr-table.hh   |  4 ++--
 src/hb-ot-color-cpal-table.hh   |  8 ++++----
 src/hb-ot-color-svg-table.hh    |  2 +-
 src/hb-ot-layout-common.hh      | 18 ++++++++++--------
 src/hb-ot-layout-jstf-table.hh  |  4 ++--
 12 files changed, 38 insertions(+), 33 deletions(-)

commit 9ff76c6025b55d184c96b193f23aa935ab32f1fc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Sep 15 18:31:14 2018 +0200

    [morx] Respect default feature settings

    Does NOT apply user-selected features.  But at least now enables
    correct subtables.

 src/hb-aat-layout-morx-table.hh | 34 +++++++++++++++++++++++-----------
 1 file changed, 23 insertions(+), 11 deletions(-)

commit 2f97da6e2d6629e112789d399765d90f96952c0a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Sep 15 14:51:50 2018 +0200

    [aat] Change version field

 src/hb-aat-layout-morx-table.hh | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

commit 29c2bd1795b933a611512af50a14f25e25d43159
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Sep 15 14:47:18 2018 +0200

    [morx] Add stub for InsertionChain

 src/hb-aat-layout-morx-table.hh | 209
 ++++++++++++++++++++++++++++++++++++++--
 1 file changed, 200 insertions(+), 9 deletions(-)

commit f8ccb545c47abe8f0f4ed318ff7b5bf176913893
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 14 18:59:53 2018 +0200

    [dfont] Disable null-processsing for offsets

    An offset to unsized arrayis not safe to be redirected to our
    fixed-sized
    null pool.  Plus, we want to reject, not repair, bad-looking dfonts.

 src/hb-open-file.hh | 8 ++++----
 src/hb-open-type.hh | 2 +-
 2 files changed, 5 insertions(+), 5 deletions(-)

commit 01b9148d9ae7d18228538774243e49840cfd2499
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 14 14:23:09 2018 +0200

    [unicode] Move Fitzpatrick hack from ot-layout into unicode.hh

 src/hb-ot-layout.hh | 12 +-----------
 src/hb-unicode.hh   | 36 +++++++++++++++++++++++++++---------
 2 files changed, 28 insertions(+), 20 deletions(-)

commit 6ebbf514ac90712fe089b2b64f68d1cf681edd5d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 14 12:15:53 2018 +0200

    Minor

 src/hb-ot-layout.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 957dbed388fc3214248f6aca65902ad277d070fb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 14 12:14:42 2018 +0200

    Fix builds

 src/hb-aat-layout-common.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 4653e6cf3c1ef5005886d901df30e952d57eed6c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 14 11:31:33 2018 +0200

    [aat] Add enums for pre-defined state and classes

    Not sure how I didn't add before...

 src/hb-aat-layout-common.hh | 19 ++++++++++++++++---
 1 file changed, 16 insertions(+), 3 deletions(-)

commit 67449c39331babb88f7d29d737895d786cd5da33
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 14 10:58:00 2018 +0200

    Don't dereference offset before check_struct()

 src/hb-open-file.hh | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit f2c4720ae696096d90493db218ef1283681561e7
Merge: 1234a813 ca746f26
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Sep 13 12:44:00 2018 -0700

    Merge branch 'master' into cff-subset

commit ca746f261e1e54cec2f9c8bc7a6f930491e19418
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 13 20:35:21 2018 +0200

    [dfont] Also check dataLen range in sanitize

    Just to disagree with myself re being done with this code...

 src/hb-open-file.hh | 1 +
 1 file changed, 1 insertion(+)

commit 3789c557ca06aef430726f4942cafecac6fe4eef
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 13 20:30:04 2018 +0200

    [dfont] Solve the mystery +2 offset thing!

    Previously, ResourceForkHeader was defined as 30 bytes, having the
    typeCountM1 as last member.
    There was a mysterious offset-by-2 in the code, derived from FontTools
    and JDK code this was
    ported from.

    In testing, I observed that typeListZ offset is actually 28.
    Suggesting that the typeCountM1
    does NOT actually belong to ResourceForkHeader, but belongs to the
    array itself.  Adjusting for
    that resolves the mystery +2 offset hack, so everything is clean
    and good now.

    This, concludes my dfont hacking.  The code looks great now, and
    I'm happy to leave it.
    Fuzzers might disagree though, we will see!

 src/hb-open-file.hh | 30 ++++++++++++------------------
 src/hb-open-type.hh | 44 ++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 56 insertions(+), 18 deletions(-)

commit effc7ced72a6ce0fea328a8b68dc3d55f09774f1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 13 20:21:54 2018 +0200

    Rename HeadlessArrayOf::len to lenP1

    So it doesn't accidentally match our templates, etc.

 src/hb-open-type.hh            | 14 +++++++-------
 src/hb-ot-layout-gsub-table.hh | 10 +++++-----
 src/hb-ot-layout-gsubgpos.hh   | 10 +++++-----
 3 files changed, 17 insertions(+), 17 deletions(-)

commit 1234a8136891429bb7353f47480595f44615f322
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Sep 13 10:55:56 2018 -0700

    add head table to CFF/CFF2

 src/hb-ot-cff1-table.hh | 4 ++++
 src/hb-ot-cff2-table.hh | 4 ++++
 2 files changed, 8 insertions(+)

commit 180a88a96ce327e4103df3635c73559de65d1546
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 13 19:19:57 2018 +0200

    [dfont] Some more

 src/hb-open-file.hh | 21 ++++++++-------------
 1 file changed, 8 insertions(+), 13 deletions(-)

commit 0ab0f1e5ac5ccb07c57364e9f5be0b991398eb6f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 13 19:13:01 2018 +0200

    [dfont] Push methods further down

 src/hb-open-file.hh | 58
 ++++++++++++++++++++++++++++++-----------------------
 1 file changed, 33 insertions(+), 25 deletions(-)

commit 8c9bdcc1feeab321a642bdaac50b716e48ce4263
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 13 19:08:22 2018 +0200

    [dfont] Minor

 src/hb-open-file.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 4479d3a2eda57d278700f5c78414ef6ef617d2a9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 13 19:05:59 2018 +0200

    [dfon]t Sanitize OpenTypeFontFace

 src/hb-dsalgs.hh    |  6 ------
 src/hb-open-file.hh | 21 +++++++++------------
 2 files changed, 9 insertions(+), 18 deletions(-)

commit 3fba41906fba28c5ea01cc0749654de862453bf4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 13 18:49:16 2018 +0200

    [dfont] Minor

 src/hb-open-file.hh | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

commit bf852f0e62a8bdbb809af6a975f8ae8eed708d70
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 13 18:47:53 2018 +0200

    [dfont] Make test pass

    Offset 0 is not null in this context.

 src/hb-open-file.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 29faebe911a13916aa3d737e93d38deedc53567f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 13 18:45:35 2018 +0200

    Allow Offset<>'s that have no 0==null

 src/hb-open-type.hh | 43 +++++++++++++++++++++----------------------
 1 file changed, 21 insertions(+), 22 deletions(-)

commit 82f4d776c21b7c1224dd7073ce69cdf76d85f16b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 13 18:27:20 2018 +0200

    [dfont] Minor

 src/hb-open-file.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 07e0ca930c29757217c2f9e4e0e6954657b6b82d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 13 17:39:09 2018 +0200

    [bytes] Rename content to arrayZ

 src/hb-dsalgs.hh        | 16 ++++++++--------
 src/hb-ot-post-table.hh |  2 +-
 2 files changed, 9 insertions(+), 9 deletions(-)

commit dbb764dceb61365b7360a48d581ba5a4b3526e98
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 13 16:49:26 2018 +0200

    [dfont] Clean up sanitize()

    I don't think I broke anything.  Fuzzers will let me know..

 src/hb-dsalgs.hh    |   8 ++++
 src/hb-open-file.hh | 122
 ++++++++++++++++++++++++----------------------------
 2 files changed, 64 insertions(+), 66 deletions(-)

commit 361fc2686152ad8c0ebaf19e0522e0fc58ba3953
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 13 16:47:33 2018 +0200

    Fix OffsetTo::sanitize() after reshuffling

 src/hb-open-type.hh | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

commit 4c6b0fb5f6668a6e562260d16f629ad3c41e8961
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 13 16:39:30 2018 +0200

    OffsetTo::sanitize() Add version with three user_data

 src/hb-open-type.hh | 18 +++++++++++++-----
 1 file changed, 13 insertions(+), 5 deletions(-)

commit a73bea69c599787b4cfeac92a3afd00749e00434
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 13 16:31:31 2018 +0200

    OffsetTo::sanitize() more shuffling

 src/hb-open-type.hh | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

commit b482e5231cd5987082dd2c05fd649c3653f3c67a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 13 16:29:49 2018 +0200

    OffsetTo::sanitize() reshuffling

 src/hb-open-type.hh | 26 +++++++++++++++++++-------
 1 file changed, 19 insertions(+), 7 deletions(-)

commit 3cae9c75153277b9cfaaba20e0de84e420aeb1eb
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Sep 12 17:23:08 2018 -0700

    fixed hb_plan_subset_cff_fdselect

    FDSelect3/4 sentinel size wasn't taken into account

 src/hb-subset-cff-common.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 0f159a38a62bbf1b7fb267694a5d91d8135da625
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Sep 12 16:08:54 2018 -0700

    fixed serialize_fdselect_3_4

 src/hb-ot-cff-common.hh     |  6 ++++
 src/hb-ot-cff1-table.hh     |  6 ----
 src/hb-subset-cff-common.cc | 68
 ++++++++++++++++++++++++++-------------------
 src/hb-subset-cff-common.hh | 10 +++----
 src/hb-subset-cff1.cc       | 12 ++++----
 src/hb-subset-cff2.cc       | 12 ++++----
 6 files changed, 63 insertions(+), 51 deletions(-)

commit 1608481d88919ca748e367146e3a78458d5bbe8f
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Sep 12 13:22:19 2018 -0700

    fixed bugs in Charset serialization

    also some code cleanup

 src/hb-ot-cff1-table.hh |  4 ++--
 src/hb-subset-cff1.cc   | 44 ++++++++++++++++++++------------------------
 2 files changed, 22 insertions(+), 26 deletions(-)

commit f45ac6296add6435ea5a902f7519187414aa8092
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Sep 11 22:41:50 2018 -0700

    fixed name mixup in Remap::reset

    it was causing inconsistent Strings Index subset results

 src/hb-ot-cff-common.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 497e7fb264ec5cb799c038cbe693b70410b18da3
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Sep 11 16:47:55 2018 -0700

    misc bug fixes

    Added OpCode_FontMatrix to TopDictOpSet (yet to parse values)
    fixed a wrong assert in encode_int

 src/hb-cff-interp-dict-common.hh | 3 +++
 src/hb-subset-cff-common.hh      | 2 +-
 2 files changed, 4 insertions(+), 1 deletion(-)

commit 5b453f77f804cd8421a45d8276ed3e04041da23c
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Sep 11 16:20:39 2018 -0700

    fixed off-by-one error with offSize

 src/hb-ot-cff-common.hh | 5 +++--
 src/hb-subset-cff1.cc   | 4 ++--
 src/hb-subset-cff2.cc   | 2 +-
 3 files changed, 6 insertions(+), 5 deletions(-)

commit 1499029a9695e26beaf72e11287be60ad9e40cfe
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Sep 11 13:56:52 2018 -0700

    fixed a bug

 src/hb-cff-interp-dict-common.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0bd5912a08698fb7880e1354e45bf63ef45125a5
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Sep 11 13:24:27 2018 -0700

    make parse_bcd locale free

 src/hb-cff-interp-dict-common.hh | 92
 +++++++++++++++++++++++++++++-----------
 1 file changed, 68 insertions(+), 24 deletions(-)

commit bb38d0f66388ec37ee9b0e81176d60c66fc17a19
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Sep 11 10:43:15 2018 -0700

    Implement parse_bcd

 src/hb-cff-interp-common.hh      | 15 --------------
 src/hb-cff-interp-dict-common.hh | 44
 ++++++++++++++++++++++++++++++++++++++++
 2 files changed, 44 insertions(+), 15 deletions(-)

commit 45e564a51917475ef6481825a6efb5b99bf1912e
Merge: c6f75c30 d5c50927
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Sep 11 09:46:37 2018 -0700

    Merge branch 'master' into cff-subset

commit bd75fd45cdbd0edb24568326bb7fde59d299a82c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 11 18:12:26 2018 +0200

    [dfont] Some renaming, plus add link to reference doc

 src/hb-open-file.hh | 79
 ++++++++++++++++++++++++-----------------------------
 1 file changed, 35 insertions(+), 44 deletions(-)

commit 4134ec1307bbaff24972e238bc5e4a403cd3f1c1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 11 17:56:03 2018 +0200

    [dfont] Sanitize only sfnt resources as OpenTypeFontFile

 src/hb-open-file.hh | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

commit 6b5e4d07adb6b739dc294da513c4a7acd03977f7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 11 17:26:24 2018 +0200

    [dfont] Minor

 src/hb-open-file.hh | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

commit d5c509272f2fbd1b4c56e3b530da7e42e7f03901
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 11 17:18:21 2018 +0200

    [dfont] Fix test expecatation and minor touch up

    I have no way to authoritatively know, but looks like test font only
    has one
    face.  So, adjust test expectation instead.

 src/hb-open-file.hh                                | 18
 ++++++------------
 test/shaping/data/in-house/tests/collections.tests |  2 +-
 2 files changed, 7 insertions(+), 13 deletions(-)

commit 2b2ed1e536061cfd3a0f29522118f42b451678bd
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Jul 2 17:26:43 2018 +0430

    [dfont] Add test

 test/shaping/data/in-house/Makefile.sources        |   1 +
 test/shaping/data/in-house/fonts/TestDFONT.dfont   | Bin 0 -> 3505 bytes
 test/shaping/data/in-house/fonts/TestTTC.ttc       | Bin 0 -> 2608 bytes
 test/shaping/data/in-house/tests/collections.tests |   6 ++++++
 4 files changed, 7 insertions(+)

commit 9479ffefbfa3ea4ee39747e34177d26ab1ebbec9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 11 16:41:26 2018 +0200

    [dfont] Re-enable and fix offset handling

    Fixes https://github.com/harfbuzz/harfbuzz/pull/1085

 src/hb-face.cc      |  5 +++--
 src/hb-open-file.hh | 19 +++++++++++++------
 2 files changed, 16 insertions(+), 8 deletions(-)

commit a1814e2bec3a43b9eeb4d50a67daae3fc52fd0a5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 11 14:45:23 2018 +0200

    Whitespace

 src/hb-open-file.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 383060cc3354e12611dec3082a6fe08fdb25f652
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 11 14:41:19 2018 +0200

    [ft] Invalidate advance cache if font size changed

 src/hb-ft.cc | 9 +++++++++
 1 file changed, 9 insertions(+)

commit 54998befc43ef38e47b74b3153380adbcf6279d4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 11 14:35:26 2018 +0200

    [ft] Cache advances

    I decided to always use the cache, instead of my previous sketch
    direction
    that was to only allocate and use cache if fast advances are not
    available.
    The cache is a mere 1kb, so just use it...

    TODO: Invalidate cache on font size change.

    Fixes https://github.com/harfbuzz/harfbuzz/issues/651
    Fixes https://github.com/harfbuzz/harfbuzz/pull/1082

 src/hb-cache.hh |  2 +-
 src/hb-ft.cc    | 37 +++++++++++++++++--------------------
 2 files changed, 18 insertions(+), 21 deletions(-)

commit f90bab8560816b60b4b3f2379b36c08756b21e6c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 11 14:21:15 2018 +0200

    [util] Add --ft-load-flags

    Useful for performance testing.

    Not hooked to cairo yet.  Just changes shaping, not rasterization.

 util/helper-cairo.cc | 2 +-
 util/options.cc      | 4 ++++
 util/options.hh      | 2 ++
 3 files changed, 7 insertions(+), 1 deletion(-)

commit 93f7596254808d567b9e1e01fb4855efcd34677c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 11 14:11:10 2018 +0200

    [util] Add -n shorthand for --num-iterations

    Meh.

 util/options.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 047a84c5dd76cdfc072de25c572e30866f87a1f7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 11 14:05:16 2018 +0200

    [ft] Towards caching slow get_h_advance results

    Related to https://github.com/harfbuzz/harfbuzz/pull/1082

 src/hb-ft.cc | 24 ++++++++++++++++++++----
 1 file changed, 20 insertions(+), 4 deletions(-)

commit 237f21537842e6b471cdd6c86b98edfc0da0756c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 11 13:05:47 2018 +0200

    [ft] Add advances() callback

 src/hb-ft.cc | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

commit cbea7d49ab8d4765a2d72dcbf608d326bdf9af3d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 11 12:56:17 2018 +0200

    [ot-font] Rename

 src/hb-ot-font.cc | 74
 +++++++++++++++++++++++++++----------------------------
 1 file changed, 37 insertions(+), 37 deletions(-)

commit d8a67dac2a673138bb4d41cd7eab97c9ee987958
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 11 12:55:54 2018 +0200

    [ot-font] Add advances() callbacks

 src/hb-ot-font.cc | 43 ++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 42 insertions(+), 1 deletion(-)

commit 0ea42e117ba2c76e118974fe114ae5d9ceef5743
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 11 12:22:42 2018 +0200

    [cache] Minor

 src/hb-cache.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0f520adaacca3c7b6d8e84a7722343184105f612
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 11 12:02:34 2018 +0200

    Revert "Remove unused hb_cache_t"

    This reverts commit 473b17af4d421f4ce7ac18c769731bb2aa4088f8.

    Updates to recent changes.

 src/Makefile.sources |  1 +
 src/hb-cache.hh      | 75
 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-ft.cc         |  1 +
 3 files changed, 77 insertions(+)

commit cfdea884754ed40ffa5cc00cb1ecaa86cb46a394
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 11 10:57:48 2018 +0200

    [random] Switch to 32bit RNG

 src/hb-ot-layout-gsubgpos.hh                | 7 ++++---
 test/shaping/data/in-house/tests/rand.tests | 4 ++--
 2 files changed, 6 insertions(+), 5 deletions(-)

commit 08260c708ae6adc4efa9bde5e9ede01b7e4d42cc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 11 10:51:19 2018 +0200

    [random] Shuffle

 src/hb-ot-layout-gsub-table.hh | 5 +----
 src/hb-ot-layout-gsubgpos.hh   | 6 ++++++
 2 files changed, 7 insertions(+), 4 deletions(-)

commit 71c9f84e7c0afe41a8987b8a4ebc2b45a22fac56
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 10 22:37:19 2018 +0200

    Make --features rand=1 available to the user

    Use rand=255 to mean "randomize".

    Part of https://github.com/harfbuzz/harfbuzz/pull/803

 src/hb-ot-layout-gsub-table.hh | 11 ++++-------
 src/hb-ot-layout-gsubgpos.hh   |  1 +
 src/hb-ot-map.cc               |  4 ++--
 src/hb-ot-map.hh               |  3 +++
 src/hb-ot-shape.cc             |  2 +-
 5 files changed, 11 insertions(+), 10 deletions(-)

commit cc1c4fdf88f6953dcd07fb42ee963404657cdef4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 10 16:36:05 2018 +0200

    Respect user's wish if they set rand feature manually

    Except if the set it to 1, which would mean "randomize"... Ugly.

 src/hb-ot-layout-gsub-table.hh | 30 ++++++++++++++++--------------
 1 file changed, 16 insertions(+), 14 deletions(-)

commit 80de4bcd2677bfb0907ea7059524f918b109ac37
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 10 16:24:52 2018 +0200

    Minor clean up of 'rand' patchset

 src/hb-ot-layout-gsub-table.hh              |  7 +++++--
 src/hb-ot-layout-gsubgpos.hh                |  7 ++++---
 src/hb-ot-shape.cc                          | 13 ++++++-------
 test/shaping/data/in-house/tests/rand.tests |  2 +-
 4 files changed, 16 insertions(+), 13 deletions(-)

commit b545e27d8891f1e7f1fd034dd84abe44c839c380
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Fri Feb 23 12:22:32 2018 -0500

    Don't seed the RNG from the contents of the buffer

 src/hb-ot-layout-gsubgpos.hh                | 7 ++-----
 src/hb-ot-layout.cc                         | 5 +----
 test/shaping/data/in-house/tests/rand.tests | 2 +-
 3 files changed, 4 insertions(+), 10 deletions(-)

commit 2de96e846844d21888af6893378b21a33fc19232
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Sat Jan 27 19:48:38 2018 -0500

    Test 'rand'

 test/shaping/data/in-house/Makefile.sources              |   1 +
 .../fonts/5bb74492f5e0ffa1fbb72e4c881be035120b6513.ttf   | Bin 0 ->
 1352 bytes
 test/shaping/data/in-house/tests/rand.tests              |   3 +++
 3 files changed, 4 insertions(+)

commit f05df643b44d9bbfd742e93f02c235fc821190d0
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Fri Jan 26 21:36:15 2018 -0500

    Allow requesting a specific glyph for 'rand'

    Randomization only happens by default. If the user specifies a
    value for
    'rand', that value is respected.

 src/hb-ot-map.cc   | 3 ++-
 src/hb-ot-map.hh   | 4 +++-
 src/hb-ot-shape.cc | 7 ++++++-
 3 files changed, 11 insertions(+), 3 deletions(-)

commit c2a75e07e54314f6c611dda0f050ed5f09909e43
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Thu Jan 25 14:22:03 2018 -0500

    Implement 'rand'

 src/hb-ot-layout-gsub-table.hh | 19 ++++++++++++-------
 src/hb-ot-layout-gsubgpos.hh   |  8 ++++++++
 src/hb-ot-layout.cc            |  8 ++++++++
 src/hb-ot-map.cc               |  7 +++++--
 src/hb-ot-map.hh               |  4 +++-
 src/hb-ot-shape.cc             |  1 +
 6 files changed, 37 insertions(+), 10 deletions(-)

commit c6f75c3049685440d166bd4169b36abac2df4fdd
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Sep 10 17:02:31 2018 -0700

    fix build attempt

 src/hb-ot-cff1-table.hh | 70
 ++++++++++++++++++++++++-------------------------
 src/hb-subset-cff1.cc   | 16 +++++------
 2 files changed, 43 insertions(+), 43 deletions(-)

commit 96471fe8593575deceb44d3757c227f65f10a25e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 11 01:39:23 2018 +0200

    [uniscribe] Fix build

 src/hb-uniscribe.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit cc52e53cf0cb76809145ae7407a8b613e9e61153
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Sep 10 16:27:49 2018 -0700

    Removed unused subr subset code

 src/hb-subset-cff-common.hh | 98
 ++-------------------------------------------
 src/hb-subset-cff1.cc       | 92
 +++++-------------------------------------
 src/hb-subset-cff2.cc       | 90
 ++++-------------------------------------
 3 files changed, 22 insertions(+), 258 deletions(-)

commit becd84aa2f2902ea9d2d1677b28945e103a68816
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 11 01:26:18 2018 +0200

    Add HB_FEATURE_GLOBAL_START/END

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1141

    New API:
    HB_FEATURE_GLOBAL_START
    HB_FEATURE_GLOBAL_END

 docs/harfbuzz-sections.txt |  2 ++
 src/hb-common.cc           |  4 ++--
 src/hb-common.h            | 13 +++++++++++++
 3 files changed, 17 insertions(+), 2 deletions(-)

commit 13a8786c7c580651d8a6db9345b9aa85ca8ed956
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 11 01:07:06 2018 +0200

    Add (unused) hb_array_t<>

 src/hb-dsalgs.hh | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

commit bccf3e1827eec07433340eea705597201b6d0a32
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 11 01:04:50 2018 +0200

    Minor

 src/hb-open-type.hh | 1 -
 1 file changed, 1 deletion(-)

commit dff2c45f1e2a30767f6813d3cb6a70978d98d424
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 10 23:29:26 2018 +0200

    Port rest from VAR to UnsizedArrayOf<>

 src/hb-aat-layout-common.hh     | 14 +++++++-------
 src/hb-aat-layout-morx-table.hh | 16 ++++++++--------
 src/hb-open-type.hh             | 10 +++++-----
 src/hb-ot-cmap-table.hh         |  8 +++++---
 src/hb-ot-color-cbdt-table.hh   | 16 ++++++++--------
 src/hb-ot-glyf-table.hh         | 10 +++++-----
 src/hb-ot-hdmx-table.hh         | 30 +++++++++++++-----------------
 src/hb-ot-hmtx-table.hh         |  8 ++++----
 src/hb-ot-kern-table.hh         | 20 ++++++++++----------
 src/hb-ot-layout-common.hh      |  9 +++++----
 src/hb-ot-layout-gpos-table.hh  | 26 +++++++++++++-------------
 src/hb-ot-math-table.hh         | 36 +++++++++++++++++++-----------------
 src/hb-ot-maxp-table.hh         |  2 +-
 src/hb-ot-name-table.hh         | 13 +++++++------
 src/hb-ot-post-table.hh         |  5 +++--
 15 files changed, 113 insertions(+), 110 deletions(-)

commit 1666b89e300c86347dc82131423463cbfed8cc0f
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Sep 10 16:00:20 2018 -0700

    subset CFF1 String Index

    Repurposed FDMap as Remap then subclassed for remapping SIDs
    misc code cleanup

 src/hb-cff-interp-common.hh      |   2 -
 src/hb-cff-interp-dict-common.hh |  12 +-
 src/hb-ot-cff-common.hh          |  96 +++++++++--
 src/hb-ot-cff1-table.hh          | 251 +++++++++++++++++++----------
 src/hb-ot-cff2-table.hh          |  12 +-
 src/hb-subset-cff-common.cc      |  24 +--
 src/hb-subset-cff-common.hh      |  20 ++-
 src/hb-subset-cff1.cc            | 334
 ++++++++++++++++++++++++++++++++-------
 src/hb-subset-cff2.cc            |   8 +-
 9 files changed, 565 insertions(+), 194 deletions(-)

commit 9507b05a7a65962d5d02eb424e4f5d8570976f4e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 10 23:18:07 2018 +0200

    Simplify sanitize->check_array()

    Fix a bug in CBDT sanitize, and redundant check in avar.

 src/hb-aat-layout-common.hh     | 10 ++++------
 src/hb-aat-layout-morx-table.hh |  2 +-
 src/hb-machinery.hh             |  3 ++-
 src/hb-open-type.hh             |  6 +++---
 src/hb-ot-color-cbdt-table.hh   |  4 ++--
 src/hb-ot-kern-table.hh         |  2 +-
 src/hb-ot-layout-common.hh      |  2 +-
 src/hb-ot-layout-gpos-table.hh  |  8 ++++----
 src/hb-ot-layout-gsubgpos.hh    |  4 ++--
 src/hb-ot-math-table.hh         |  8 ++------
 src/hb-ot-name-table.hh         |  2 +-
 src/hb-ot-var-avar-table.hh     |  4 ++--
 src/hb-ot-var-fvar-table.hh     |  2 +-
 src/hb-ot-var-hvar-table.hh     |  2 +-
 src/hb-ot-var-mvar-table.hh     |  2 +-
 15 files changed, 28 insertions(+), 33 deletions(-)

commit bc485a98122131efc4768fef9147823f2bce146b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 10 23:02:24 2018 +0200

    Port some VAR arrays to UnsizedArrayOf<>

    Fix avar sanitize().

 src/hb-ot-layout-gsubgpos.hh | 59
 +++++++++++++++++++++++---------------------
 src/hb-ot-var-avar-table.hh  | 10 +++++---
 src/hb-ot-var-fvar-table.hh  |  7 +++---
 src/hb-ot-var-hvar-table.hh  |  9 ++++---
 src/hb-ot-var-mvar-table.hh  |  9 ++++---
 5 files changed, 51 insertions(+), 43 deletions(-)

commit 1bc7a8d6c4deb9fa6e010d7be08b68cad88579ae
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 10 22:51:26 2018 +0200

    [indic] Cache hb_options().uniscribe_bug_compatible on indic_plan

 src/hb-ot-shape-complex-indic.cc | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

commit 24f1d9622489a016904314a5d4e3c637da2e1c77
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 10 18:19:37 2018 +0200

    Unbreak HB_OPTIONS

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1154

 src/hb-debug.hh | 3 +++
 1 file changed, 3 insertions(+)

commit e46c51f1e985ac9c0ffa90fda4ea436d54b4009c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 10 17:38:19 2018 +0200

    [indic] Do NOT allow matra after Halant,ZWJ

    Fixes https://github.com/harfbuzz/harfbuzz/issues/556

    Devanagari regresses 12 tests, and Gujarati 2.  See:

      https://github.com/harfbuzz/harfbuzz/issues/556#issuecomment-419957472

    New numbers:

    BENGALI: 353725 out of 354188 tests passed. 463 failed (0.130722%)
    DEVANAGARI: 707299 out of 707394 tests passed. 95 failed (0.0134296%)
    GUJARATI: 366353 out of 366457 tests passed. 104 failed (0.0283799%)
    GURMUKHI: 60729 out of 60747 tests passed. 18 failed (0.0296311%)
    KANNADA: 951300 out of 951913 tests passed. 613 failed (0.0643966%)
    MALAYALAM: 1048136 out of 1048334 tests passed. 198 failed
    (0.0188871%)
    ORIYA: 42327 out of 42329 tests passed. 2 failed (0.00472489%)
    SINHALA: 271596 out of 271847 tests passed. 251 failed (0.0923313%)
    TAMIL: 1091754 out of 1091754 tests passed. 0 failed (0%)
    TELUGU: 970555 out of 970573 tests passed. 18 failed (0.00185457%)

 src/hb-ot-shape-complex-indic-machine.hh | 1688
 ++++++++++++++----------------
 src/hb-ot-shape-complex-indic-machine.rl |    2 +-
 2 files changed, 784 insertions(+), 906 deletions(-)

commit 5dfd6e07626a9022a995eb7fa16767eff66c6047
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 10 15:45:32 2018 +0200

    Fix sanitize or Context Rule

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1110

 src/hb-ot-layout-gsubgpos.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 20a11a824d2a07a8544649477ad03e809bdd8e19
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 10 13:56:28 2018 +0200

    Revert "[subset] Disable GSUB/GPOS subsetting for now"

    This reverts commit 616fd34a69bb69bc35c7e4ea939e71c3ea2e92cb.

 src/hb-subset.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 54d332dd9b0263821376161cdffb60ffb3c7847f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 10 11:37:24 2018 +0200

    1.9.0

 NEWS             | 19 +++++++++++++++++++
 configure.ac     |  2 +-
 src/hb-face.cc   | 10 +++++-----
 src/hb-unicode.h |  5 +++++
 src/hb-version.h |  6 +++---
 5 files changed, 33 insertions(+), 9 deletions(-)

commit 616fd34a69bb69bc35c7e4ea939e71c3ea2e92cb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 10 11:19:49 2018 +0200

    [subset] Disable GSUB/GPOS subsetting for now

    So I can get a release out.  I haven't debugged those yet, and they
    are producing bad tables.

 src/hb-subset.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit d42f0e5809964136911cbbd845bc423a8dfd5e31
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 10 11:05:33 2018 +0200

    [atomic] Fix pointer type passed to InterlockedExchangeAdd()

    John Emmas reported on mailing list that build with MSVC is failing.
    Not sure why bots don't catch it, but this should fix.

 src/hb-atomic.hh | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit fda994e1d45c4d34601af7272f37ea257f92a3d8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 7 15:02:57 2018 -0400

    Use enum instead of "static const" in class scope

    Technically, static const needs an out-of-class definition.  Eg:

      CXXLD    libharfbuzz-subset.la
    Undefined symbols for architecture x86_64:
      "OT::FeatureVariationRecord::min_size", referenced from:
          bool OT::GSUBGPOS::subset<OT::PosLookup>(hb_subset_context_t*)
          constin libharfbuzz_subset_la-hb-subset.o
          bool OT::GSUBGPOS::subset<OT::SubstLookup>(hb_subset_context_t*)
          constin libharfbuzz_subset_la-hb-subset.o
      "OT::Record<OT::LangSys>::min_size", referenced from:
          OT::Script::subset(hb_subset_context_t*) constin
          libharfbuzz_subset_la-hb-subset.o
      "OT::IntType<unsigned short, 2u>::min_size", referenced from:
          OT::Script::subset(hb_subset_context_t*) constin
          libharfbuzz_subset_la-hb-subset.o
          OT::RecordListOf<OT::Feature>::subset(hb_subset_context_t*)
          const  in libharfbuzz_subset_la-hb-subset.o
    ld: symbol(s) not found for architecture x86_64
    collect2: ld returned 1 exit status
    make[4]: *** [libharfbuzz-subset.la] Error 1
    make[3]: *** [all-recursive] Error 1
    make[2]: *** [all] Error 2
    make[1]: *** [all-recursive] Error 1
    make: *** [all] Error 2
    Exited with code 2

 src/hb-buffer.hh           |  2 +-
 src/hb-machinery.hh        |  8 ++++----
 src/hb-open-file.hh        |  2 +-
 src/hb-open-type.hh        |  2 +-
 src/hb-ot-layout-common.hh |  2 +-
 src/hb-ot-layout.cc        |  4 ++--
 src/hb-set-digest.hh       |  4 ++--
 src/hb-set.hh              | 12 ++++++------
 8 files changed, 18 insertions(+), 18 deletions(-)

commit 1e88b1755c37eaa171c08f7bedb93f110238c80f
Merge: 22b88632 ebe67137
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Sep 7 10:50:55 2018 -0700

    Merge branch 'master' into cff-subset

commit ebe67137ab3559c2c6aaf53442ca223cb34df5af
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 7 10:46:13 2018 -0400

    Try fixing bots

 src/hb-ot-layout-common.hh | 32 ++++++++++++++++++--------------
 1 file changed, 18 insertions(+), 14 deletions(-)

commit 5f17dbc3025093308d2191a4abd2eec24db35c0e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 7 10:24:22 2018 -0400

    [subset] Fix div-by-zero

 src/hb-subset.cc | 3 +++
 1 file changed, 3 insertions(+)

commit 22b88632d5bd3676642b0a1d93f27e47438c140b
Merge: 2a74536a 21bf1470
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Sep 6 22:27:44 2018 -0700

    Merge branch 'master' into cff-subset

commit 2a74536aae443a8b7f23ed018dec14a013c04dfe
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Sep 6 18:26:13 2018 -0700

    fix build attempt ^2

    Added hb-ot-cff1-table.cc to hb-subset sources
    Deleted unused variable (charset)

 src/Makefile.sources  | 1 +
 src/hb-subset-cff1.cc | 1 -
 2 files changed, 1 insertion(+), 1 deletion(-)

commit 55268df9d4b287883c8266e316cda44f4011f424
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Sep 6 17:56:05 2018 -0700

    fix build attempt

    Added HB_INTERNAL to static funtion declarations

 src/hb-ot-cff1-table.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit aca73c9df2054f62cf10a5c27bc5fa7823747f8b
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Sep 6 17:28:15 2018 -0700

    subset CFF1 Encoding & Charset

    fixed misc Charset bugs
    added source file hb-ot-cff1.table.cc
    renamed things for clarity & consistency

 src/Makefile.sources             |   1 +
 src/hb-cff-interp-dict-common.hh |  15 +-
 src/hb-ot-cff-common.hh          |  34 ++--
 src/hb-ot-cff1-table.cc          | 130 +++++++++++++
 src/hb-ot-cff1-table.hh          | 403
 ++++++++++++++++++++++++++++++++-------
 src/hb-ot-cff2-table.hh          |  24 +--
 src/hb-subset-cff1.cc            | 247 ++++++++++++++++++++----
 src/hb-subset-cff2.cc            |  30 +--
 8 files changed, 737 insertions(+), 147 deletions(-)

commit 21bf147054f6b5bd1c430c0e02a8c4058ed229a1
Author: Garret Rieger <grieger@google.com>
Date:   Wed Sep 5 18:04:52 2018 -0700

    [subset] Fix hdmx subsetted size calculation.

 src/hb-ot-hdmx-table.hh                         |  14 ++++++++++----
 test/api/fonts/Roboto-Regular.multihdmx.a.ttf   | Bin 0 -> 2052 bytes
 test/api/fonts/Roboto-Regular.multihdmx.abc.ttf | Bin 0 -> 2468 bytes
 test/api/test-subset-hdmx.c                     |  20
 ++++++++++++++++++++
 4 files changed, 30 insertions(+), 4 deletions(-)

commit 1e6599f59680c81356b2e9ddddb61252490337a0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 5 19:29:42 2018 -0700

    Fix older compilers re '>>' at nested template declarations

 src/hb-ot-layout-gsub-table.hh | 8 ++++----
 src/hb-subset.cc               | 2 +-
 2 files changed, 5 insertions(+), 5 deletions(-)

commit a1e5e07c735091e82d66ac56a4e27341f589369d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 5 16:24:28 2018 -0700

    [subset] Hook up GSUB/GPOS, but still disabled

    They are still in the drop list.

 src/hb-ot-hdmx-table.hh |  3 +-
 src/hb-subset.cc        | 75
 +++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 77 insertions(+), 1 deletion(-)

commit 0d160d5ff5158fd4190201becd652c8f28ef4430
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 3 20:50:11 2018 -0700

    [subset] Implement subsetting of SingleSubst

 src/hb-machinery.hh            |  2 ++
 src/hb-null.hh                 | 43 +++++++++++++++++++-----------
 src/hb-ot-layout-gsub-table.hh | 59
 +++++++++++++++++++++++++++++++++++-------
 src/hb-vector.hh               |  2 ++
 4 files changed, 81 insertions(+), 25 deletions(-)

commit 5ea03d2951375bfcc1258c2c0b5c33efc6ebf7f8
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Sep 4 11:29:15 2018 -0700

    fix build by untemplatizing DictOpSet & DictVal

    as they aren't instantiated with BlendArg (yet)

 src/hb-cff-interp-dict-common.hh | 21 +++++++++------------
 src/hb-cff2-interp-cs.hh         |  1 -
 src/hb-ot-cff1-table.hh          |  8 ++++----
 src/hb-ot-cff2-table.hh          | 16 ++++++++--------
 src/hb-subset-cff-common.hh      |  4 ++--
 5 files changed, 23 insertions(+), 27 deletions(-)

commit f2d299b0b75fd110cdc6b16de31e7212e292cc14
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Tue Sep 4 10:25:21 2018 -0700

    Drop hints from CFF2 charstrings

    Templatized ArgStack so it may store the default value along with
    blend deltas as BlendArg while parsing blend operator arguments in
    CFF2 charstring
    Added get_region_count() method to VarRegionList & VariationStore

 src/hb-cff-interp-common.hh | 67 +++++++++++++++++++++++++++------
 src/hb-cff1-interp-cs.hh    |  5 ++-
 src/hb-cff2-interp-cs.hh    | 91
 +++++++++++++++++++++++++++++++++++++++------
 src/hb-ot-cff2-table.hh     | 22 ++++++-----
 src/hb-ot-layout-common.hh  |  6 +++
 src/hb-subset-cff-common.hh | 60 ++++++++++++++++--------------
 src/hb-subset-cff1.cc       |  5 ++-
 src/hb-subset-cff2.cc       | 54 ++++++++++++++++++++++-----
 8 files changed, 235 insertions(+), 75 deletions(-)

commit 3f00d0b0df14d69859b15568ff28a810d08f59ea
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 3 18:54:32 2018 -0700

    [subset] Keep glyph set in plan

    Should remove the vector version at some point...

 src/hb-subset-plan.cc | 19 ++++++++++---------
 src/hb-subset-plan.hh |  3 +--
 2 files changed, 11 insertions(+), 11 deletions(-)

commit dc50493a8da05d6561242136d63cae836486c150
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 3 18:23:23 2018 -0700

    [subset] Towards subsetting SingleSubstFormat1

    Why does subset plan not have a hb_set_t of glyphs?

 src/hb-machinery.hh            | 10 +++++++++-
 src/hb-ot-layout-gsub-table.hh | 12 +++++++++++-
 2 files changed, 20 insertions(+), 2 deletions(-)

commit 339d3603b916cebf24ff86d9842b766261e1b262
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 3 17:33:34 2018 -0700

    [subset] Wire up subset() call down to subtables

 src/hb-ot-layout-common.hh     | 36 +++++++++++++++++++++++
 src/hb-ot-layout-gpos-table.hh | 67
 +++++++++++++++++++++++++++++++++++++++---
 src/hb-ot-layout-gsub-table.hh | 54 ++++++++++++++++++++++++++++------
 src/hb-ot-layout-gsubgpos.hh   | 42 ++++++++++++++++++++++++++
 4 files changed, 186 insertions(+), 13 deletions(-)

commit 7b2ef551da0d53cd94106035b1f065a759cf3cd5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 3 17:16:09 2018 -0700

    Templatize Lookup::sanitize()

 src/hb-ot-layout-common.hh     | 40
 ++++++++++++++++++++++++++++------------
 src/hb-ot-layout-gpos-table.hh |  7 ++-----
 src/hb-ot-layout-gsub-table.hh | 25 +++----------------------
 3 files changed, 33 insertions(+), 39 deletions(-)

commit 9c3747c5e50423e0a7202f249728d5c5b2b09073
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 3 16:53:03 2018 -0700

    [subset] More

 src/hb-ot-layout-gpos-table.hh | 10 +++++----
 src/hb-ot-layout-gsub-table.hh | 48
 +++++++++++++++++++++---------------------
 src/hb-ot-layout-gsubgpos.hh   | 22 +++++++++++++------
 3 files changed, 45 insertions(+), 35 deletions(-)

commit 6d618522d63a94230ad708fc49c1c73927da0137
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 3 16:41:28 2018 -0700

    Templatize GSUBGPOS::sanitize()

 src/hb-ot-layout-gpos-table.hh |  6 +-----
 src/hb-ot-layout-gsub-table.hh | 14 +++++---------
 src/hb-ot-layout-gsubgpos.hh   |  4 +++-
 3 files changed, 9 insertions(+), 15 deletions(-)

commit 49c44b58f6c2536ea5f403c54a40cab41b905150
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 3 16:37:17 2018 -0700

    [subset] Fix serialize_subset() calls

    Ouch.

 src/hb-open-type.hh            |  2 +-
 src/hb-ot-layout-common.hh     |  6 +++---
 src/hb-ot-layout-gsub-table.hh | 13 ++++++-------
 src/hb-ot-layout-gsubgpos.hh   |  6 +++---
 4 files changed, 13 insertions(+), 14 deletions(-)

commit 7c9cfa2b4002c18585a26134ab987ceb7ebc97a2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 2 19:47:50 2018 -0700

    Add intersects() method to GSUB/GPOS lookups

 src/hb-ot-layout-common.hh     |  77 +++++++++--
 src/hb-ot-layout-gpos-table.hh | 103 ++++++++++----
 src/hb-ot-layout-gsub-table.hh | 205 +++++++++++++++++++--------
 src/hb-ot-layout-gsubgpos.hh   | 306
 ++++++++++++++++++++++++++++++++---------
 4 files changed, 528 insertions(+), 163 deletions(-)

commit 61ce62e55455bb0d6c9db3b076676ab18e51d449
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 2 17:00:27 2018 -0700

    [subset] Minor

    Remove Lookup::subset().

 src/hb-ot-layout-common.hh   | 11 -----------
 src/hb-ot-layout-gsubgpos.hh |  2 +-
 2 files changed, 1 insertion(+), 12 deletions(-)

commit bfa72a9a72a15d977f503f12eef376a355679d76
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Sep 1 18:34:50 2018 -0700

    [subset] Towards GSUB/GPOS subsetting

    Add subset() call for GSUBGPOS struct and its dependencies.
    Not hooked up anywhere.

 src/hb-machinery.hh            | 10 ++++--
 src/hb-open-type.hh            | 25 ++++++++++++-
 src/hb-ot-layout-common.hh     | 80
 +++++++++++++++++++++++++++++++++++-------
 src/hb-ot-layout-gdef-table.hh | 33 ++++++++++-------
 src/hb-ot-layout-gsub-table.hh | 11 ++++--
 src/hb-ot-layout-gsubgpos.hh   | 19 ++++++++++
 6 files changed, 145 insertions(+), 33 deletions(-)

commit 6803ed8674028a656957910381150ab28d75a5f8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 31 17:11:08 2018 -0700

    [serialize] Add reset()

 src/hb-machinery.hh | 4 ++++
 1 file changed, 4 insertions(+)

commit e58b190292f85c9676fe14cf63d2831d4d6e6bab
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 31 16:46:35 2018 -0700

    [subset] De-templatize hb_subset_context_t

    We're going to (finally) use virtual methods for
    hb_serialize_context_t
    customization, so don't need to carry a Serializer template variable
    around...  Simplifies code.

 src/hb-machinery.hh            | 2 +-
 src/hb-ot-layout-gsub-table.hh | 5 ++---
 src/hb-subset.hh               | 7 +++----
 3 files changed, 6 insertions(+), 8 deletions(-)

commit 22acd424ca77c16d28405021f06c5562497920ab
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 31 16:38:04 2018 -0700

    [serialize] Add a couple small methods

 src/hb-machinery.hh            | 25 +++++++++++++++++--------
 src/hb-open-file.hh            |  3 +--
 src/hb-ot-layout-gsub-table.hh |  1 +
 3 files changed, 19 insertions(+), 10 deletions(-)

commit d1f29908c281b1685eea00b71bae934d9f1f20eb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 31 16:31:00 2018 -0700

    [subset] Add hb_subset_context_t<>

 src/hb-open-type.hh            |  1 +
 src/hb-ot-cmap-table.hh        |  1 -
 src/hb-ot-hdmx-table.hh        |  1 -
 src/hb-ot-hmtx-table.hh        |  1 -
 src/hb-ot-layout-gsub-table.hh |  9 +++++++++
 src/hb-ot-maxp-table.hh        |  1 -
 src/hb-ot-os2-table.hh         |  1 -
 src/hb-ot-post-table.hh        |  1 -
 src/hb-subset.hh               | 21 +++++++++++++++++++++
 9 files changed, 31 insertions(+), 6 deletions(-)

commit fcf177885b4c3d732ffeb82936da906969a269d3
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Aug 31 16:28:47 2018 -0700

    templatized ArgStack as a prep to store blends

 src/hb-cff-interp-common.hh      | 46
 +++++++++++++++++++++---------------
 src/hb-cff-interp-cs-common.hh   | 41 ++++++++++++++++++--------------
 src/hb-cff-interp-dict-common.hh | 35 ++++++++++++++++-----------
 src/hb-cff1-interp-cs.hh         | 15 +++++++-----
 src/hb-cff2-interp-cs.hh         | 14 +++++++----
 src/hb-ot-cff1-table.hh          | 32 ++++++++++++-------------
 src/hb-ot-cff2-table.hh          | 51
 ++++++++++++++++++++++++++--------------
 src/hb-subset-cff-common.hh      |  4 ++--
 src/hb-subset-cff1.cc            |  1 -
 src/hb-subset-cff2.cc            |  2 +-
 10 files changed, 142 insertions(+), 99 deletions(-)

commit 968168bf0e369927cd6a7f63608d844abe123a7b
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Aug 31 13:28:16 2018 -0700

    drop hints from CFF1 charstrings

    renamed confusing Stack.size to Stack.count

 src/hb-cff-interp-common.hh      |  43 +++++++-----
 src/hb-cff-interp-cs-common.hh   | 140
 +++++++++++++++++----------------------
 src/hb-cff-interp-dict-common.hh |   4 +-
 src/hb-cff1-interp-cs.hh         |  14 ++--
 src/hb-cff2-interp-cs.hh         |  18 ++---
 src/hb-ot-cff1-table.hh          |  26 ++++----
 src/hb-ot-cff2-table.hh          |  20 +++---
 src/hb-subset-cff1.cc            |  53 ++++++++-------
 src/hb-subset-cff2.cc            |  69 +++++++++----------
 9 files changed, 190 insertions(+), 197 deletions(-)

commit aba0a945c5f8724cc7bd1a9b7f7b5df1c64b03f4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 31 13:25:19 2018 -0700

    [subset] Add hb-subset-input.hh and make hb-subset.hh toplevel include

 src/Makefile.sources    |  1 +
 src/hb-ot-cmap-table.hh |  2 +-
 src/hb-ot-glyf-table.hh |  2 --
 src/hb-ot-hdmx-table.hh |  2 +-
 src/hb-ot-hmtx-table.hh |  2 +-
 src/hb-ot-maxp-table.hh |  2 +-
 src/hb-ot-os2-table.hh  |  2 +-
 src/hb-ot-post-table.hh |  2 +-
 src/hb-subset-glyf.cc   |  1 -
 src/hb-subset-glyf.hh   |  2 +-
 src/hb-subset-input.hh  | 57
 +++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-subset-plan.cc   |  3 +--
 src/hb-subset-plan.hh   |  2 +-
 src/hb-subset.cc        |  3 +--
 src/hb-subset.hh        | 23 +++-----------------
 15 files changed, 71 insertions(+), 35 deletions(-)

commit 18d01eac7f2870e2804ceed2c70a604a5dc6a320
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 31 13:00:57 2018 -0700

    Minor

 src/hb-ot-shape-complex-arabic-fallback.hh | 1 -
 1 file changed, 1 deletion(-)

commit 8c5e03b5415f83312719ebb3cd284229e52a4843
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Aug 30 17:21:56 2018 -0700

    Added drop_hints to SubrFlattener

 src/hb-cff-interp-cs-common.hh | 20 +++++++++++++++++++-
 src/hb-subset-cff-common.hh    | 18 ++++++++++++++----
 src/hb-subset-cff1.cc          | 35 ++++++++++++++++++++++------------
 src/hb-subset-cff2.cc          | 43
 ++++++++++++++++++++++++++----------------
 4 files changed, 83 insertions(+), 33 deletions(-)

commit a23b892fe6cc4859a30edc7ffc003ab7624aa5f0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 29 18:28:39 2018 -0700

    Shuffle

 src/hb-machinery.hh | 62
 +++++++++++++++++++++++++++--------------------------
 1 file changed, 32 insertions(+), 30 deletions(-)

commit 93fe0faaee45b8fb646f7aa33620105c62193885
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 29 18:24:03 2018 -0700

    [subset] Clean up hb_subset_input_t API

 src/hb-subset-input.cc           | 44
 +++++++++++++++++++---------------------
 src/hb-subset-plan.cc            |  4 ++--
 src/hb-subset-plan.hh            | 10 ++++-----
 src/hb-subset.cc                 |  2 +-
 src/hb-subset.h                  | 14 +++++++++----
 src/hb-subset.hh                 |  4 ++--
 test/api/test-subset-glyf.c      | 10 ++++-----
 test/fuzzing/hb-subset-fuzzer.cc | 10 ++++-----
 util/hb-subset.cc                |  3 +--
 9 files changed, 52 insertions(+), 49 deletions(-)

commit 9fd08cc238f8e2f7be1eaefca110021382efe606
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Aug 29 18:18:18 2018 -0700

    CFF2 subroutine flattner

    Factored out CFF1 & CFF2 common subsetting code in
    hb-subset-cff-common.hh

 src/hb-cff2-interp-cs.hh    |  34 +++++--
 src/hb-subset-cff-common.hh | 154 +++++++++++++++++++++++++++++
 src/hb-subset-cff1.cc       | 135 +++-----------------------
 src/hb-subset-cff2.cc       | 229
 ++++++++++++++++++--------------------------
 4 files changed, 285 insertions(+), 267 deletions(-)

commit d237ce71810045ee400c52740cd8ab6e1113aada
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 29 18:13:07 2018 -0700

    [subset] Bail if subsetting a table failed

 src/hb-subset.cc | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

commit f39166f0c0c09fac7874fda6b0b0825f20768e3e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 29 18:09:55 2018 -0700

    [subset] Remove unused hb_subset_profile_t

    We might reintroduce it later, but for now remove, as it was unused.
    Some things that should have been in this object (drop_hints, etc)
    are already in hb_subset_input_t.  So, for now, keep everything there.

 src/hb-subset-plan.cc            |  3 +--
 src/hb-subset-plan.hh            |  1 -
 src/hb-subset.cc                 | 39
 +++------------------------------------
 src/hb-subset.h                  | 16 +---------------
 test/api/hb-subset-test.h        |  4 +---
 test/api/test-subset-hdmx.c      |  8 ++------
 test/api/test-subset-hmtx.c      |  4 +---
 test/api/test-subset.c           | 12 +++---------
 test/fuzzing/hb-subset-fuzzer.cc |  5 +----
 util/hb-subset.cc                |  4 +---
 10 files changed, 14 insertions(+), 82 deletions(-)

commit 2ccc322cf88a01248aa5df88a5073db3dfb40eea
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 29 16:38:04 2018 -0700

    [ot-font] Clean up cmap with gid=0

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1145

 src/hb-ot-cmap-table.hh | 25 +++++++++++++++----------
 1 file changed, 15 insertions(+), 10 deletions(-)

commit 0c7b633f528bae4a0cf5ca816f75a0d84206b3fb
Author: Ross Burton <ross@burtonini.com>
Date:   Wed Aug 29 22:37:39 2018 +0100

    Delete pkg.m4

    pkg.m4 is provided by pkg-config, which is a requirement to build,
    and this copy is ancient.  Delete it to avoid it being used instead
    of the host copy.

 m4/pkg.m4 | 157
 --------------------------------------------------------------
 1 file changed, 157 deletions(-)

commit b95bf075d7b62baf7d6fa1d8f0d1f16fad934975
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Aug 29 14:41:52 2018 -0700

    fix build attempt ^2

 src/hb-subset-cff1.cc | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 1d1afddfd21155ef136c2d96b1d6c286bdc8925f
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Aug 29 13:36:39 2018 -0700

    corrected preprocessor guards

 src/hb-cff-interp-common.hh      | 6 +++---
 src/hb-cff-interp-cs-common.hh   | 6 +++---
 src/hb-cff-interp-dict-common.hh | 6 +++---
 src/hb-ot-cff-common.hh          | 6 +++---
 src/hb-subset-cff-common.hh      | 6 +++---
 5 files changed, 15 insertions(+), 15 deletions(-)

commit 8af9690ac7ce41fb1db878d556df5c4ee624eaa0
Merge: 0ad081ec fee0f41c
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Aug 29 13:26:17 2018 -0700

    Merge branch 'master' into cff-subset

    Renamed cff "private" source/headers without the suffix

commit 0ad081ec324e734cfca60d4d2c36a1be5bc8a067
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Aug 29 12:56:48 2018 -0700

    attempt to fix build failure

 src/hb-subset-cff1.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit a11420b48c405e1a43e2ba62893e9a0872e5f496
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Aug 29 12:14:30 2018 -0700

    Subroutine flattener for CFF1

    Subr-flattened charstrings are temporarily re-encoded in ByteStrBuff
    during "plan" phase, then copied to hb_serialize_context_t during
    "write" phase

    CSOpSet may callback opcode processing "virtual" functions via CRTP

    Numer struct may store a value as fixed optionally in addition to
    int and float

 src/hb-cff-interp-common-private.hh    |  53 ++++++++++--
 src/hb-cff-interp-cs-common-private.hh | 109 ++++++++++++++++++-----
 src/hb-cff1-interp-cs.hh               |  35 +++++---
 src/hb-cff2-interp-cs.hh               |  14 +--
 src/hb-ot-cff-common-private.hh        |  10 +--
 src/hb-subset-cff-common-private.hh    | 102 +++++++++++++++++++++-
 src/hb-subset-cff1.cc                  | 152
 ++++++++++++++++++++++-----------
 src/hb-subset-cff2.cc                  |   7 +-
 8 files changed, 372 insertions(+), 110 deletions(-)

commit fee0f41c6c1e50621d10b07802ca36a9b295b53d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 28 18:27:41 2018 -0700

    Don't declare extern symbols as inline

    clang -O3 was completely removing _get_gdef(), causing link
    failure when needed from another compilation unit.  Surprisingly,
    "extern inline" didn't fix it.

 src/hb-ot-layout.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 967741e4c468ebf0a40f91934ed1923506099806
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 28 18:18:02 2018 -0700

    Add explicit to hb_auto_t 1param constructors

 src/hb-dsalgs.hh | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit c0a3f38f78362a183b30afd109dcebfca563d144
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 28 17:22:38 2018 -0700

    Fix distcheck

 src/Makefile.sources | 3 +++
 1 file changed, 3 insertions(+)

commit 2dde6c803a9e50c5bff74095187b0cb2e12eebdd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 28 11:02:00 2018 -0700

    Explicitly pass reference in hb_auto_t constructor

    Fixes clang bots as well as fuzzer issue.

 src/hb-dsalgs.hh | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

commit a26806801005c28115ae9e48bdcf3bbbc1bcd767
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 26 15:18:46 2018 -0700

    [ot-face] Remove tables_t. The face_data_t is what tables_t was

 src/hb-aat-layout.cc |  4 ++--
 src/hb-face.cc       |  6 +++---
 src/hb-ot-face.cc    |  8 ++++----
 src/hb-ot-face.hh    | 28 ++++++++++++----------------
 src/hb-ot-font.cc    | 25 +++++++++++--------------
 src/hb-ot-layout.cc  | 36 ++++++++++++++++++------------------
 src/hb-ot-math.cc    |  4 ++--
 src/hb-ot-var.cc     |  4 ++--
 8 files changed, 54 insertions(+), 61 deletions(-)

commit 3a0b3a29cc246d0b1e5989c9e8c1e6d544046dcc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 26 15:11:24 2018 -0700

    Free up hb-ot-face.hh from includes

    There might be a better way to do this, but I couldn't find...

 src/hb-face.cc                 |  1 +
 src/hb-ot-cmap-table.hh        |  1 +
 src/hb-ot-color-cbdt-table.hh  |  2 ++
 src/hb-ot-face.cc              | 10 ++++++++++
 src/hb-ot-face.hh              | 15 ++-------------
 src/hb-ot-font.cc              |  7 +++++++
 src/hb-ot-glyf-table.hh        |  2 ++
 src/hb-ot-hmtx-table.hh        |  3 +++
 src/hb-ot-kern-table.hh        |  2 ++
 src/hb-ot-layout-gdef-table.hh |  1 +
 src/hb-ot-layout-gpos-table.hh |  2 ++
 src/hb-ot-layout-gsub-table.hh |  1 +
 src/hb-ot-post-table.hh        |  2 ++
 13 files changed, 36 insertions(+), 13 deletions(-)

commit a84309afc8817cd386e555af21dfcdc03388b329
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 26 09:33:01 2018 -0700

    [face] Use saved cmap in collect_unicodes() APIs

 src/hb-face.cc | 18 ++++++++----------
 1 file changed, 8 insertions(+), 10 deletions(-)

commit c624e18a24311c66737dde4ce515aa1eca892b94
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 26 09:19:20 2018 -0700

    [OT] Move code around

 src/hb-ot-layout-gsub-table.hh | 18 ------------------
 src/hb-ot-layout.cc            | 23 +++++++++++++++++++++--
 2 files changed, 21 insertions(+), 20 deletions(-)

commit 399909468204b76769857508e74f802d648ca0a5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 26 09:12:25 2018 -0700

    [OT] Use relaxed ops for recursing into GSUB/GPOS lookups again

 src/hb-ot-layout-gpos-table.hh |  4 ++--
 src/hb-ot-layout-gsub-table.hh |  4 ++--
 src/hb-ot-layout.cc            | 12 ++++++++++--
 src/hb-ot-layout.hh            |  4 ++--
 4 files changed, 16 insertions(+), 8 deletions(-)

commit d8c57e85d9981b4c7a11fae4f31100359574cf13
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 26 09:03:31 2018 -0700

    [GDEF] Move code around

 src/hb-ot-layout-gdef-table.hh | 118 +-----------------------------------
 src/hb-ot-layout.cc            | 134
 ++++++++++++++++++++++++++++++++++++++---
 src/hb-ot-layout.hh            |  14 +----
 3 files changed, 128 insertions(+), 138 deletions(-)

commit 453e0c60b1c87d2cd2527d6d2de673f65458a9fd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 26 01:30:52 2018 -0700

    Add template keyword

    I swear I have no idea why this is needed, but it is...

 src/hb-ot-layout-gsubgpos.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c44b0caf0d0cddb7228dcec0b9d25bb62f641abc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 26 01:29:30 2018 -0700

    Fixup

 src/hb-ot-layout-gpos-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 4096fbe487d90de04020e32e8487295ecd4d8836
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 26 01:25:54 2018 -0700

    [ot-face] Port GDEF to unified table accelerator model as well

 src/hb-ot-face.cc              | 108 ----------------------------------
 src/hb-ot-face.hh              |   2 +-
 src/hb-ot-layout-gdef-table.hh | 129
 +++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-layout.cc            |  14 ++++-
 src/hb-ot-layout.hh            |   5 +-
 5 files changed, 147 insertions(+), 111 deletions(-)

commit b929100f8782816c2621715f6c007ecefc419d83
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 26 01:15:47 2018 -0700

    [ot-face] Unify GSUB/GPOS accelerators in the table accelerator
    framework

 src/hb-aat-layout.cc           |  4 +---
 src/hb-ot-face.cc              | 40
 ++--------------------------------------
 src/hb-ot-face.hh              | 25 +++++++++++--------------
 src/hb-ot-layout-gpos-table.hh |  2 +-
 src/hb-ot-layout-gsub-table.hh |  6 +++---
 src/hb-ot-layout-gsubgpos.hh   | 24 +++++++++++++-----------
 src/hb-ot-layout.cc            | 33 +++++++++++++++++----------------
 src/hb-ot-layout.hh            | 17 +++++++++++++++++
 src/hb-ot-shape.cc             |  1 +
 9 files changed, 66 insertions(+), 86 deletions(-)

commit 963413fc5454d92621ae83a8d9c9324e404b8166
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 26 00:47:55 2018 -0700

    WIP

 src/hb-ot-cmap-table.hh        |  1 -
 src/hb-ot-face.hh              | 22 ----------------------
 src/hb-ot-layout-gpos-table.hh |  2 ++
 src/hb-ot-layout-gsub-table.hh |  2 ++
 src/hb-ot-layout-gsubgpos.hh   | 31 ++++++++++++++++++++++++++++++-
 src/hb-ot-layout.hh            | 18 +++++++++++++++++-
 6 files changed, 51 insertions(+), 25 deletions(-)

commit e6cb9380651c753485f721bd3df523d03be41d91
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 26 00:21:29 2018 -0700

    [ot-face] Unify accelerators and tables

 src/hb-machinery.hh     |  4 ++--
 src/hb-ot-cmap-table.hh |  3 ++-
 src/hb-ot-face.cc       |  6 +++--
 src/hb-ot-face.hh       | 58
 +++++++++++++------------------------------------
 src/hb-ot-font.cc       |  6 ++---
 5 files changed, 26 insertions(+), 51 deletions(-)

commit 7f8b6fe67d64b41786edbf8650efb1c0deba573f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 26 00:07:12 2018 -0700

    Minor

 src/hb-ot-face.hh | 1 -
 1 file changed, 1 deletion(-)

commit 59bca0d2cb6010bc237afb2255ccda3b8dd0585d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 26 00:06:12 2018 -0700

    [ot-font] Rename

 src/hb-ot-face.hh | 12 ++++++------
 src/hb-ot-font.cc | 24 ++++++++++++------------
 2 files changed, 18 insertions(+), 18 deletions(-)

commit 1c48a7ef06b82ef9ca013066d1fb3c6fda82aa0c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 25 23:54:06 2018 -0700

    [ot-font] Cache tables on face, not font

 src/hb-ot-cmap-table.hh      |  1 +
 src/hb-ot-face.cc            |  2 ++
 src/hb-ot-face.hh            | 55 +++++++++++++++++++++++++++-----
 src/hb-ot-font.cc            | 75
 ++++----------------------------------------
 src/hb-ot-layout-gsubgpos.hh |  1 +
 src/hb-ot-layout.hh          |  1 -
 6 files changed, 58 insertions(+), 77 deletions(-)

commit 71f8893eff56bff651e3df6288becc68ecea6cd1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 25 23:27:45 2018 -0700

    [ot-font] Use init0

 src/hb-ot-font.cc | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

commit f36ae6f8a82485bbf727f24dfd7da8f32002cad6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 25 23:19:34 2018 -0700

    [ot-font] Make everything (cmap/metrics) lazy

 src/hb-machinery.hh |  5 +++++
 src/hb-ot-font.cc   | 51
 ++++++++++++++++++++++++++-------------------------
 2 files changed, 31 insertions(+), 25 deletions(-)

commit 62fc54725a3863473829f3a3748c9336e4dc0787
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 25 23:15:52 2018 -0700

    [ot-font] Fallback vertical advance to UPEM

    Used to be ascent+descent.  Whatever. This is more convenient for
    upcoming changes.

 src/hb-ot-font.cc                               | 2 +-
 test/shaping/data/in-house/tests/vertical.tests | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit d950022c8ae3f85546272b38b187d6ed9f5ff16f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 25 23:06:37 2018 -0700

    Add hb-ot-face.cc/hh

 src/Makefile.sources |   2 +
 src/hb-ot-face.cc    | 206
 +++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-face.hh    | 144 +++++++++++++++++++++++++++++++++++
 src/hb-ot-layout.cc  | 172 ------------------------------------------
 src/hb-ot-layout.hh  | 108 +--------------------------
 src/hb-ot-math.cc    |   2 +-
 src/hb-ot-var.cc     |   2 +-
 7 files changed, 355 insertions(+), 281 deletions(-)

commit dae39c58fb63c2211e2842121bbe6d5b8b18651b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 25 22:44:39 2018 -0700

    [face] Introduce character-map API

    New API:
    +hb_face_collect_unicodes
    +hb_face_collect_variation_selectors
    +hb_face_collect_variation_unicodes

 docs/harfbuzz-sections.txt                      |  3 ++
 src/hb-face.cc                                  | 61
 ++++++++++++++++++++++++-
 src/hb-face.h                                   | 19 ++++++++
 src/hb-subset.cc                                | 53
 ---------------------
 src/hb-subset.h                                 | 15 ------
 test/api/test-subset-codepoints.c               |  6 +--
 test/fuzzing/hb-subset-get-codepoints-fuzzer.cc |  2 +-
 7 files changed, 86 insertions(+), 73 deletions(-)

commit 66384db97c439a64d729f9206657d0b37ec0cb32
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 25 22:39:17 2018 -0700

    Minor

 src/hb-subset.hh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit c77ae40852aabb1698da9e8d488f75bae2f4e734
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 25 22:36:36 2018 -0700

    Rename hb-*private.hh to hb-*.hh

    Sorry for the noise, downstream custom builders.  Please adjust.

 src/Makefile.sources                               | 75
 +++++++++++-----------
 src/check-includes.sh                              |  8 +--
 src/dump-indic-data.cc                             |  2 +-
 src/dump-khmer-data.cc                             |  2 +-
 src/dump-myanmar-data.cc                           |  2 +-
 src/dump-use-data.cc                               |  2 +-
 src/gen-indic-table.py                             |  2 +-
 src/gen-use-table.py                               |  2 +-
 src/hb-aat-layout-ankr-table.hh                    |  2 +-
 src/hb-aat-layout-bsln-table.hh                    |  2 +-
 ...t-common-private.hh => hb-aat-layout-common.hh} |  8 +--
 src/hb-aat-layout-feat-table.hh                    |  2 +-
 src/hb-aat-layout-kerx-table.hh                    |  4 +-
 src/hb-aat-layout-morx-table.hh                    |  6 +-
 src/hb-aat-layout-trak-table.hh                    |  6 +-
 src/hb-aat-layout.cc                               |  8 +--
 src/{hb-aat-layout-private.hh => hb-aat-layout.hh} | 14 ++--
 src/hb-aat-ltag-table.hh                           |  2 +-
 src/{hb-atomic-private.hh => hb-atomic.hh}         |  8 +--
 src/hb-blob.cc                                     |  4 +-
 src/{hb-blob-private.hh => hb-blob.hh}             |  8 +--
 src/hb-buffer-deserialize-json.hh                  |  2 +-
 src/hb-buffer-deserialize-json.rl                  |  2 +-
 src/hb-buffer-deserialize-text.hh                  |  2 +-
 src/hb-buffer-deserialize-text.rl                  |  2 +-
 src/hb-buffer-serialize.cc                         |  2 +-
 src/hb-buffer.cc                                   |  4 +-
 src/{hb-buffer-private.hh => hb-buffer.hh}         | 10 +--
 src/hb-common.cc                                   |  4 +-
 src/hb-coretext.cc                                 |  4 +-
 src/hb-debug.hh                                    |  4 +-
 src/hb-directwrite.cc                              |  4 +-
 src/hb-dsalgs.hh                                   |  2 +-
 src/hb-face.cc                                     |  8 +--
 src/{hb-face-private.hh => hb-face.hh}             | 12 ++--
 src/hb-fallback-shape.cc                           |  2 +-
 src/hb-font.cc                                     |  6 +-
 src/{hb-font-private.hh => hb-font.hh}             | 12 ++--
 src/hb-ft.cc                                       |  6 +-
 src/hb-glib.cc                                     |  6 +-
 src/hb-gobject-enums.cc.tmpl                       |  2 +-
 src/hb-gobject-structs.cc                          |  2 +-
 src/hb-graphite2.cc                                |  2 +-
 src/hb-icu.cc                                      |  6 +-
 src/{hb-iter-private.hh => hb-iter.hh}             |  8 +--
 src/{hb-machinery-private.hh => hb-machinery.hh}   | 12 ++--
 src/hb-map.cc                                      |  2 +-
 src/{hb-map-private.hh => hb-map.hh}               |  8 +--
 src/{hb-mutex-private.hh => hb-mutex.hh}           |  8 +--
 src/hb-null.hh                                     |  2 +-
 src/{hb-object-private.hh => hb-object.hh}         | 14 ++--
 src/{hb-open-file-private.hh => hb-open-file.hh}   |  8 +--
 src/{hb-open-type-private.hh => hb-open-type.hh}   | 14 ++--
 src/hb-ot-cmap-table.hh                            |  4 +-
 src/hb-ot-color-cbdt-table.hh                      |  2 +-
 src/hb-ot-color-colr-table.hh                      |  2 +-
 src/hb-ot-color-cpal-table.hh                      |  2 +-
 src/hb-ot-color-sbix-table.hh                      |  2 +-
 src/hb-ot-color-svg-table.hh                       |  2 +-
 src/hb-ot-color.cc                                 |  6 +-
 src/hb-ot-font.cc                                  |  6 +-
 src/hb-ot-glyf-table.hh                            |  4 +-
 src/hb-ot-hdmx-table.hh                            |  2 +-
 src/hb-ot-head-table.hh                            |  2 +-
 src/hb-ot-hhea-table.hh                            |  2 +-
 src/hb-ot-hmtx-table.hh                            |  2 +-
 src/hb-ot-kern-table.hh                            |  2 +-
 src/hb-ot-layout-base-table.hh                     |  4 +-
 ...ut-common-private.hh => hb-ot-layout-common.hh} | 14 ++--
 src/hb-ot-layout-gdef-table.hh                     |  4 +-
 src/hb-ot-layout-gpos-table.hh                     |  2 +-
 src/hb-ot-layout-gsub-table.hh                     |  2 +-
 ...subgpos-private.hh => hb-ot-layout-gsubgpos.hh} | 14 ++--
 src/hb-ot-layout-jstf-table.hh                     |  2 +-
 src/hb-ot-layout.cc                                |  8 +--
 src/{hb-ot-layout-private.hh => hb-ot-layout.hh}   | 16 ++---
 src/hb-ot-map.cc                                   |  4 +-
 src/{hb-ot-map-private.hh => hb-ot-map.hh}         |  8 +--
 src/hb-ot-math-table.hh                            |  4 +-
 src/hb-ot-math.cc                                  |  4 +-
 src/hb-ot-maxp-table.hh                            |  2 +-
 src/hb-ot-name-table.hh                            |  2 +-
 src/hb-ot-os2-table.hh                             |  2 +-
 src/hb-ot-os2-unicode-ranges.hh                    |  2 +-
 src/hb-ot-post-macroman.hh                         |  2 +-
 src/hb-ot-post-table.hh                            |  2 +-
 src/hb-ot-shape-complex-arabic-fallback.hh         |  4 +-
 src/hb-ot-shape-complex-arabic-win1256.hh          |  2 +-
 src/hb-ot-shape-complex-arabic.cc                  |  6 +-
 ...ic-private.hh => hb-ot-shape-complex-arabic.hh} | 10 +--
 src/hb-ot-shape-complex-default.cc                 |  2 +-
 src/hb-ot-shape-complex-hangul.cc                  |  2 +-
 src/hb-ot-shape-complex-hebrew.cc                  |  2 +-
 src/hb-ot-shape-complex-indic-machine.hh           |  2 +-
 src/hb-ot-shape-complex-indic-machine.rl           |  2 +-
 src/hb-ot-shape-complex-indic-table.cc             |  2 +-
 src/hb-ot-shape-complex-indic.cc                   |  4 +-
 ...dic-private.hh => hb-ot-shape-complex-indic.hh} | 12 ++--
 src/hb-ot-shape-complex-khmer-machine.hh           |  2 +-
 src/hb-ot-shape-complex-khmer-machine.rl           |  2 +-
 src/hb-ot-shape-complex-khmer.cc                   |  4 +-
 ...mer-private.hh => hb-ot-shape-complex-khmer.hh} | 10 +--
 src/hb-ot-shape-complex-myanmar-machine.hh         |  2 +-
 src/hb-ot-shape-complex-myanmar-machine.rl         |  2 +-
 src/hb-ot-shape-complex-myanmar.cc                 |  2 +-
 ...r-private.hh => hb-ot-shape-complex-myanmar.hh} | 10 +--
 src/hb-ot-shape-complex-thai.cc                    |  2 +-
 src/hb-ot-shape-complex-tibetan.cc                 |  2 +-
 src/hb-ot-shape-complex-use-machine.hh             |  2 +-
 src/hb-ot-shape-complex-use-machine.rl             |  2 +-
 src/hb-ot-shape-complex-use-table.cc               |  2 +-
 src/hb-ot-shape-complex-use.cc                     |  4 +-
 ...x-use-private.hh => hb-ot-shape-complex-use.hh} | 10 +--
 ...e-complex-private.hh => hb-ot-shape-complex.hh} | 12 ++--
 src/hb-ot-shape-fallback.cc                        |  4 +-
 ...fallback-private.hh => hb-ot-shape-fallback.hh} | 10 +--
 src/hb-ot-shape-normalize.cc                       |  6 +-
 ...rmalize-private.hh => hb-ot-shape-normalize.hh} |  8 +--
 src/hb-ot-shape.cc                                 | 20 +++---
 src/{hb-ot-shape-private.hh => hb-ot-shape.hh}     | 12 ++--
 src/hb-ot-tag.cc                                   |  2 +-
 src/hb-ot-var-avar-table.hh                        |  2 +-
 src/hb-ot-var-fvar-table.hh                        |  2 +-
 src/hb-ot-var-hvar-table.hh                        |  2 +-
 src/hb-ot-var-mvar-table.hh                        |  2 +-
 src/hb-ot-var.cc                                   |  4 +-
 src/{hb-set-digest-private.hh => hb-set-digest.hh} |  8 +--
 src/hb-set.cc                                      |  2 +-
 src/{hb-set-private.hh => hb-set.hh}               |  8 +--
 src/hb-shape-plan.cc                               | 10 +--
 src/{hb-shape-plan-private.hh => hb-shape-plan.hh} | 10 +--
 src/hb-shape.cc                                    | 12 ++--
 ...hb-shaper-impl-private.hh => hb-shaper-impl.hh} | 16 ++---
 src/hb-shaper.cc                                   |  6 +-
 src/{hb-shaper-private.hh => hb-shaper.hh}         |  8 +--
 src/hb-static.cc                                   |  8 +--
 src/hb-string-array.hh                             |  2 +-
 src/hb-subset-glyf.cc                              |  2 +-
 src/hb-subset-glyf.hh                              |  2 +-
 src/hb-subset-input.cc                             |  4 +-
 src/hb-subset-plan.cc                              |  6 +-
 src/hb-subset-plan.hh                              |  6 +-
 src/hb-subset.cc                                   |  8 +--
 src/{hb-subset-private.hh => hb-subset.hh}         | 10 +--
 src/hb-ucdn.cc                                     |  6 +-
 src/hb-unicode.cc                                  |  6 +-
 src/{hb-unicode-private.hh => hb-unicode.hh}       |  8 +--
 src/hb-uniscribe.cc                                |  6 +-
 src/{hb-utf-private.hh => hb-utf.hh}               |  8 +--
 src/{hb-vector-private.hh => hb-vector.hh}         |  8 +--
 src/hb-warning.cc                                  |  6 +-
 src/{hb-private.hh => hb.hh}                       | 12 ++--
 src/main.cc                                        |  4 +-
 src/test-buffer-serialize.cc                       |  2 +-
 src/test-size-params.cc                            |  2 +-
 src/test-unicode-ranges.cc                         |  2 +-
 src/test-would-substitute.cc                       |  2 +-
 src/test.cc                                        |  2 +-
 test/api/test-common.c                             |  1 -
 util/Makefile.am                                   |  4 +-
 util/ansi-print.hh                                 |  3 +-
 util/hb-subset.cc                                  |  2 +-
 util/helper-cairo-ansi.hh                          |  2 +-
 util/helper-cairo.hh                               |  2 +-
 util/main-font-text.hh                             |  2 +-
 util/options.hh                                    |  2 +-
 util/shape-consumer.hh                             |  2 +-
 util/view-cairo.hh                                 |  2 +-
 168 files changed, 452 insertions(+), 455 deletions(-)

commit 82b12bcadd50c9e86bbe82623a1cbc0b4afdd237
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 25 22:07:17 2018 -0700

    [unicode] Add HB_UNICODE_MAX

    New API:
    HB_UNICODE_MAX

 docs/harfbuzz-sections.txt | 1 +
 src/hb-ot-cmap-table.hh    | 8 ++------
 src/hb-unicode.h           | 3 +++
 3 files changed, 6 insertions(+), 6 deletions(-)

commit b09a0336ca856a2b1040e7fabd5819b64749e308
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 25 22:04:39 2018 -0700

    [cmap] More hb_auto_t<>(...)

 src/hb-subset.cc | 12 +++---------
 1 file changed, 3 insertions(+), 9 deletions(-)

commit 28634db07e6ecbdb7e59ed8f989212272a97de86
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 25 21:23:43 2018 -0700

    [cmap] Fix skipping gid0 in Format4 collect_unicodes()

 src/hb-ot-cmap-table.hh | 20 ++++++++++++++++++--
 1 file changed, 18 insertions(+), 2 deletions(-)

commit acce1fa3ea9707d0883cd66397fd187d3268905c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 25 21:15:39 2018 -0700

    Use new hb_auto_t<> constructor with Coverage::Iter

 src/hb-ot-layout-common-private.hh | 65
 ++++++++++++++++++++++++--------------
 src/hb-ot-layout-gsub-table.hh     | 30 ++++++------------
 2 files changed, 52 insertions(+), 43 deletions(-)

commit ddea4d19cf6d64270e14418f02e7ff1f1b9458db
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 25 21:08:15 2018 -0700

    Add 1-param passthrough constructor to hb_auto_t<>

    And use.

 src/hb-dsalgs.hh        | 1 +
 src/hb-ot-cmap-table.hh | 7 +++----
 2 files changed, 4 insertions(+), 4 deletions(-)

commit c8cfb702e96bf4e89495fcc56f965c88bfa77dca
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 25 16:14:32 2018 -0700

    [cmap] Minor

 src/hb-ot-cmap-table.hh | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

commit 1dcf5fb038e7c2d3d03a50c4cd9869a922f9adf7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 25 16:11:26 2018 -0700

    [cmap Add hb_subset_collect_variation_unicodes()

    To be moved to hb-face.h later.

 src/hb-ot-cmap-table.hh | 59
 +++++++++++++++++++++++++++++++++++++++++--------
 src/hb-subset.cc        | 25 ++++++++++++++++++++-
 src/hb-subset.h         | 10 +++++++--
 3 files changed, 82 insertions(+), 12 deletions(-)

commit 4806b3800d77603c203e8bb2e88baeb2b3a14f05
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 25 15:56:07 2018 -0700

    [cmap] Add hb_subset_collect_variation_selectors()

    To be moved to hb-face later.

 src/hb-ot-cmap-table.hh | 20 ++++++++++++++++----
 src/hb-subset.cc        | 30 ++++++++++++++++++++++++++----
 src/hb-subset.h         |  8 +++++++-
 3 files changed, 49 insertions(+), 9 deletions(-)

commit 3336de24790ac1a12852ac2a3e2fff4d6bb19bc7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 25 15:41:25 2018 -0700

    [cmap] Remove unused code

 src/hb-ot-cmap-table.hh | 10 ----------
 1 file changed, 10 deletions(-)

commit 1becabe06c0c58aaf69a9ba641508e77a60f3451
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 25 15:37:56 2018 -0700

    [cmap] Use bsearch to find subtables

 src/hb-ot-cmap-table.hh                       | 5 +----
 test/shaping/data/in-house/tests/fuzzed.tests | 2 +-
 2 files changed, 2 insertions(+), 5 deletions(-)

commit 02fe03e09a3258e07d2d6749990f6d31dd2a8525
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 25 15:33:05 2018 -0700

    [cmap] Factor out find_best_subtable

 src/hb-ot-cmap-table.hh | 52
 +++++++++++++++++++++++++++++--------------------
 1 file changed, 31 insertions(+), 21 deletions(-)

commit b41c43b4e112bfa38fef35694842f242c28a7da2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 25 15:25:03 2018 -0700

    Minor

 src/hb-ot-cmap-table.hh | 48
 ++++++++++++++++++++++++++----------------------
 1 file changed, 26 insertions(+), 22 deletions(-)

commit 7d382fa276f44b7b163e98d434cc79f958bf87fb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 25 09:35:45 2018 -0700

    [cmap] Implement collect_unicodes() for Format0/6/10

 src/hb-ot-cmap-table.hh | 23 +++++++++++++++++++----
 1 file changed, 19 insertions(+), 4 deletions(-)

commit bd0e542525d41d9ebe51cbcab8151d65eb984b2e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 25 09:33:30 2018 -0700

    [cmap] Simplify collect_unicodes()

    Don't use accelerator (almost).  Hooks up Format13 as well.

 src/hb-ot-cmap-table.hh | 52
 +++++++++++++++++++++++++++----------------------
 1 file changed, 29 insertions(+), 23 deletions(-)

commit d60c465627d76fcfbeb37d6b8f9382f3b84ace6e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 25 08:47:06 2018 -0700

    Rename get_all_codepoints() to collect_unicodes()

 src/hb-ot-cmap-table.hh                         | 26
 ++++++++++++-------------
 src/hb-subset.cc                                |  6 +++---
 src/hb-subset.h                                 |  4 ++--
 test/api/test-subset-codepoints.c               | 18 ++++++++---------
 test/fuzzing/hb-subset-get-codepoints-fuzzer.cc |  2 +-
 5 files changed, 28 insertions(+), 28 deletions(-)

commit 531051b8b904cf4eb6a50bacebc11c2d85e40140
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 25 08:44:18 2018 -0700

    [ot-font] Return char-not-found if mapped to gid 0

    OpenType cmap table can use gid=0 to mean "not covered" to produce
    more optimized cmap subtables.  Return false from get_nominal_glyph()
    for those.  hb-ft already does this.

 src/hb-ot-cmap-table.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit aadb2a9188f143126392c0b0f139326dcf7f9c8d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 25 08:18:53 2018 -0700

    Add face-builder

    New API:
    +hb_face_builder_create
    +hb_face_builder_add_table

 docs/harfbuzz-sections.txt |   5 +-
 src/hb-face.cc             | 149
 +++++++++++++++++++++++++++++++++++++++++++++
 src/hb-face.h              |  14 +++++
 src/hb-subset-plan.cc      |   2 +-
 src/hb-subset-plan.hh      |   2 +-
 src/hb-subset-private.hh   |   7 ---
 src/hb-subset.cc           | 129 ---------------------------------------
 7 files changed, 169 insertions(+), 139 deletions(-)

commit 6cac9dc9ccb76945e9dfacafc169afad4a6e1e88
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 24 10:29:45 2018 -0700

    [blob] Add as_bytes()

 src/hb-blob-private.hh | 4 ++++
 1 file changed, 4 insertions(+)

commit 29a9a0883877c598413de78cd0c61f07bc393b2c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 24 10:24:45 2018 -0700

    [sanitize] Document how sanitize machinery works

 src/hb-machinery-private.hh | 62
 +++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 62 insertions(+)

commit 142ac5a6be6088771e0ee4b135ba753c80036a9a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 24 10:07:49 2018 -0700

    [serialize] Add copy_bytes() and copy_blob()

 src/hb-dsalgs.hh            |  3 +++
 src/hb-machinery-private.hh | 21 ++++++++++++++++++++-
 2 files changed, 23 insertions(+), 1 deletion(-)

commit 1c6b3693245d38103cab224d75262d45dc88c71c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 15 20:12:25 2018 -0700

    [ot] Rename hb_ot_layout_t to hb_ot_face_data_t

 src/hb-aat-layout.cc                 |  17 +-----
 src/hb-ot-color.cc                   |   6 +--
 src/hb-ot-layout-gpos-table.hh       |   6 +--
 src/hb-ot-layout-gsub-table.hh       |   8 ++-
 src/hb-ot-layout-gsubgpos-private.hh |   2 +-
 src/hb-ot-layout-private.hh          |  12 ++---
 src/hb-ot-layout.cc                  | 100
 +++++++++++++++++------------------
 src/hb-ot-math.cc                    |   2 +-
 src/hb-ot-shape.cc                   |   5 +-
 src/hb-ot-var.cc                     |   4 +-
 10 files changed, 71 insertions(+), 91 deletions(-)

commit 27c32d8afbdf5b587b14f3b194f79882680348ba
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Aug 22 11:36:39 2018 -0700

    fixed "Fixed" number decoding

 src/hb-cff-interp-common-private.hh    | 11 ++++++++++-
 src/hb-cff-interp-cs-common-private.hh |  4 ++--
 2 files changed, 12 insertions(+), 3 deletions(-)

commit 811a651bbd3f1bda7ed8eaee9af8e9dbbc8f80de
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Aug 20 14:04:46 2018 -0700

    fixed bugs with empty CFFIndex, fullset FDMap

 src/hb-ot-cff-common-private.hh | 21 ++++++++++++++++++---
 1 file changed, 18 insertions(+), 3 deletions(-)

commit 5cde2f55cd2f8917954f3a3f60bd571c86b3aa59
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Aug 17 16:50:13 2018 -0700

    drop hints from CFF & CFF2 Private

 src/hb-cff-interp-dict-common-private.hh | 24 ++++++++++++++
 src/hb-subset-cff1.cc                    | 53
 +++++++++++++++++++++++++++---
 src/hb-subset-cff2.cc                    | 55
 +++++++++++++++++++++++++++++---
 3 files changed, 123 insertions(+), 9 deletions(-)

commit cef75ea41a513a612a683bced27ced31761204b5
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Aug 17 13:13:18 2018 -0700

    Added CFF2 Subr nullifier

    along with CFF2 charstring interpreter
    factored out common code between CFF1 & CFF2 to CSInterpreter
    moved fetch_op from Interpreter to InterpEnv
    misc code clean up & bug fixes

 src/Makefile.sources                     |  1 +
 src/hb-cff-interp-common-private.hh      | 44 +++++++--------
 src/hb-cff-interp-cs-common-private.hh   | 95
 +++++++++++++++++++++++++++++--
 src/hb-cff-interp-dict-common-private.hh |  3 +-
 src/hb-cff1-interp-cs.hh                 | 82 ---------------------------
 src/hb-cff2-interp-cs.hh                 | 97
 ++++++++++++++++++++++++++++++++
 src/hb-ot-cff-common-private.hh          |  4 ++
 src/hb-ot-cff2-table.hh                  |  7 ++-
 src/hb-subset-cff1.cc                    |  1 +
 src/hb-subset-cff2.cc                    | 62 ++++++++++++++++++--
 10 files changed, 278 insertions(+), 118 deletions(-)

commit f57d6bcbca276cec54d1e5308c308265e8e983b9
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Aug 16 08:03:46 2018 -0700

    renamed CFF::Index to CFF::CFFIndex

    to avoid confusion with OT::Index

 src/hb-ot-cff-common-private.hh | 38
 +++++++++++++++++++-------------------
 src/hb-ot-cff1-table.hh         |  4 ++--
 src/hb-ot-cff2-table.hh         |  2 +-
 src/hb-subset-cff2.cc           |  4 ++--
 4 files changed, 24 insertions(+), 24 deletions(-)

commit c4ae426a3d3f9411b94d35745ca0e14677cd7bdb
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Aug 16 00:59:46 2018 -0700

    treat h/vstem the same as h/vstemhm

 src/hb-cff1-interp-cs.hh | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

commit e67bb3fbcf39385ea1db136aeca61291364fb75b
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Aug 16 00:25:57 2018 -0700

    renamed OT::cff to OT::cff1 for consistency

    along with HB_OT_TAG_cff1

 src/hb-ot-cff1-table.hh | 14 +++++++-------
 src/hb-subset-cff1.cc   | 16 ++++++++--------
 src/hb-subset.cc        |  4 ++--
 3 files changed, 17 insertions(+), 17 deletions(-)

commit fdbfa1848b2f279c0f7a885bc1a985fa3375cfcd
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Aug 16 00:13:09 2018 -0700

    renamed CFF version 1 structs and sources to CFF1 from CFF

    "CFF" is used for shared structs & sources between CFF1 & CFF2
    except OT:cff is for CFF version 1 table

 src/Makefile.sources                              |   8 +-
 src/{hb-cff-interp-cs.hh => hb-cff1-interp-cs.hh} |  22 ++--
 src/{hb-ot-cff-table.hh => hb-ot-cff1-table.hh}   | 150
 +++++++++++-----------
 src/hb-ot-font.cc                                 |   2 +-
 src/{hb-subset-cff.cc => hb-subset-cff1.cc}       |  86 ++++++-------
 src/{hb-subset-cff.hh => hb-subset-cff1.hh}       |   8 +-
 src/hb-subset.cc                                  |   2 +-
 7 files changed, 139 insertions(+), 139 deletions(-)

commit 867f68bd8a74634ac6220bd76c8bafe3e2226041
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Aug 15 15:53:50 2018 -0700

    fix build attempt ^7

 src/hb-subset-cff2.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 685db67bb07505729fdb997129ffd068bbe3c40d
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Aug 15 15:45:17 2018 -0700

    fix build attempt ^6

 src/hb-subset-cff2.cc | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit 2810caafeb9a621d53653f454dab0fa3e7f5c4a3
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Aug 15 15:30:24 2018 -0700

    fix build attempt ^5

 src/hb-subset-cff2.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 25b8310b2a3e074c9d1d723ab6d10a29f8d189be
Merge: 7aa23f35 22defe09
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Aug 15 15:00:55 2018 -0700

    Merge branch 'master' into cff-subset

commit 7aa23f3597e4783b88ad526021cc4cafc05395f2
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Aug 15 15:00:32 2018 -0700

    fix build attempt ^4

 src/hb-cff-interp-cs.hh | 10 +++++-----
 src/hb-subset-cff.cc    |  2 +-
 2 files changed, 6 insertions(+), 6 deletions(-)

commit 270452a44653773b3dc584729ec438ff922e2739
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Aug 15 13:15:08 2018 -0700

    fix build attempt ^3

 src/hb-cff-interp-common-private.hh    | 2 --
 src/hb-cff-interp-cs-common-private.hh | 1 +
 src/hb-cff-interp-cs.hh                | 1 +
 src/hb-subset-cff.cc                   | 2 +-
 4 files changed, 3 insertions(+), 3 deletions(-)

commit c234839f25e68700c3489c55fda2773f2e00eecb
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Aug 15 13:04:43 2018 -0700

    fix build attempt ^2

 src/hb-cff-interp-common-private.hh      | 2 ++
 src/hb-cff-interp-cs-common-private.hh   | 6 +++---
 src/hb-cff-interp-cs.hh                  | 6 +++---
 src/hb-cff-interp-dict-common-private.hh | 6 +++---
 src/hb-subset-cff.cc                     | 6 +++---
 5 files changed, 14 insertions(+), 12 deletions(-)

commit eab07e713a67da2c5b368c59808f7e2db1cf0b0b
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Aug 15 12:15:55 2018 -0700

    fix build

 src/Makefile.sources | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 633ce88de93f5c565ee7fb8acdbd93c57779524b
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Aug 15 12:00:19 2018 -0700

    CFF Subrs subsetting

    Unreferenced subroutines are nullified (not removed) in a subset font

    Separate Interpreter struct from hb-ot-cff-common-private.hh in a
    set of four header files, augmented for CharString (CS):
    hb-cff-interp-common-private.hh
    hb-cff-interp-dict-common-private.hh
    hb-cff-interp-cs-common-private.hh
    hb-cff-interp-cs.hh

    Interpreter runtime is separated off as a new struct InterpEnv
    sub-classed differently for Dict and CharString (CS)

 src/Makefile.sources                     |   8 +-
 src/hb-cff-interp-common-private.hh      | 581
 +++++++++++++++++++++++++++++++
 src/hb-cff-interp-cs-common-private.hh   | 174 +++++++++
 src/hb-cff-interp-cs.hh                  | 282 +++++++++++++++
 src/hb-cff-interp-dict-common-private.hh | 183 ++++++++++
 src/hb-ot-cff-common-private.hh          | 562
 ++----------------------------
 src/hb-ot-cff-table.hh                   | 165 ++++-----
 src/hb-ot-cff2-table.hh                  | 147 ++++----
 src/hb-subset-cff-common-private.hh      |  83 +++++
 src/hb-subset-cff.cc                     | 118 +++++--
 src/hb-subset-cff2.cc                    |  38 +-
 11 files changed, 1585 insertions(+), 756 deletions(-)

commit 22defe0965adddaa09eebc13df7fa6c64e2abba3
Author: Emil A Eklund <eae@chromium.org>
Date:   Tue Aug 14 14:47:20 2018 -0700

    Add guard around free_static_C_locale

    Add HB_USE_ATEXIT guard around free_static_C_locale missed by previous
    commit.

 src/hb-common.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 7112c6413ca7a1773847fe258145cc5162420953
Author: Emil A Eklund <eae@chromium.org>
Date:   Tue Aug 14 13:50:24 2018 -0700

    Guard free_static function definitions with macro

    Add HB_USE_ATEXIT macros around free_static function definitions to
    avoid unused function compiler warnings/errors.

 src/hb-ft.cc      | 5 ++++-
 src/hb-glib.cc    | 3 ++-
 src/hb-icu.cc     | 3 ++-
 src/hb-ot-font.cc | 3 ++-
 src/hb-shape.cc   | 4 +++-
 src/hb-shaper.cc  | 3 ++-
 6 files changed, 15 insertions(+), 6 deletions(-)

commit 63be5dcdde61275822d931b2924425478bc1dac1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 14 10:59:34 2018 -0700

    1.8.8

 NEWS             | 18 ++++++++++++++++++
 configure.ac     |  2 +-
 src/hb-version.h |  4 ++--
 3 files changed, 21 insertions(+), 3 deletions(-)

commit c9a22fa124310c98c73b8d7b495ed354542a75de
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 13 17:02:21 2018 -0700

    [icu] Pass normalizer instance down as user_data

 src/hb-icu.cc | 23 +++++++++--------------
 1 file changed, 9 insertions(+), 14 deletions(-)

commit f0ef096b8cab33aa9e26edba9b15696bf907e268
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 13 10:30:41 2018 -0700

    Don't add reference in get_unicode_funcs() functions

    Users don't expect a new reference returned from a get() function.
    Indeed, all users of that API I foud where NOT destroying the
    reference.
    Just change the implementations to NOT return a reference.

    This applies to the following APIs:
    hb_unicode_funcs_get_default()
    hb_glib_get_unicode_funcs()
    hb_icu_get_unicode_funcs()

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1134

 src/hb-buffer.cc | 3 +--
 src/hb-glib.cc   | 2 +-
 src/hb-icu.cc    | 2 +-
 src/hb-ucdn.cc   | 2 +-
 4 files changed, 4 insertions(+), 5 deletions(-)

commit 9bbd1cdf068635f4a737f1fc9ab54ba075601a5d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 12 18:20:53 2018 -0700

    [uniscribe] Use lazy loader

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1129

 src/hb-uniscribe.cc | 56
 +++++++++++++++++++++++++++--------------------------
 1 file changed, 29 insertions(+), 27 deletions(-)

commit 266368993625e0cfb6eef9188f8b9aa29fb97391
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 12 18:10:59 2018 -0700

    Another clang bot fix

 src/hb-shape.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 989e71a982658145f28f83f2111bdab9561f3db0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 12 17:47:59 2018 -0700

    Silence clang

 src/hb-machinery-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6750ec692cdd682bd33cb1c37b137cf3bb641d43
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 12 17:42:16 2018 -0700

    [lazy] Use for C_locale

 src/hb-common.cc | 60
 ++++++++++++++++++++++++++++----------------------------
 1 file changed, 30 insertions(+), 30 deletions(-)

commit 747d2564e6bdcc15cf6a197e543fb732924159c5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 12 17:32:10 2018 -0700

    [lazy] Port more

 src/hb-machinery-private.hh |  1 -
 src/hb-shaper.cc            | 78
 ++++++++++++++++++++-------------------------
 src/hb-uniscribe.cc         |  3 +-
 3 files changed, 37 insertions(+), 45 deletions(-)

commit 7bd508a0c4ce426f474bfcc729cb39207dd1f7b4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 12 17:19:55 2018 -0700

    [lazy] Rename free()

 src/hb-ft.cc                | 4 ++--
 src/hb-glib.cc              | 2 +-
 src/hb-icu.cc               | 2 +-
 src/hb-machinery-private.hh | 4 ++--
 src/hb-ot-font.cc           | 2 +-
 src/hb-shape.cc             | 6 +++---
 src/hb-ucdn.cc              | 2 +-
 7 files changed, 11 insertions(+), 11 deletions(-)

commit a3b97db910662e26bafe6e6bc1c36b437f4ed931
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 12 17:14:32 2018 -0700

    [lazy] Port more to it

 src/hb-shape.cc | 75
 +++++++++++++++++++++++++++++----------------------------
 1 file changed, 38 insertions(+), 37 deletions(-)

commit 6901090945d7e16102f3a2b168465434032b9a09
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 12 16:57:06 2018 -0700

    [lazy] Make hb_lazy_loader_t<> more usable

 src/hb-ft.cc                |  7 +++---
 src/hb-machinery-private.hh | 57
 +++++++++++++++++++++++++++------------------
 2 files changed, 37 insertions(+), 27 deletions(-)

commit bb905e9afcc3eb28a22ba78c09e661a814d04c1f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 12 16:40:08 2018 -0700

    [lazy] Minor

 src/hb-machinery-private.hh | 36 ++++++++++++++++++------------------
 src/hb-ot-font.cc           |  8 ++++----
 2 files changed, 22 insertions(+), 22 deletions(-)

commit 3945cd78a96bdd287e203a0261bac490df1314b0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 12 16:33:48 2018 -0700

    Minor

 src/hb-machinery-private.hh | 4 ----
 1 file changed, 4 deletions(-)

commit c21a1b95dffedb6ed66b384f4adf07e6d05d4b9f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 12 16:30:39 2018 -0700

    [icu] Use get_relaxed for normalizer access

    We've had the proper barriers already.  No need for more with
    every access.

 src/hb-icu.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 125fefa2a6b23cf7eb4559904b23aff3731d5dba
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 12 16:29:41 2018 -0700

    [icu] Fix for breakage after recent change

 src/hb-icu.cc | 10 ++++++++++
 1 file changed, 10 insertions(+)

commit 53442be1edc73993bdcaffc4b895c07f1ea03ba0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 12 16:20:11 2018 -0700

    [lazy] Use for ft_library

 src/hb-ft.cc                | 61
 ++++++++++++++++++++++-----------------------
 src/hb-glib.cc              |  2 +-
 src/hb-icu.cc               |  2 +-
 src/hb-machinery-private.hh |  2 +-
 src/hb-ot-font.cc           |  2 +-
 src/hb-ucdn.cc              |  2 +-
 6 files changed, 35 insertions(+), 36 deletions(-)

commit 7a8d480378af4094645dfb1527a61a94b4786b54
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 12 16:00:13 2018 -0700

    [lazy] Add .free()

 src/hb-ft.cc                | 2 +-
 src/hb-glib.cc              | 2 +-
 src/hb-icu.cc               | 2 +-
 src/hb-machinery-private.hh | 4 ++++
 src/hb-ot-font.cc           | 2 +-
 src/hb-ucdn.cc              | 2 +-
 6 files changed, 9 insertions(+), 5 deletions(-)

commit c7ca30a5337cb660e650d51ddd17d389909357c2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 12 13:46:53 2018 -0700

    [ot/ft] Port font_funcs statis to lazy-loader

 src/hb-ft.cc                | 56
 ++++++++++++++++++++++-----------------------
 src/hb-machinery-private.hh | 14 ++++++++++++
 src/hb-ot-font.cc           | 49 +++++++++++++++++----------------------
 3 files changed, 62 insertions(+), 57 deletions(-)

commit cb3fc3685c03c8ed07bcf05188f5d6c582fd5aaa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 12 13:39:01 2018 -0700

    [ucdn/glib/icu] Port unicode_funcs statics to lazy-loader

 src/hb-glib.cc              | 50 ++++++++++++++++++--------------------
 src/hb-icu.cc               | 59
 ++++++++++++++++-----------------------------
 src/hb-machinery-private.hh | 28 ++++++++++++++++-----
 src/hb-ucdn.cc              | 51 +++++++++++++++++----------------------
 4 files changed, 88 insertions(+), 100 deletions(-)

commit 1b6b481262465ae1865c66c4d499b4b2c8d297fb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 12 13:16:40 2018 -0700

    [lazy] Allow calling fini() multiple times

 src/hb-machinery-private.hh | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

commit 918ad9f5d9b85384f24157523272a4ffc1927d16
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 12 13:12:29 2018 -0700

    [lazy] More

 src/hb-machinery-private.hh | 45
 +++++++++++++++++++++++++++++++++++++--------
 1 file changed, 37 insertions(+), 8 deletions(-)

commit 5abdf5eebadf9a4fbd50c1a893c9654de74d22ac
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 12 12:40:24 2018 -0700

    [lazy] More shuffle

 src/hb-machinery-private.hh | 80
 +++++++++++++++++++--------------------------
 1 file changed, 34 insertions(+), 46 deletions(-)

commit 5d9863be6ecf873033cbab732207dd420f3866e7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 12 12:27:47 2018 -0700

    Minor

 src/hb-machinery-private.hh | 6 ++++--
 src/hb-ot-layout-private.hh | 2 +-
 2 files changed, 5 insertions(+), 3 deletions(-)

commit f9a3eab81008c01a458d16f274b1a0eaaae00e7c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 12 12:21:56 2018 -0700

    Add explicit_operator

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1127

 src/hb-iter-private.hh |  2 +-
 src/hb-private.hh      | 15 ++++++++++++++-
 2 files changed, 15 insertions(+), 2 deletions(-)

commit 470acb6c322fc64556d59847d829d95caa2d51e6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 12 12:09:20 2018 -0700

    Rename

 src/hb-machinery-private.hh | 19 ++++++++++++-------
 1 file changed, 12 insertions(+), 7 deletions(-)

commit 39607dc98e433ef577c1de0f309ce40fc40529be
Author: Martin Hosken <martin_hosken@sil.org>
Date:   Thu Aug 9 15:16:32 2018 +0700

    Support _ in feature ids

 src/hb-common.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a3a8c85b027779365bb33e2063221b4650fbac3b
Merge: 145f371d 652cd45c
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Aug 10 13:41:42 2018 -0700

    Merge branch 'master' into cff-subset

commit 145f371d71965b86635025c73117db0e24f2df75
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Aug 10 13:07:53 2018 -0700

    fixed TRACE build failure

 src/hb-ot-cff-common-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a97ed342d18bdb262400c8ab6501df110fe4e18f
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Aug 10 12:55:22 2018 -0700

    fixed inclusion of excluded Private & local Subrs

    It was bloating a multi-FD subset font unnecessarily
    defined a wrapper struct FDMap for fdmap

 src/hb-ot-cff-common-private.hh     | 34 ++++++++++++++++++++-----
 src/hb-subset-cff-common-private.cc |  6 ++---
 src/hb-subset-cff-common-private.hh |  4 +--
 src/hb-subset-cff.cc                | 48
 +++++++++++++++++++----------------
 src/hb-subset-cff2.cc               | 50
 ++++++++++++++++++++-----------------
 5 files changed, 87 insertions(+), 55 deletions(-)

commit 64c541226457907ec1801a5766050ee64feb67e8
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Aug 10 11:07:07 2018 -0700

    Added CFF support

    Added sources hb-ot-cff-table.hh, hb-subset-cff.cc & hh
    Templatized Index because CFF uses 16-bit count while CFF2 uses 32-bit
    Misc code cleanup & bug fixes

 src/Makefile.sources                |   9 +-
 src/hb-ot-cff-common-private.hh     | 477 ++++++++++++-------
 src/hb-ot-cff-table.hh              | 919
 ++++++++++++++++++++++++++++++++++++
 src/hb-ot-cff2-table.hh             | 235 ++++-----
 src/hb-ot-font.cc                   |   1 +
 src/hb-subset-cff-common-private.cc |   6 +-
 src/hb-subset-cff-common-private.hh |   4 +-
 src/hb-subset-cff.cc                | 560 ++++++++++++++++++++++
 src/hb-subset-cff.hh                |  38 ++
 src/hb-subset-cff2.cc               | 104 ++--
 src/hb-subset.cc                    |   4 +
 11 files changed, 1991 insertions(+), 366 deletions(-)

commit 652cd45c650b1cdce2585dcee614e5a9cdda530c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 9 01:02:02 2018 -0700

    [coretext] Another try

 src/hb-coretext.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 3f3585ca1406edd74138f78739612c167ab57913
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 9 00:58:17 2018 -0700

    Fix coretext build (hopefully)

 src/hb-coretext.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit aa3b6017ed71fc251522ff1bedcdae965b4c1c1c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 9 00:56:28 2018 -0700

    Revert "[iter] Make operator bool explicit"

    This reverts commit 66920a6bace7c54c8166c4ed938b6ffc5fabcf2b.

    Some of our bots (Oracle Studio and Apple gcc 4.2) do not allow
    explicit except for constructors.

    https://github.com/harfbuzz/harfbuzz/issues/1127

 src/hb-iter-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e1a2354220c369bd5a62d255acc42c60cd14c473
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 9 00:53:25 2018 -0700

    [atomic] More

 src/hb-atomic-private.hh | 2 --
 src/hb-object-private.hh | 7 +++++--
 2 files changed, 5 insertions(+), 4 deletions(-)

commit f1f4b45ac3d228a6b11e33357725de065e2ba2be
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 9 00:28:40 2018 -0700

    Fix lazy_loader fini()

    Was creating object even if wasn't there.

 src/hb-machinery-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 1f7380944df9aa81cd48a4764c763d692533c4a6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 9 00:22:37 2018 -0700

    [atomic] Add hb_atomic_ptr_t<> and port all uses

    Found and fixed a couple bugs.

    Found a couple multithreading issues.  Marked them with "XXX-MT-bug".

 src/hb-atomic-private.hh          | 34 +++++++++++++++++++++++++++++++---
 src/hb-common.cc                  | 34 ++++++++++++++++++----------------
 src/hb-face-private.hh            |  3 ++-
 src/hb-face.cc                    |  6 +++---
 src/hb-font.cc                    |  2 +-
 src/hb-ft.cc                      | 22 ++++++++++++----------
 src/hb-glib.cc                    | 11 ++++++-----
 src/hb-graphite2.cc               | 16 +++++++++-------
 src/hb-icu.cc                     | 22 ++++++++++++----------
 src/hb-machinery-private.hh       | 17 +++++++++--------
 src/hb-object-private.hh          | 29 +++++++++++++++--------------
 src/hb-ot-font.cc                 | 11 ++++++-----
 src/hb-ot-layout-private.hh       |  2 +-
 src/hb-ot-post-table.hh           |  9 +++++----
 src/hb-ot-shape-complex-arabic.cc |  9 +++++----
 src/hb-shape-plan.cc              | 19 +++++++++++--------
 src/hb-shape.cc                   | 11 ++++++-----
 src/hb-shaper-impl-private.hh     |  2 +-
 src/hb-shaper-private.hh          | 16 +++++++++-------
 src/hb-shaper.cc                  | 18 ++++++++++--------
 src/hb-ucdn.cc                    | 11 ++++++-----
 src/hb-uniscribe.cc               | 14 +++++++-------
 22 files changed, 185 insertions(+), 133 deletions(-)

commit 6e42f4c53ff52cc242051e80600e19513136f6d1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 8 22:51:35 2018 -0700

    [atomic] Remove hb_atomic_int_impl_t now that it's always int

 src/hb-atomic-private.hh | 14 +++++---------
 1 file changed, 5 insertions(+), 9 deletions(-)

commit 1227a9e5a5befffa688c1cce141533fd80144d14
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 8 22:45:49 2018 -0700

    [atomic] Unify typedef

    Removes volatile from fallback implementation.  That was handwavy
    anyway.

 src/hb-atomic-private.hh | 22 ++++++++--------------
 1 file changed, 8 insertions(+), 14 deletions(-)

commit 5cd1888c9dcb8b32bcfe08be38bdd13fd8a09b5e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 8 22:43:53 2018 -0700

    [atomic] Change Mac atomic int type to int

    If ever int is not 32bit, we'll fix this...

 src/hb-atomic-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e1de86eac188e804c6737fcad66ae09cf25ef221
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 8 22:42:33 2018 -0700

    [atomic] Change Windows atomic int type to int

 src/hb-atomic-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit aee2d10b2bf09814b32bccdecd4c3fbebafc542e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 8 22:40:10 2018 -0700

    [atomic] Change Solaris atomic int to signed

 src/hb-atomic-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit b6fdcf4f8bd09e065c767939125861c9dc8ff18f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 8 21:54:08 2018 -0700

    1.8.7

 NEWS             | 6 ++++++
 RELEASING.md     | 3 +++
 configure.ac     | 2 +-
 src/hb-version.h | 4 ++--
 4 files changed, 12 insertions(+), 3 deletions(-)

commit 51ffc3e65aacbece63995be99e2bc20538e3eb75
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 8 22:01:04 2018 -0700

    Fix previous commit to use atomic operations

 src/hb-machinery-private.hh | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

commit 883957688cc4aa4335e5131a60b3ac3b53290726
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 8 21:42:18 2018 -0700

    Fix assertion failure

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

 src/hb-machinery-private.hh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit e49a38b20e82e50bca96751470e945cbe0524880
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 7 09:55:42 2018 -0700

    1.8.6

 NEWS             | 15 +++++++++++++++
 configure.ac     |  2 +-
 src/hb-font.cc   |  6 +++---
 src/hb-font.h    |  4 ++--
 src/hb-version.h |  4 ++--
 5 files changed, 23 insertions(+), 8 deletions(-)

commit b0ff79acd804e47a2a3db73746cf9c6dc986950a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 7 09:52:06 2018 -0700

    Add +hb_font_get_glyph_advances_for_direction

    New API:
    +hb_font_get_glyph_advances_for_direction

 docs/harfbuzz-sections.txt |  1 +
 src/hb-font-private.hh     | 12 ++++++++++++
 src/hb-font.cc             | 20 ++++++++++++++++++++
 src/hb-font.h              |  8 ++++++++
 4 files changed, 41 insertions(+)

commit 28e2f467e1c7dd5e82d105efa8c4580dbfc93960
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 7 09:47:00 2018 -0700

    Actually add hb_font_get_glyph_[hv]_advances

    New API:
    +hb_font_get_glyph_h_advances
    +hb_font_get_glyph_v_advances

 src/hb-font.cc | 37 +++++++++++++++++++++++++++++++++++++
 src/hb-font.h  | 15 +++++++++++++++
 2 files changed, 52 insertions(+)

commit 996775191a3fdeeeaee80e3123ef2240e6390b3d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 7 09:44:01 2018 -0700

    Minor

 src/hb-font-private.hh | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

commit 3d7c555a19ca0725c386aa6da648ecf2ae50fc19
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 7 09:37:52 2018 -0700

    Remove get_advances_nil and alias it to get_advances_default

 src/hb-font.cc | 36 ++----------------------------------
 1 file changed, 2 insertions(+), 34 deletions(-)

commit 66920a6bace7c54c8166c4ed938b6ffc5fabcf2b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 6 15:32:13 2018 -0700

    [iter] Make operator bool explicit

    We would need to write:

      for (Iter<T> it (...); bool (t); t++)

    instead of:

      for (Iter<T> it (...); t; t++)

    But I think it's an improvement in code readability in the long term.

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1127

 src/hb-iter-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 161ece4c3097096f355dc5ea514320a8dc678bea
Merge: e8d695eb 79e21984
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Aug 6 11:23:50 2018 -0700

    Merge branch 'master' into cff-subset

commit e8d695ebaa4b5d36d907042fb6930244e87b1e29
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Aug 6 11:13:06 2018 -0700

    removed CMakeCache.txt

 build/CMakeCache.txt | 1 -
 1 file changed, 1 deletion(-)

commit 9fae33b9f3fd7fce816c3db71089db4ce0c82d4c
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Aug 6 10:44:12 2018 -0700

    Silence Codacy

 build/CMakeCache.txt                | 1 +
 src/hb-subset-cff-common-private.cc | 8 +++++---
 src/hb-subset-cff2.cc               | 4 +++-
 3 files changed, 9 insertions(+), 4 deletions(-)

commit 5561b818498431adb52f958d1e9589620f0e6539
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Aug 6 10:04:53 2018 -0700

    subset FDSelect and FDArray

    Added a set of sources hb-subset-cff-common-private.cc & .hh for
    FDSelect subseting code.
    Added FDSelect format 4 (CFF2 only) support. Shared its implementation
    with format 3 as a template.

 src/Makefile.sources                |   2 +
 src/hb-ot-cff-common-private.hh     | 130 ++++++++++++++++-------
 src/hb-ot-cff2-table.hh             |  71 ++++++++++++-
 src/hb-subset-cff-common-private.cc | 200
 ++++++++++++++++++++++++++++++++++++
 src/hb-subset-cff-common-private.hh |  54 ++++++++++
 src/hb-subset-cff2.cc               |  71 ++++++++++---
 6 files changed, 476 insertions(+), 52 deletions(-)

commit 79e21984b13bdb879f3007ba9a97fde47df340d3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 6 09:45:17 2018 -0700

    Add batch advance width callback function

    New API:
    +hb_font_funcs_set_glyph_h_advances_func
    +hb_font_funcs_set_glyph_v_advances_func
    +hb_font_get_glyph_h_advances
    +hb_font_get_glyph_h_advances_func_t
    +hb_font_get_glyph_v_advances
    +hb_font_get_glyph_v_advances_func_t

 docs/harfbuzz-sections.txt |   6 +
 src/hb-font-private.hh     |  41 +++++--
 src/hb-font.cc             | 299
 +++++++++++++++++++++++++++------------------
 src/hb-font.h              |  53 ++++++--
 src/hb-ot-shape.cc         |   3 +-
 5 files changed, 255 insertions(+), 147 deletions(-)

commit 9533364cc3a8cccbae793de1873a727de73f64d5
Author: Koji Ishii <kojii@chromium.org>
Date:   Wed Aug 1 13:01:08 2018 +0900

    batchwidth

 src/hb-font-private.hh | 13 +++++++++++++
 src/hb-font.cc         | 37 +++++++++++++++++++++++++++++++++++++
 src/hb-font.h          | 15 +++++++++++++++
 src/hb-ot-shape.cc     |  4 ++--
 4 files changed, 67 insertions(+), 2 deletions(-)

commit b912fbea17c50e229977345012227810ed7641e9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 6 06:30:12 2018 -0700

    Remove most uses of direct comparison to Null objects

 src/hb-ot-glyf-table.hh                    | 6 +++---
 src/hb-ot-head-table.hh                    | 4 ++--
 src/hb-ot-layout-gdef-table.hh             | 1 +
 src/hb-ot-layout-gsubgpos-private.hh       | 1 +
 src/hb-ot-layout.cc                        | 6 +++---
 src/hb-ot-math-table.hh                    | 2 ++
 src/hb-ot-math.cc                          | 2 +-
 src/hb-ot-shape-complex-arabic-fallback.hh | 3 ++-
 src/hb-ot-var-fvar-table.hh                | 2 ++
 src/hb-ot-var.cc                           | 2 +-
 src/hb-subset.cc                           | 2 +-
 src/main.cc                                | 2 +-
 12 files changed, 20 insertions(+), 13 deletions(-)

commit 3506672ce9d8685ce4e113716b0d06adbc7981b7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 6 06:17:48 2018 -0700

    Port _nil objects to Null() machinery

    Finally, unified!

 src/hb-blob-private.hh                     |  1 +
 src/hb-blob.cc                             | 29 ++++++-------
 src/hb-buffer-private.hh                   |  4 +-
 src/hb-buffer.cc                           | 44 ++++++++++----------
 src/hb-face-private.hh                     |  6 +--
 src/hb-face.cc                             |  5 ++-
 src/hb-font-private.hh                     | 10 +++--
 src/hb-font.cc                             | 66
 ++++++++++++++++--------------
 src/hb-null.hh                             | 11 ++++-
 src/hb-ot-shape-complex-arabic-fallback.hh | 11 +++--
 src/hb-shape-plan-private.hh               |  1 +
 src/hb-shape-plan.cc                       | 50 +++++++++++-----------
 src/hb-unicode-private.hh                  |  7 ++--
 src/hb-unicode.cc                          |  5 ++-
 14 files changed, 137 insertions(+), 113 deletions(-)

commit 1abd427acfb7229b8607646bdde59f29306b86e1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 6 05:53:35 2018 -0700

    [BASE] Rename horzi/vert to h/v

 src/hb-ot-layout-base-table.hh | 68
 +++++++++++++++++++++---------------------
 1 file changed, 34 insertions(+), 34 deletions(-)

commit da48aca1be89efbb8b3ca4471f542aa54aff17c4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 6 05:52:12 2018 -0700

    [BASE] Misc fixes

    The code was badly broken.  In better shape now, but still, needs
    a full review before ever working.

 src/hb-ot-layout-base-table.hh | 163
 +++++++++++++++++------------------------
 1 file changed, 68 insertions(+), 95 deletions(-)

commit f9cfa5cb0e70203279e74fb6adb0cd4570238ff8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 6 05:29:15 2018 -0700

    Change null-pool specialization to min_size again

 src/hb-null.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 25147ff8086ab65995fe046cfdf8007604de6962
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 6 05:01:52 2018 -0700

    Move Null system to hb-null.hh

 src/Makefile.sources |  1 +
 src/hb-null.hh       | 97
 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-private.hh    | 65 +----------------------------------
 3 files changed, 99 insertions(+), 64 deletions(-)

commit f800368df33e7ec15c3e77bdb9f4b464899322d3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 6 04:58:34 2018 -0700

    Remove unused macros

 src/hb-object-private.hh | 1 -
 src/hb-vector-private.hh | 1 -
 2 files changed, 2 deletions(-)

commit 19e0091299f06856002c702792b448b06da637a8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 6 04:54:31 2018 -0700

    Minor

 src/hb-private.hh | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

commit 37be774af921812018f723521b90f2ab54f661c5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 6 04:51:38 2018 -0700

    Minor

 src/hb-private.hh | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

commit e1acff806b469e58f568bf5ad6ba578207821e87
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 6 04:42:46 2018 -0700

    Move hb_vector_t to hb-vector-private.hh

 src/Makefile.sources     |   1 +
 src/hb-dsalgs.hh         | 297
 -----------------------------------------------
 src/hb-object-private.hh | 109 ++++++++++++++++-
 src/hb-vector-private.hh | 239 ++++++++++++++++++++++++++++++++++++++
 4 files changed, 346 insertions(+), 300 deletions(-)

commit be336dadc07460a53de51be32dd5d1f218b398b6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 6 04:32:51 2018 -0700

    Move some more code around

 src/hb-dsalgs.hh  | 43 +++++++++++++++++++++++++++++++++++++++++++
 src/hb-private.hh | 51
 +--------------------------------------------------
 2 files changed, 44 insertions(+), 50 deletions(-)

commit 92806ee055c8efb68fcbe9e1750ce2532a1f8ab3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 5 21:41:52 2018 -0700

    Move null data definitions to hb-static.cc

    Also remove "    " null data for Tag.  Just use zeroes.

 src/hb-open-type-private.hh        |  3 +--
 src/hb-ot-layout-common-private.hh |  5 ++---
 src/hb-private.hh                  | 12 +++++++-----
 src/hb-static.cc                   | 10 +++++++++-
 4 files changed, 19 insertions(+), 11 deletions(-)

commit 1b4d5a2402302e90867c178b6b2ad07541091a74
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 3 19:55:09 2018 -0700

    Minor

 src/hb-ot-layout-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 7df7963b46223f47e89a5a38c597c874aaa93141
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 3 19:54:33 2018 -0700

    Make lazy loader deal with OOM

 src/hb-machinery-private.hh | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit 30ff8ac865a266c8dca11eeac155c2cd3d1aa159
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 3 17:32:00 2018 -0700

    Rename

 src/hb-machinery-private.hh | 6 +++---
 src/hb-ot-font.cc           | 8 ++++----
 2 files changed, 7 insertions(+), 7 deletions(-)

commit 85ba4a190f30da5147d3b2ddac4d58dda31181f1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 3 17:06:42 2018 -0700

    [ot] Comment

 src/hb-ot-layout-private.hh | 2 ++
 1 file changed, 2 insertions(+)

commit 07afc1a213bde91fdfc44dd613f2e82ac1617c9f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 3 17:03:32 2018 -0700

    [ot] Add misc tables to tables_t

    Most unused.

 src/hb-ot-layout-private.hh | 36 ++++++++++++++++++++++--------------
 1 file changed, 22 insertions(+), 14 deletions(-)

commit 74b4df2cdef68b74536d9c29426b242199a63a6f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 3 16:57:40 2018 -0700

    [ot] Move GDEF into tables_t

 src/hb-machinery-private.hh          |  6 ++++++
 src/hb-ot-layout-gsub-table.hh       |  2 +-
 src/hb-ot-layout-gsubgpos-private.hh |  2 +-
 src/hb-ot-layout-private.hh          |  7 +------
 src/hb-ot-layout.cc                  | 15 +++++----------
 5 files changed, 14 insertions(+), 18 deletions(-)

commit 0271c7ab3b76dbf8a4e3e92eaf67d9d61b7a63dc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 3 16:45:57 2018 -0700

    [ot] Move GSUB/GPOS into tables_t

 src/hb-machinery-private.hh    |  6 ++----
 src/hb-ot-layout-gpos-table.hh |  4 ++--
 src/hb-ot-layout-gsub-table.hh |  4 ++--
 src/hb-ot-layout-private.hh    |  7 ++----
 src/hb-ot-layout.cc            | 49
 +++++++++++++++++++-----------------------
 5 files changed, 30 insertions(+), 40 deletions(-)

commit f73d2775cf649d148ace7c2593da9666d60fc1be
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 3 16:34:25 2018 -0700

    [ot] More shuffling

    Misc. table loading now properly automated.

 src/hb-ot-layout-private.hh | 67
 +++++++++++++++++++++++++++++----------------
 src/hb-ot-layout.cc         | 25 +++++++++++------
 src/hb-ot-math.cc           |  2 +-
 3 files changed, 61 insertions(+), 33 deletions(-)

commit 52fbd23d868a989d51b7df5be40be582890d13e5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 3 16:22:16 2018 -0700

    [ot] Minor

 src/hb-aat-layout.cc        |  4 ++--
 src/hb-face-private.hh      |  7 ++-----
 src/hb-machinery-private.hh |  1 +
 src/hb-ot-layout-private.hh | 15 +++++++++------
 src/hb-ot-layout.cc         | 20 ++++++++++----------
 src/hb-ot-math.cc           |  2 +-
 src/hb-ot-var.cc            |  4 ++--
 7 files changed, 27 insertions(+), 26 deletions(-)

commit cc3f4e00aa5da1d9f0430adefe30689b3daa8282
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Aug 3 15:00:37 2018 -0700

    silence gcc

 src/hb-ot-cff2-table.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 00970dd2420c3dcc58c25568be4abe6586c159df
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Fri Aug 3 14:35:09 2018 -0700

    Removed parsed hint fields from CFF2PrivateDictValues

    Instead moved & stored uniformly in values vector (renamed from
    opstrs)
    This should be fine as we aren't likely going to use them as hints
    after all
    Templatized DictValues whether to parse them out
    For subsetter, they aren't parsed

 src/hb-ot-cff-common-private.hh | 113 ++++++++++++++----------
 src/hb-ot-cff2-table.hh         | 185
 ++++++++++++----------------------------
 src/hb-subset-cff2.cc           |   2 +-
 3 files changed, 120 insertions(+), 180 deletions(-)

commit 6a0a298aabe777e2c1ed443f100fe6142c83e3b3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 2 23:13:19 2018 -0700

    [ot] Move code around

 src/hb-ot-layout.cc | 211
 ++++++++++++++++++++++++++--------------------------
 1 file changed, 106 insertions(+), 105 deletions(-)

commit 5e718a751efdda89511c9f30238b500125193499
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 2 23:04:42 2018 -0700

    [ot] Use switch for checking for blacklisted GDEF tables

    Faster / more compact code.

 src/hb-ot-layout.cc | 107
 +++++++++++++++++++++++++++++-----------------------
 1 file changed, 59 insertions(+), 48 deletions(-)

commit b5cdf5280d5b00df5356cc5c3236844ca0576bd0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 2 22:56:42 2018 -0700

    [ot] In GDEF blacklisting logic, remove the glyph index check
    for Times

    Just blacklist based on table sizes like we do for other fonts.

 src/hb-ot-layout.cc | 12 ------------
 1 file changed, 12 deletions(-)

commit c988b119994ef78d400bc7d3139785312da0be75
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 2 20:04:37 2018 -0700

    Move code around

 src/hb-ot-font.cc | 41 ++++++++++++++++++++++++++---------------
 1 file changed, 26 insertions(+), 15 deletions(-)

commit 76f7397c10832b891a082e30afc74222bd5ffd7b
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Aug 2 16:28:10 2018 -0700

    templatized CFF2 accelerator for lean Private dict interpretting
    for subset

    also fixed local subrs serialization

 src/hb-ot-cff-common-private.hh |   8 ++-
 src/hb-ot-cff2-table.hh         | 119
 ++++++++++++++++++++++++++++++++--------
 src/hb-subset-cff2.cc           |  13 +++--
 3 files changed, 109 insertions(+), 31 deletions(-)

commit 43040564e661fdd616d39e84fde07612d55bb785
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Aug 2 12:23:10 2018 -0700

    removed TRACE_SERIALIZE from non-member function _write_cff2

 src/hb-subset-cff2.cc | 29 ++++++++++++++---------------
 1 file changed, 14 insertions(+), 15 deletions(-)

commit e2fd49e4779663e3138bd1990736a9cf850303bf
Merge: 693ae804 d4d1bf81
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Aug 2 11:39:22 2018 -0700

    Merge branch 'master' into cff-subset

commit 693ae804743c60968d4339465fa6480e0ed8396c
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Aug 2 11:22:42 2018 -0700

    more silencing fixes

 src/hb-ot-cff2-table.hh | 2 +-
 src/hb-subset-cff2.cc   | 1 +
 2 files changed, 2 insertions(+), 1 deletion(-)

commit f6da44983178e345ddbac1bcd1691ddb330399c6
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Aug 2 10:52:08 2018 -0700

    silence archlinux

 src/hb-ot-cff-common-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 58279c3db4f31bf3f9a509d1d88bca01b57c6b81
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Thu Aug 2 10:18:01 2018 -0700

    silence Codacy

 src/hb-ot-cff-common-private.hh | 25 +++++++++++++++++++------
 src/hb-ot-cff2-table.hh         | 14 +++++++-------
 2 files changed, 26 insertions(+), 13 deletions(-)

commit 574b37e933f98e35c2bdae04458a95522bbfbb82
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 2 02:22:38 2018 -0700

    Minor

 src/hb-ot-font.cc           | 2 +-
 src/hb-ot-layout-private.hh | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit d4d1bf8177b127caa57b146c932f553dca1ad933
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 2 02:04:02 2018 -0700

    Fix for recent rename

 src/hb-graphite2.cc | 2 +-
 src/hb-uniscribe.cc | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

commit 91126aa11a5fa2bff72137df4768ad13fc9b7803
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 2 02:03:13 2018 -0700

    [uniscribe] Update for recent changes

 src/hb-uniscribe.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 66952ec47b5f09d88b83fb6a71b1cdb26c53668d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 2 01:44:20 2018 -0700

    Remove unused table reference

 src/hb-ot-layout-private.hh | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

commit 443de26fa56dd1ef149d3ce4206f4495eceec2eb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 2 01:41:19 2018 -0700

    Minor

 src/hb-face.cc              |  1 -
 src/hb-ot-layout-private.hh | 12 ++++++------
 2 files changed, 6 insertions(+), 7 deletions(-)

commit ee35af738b5c802ca62eb1c39b77f0bd992329df
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 2 01:37:57 2018 -0700

    Make lazy-loader safe for nil objectification

 src/hb-machinery-private.hh | 4 ++++
 1 file changed, 4 insertions(+)

commit 6404c49d0735d92779089ddef5c1d34aad1542d7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 2 01:36:08 2018 -0700

    Minor

 src/hb-machinery-private.hh | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit ff7826e90bce46985651015059872d1d8559b6ce
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 2 01:27:40 2018 -0700

    Reduce storage by sharing face amongst lazy_loaders

 src/hb-machinery-private.hh | 113
 ++++++++++++++++++++++++--------------------
 src/hb-ot-font.cc           |  19 ++++----
 src/hb-ot-layout-private.hh |  11 +++--
 src/hb-ot-layout.cc         |   9 ++--
 4 files changed, 85 insertions(+), 67 deletions(-)

commit bdd3c11a19d87999eeaff2c82f21c6938d1d9342
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 2 00:38:46 2018 -0700

    Internal templatization of lazy-loaders

 src/hb-machinery-private.hh | 74
 ++++++++++++++++++++-------------------------
 1 file changed, 32 insertions(+), 42 deletions(-)

commit ed7b2e58fc9afb547656cf28eb4a253d989de43c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 1 23:59:09 2018 -0700

    Remove OT namespace from hb-machinery-private.hh

 src/dump-emoji.cc                          |  4 ++--
 src/hb-aat-layout.cc                       |  2 +-
 src/hb-face.cc                             |  4 ++--
 src/hb-machinery-private.hh                | 14 +++++---------
 src/hb-ot-font.cc                          |  8 ++++----
 src/hb-ot-layout-private.hh                | 10 +++++-----
 src/hb-ot-layout.cc                        |  8 ++++----
 src/hb-ot-shape-complex-arabic-fallback.hh | 18 +++++++++---------
 src/hb-static.cc                           |  4 ++--
 src/hb-subset-glyf.cc                      |  2 +-
 src/hb-subset.cc                           |  8 ++++----
 src/hb-uniscribe.cc                        |  2 +-
 12 files changed, 40 insertions(+), 44 deletions(-)

commit cb1491f92e24649433988ff81a89347dccf07c8b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 1 22:50:45 2018 -0700

    Minor

 src/hb-blob-private.hh      |  5 -----
 src/hb-machinery-private.hh | 10 ++++++----
 2 files changed, 6 insertions(+), 9 deletions(-)

commit 16ccfafbbd48c7a9737ce1d12e75406a050b71a9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 1 22:50:06 2018 -0700

    [face] Sprinkle const in the API

 src/hb-face.cc | 17 +++++++++--------
 src/hb-face.h  | 16 ++++++++--------
 2 files changed, 17 insertions(+), 16 deletions(-)

commit 3d22aefedebb5277c5d79011e48e7be1a26a53c1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 1 18:03:32 2018 -0700

    Rename

 src/hb-coretext.cc       | 46
 +++++++++++++++++++++++-----------------------
 src/hb-directwrite.cc    | 28 ++++++++++++++--------------
 src/hb-fallback-shape.cc | 24 ++++++++++++------------
 src/hb-graphite2.cc      | 26 +++++++++++++-------------
 src/hb-ot-shape.cc       | 20 ++++++++++----------
 src/hb-shaper-private.hh |  2 +-
 src/hb-uniscribe.cc      | 34 +++++++++++++++++-----------------
 7 files changed, 90 insertions(+), 90 deletions(-)

commit 1a624c6e06763a8a61bc686d2d44272d4ef50d4a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 1 17:53:30 2018 -0700

    Add comment re (our only) race condition

 src/hb-shaper-private.hh | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

commit 19ce0b24c0173fed11104a8ab039e856cbf40924
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Aug 1 17:34:59 2018 -0700

    removed unused field OpStr::update

 src/hb-ot-cff-common-private.hh |  4 +---
 src/hb-ot-cff2-table.hh         | 22 +++++++++++-----------
 2 files changed, 12 insertions(+), 14 deletions(-)

commit 3bda54c43b248ee2bc18a9210fb4d880bb4d82ac
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Aug 1 16:32:27 2018 -0700

    fixed Index::serialize

    The bug was causing CharString of the last glyph corrupt

 src/hb-ot-cff-common-private.hh | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 16f4dc9b73a197a5ab0ad29dcf5a7ed7495ec4e1
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Aug 1 16:06:52 2018 -0700

    fixed CFF2VariationStore::serialize

    also get_size

 src/hb-ot-cff2-table.hh | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit 44d1fb37efa20852cc466c0f0bba95dbd24ce288
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 1 14:51:51 2018 -0700

    1.8.5

 NEWS                | 8 ++++++++
 configure.ac        | 2 +-
 src/hb-ot-layout.cc | 2 +-
 src/hb-version.h    | 4 ++--
 4 files changed, 12 insertions(+), 4 deletions(-)

commit 13f4c137c686aed5c2888b5c47d9f16892be0d5e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 1 14:13:59 2018 -0700

    [atomic] Fix Solaris ones to add proper barriers

 src/hb-atomic-private.hh | 52
 +++++++++++++++++++++++++++++++++---------------
 1 file changed, 36 insertions(+), 16 deletions(-)

commit 19dfaa351568887a74cee2c46d6acfcc3fa718ff
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 1 14:02:39 2018 -0700

    [atomic] Remove volatile from IBM impl signature

 src/hb-atomic-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 2093a3e0cbb98c2daa39f308d50a12f0a719bc81
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 1 14:00:46 2018 -0700

    [atomic] Oops

 src/hb-atomic-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 19b98348ffc660501e518bf48cd63d232f7585e7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 1 13:59:59 2018 -0700

    [atomic] Use read-barrier for get()

 src/hb-atomic-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 006d4f031a30dd04f5bb9c3d1daca187ef6b7f1e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 1 13:59:31 2018 -0700

    [atomic] Some more minor tweaks

 src/hb-atomic-private.hh | 31 ++++++++++++++++++++-----------
 1 file changed, 20 insertions(+), 11 deletions(-)

commit 28d03a8afcc1f0ba6d9d0d88f669cc53bb030dd8
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Aug 2 00:11:43 2018 +0430

    [ci] Fix Appveyor bot (#1123)

 appveyor.yml | 1 +
 1 file changed, 1 insertion(+)

commit b2ff582c8c1a0fea60ee323dc820ce6fe807b063
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Aug 1 11:30:38 2018 -0700

    Implemented hb_subset_cff2

    Added serialize functions to CFF2 structs
    Fixed issues & bugs & code cleanup
    Now subsetting CFF2 table outputs something

 src/hb-ot-cff-common-private.hh | 428
 +++++++++++++++++++++++++++++++++++-----
 src/hb-ot-cff2-table.hh         | 237 +++++++++++++++++-----
 src/hb-private.hh               |   2 +-
 src/hb-subset-cff2.cc           | 392
 +++++++++++++++++++++++++++++++-----
 4 files changed, 914 insertions(+), 145 deletions(-)

commit 1a7fed631880fff8a947ebec9c7427efff581916
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Aug 1 12:15:44 2018 +0430

    Revert "Add a new API, hb_ot_layout_get_feature_name_ids (#976)"
    (#1121)

    This reverts commit 0c1b287b72e91e0898d75acb5d5acf1c6b9a7498.

 docs/harfbuzz-sections.txt         |  1 -
 src/hb-ot-layout-common-private.hh | 14 -------
 src/hb-ot-layout.cc                | 86
 --------------------------------------
 src/hb-ot-layout.h                 |  8 ----
 4 files changed, 109 deletions(-)

commit dfc86e4b35ffdeb8f73e83511712e75413bbb7d9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 1 00:22:18 2018 -0700

    [atomic] Fix cast to fallback ptr_get()

 src/hb-atomic-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 7a4d576e81c4de68ea66b2d5fe7712e29d715272
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 1 00:19:25 2018 -0700

    [gobject] Fix copy/paste error

 src/hb-gobject-structs.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ad275627425c9b3c4fb1e69aa408067bd0bb77da
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 31 23:01:05 2018 -0700

    [atomic] On IBM, use light-weight sync for everything

    lwsync() is a full read/write-barrier.  That's all we need, never
    need sync().  I'm not sure why an isync() was used in fetch_and_add,
    but since that's a read-modify-write, I just changed it to have
    lwsync() on both sides.

 src/hb-atomic-private.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit fd638d215feb058c2294e447cc68f6f50e2b481d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 31 23:00:15 2018 -0700

    [atomic] Add XXX items around Solaris ops

    Since add_int and cas are both read-modify-write, I wonder if we
    also need a barrier after them.

 src/hb-atomic-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 896ff15ae60a4a4b94c62946e69196b877839bb5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 31 22:51:38 2018 -0700

    [atomic] Fix get() impl

    Originally, glib's atomic_get was implemented as "memory_barrier;
    load".
    I copied this into cairo, fontconfig, and harfbuzz.  However, that's
    wrong.  Correct way is "load; memory_barrier".  The details are long
    and hard to fully grasp.  Best to read:

      https://www.kernel.org/doc/Documentation/memory-barriers.txt

    Also see my report against GNOME:

      https://gitlab.gnome.org/GNOME/glib/issues/1449

    Note that this is irrelevant if C++11-like atomic ops are available.

 src/hb-atomic-private.hh | 28 +++++++++++++++++-----------
 1 file changed, 17 insertions(+), 11 deletions(-)

commit d7a15799d40dac1f9521674a82c3293a7cb42ee4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 31 22:28:28 2018 -0700

    [gobject] Hook up hb_map_t

 docs/harfbuzz-sections.txt | 2 ++
 src/hb-gobject-structs.cc  | 1 +
 src/hb-gobject-structs.h   | 4 ++++
 src/hb-map.cc              | 6 ++----
 4 files changed, 9 insertions(+), 4 deletions(-)

commit 63c74e8d1d85067cbeffe635eb5ed4e8aa130776
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 31 22:21:21 2018 -0700

    [atomic] Fix fallback impl

 src/hb-atomic-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 4bc16aca4760ac9ffd8c63bbaea24fc7d234f715
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 31 21:05:51 2018 -0700

    [atomic] Add get_relaxed / set_relaxed

    To help TSan and be more "correct".

 src/hb-atomic-private.hh         | 37 ++++++++++++++++++++++-------------
 src/hb-common.cc                 |  4 ++--
 src/hb-debug.hh                  | 42
 ++++++++++++++++++++++++++++++++++++++++
 src/hb-object-private.hh         | 12 ++++++------
 src/hb-ot-shape-complex-indic.cc | 22 +++++++++++----------
 src/hb-private.hh                | 28 ---------------------------
 6 files changed, 86 insertions(+), 59 deletions(-)

commit 3dd1b88765f6ce91bd0558a16cdd8cf0c1e15d1b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 31 19:33:37 2018 -0700

    [atomic] Use CONSUME, not ACQUIRE, memory-order for get()

    Although, all implementations just elevate that to ACQUIRE.
    But requirement for us is just CONSUME.

 src/hb-atomic-private.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 06b91d935da1a40ef9de6697717eb0af1015989e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 31 19:29:49 2018 -0700

    Revert "[atomic] Make pointer get op relaxed instead of acquire"

    This reverts commit b1e5650c67266dc158f22355fed206cd1c413f70.

    After lots of head-scratching and finally finding the only truly
    readable source to be the good old:

      https://www.kernel.org/doc/Documentation/memory-barriers.txt

    I've convinced myself that we need consume memory-ordering on get().
    The location of memory-barrier in a load should be after, not before
    the load.  That needs fixing.  I'll do that separately.

 src/hb-atomic-private.hh | 34 +++++++++++++++++++++++++---------
 1 file changed, 25 insertions(+), 9 deletions(-)

commit 2bdd903c69eb3a34f3d3bf5e4f4c94cd66337117
Author: Garret Rieger <grieger@google.com>
Date:   Tue Jul 31 17:44:02 2018 -0700

    [subset] limit the max codepoint value to the unicode limit.
    When collecting all codepoints in the cmap avoid using large amount
    of memory for fonts that declare coverage over all 32 bit integers.

 src/hb-ot-cmap-table.hh                                   |   9 +++++++--
 ...mized-hb-subset-get-codepoints-fuzzer-5973295416475648 | Bin 0 ->
 109 bytes
 2 files changed, 7 insertions(+), 2 deletions(-)

commit 7278d9df3093a87f99cec9b4cea38bd688c5d020
Author: Garret Rieger <grieger@google.com>
Date:   Tue Jul 31 17:59:19 2018 -0700

    [subset] Add hb_ot_layout_collect_features to harfbuzz-sections.txt.
    Add the fuzzer test case for feature collection timeout.

 docs/harfbuzz-sections.txt                             |   1 +
 ...estcase-minimized-hb-subset-fuzzer-5542653037903872 | Bin 0 ->
 160249 bytes
 2 files changed, 1 insertion(+)

commit 89733755a48feef0a663e1ea7b8294949581ce7e
Author: Garret Rieger <grieger@google.com>
Date:   Mon Jul 30 18:10:43 2018 -0700

    [subset] use add_array to populate feature_indexes.
    This is much faster then calling a bunch of individual add()'s.

 src/hb-ot-layout-common-private.hh |  7 +++++++
 src/hb-ot-layout.cc                | 40
 +++++++++++++++++++-------------------
 2 files changed, 27 insertions(+), 20 deletions(-)

commit 7d92bef9c5afb319d125f60b0fce4763afeaa686
Author: Garret Rieger <grieger@google.com>
Date:   Mon Jul 30 17:17:43 2018 -0700

    [subset] collect features first, then use those to collect lookups.

 src/hb-ot-layout.cc | 148
 +++++++++++++++++++++++++---------------------------
 src/hb-ot-layout.h  |   7 +++
 2 files changed, 78 insertions(+), 77 deletions(-)

commit af876cce3066833c7c34d213a578eec6b09dd5c9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 31 15:27:29 2018 -0700

    [indic] Flip default logic for double-halants in old-school

    Oriya went down from 9 to 2.

    BENGALI: 353725 out of 354188 tests passed. 463 failed (0.130722%)
    DEVANAGARI: 707311 out of 707394 tests passed. 83 failed (0.0117332%)
    GUJARATI: 366355 out of 366457 tests passed. 102 failed (0.0278341%)
    GURMUKHI: 60729 out of 60747 tests passed. 18 failed (0.0296311%)
    KANNADA: 951300 out of 951913 tests passed. 613 failed (0.0643966%)
    MALAYALAM: 1048136 out of 1048334 tests passed. 198 failed
    (0.0188871%)
    MYANMAR: 1115830 out of 1123883 tests passed. 8053 failed (0.716534%)
    ORIYA: 42327 out of 42329 tests passed. 2 failed (0.00472489%)
    SINHALA: 271596 out of 271847 tests passed. 251 failed (0.0923313%)
    TAMIL: 1091754 out of 1091754 tests passed. 0 failed (0%)
    TELUGU: 970555 out of 970573 tests passed. 18 failed (0.00185457%)

 src/hb-ot-shape-complex-indic.cc | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

commit 92ba9905caa060466230f63b428ccee767696464
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 31 15:19:32 2018 -0700

    [indic] Allow double-halant in old-spec Devanagari

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1071

 src/hb-ot-shape-complex-indic.cc                      |  18
 ++++++++++++------
 .../b722a7d09e60421f3efbc706ad348ab47b88567b.ttf      | Bin 0 ->
 4672 bytes
 test/shaping/data/in-house/tests/indic-old-spec.tests |   2 ++
 3 files changed, 14 insertions(+), 6 deletions(-)

commit fe099a844b9b8fe05dd4eb187b5ca3769441f012
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 31 14:20:31 2018 -0700

    [test] Add Khmer tests, with NotoSansKhmer-Regular.ttf

    Note that there's minor positioning differences, and ONE reordering
    difference between what we get for these and what Uniscribe gets.
    Probably same as what's described in commit message for
    1a96cc825dc9c8e3b6eef1403fe0864a1cfc0245

 .../3998336402905b8be8301ef7f47cf7e050cbb1bd.ttf   | Bin 0 -> 24392 bytes
 test/shaping/data/in-house/tests/khmer-misc.tests  |  89
 +++++++++++++++++++++
 2 files changed, 89 insertions(+)

commit 5772edc0ea8f697c6123e439c5d0c3e813ebeb45
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 31 14:10:31 2018 -0700

    [khmer] Typo

 src/hb-ot-shape-complex-khmer.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2d6edc9008182c1446951f2c5c04df20094597f8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 31 13:56:55 2018 -0700

    [test] Add Khmer test texts from recent bugs

 test/shaping/texts/in-house/shaper-khmer/misc.txt | 66
 +++++++++++++++++++++++
 1 file changed, 66 insertions(+)

commit df26a32c8fd22cbd486e2a1014d30b9f38f51cd1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 31 13:55:53 2018 -0700

    [test] Move things around for shaper updates

 .../texts/in-house/shaper-indic/{indic => }/script-assamese/utrrs/LICENSE
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-assamese/utrrs/README
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-assamese/utrrs/SOURCES
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-AdditionalVowels.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Consonants.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-DependentVowels.txt
 | 0
 .../script-assamese/utrrs/codepoint/IndicFontFeatureCodepoint-Digits.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-IndependentVowels.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Reserved.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-VariousSigns.txt
 | 0
 .../script-assamese/utrrs/gpos/IndicFontFeatureGPOS-AboveBase.txt
 | 0
 .../script-assamese/utrrs/gpos/IndicFontFeatureGPOS-BelowBase.txt
 | 0
 .../{indic => }/script-assamese/utrrs/gsub/IndicFontFeatureGSUB.txt
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-bengali/misc/misc.txt
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-bengali/misc/reph.txt
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-bengali/utrrs/LICENSE
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-bengali/utrrs/README
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-bengali/utrrs/SOURCES
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-AdditionalVowels.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Consonants.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-DependentVowels.txt
 | 0
 .../script-bengali/utrrs/codepoint/IndicFontFeatureCodepoint-Digits.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-IndependentVowels.txt
 | 0
 .../script-bengali/utrrs/codepoint/IndicFontFeatureCodepoint-Reserved.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-VariousSigns.txt
 | 0
 .../script-bengali/utrrs/gpos/IndicFontFeatureGPOS-AboveBase.txt
 | 0
 .../script-bengali/utrrs/gpos/IndicFontFeatureGPOS-BelowBase.txt
 | 0
 .../{indic => }/script-bengali/utrrs/gsub/IndicFontFeatureGSUB.txt
 | 0
 .../shaper-indic/{indic => }/script-devanagari/misc/dottedcircle.txt
 | 0
 .../in-house/shaper-indic/{indic => }/script-devanagari/misc/eyelash.txt
 | 0
 .../in-house/shaper-indic/{indic => }/script-devanagari/misc/joiners.txt
 | 0
 .../in-house/shaper-indic/{indic => }/script-devanagari/misc/misc.txt
 | 0
 .../shaper-indic/{indic => }/script-devanagari/misc/spec-deviations.txt
 | 0
 .../shaper-indic/{indic => }/script-devanagari/misc/tricky-reordering.txt
 | 0
 .../in-house/shaper-indic/{indic => }/script-devanagari/utrrs/LICENSE
 | 0
 .../in-house/shaper-indic/{indic => }/script-devanagari/utrrs/README
 | 0
 .../in-house/shaper-indic/{indic => }/script-devanagari/utrrs/SOURCES
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-AdditionalConsonants.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-AdditionalVowels.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Consonants.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-DependentVowels.txt
 | 0
 .../codepoint/IndicFontFeatureCodepoint-DevnagariSpecificAddition.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Digits.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-GenericPunctuation.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-IndependentVowels.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-VariousSigns.txt
 | 0
 .../script-devanagari/utrrs/gpos/IndicFontFeatureGPOS-AboveBase.txt
 | 0
 .../script-devanagari/utrrs/gpos/IndicFontFeatureGPOS-BelowBase.txt
 | 0
 .../{indic => }/script-devanagari/utrrs/gsub/IndicFontFeatureGSUB.txt
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-gujarati/utrrs/LICENSE
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-gujarati/utrrs/README
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-gujarati/utrrs/SOURCES
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-AdditionalVowels.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Consonants.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-DependentVowels.txt
 | 0
 .../script-gujarati/utrrs/codepoint/IndicFontFeatureCodepoint-Digits.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-IndependentVowels.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Reserved.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-VariousSigns.txt
 | 0
 .../script-gujarati/utrrs/gpos/IndicFontFeatureGPOS-AboveBase.txt
 | 0
 .../script-gujarati/utrrs/gpos/IndicFontFeatureGPOS-BelowBase.txt
 | 0
 .../{indic => }/script-gujarati/utrrs/gsub/IndicFontFeatureGSUB.txt
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-gurmukhi/misc/misc.txt
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-gurmukhi/utrrs/LICENSE
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-gurmukhi/utrrs/README
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-gurmukhi/utrrs/SOURCES
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Consonants.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-DependentVowels.txt
 | 0
 .../script-gurmukhi/utrrs/codepoint/IndicFontFeatureCodepoint-Digits.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-GurmukhiSpecific.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-IndependentVowels.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Reserved.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-VariousSigns.txt
 | 0
 .../script-gurmukhi/utrrs/gpos/IndicFontFeatureGPOS-AboveBase.txt
 | 0
 .../script-gurmukhi/utrrs/gpos/IndicFontFeatureGPOS-BelowBase.txt
 | 0
 .../{indic => }/script-gurmukhi/utrrs/gsub/IndicFontFeatureGSUB.txt
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-kannada/misc/misc.txt
 | 0
 .../shaper-indic/{indic => }/script-kannada/misc/right-matras.txt
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-kannada/utrrs/LICENSE
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-kannada/utrrs/README
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-kannada/utrrs/SOURCES
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-AdditionalConsonants.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-AdditionalVowels.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Consonants.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-DependentVowels.txt
 | 0
 .../script-kannada/utrrs/codepoint/IndicFontFeatureCodepoint-Digits.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-IndependentVowels.txt
 | 0
 .../script-kannada/utrrs/codepoint/IndicFontFeatureCodepoint-Reserved.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-VariousSigns.txt
 | 0
 .../script-kannada/utrrs/gpos/IndicFontFeatureGPOS-AboveBase.txt
 | 0
 .../{indic => }/script-kannada/utrrs/gsub/IndicFontFeatureGSUB.txt
 | 0
 .../in-house/shaper-indic/{indic => }/script-malayalam/misc/cibu.txt
 | 0
 .../in-house/shaper-indic/{indic => }/script-malayalam/misc/dot-reph.txt
 | 0
 .../in-house/shaper-indic/{indic => }/script-malayalam/misc/misc.txt
 | 0
 .../in-house/shaper-indic/{indic => }/script-malayalam/utrrs/LICENSE
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-malayalam/utrrs/README
 | 0
 .../in-house/shaper-indic/{indic => }/script-malayalam/utrrs/SOURCES
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-AdditionalVowels.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Consonants.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-DependentVowels.txt
 | 0
 .../script-malayalam/utrrs/codepoint/IndicFontFeatureCodepoint-Digits.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-IndependentVowels.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Reserved.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-VariousSigns.txt
 | 0
 .../{indic => }/script-malayalam/utrrs/gsub/IndicFontFeatureGSUB.txt
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-oriya/misc/bindu.txt
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-oriya/misc/misc.txt
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-oriya/utrrs/LICENSE
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-oriya/utrrs/README
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-oriya/utrrs/SOURCES
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-AdditionalConsonants.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-AdditionalVowels.txt
 | 0
 .../script-oriya/utrrs/codepoint/IndicFontFeatureCodepoint-Consonants.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-DependentVowels.txt
 | 0
 .../script-oriya/utrrs/codepoint/IndicFontFeatureCodepoint-Digits.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-IndependentVowels.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-OriyaSpecific.txt
 | 0
 .../script-oriya/utrrs/codepoint/IndicFontFeatureCodepoint-Reserved.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-VariousSigns.txt
 | 0
 .../{indic => }/script-oriya/utrrs/gsub/IndicFontFeatureGSUB.txt
 | 0
 .../in-house/shaper-indic/{indic => }/script-sinhala/misc/extensive.txt
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-sinhala/misc/misc.txt
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-sinhala/misc/reph.txt
 | 0
 .../shaper-indic/{indic => }/script-sinhala/misc/split-matras.txt
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-sinhala/utrrs/LICENSE
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-sinhala/utrrs/README
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-sinhala/utrrs/SOURCES
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Consonants.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-DependentVowels.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-IndependentVowels.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Punctuation.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-VariousSigns.txt
 | 0
 .../{indic => }/script-sinhala/utrrs/gpos/IndicFontFeatureGPOS.txt
 | 0
 .../script-sinhala/utrrs/gsub/IndicFontFeatureGSUB-Conjunct.txt
 | 0
 .../script-sinhala/utrrs/gsub/IndicFontFeatureGSUB-Rakaaraansaya.txt
 | 0
 .../{indic => }/script-sinhala/utrrs/gsub/IndicFontFeatureGSUB-Repaya.txt
 | 0
 .../script-sinhala/utrrs/gsub/IndicFontFeatureGSUB-Special-Cases.txt
 | 0
 .../script-sinhala/utrrs/gsub/IndicFontFeatureGSUB-TouchingLetters.txt
 | 0
 .../script-sinhala/utrrs/gsub/IndicFontFeatureGSUB-Yansaya.txt
 | 0
 .../{indic => }/script-sinhala/utrrs/gsub/IndicFontFeatureGSUB.txt
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-tamil/misc/misc.txt
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-tamil/utrrs/LICENSE
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-tamil/utrrs/README
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-tamil/utrrs/SOURCES
 | 0
 .../script-tamil/utrrs/codepoint/IndicFontFeatureCodepoint-Consonants.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-CurrencySymbols.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-DependentVowels.txt
 | 0
 .../script-tamil/utrrs/codepoint/IndicFontFeatureCodepoint-Digits.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-IndependentVowels.txt
 | 0
 .../script-tamil/utrrs/codepoint/IndicFontFeatureCodepoint-Numerics.txt
 | 0
 .../script-tamil/utrrs/codepoint/IndicFontFeatureCodepoint-Reserved.txt
 | 0
 .../script-tamil/utrrs/codepoint/IndicFontFeatureCodepoint-Symbols.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-TamilSymbol.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-VariousSigns.txt
 | 0
 .../script-tamil/utrrs/gpos/IndicFontFeatureGPOS-AboveBase.txt
 | 0
 .../script-tamil/utrrs/gpos/IndicFontFeatureGPOS-BelowBase.txt
 | 0
 .../{indic => }/script-tamil/utrrs/gsub/IndicFontFeatureGSUB.txt
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-telugu/misc/misc.txt
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-telugu/utrrs/LICENSE
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-telugu/utrrs/README
 | 0
 .../texts/in-house/shaper-indic/{indic => }/script-telugu/utrrs/SOURCES
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-AdditionalVowels.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Consonants.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-DependentVowels.txt
 | 0
 .../script-telugu/utrrs/codepoint/IndicFontFeatureCodepoint-Digits.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-IndependentVowels.txt
 | 0
 .../script-telugu/utrrs/codepoint/IndicFontFeatureCodepoint-Reserved.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-VariousSigns.txt
 | 0
 .../script-telugu/utrrs/gpos/IndicFontFeatureGPOS-AboveBase.txt
 | 0
 .../{indic => }/script-telugu/utrrs/gsub/IndicFontFeatureGSUB.txt
 | 0
 .../south-east-asian/script-khmer/misc => shaper-khmer}/misc.txt
 | 0
 .../script-khmer/misc => shaper-khmer}/other-marks-invalid.txt
 | 0
 .../south-east-asian/script-khmer/misc => shaper-khmer}/other-marks.txt
 | 0
 .../south-east-asian => shaper-use}/script-javanese/misc.txt
 | 0
 174 files changed, 0 insertions(+), 0 deletions(-)

commit 6ddd669e205cf2c1c3b0a362330b686386f68519
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 31 13:38:07 2018 -0700

    [khmer] Clear syllables before presentation features

    Probably not what Uniscribe does, but good idea?

 src/hb-ot-shape-complex-khmer.cc | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 8eef1964a708c3db52e5e7312689c4664afa9839
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 31 13:35:10 2018 -0700

    [khmer] Revert previous change, and remove pauses

    This makes test suite happy again (at 44) while fixing the sequences
    we were fixing, which were the following with KhmerUI.ttf:

      U+1789,U+17BC
      U+1789,U+17D2,U+1789
      U+1789,U+17D2,U+1789,U+17BC

    Fixes rest of https://github.com/harfbuzz/harfbuzz/issues/974

 src/hb-ot-shape-complex-khmer.cc | 23 ++++++++++-------------
 1 file changed, 10 insertions(+), 13 deletions(-)

commit 7c658ea2f20a77cac35e8988e54316425396198a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 31 12:49:02 2018 -0700

    [khmer] Apply ccmp after basic features

    Part of https://github.com/harfbuzz/harfbuzz/issues/974

 src/hb-ot-shape-complex-khmer.cc | 22 +++++++++++++++++-----
 1 file changed, 17 insertions(+), 5 deletions(-)

commit 1a96cc825dc9c8e3b6eef1403fe0864a1cfc0245
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 31 11:45:32 2018 -0700

    [khmer] Rewrite most of shaper to better follow spec

    Khmer spec has only one reordering phase, and only simple prebase
    matra and Coeng-Ro reordering.  Implement that.  Specifically,
    this was done to address recognizing different orders of the matra
    and Coeng-Ro sequence.  That said, some combinations are now
    reordered differently from Uniscribe.  Not clear if that's intended
    or a bug in Uniscribe.  The following two sequences render the same
    in Uniscribe whereas we reorder them differently:

      U+17A0,U+17D2,U+179A,U+17C2
      U+17A0,U+17C2,U+17D2,U+179A

    For that reason, our test suite numbers regressed slightly.  Used
    to be at 34 for fails, now at:

    KHMER: 299080 out of 299124 tests passed. 44 failed (0.0147096%)

    But generally a good change, and removed lots of code.

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1026

 src/hb-ot-shape-complex-indic-private.hh |   4 +-
 src/hb-ot-shape-complex-khmer.cc         | 460
 ++++---------------------------
 src/hb-ot-shape-complex-private.hh       |  13 -
 3 files changed, 64 insertions(+), 413 deletions(-)

commit f5152cea423947cd8a85332566443b4e2e091672
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 31 01:27:04 2018 -0700

    [shaper] Move code around

 src/hb-shaper-private.hh | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

commit 36d0fbbc52bdf2c71da022fb1fdc31eca17078ce
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 31 01:15:04 2018 -0700

    [shaper] Remove a macro

 src/hb-shaper-private.hh | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

commit b1e5650c67266dc158f22355fed206cd1c413f70
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 31 01:02:31 2018 -0700

    [atomic] Make pointer get op relaxed instead of acquire

    We only use it before cmpexch, so relaxed is fine and faster for
    common case.

 src/hb-atomic-private.hh | 34 +++++++++-------------------------
 1 file changed, 9 insertions(+), 25 deletions(-)

commit 66ccd8ac405c9c25b37de9eb467a7382880dda35
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 30 17:03:06 2018 -0700

    [serialize] Increase stage count from 8 to 32

    Indic shaper uses many stages.  Now we are provably not limiting
    functionality whereas the previous limit of 8 was assuming real-world
    practices.

 src/hb-ot-layout-common-private.hh | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit ee8cf919654cb191e955fe1f89b1ebfb2b8b32ee
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 30 16:59:41 2018 -0700

    [serialize] Remove unused truncate() method

 src/hb-machinery-private.hh | 6 ------
 1 file changed, 6 deletions(-)

commit 8782f80cce147c101b605501d9fd9c7d64338314
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Jul 30 15:27:20 2018 -0700

    fixed FDSelect0::sanitize

 src/hb-ot-cff-common-private.hh | 1 +
 1 file changed, 1 insertion(+)

commit 9c4cadaef01733b32ab6190dd91552ee7145f3c3
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Jul 30 14:28:40 2018 -0700

    Added sanitize functions & calls

    Added sanitize functions to FDSelect
    Added satnitize calls for FDSelect, VariationStore, FDArray, TopDict

 src/hb-ot-cff-common-private.hh | 67
 ++++++++++++++++++++++++++++++++---------
 src/hb-ot-cff2-table.hh         | 26 +++++++++++-----
 src/hb-subset-cff2.cc           |  2 +-
 3 files changed, 72 insertions(+), 23 deletions(-)

commit 161b642ec5babc7e4b81d41f725d81ad2caa9330
Merge: 3a61c3e9 5edf454a
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Mon Jul 30 12:22:09 2018 -0700

    Merge branch 'master' into cff-subset

commit 5edf454aa64aad461c90bd991e7eaf27668b7e6b
Author: Garret Rieger <grieger@google.com>
Date:   Thu Jul 26 17:42:02 2018 -0700

    [subset] During lookup collection remember the features we've
    already processed.

 src/hb-ot-layout.cc                                |  26
 +++++++++++++++++----
 ...ase-minimized-hb-subset-fuzzer-5670861909524480 | Bin 0 -> 1298 bytes
 ...b-subset-get-codepoints-fuzzer-6136125075750912 | Bin 0 -> 65816 bytes
 3 files changed, 21 insertions(+), 5 deletions(-)

commit 42c183f80355fe7cadac2931a23d389285c8b98c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 27 14:55:29 2018 -0700

    Minor

 src/hb-ft.cc       | 5 +++--
 src/hb-ot-shape.cc | 5 +++--
 2 files changed, 6 insertions(+), 4 deletions(-)

commit ecab6604e57ea2bb4e78250a7a400e15b3e86f7a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 25 17:37:38 2018 -0700

    [serialize] Allocate for markFilteringSet

 src/hb-ot-layout-common-private.hh | 9 +++++++++
 1 file changed, 9 insertions(+)

commit 7f08818c441517f73c5bea0a2a88f494dfc8fa58
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 25 17:22:05 2018 -0700

    Minor

 src/hb-iter-private.hh      | 8 +++++---
 src/hb-machinery-private.hh | 1 -
 2 files changed, 5 insertions(+), 4 deletions(-)

commit 2e25d8f49181ab1d7fda520ae6587d293a982acf
Author: prrace <philip.race@oracle.com>
Date:   Fri Jul 27 13:58:27 2018 -0700

    Fix unlikely leaks

 src/hb-ft.cc       | 4 +++-
 src/hb-ot-shape.cc | 4 +++-
 2 files changed, 6 insertions(+), 2 deletions(-)

commit 3c2842cbcf8cded73d1e310379e1a4ca124a6fc2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 25 17:07:17 2018 -0700

    Add hb-iter-private.hh

    Unused so far.

 src/Makefile.sources        |   1 +
 src/hb-iter-private.hh      | 147
 ++++++++++++++++++++++++++++++++++++++++++++
 src/hb-machinery-private.hh |   1 +
 3 files changed, 149 insertions(+)

commit 92b1e025c639d006f55400bf68fc23bdeaa1c716
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 25 16:58:47 2018 -0700

    Move some code from hb-open-type-private.hh to hb-machinery-private.hh

 src/Makefile.sources        |   1 +
 src/hb-machinery-private.hh | 702
 ++++++++++++++++++++++++++++++++++++++++++++
 src/hb-open-type-private.hh | 669
 +----------------------------------------
 3 files changed, 706 insertions(+), 666 deletions(-)

commit 6b11fea99716e22522b563d919ef7c72fe9a3c45
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 25 16:01:37 2018 -0700

    [closure] Allocate out set on the stack

 src/hb-ot-layout-gsubgpos-private.hh | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

commit 74467b790154838e86c3ca8df0eaafe82e87f976
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 25 14:30:07 2018 -0700

    Fix compile

 src/hb-shaper-private.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit bf90f35302c319ec4699ccbcd1e28b15ef2ec423
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 24 18:00:14 2018 -0700

    [coretext] Add note

 src/hb-shaper-private.hh | 4 ++++
 1 file changed, 4 insertions(+)

commit fb58cb4b5ca7043fa746b1a01790abf53bedfa86
Author: Garret Rieger <grieger@google.com>
Date:   Wed Jul 25 13:39:17 2018 -0700

    [subset] Only used reachable lookups for gsub closure.

 src/hb-subset-plan.cc | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

commit c38bd4025f3f6ff4c1a39cc106b8618361a0c62b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 24 09:43:27 2018 -0700

    [closure] Separate in and out glyphs

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1107

 src/hb-ot-layout-gsub-table.hh       | 26 ++++++++++++++++++--------
 src/hb-ot-layout-gsubgpos-private.hh | 16 +++++++++++++++-
 2 files changed, 33 insertions(+), 9 deletions(-)

commit 85646fdadb2f102333485e07425361795b4e0412
Author: Garret Rieger <grieger@google.com>
Date:   Mon Jul 23 15:37:18 2018 -0700

    [subset] Limit the iterations of the closure algorithm.
    Prevents O(n^2) run times.

 src/hb-ot-layout-common-private.hh | 7 +++++++
 src/hb-ot-layout.cc                | 5 ++++-
 2 files changed, 11 insertions(+), 1 deletion(-)

commit 94759d4cf8986388399026ef5204ac55ee187180
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 23 15:01:39 2018 -0700

    Fix visibility on mingw32

    Should fix bots again.

 src/hb-private.hh | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit 61eddbd8ef64dc66e3c42723533d53967e61c9af
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 23 14:44:10 2018 -0700

    Fix infinite loop in loading num_glyphs within sanitizer

 src/hb-open-type-private.hh | 13 ++++++++++---
 src/hb-static.cc            |  4 +++-
 2 files changed, 13 insertions(+), 4 deletions(-)

commit e22a48ac95a60fac5e1bca26eed7f5623d73a7be
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 23 13:24:26 2018 -0700

    One more visibility trick

    Should fix Windows build again.

 src/hb-common.cc  |  9 +++++++++
 src/hb-private.hh | 20 ++------------------
 src/hb-static.cc  |  4 +++-
 3 files changed, 14 insertions(+), 19 deletions(-)

commit e57a638bdec378eed8e83513818c8add3ffae896
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 23 12:00:02 2018 -0700

    One more

 src/hb-ot-cmap-table.hh | 40 ++++++++++++++++++++--------------------
 1 file changed, 20 insertions(+), 20 deletions(-)

commit 36ed163fdd50419e4619c665a4a9dbf97f66c349
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 23 11:57:45 2018 -0700

    Remove unnecessary OT:: namespace specifiers

 src/hb-ot-cmap-table.hh       | 30 +++++++++++++++---------------
 src/hb-ot-color-sbix-table.hh |  4 ++--
 src/hb-ot-color-svg-table.hh  |  4 ++--
 src/hb-ot-glyf-table.hh       |  4 ++--
 src/hb-ot-hmtx-table.hh       |  2 +-
 src/hb-ot-maxp-table.hh       |  6 +++---
 src/hb-ot-os2-table.hh        |  4 ++--
 src/hb-ot-post-table.hh       |  2 +-
 8 files changed, 28 insertions(+), 28 deletions(-)

commit c6bc7c38314ea831418fdd1434bbe5afc0875f33
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 23 11:46:46 2018 -0700

    Set num glyphs on sanitizer reference_table()

    Move out-of-class definitions of two methods to hb-static so they
    are accessible in libharfbuzz-subset.

 src/hb-face.cc              | 20 --------------------
 src/hb-open-type-private.hh |  1 +
 src/hb-static.cc            | 22 ++++++++++++++++++++++
 3 files changed, 23 insertions(+), 20 deletions(-)

commit 9401829d4e93f6f433957fa2d053f3b9d42da557
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 22 22:50:58 2018 -0700

    Remove Sanitizer<>

 src/hb-open-type-private.hh | 16 +---------------
 1 file changed, 1 insertion(+), 15 deletions(-)

commit 8e3e41272b3896274459c5961aac813ef2666321
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 22 22:49:26 2018 -0700

    Port rest of code away from Sanitizer<>

 src/hb-face.cc | 4 ++--
 src/main.cc    | 3 +--
 2 files changed, 3 insertions(+), 4 deletions(-)

commit d6a8f64045ca3bf4c7d01520909fa0c7dfca4d64
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 22 22:47:19 2018 -0700

    Port dump-emoji away from Sanitizer<>

 src/dump-emoji.cc | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

commit 14f78d2b3bb1e1292efbd6a3e3f0d618179c171a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 22 22:45:26 2018 -0700

    .

 src/hb-aat-layout.cc | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

commit 4547051f48ca6aa53309b81a768b5b44c4ab6e3b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 22 22:44:22 2018 -0700

    Minor

 src/hb-open-file-private.hh | 2 --
 1 file changed, 2 deletions(-)

commit 740ae27d5c0f5ff87e2ff489fb49d5db1a0c95be
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 22 22:40:56 2018 -0700

    Port sbix off of Sanitizer<>

 src/hb-ot-color-sbix-table.hh | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

commit 9583e0077d0a3a043f8b5bd23925014e04da8d32
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 22 22:40:32 2018 -0700

    Port more off of Sanitizer<>

 src/hb-face.cc                |  4 ++--
 src/hb-open-type-private.hh   |  2 +-
 src/hb-ot-cmap-table.hh       |  2 +-
 src/hb-ot-color-cbdt-table.hh |  4 ++--
 src/hb-ot-color-svg-table.hh  |  4 +---
 src/hb-ot-glyf-table.hh       |  8 ++++----
 src/hb-ot-hmtx-table.hh       | 10 +++++-----
 src/hb-ot-kern-table.hh       |  2 +-
 src/hb-ot-layout.cc           |  6 +++---
 src/hb-ot-maxp-table.hh       |  2 +-
 src/hb-ot-os2-table.hh        |  2 +-
 src/hb-ot-post-table.hh       |  2 +-
 src/hb-subset.cc              |  4 +---
 13 files changed, 24 insertions(+), 28 deletions(-)

commit e7737b41d793bfce9455d1797eb5e0af60794f23
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 22 22:24:31 2018 -0700

    Add sanitizer reference_table, also fix clang build

    Clang is being really peculiar.  Fix with:

    -  inline hb_blob_t *sanitize (hb_blob_t *blob) { return
    c->sanitize<Type> (blob); }
    +  inline hb_blob_t *sanitize (hb_blob_t *blob) { return
    c[0].template/*clang idiosyncrasy*/sanitize_blob<Type> (blob); }

 src/hb-open-type-private.hh | 10 ++++++++--
 src/hb-ot-post-table.hh     |  2 +-
 src/hb-subset-glyf.cc       |  2 +-
 src/hb-uniscribe.cc         |  2 +-
 4 files changed, 11 insertions(+), 5 deletions(-)

commit 62fa7cd1ccff4d4448ef84f9cc146464672636aa
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Fri Apr 13 18:45:37 2018 -0400

    Order Chakma split vowels in accordance with NFC

    Fixes #1105.

 src/gen-use-table.py                               |  10 ++++++++++
 src/hb-ot-shape-complex-use-table.cc               |   4 ++--
 src/hb-ot-shape-complex-use.cc                     |  21
 +--------------------
 .../2a670df15b73a5dc75a5cc491bde5ac93c5077dc.ttf   | Bin 0 -> 1344 bytes
 test/shaping/data/in-house/tests/use.tests         |   5 +++++
 5 files changed, 18 insertions(+), 22 deletions(-)

commit 0c1b287b72e91e0898d75acb5d5acf1c6b9a7498
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Jul 21 21:14:48 2018 +0430

    Add a new API, hb_ot_layout_get_feature_name_ids (#976)

    This new API returns cvXX and ssXX related NameId, things like
    featUiLabelNameId, featUiTooltipTextNameId, sampleTextNameId,
    ... of cvXX
    and UINameId of ssXX, in a unified way.

    However HarfBuzz currently doesn't expose an API for retrieving
    the actual
    information associated with NameId from the `name` table and that
    should be
    done separately.

 docs/harfbuzz-sections.txt         |  1 +
 src/hb-ot-layout-common-private.hh | 14 +++++++
 src/hb-ot-layout.cc                | 86
 ++++++++++++++++++++++++++++++++++++++
 src/hb-ot-layout.h                 |  8 ++++
 4 files changed, 109 insertions(+)

commit 3a61c3e935cf649ba65ef0cb4daa9f06ab5d3c0a
Author: Michiharu Ariza <ariza@adobe.com>
Date:   Wed Jul 18 14:17:52 2018 -0700

    first push of CFF/CFF2 work

    Index, Dict structs
    hooked up to hb-subset (takes CFF2, outputs empty CFF2)

 src/Makefile.sources            |   4 +
 src/hb-ot-cff-common-private.hh | 475
 ++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-cff2-table.hh         | 386 ++++++++++++++++++++++++++++++++
 src/hb-ot-font.cc               |   2 +
 src/hb-subset-cff2.cc           | 121 ++++++++++
 src/hb-subset-cff2.hh           |  38 ++++
 src/hb-subset.cc                |   4 +
 7 files changed, 1030 insertions(+)

commit 93b65d9fe331a217640069fad4159cb7c3ec35e6
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Jul 17 23:29:16 2018 +0430

    Remove dump-fon (#1100)

    It had interesting stuffs like EXE parsing and
    big-endian parsers but added in an attempt to find
    a solution for #681 which later found not related.

 src/Makefile.am |   4 -
 src/dump-fon.cc | 555
 --------------------------------------------------------
 2 files changed, 559 deletions(-)

commit d5cd47a69c40966b4d5b5aed87dd7ac6f070c37a
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Jul 17 22:32:37 2018 +0430

    Remove AAT's gcid/fmtx (#1099)

    We are not going to use them, at least in the foreseeable future

 src/Makefile.sources     |  2 --
 src/hb-aat-fmtx-table.hh | 67
 --------------------------------------------
 src/hb-aat-gcid-table.hh | 73
 ------------------------------------------------
 src/hb-aat-layout.cc     |  2 --
 4 files changed, 144 deletions(-)

commit 1e9e344b2ba076a5fd6d57d1705e17a59c3875ce
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 17 19:17:59 2018 +0200

    Fix hb_face_count() sanitize referencing

 src/hb-face.cc | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

commit a8cc0b5907e61199334a3a886fe22efe9cc17149
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 17 19:09:03 2018 +0200

    Remove TODO that is not gonna be done

    Previously the idea was to cache sanitize results externally (think,
    in Fontconfig) and avoid resanitizing every time.  That's, not a good
    idea.

 src/hb-open-type-private.hh | 2 --
 1 file changed, 2 deletions(-)

commit be7073840097c873ce4954c6cffadab175a007d3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 17 18:45:25 2018 +0200

    Move sanitizer code around a bit

 src/hb-aat-layout-common-private.hh |  4 +-
 src/hb-open-type-private.hh         | 95
 ++++++++++++++++++++-----------------
 src/hb-ot-color-sbix-table.hh       | 12 ++---
 src/hb-ot-layout-common-private.hh  |  3 --
 4 files changed, 58 insertions(+), 56 deletions(-)

commit db5d430effce67db57ddea2545694b7275ee8b35
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 17 18:14:45 2018 +0200

    [aat] Update for blob changes

    Also, uncomment code again, just "if (0)" it out, so it doesn't get
    stale again.

 src/hb-aat-layout.cc        | 58
 ++-------------------------------------------
 src/hb-open-type-private.hh | 27 +++++++++++++--------
 src/hb-ot-layout-private.hh |  1 +
 src/hb-ot-layout.cc         |  2 ++
 src/hb-ot-shape.cc          |  6 ++---
 5 files changed, 25 insertions(+), 69 deletions(-)

commit 68310a65cba7eed20f8696f4c670bb195677f467
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 17 13:20:40 2018 +0200

    1.8.4

 NEWS             | 7 +++++++
 configure.ac     | 2 +-
 src/hb-version.h | 4 ++--
 3 files changed, 10 insertions(+), 3 deletions(-)

commit 04b7b81bcbf19cb85d06d930192d6591ba45ef72
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 17 10:57:01 2018 +0200

    Reland "Implement C++11-style GCC builtin atomic ops"

    Fixed the crasher in it.

 src/hb-atomic-private.hh | 22 +++++++++++++++++++---
 src/hb-object-private.hh |  2 +-
 2 files changed, 20 insertions(+), 4 deletions(-)

commit 019d18e9ae643134bfc3861be65ac618a5892c92
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 17 10:59:19 2018 +0200

    Minor

 src/Makefile.am      | 1 +
 test/api/Makefile.am | 2 ++
 2 files changed, 3 insertions(+)

commit 3edef5a19b5c0f30381ae6fe01c3370ded37f6ca
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 17 10:50:01 2018 +0200

    Revert "Implement C++11-style GCC builtin atomic ops"

    This reverts commit 21fa170f0bfb0109c506ed17f5aff8b062564ffa.

    Is crashing.  Oops.

 src/hb-atomic-private.hh | 22 +++-------------------
 src/hb-object-private.hh |  2 +-
 2 files changed, 4 insertions(+), 20 deletions(-)

commit 21fa170f0bfb0109c506ed17f5aff8b062564ffa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 16 17:58:02 2018 +0200

    Implement C++11-style GCC builtin atomic ops

    Hopefully fixes bots.

 src/hb-atomic-private.hh | 22 +++++++++++++++++++---
 src/hb-object-private.hh |  2 +-
 2 files changed, 20 insertions(+), 4 deletions(-)

commit 804b59cf4901d471253016e0cbf82cc1bbbc1d15
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 16 15:44:58 2018 +0200

    Relax C++11 atomic ops memory order to acquire-release

 src/hb-atomic-private.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit bda242409fc0cbb79a0ff00eba9856c4b0a9c7a1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 16 15:41:09 2018 +0200

    Implement C++11 <atomic> operations

    Fixes https://github.com/harfbuzz/harfbuzz/issues/345

 src/hb-atomic-private.hh          | 27 ++++++++++++++++++++++++---
 src/hb-open-type-private.hh       |  2 +-
 src/hb-ot-shape-complex-arabic.cc |  2 +-
 3 files changed, 26 insertions(+), 5 deletions(-)

commit 524411224054b23bab4adad7343314df45c9c183
Merge: 2aae617a 269eb456
Author: Cosimo Lupo <cosimo@anthrotype.com>
Date:   Mon Jul 16 14:42:43 2018 +0200

    Merge pull request #1094 from anthrotype/fix-appveyor-msys2

    appveyor.yml: try updating msys2 to fix failing mingw-w64-x86_64 build

commit 269eb45650be66901627da7f1014339065a948a5
Author: Cosimo Lupo <cosimo@anthrotype.com>
Date:   Mon Jul 16 14:14:42 2018 +0200

    appveyor.yml: try only updating msys2 core, not the rest of the
    packages

    maybe it'll get a bit faster

 appveyor.yml | 1 -
 1 file changed, 1 deletion(-)

commit 3ab52c6cb5c405366af804d278216e2d02a39ecb
Author: Cosimo Lupo <cosimo@anthrotype.com>
Date:   Mon Jul 16 12:57:27 2018 +0200

    appveyor.yml: pass --needed option to pacman

    so it won't attempt reinstalling packages which are already installed

 appveyor.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 5631d70d36aa7952d343ea794bd5169a730706ae
Author: Cosimo Lupo <cosimo@anthrotype.com>
Date:   Mon Jul 16 12:41:59 2018 +0200

    appveyor.yml: try updating msys2 to fix failing mingw-w64-x86_64 build

    https://github.com/harfbuzz/harfbuzz/pull/1093#issuecomment-405201903
    https://ci.appveyor.com/project/harfbuzz/harfbuzz/build/job/ky7lao1ii1bi7ew4#L71

 appveyor.yml | 2 ++
 1 file changed, 2 insertions(+)

commit 2aae617a84f47836f10efd30df43e13e3a9447e1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 11 17:27:23 2018 +0200

    Move _hb_alignof later again

    It uses constexpr...

 src/hb-private.hh | 26 +++++++++++++-------------
 1 file changed, 13 insertions(+), 13 deletions(-)

commit f3a74c16ecafdca135a647ebe85117c35c1ef585
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 11 17:23:53 2018 +0200

    Make hb_vector_t 8 bytes smaller

 src/hb-dsalgs.hh | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

commit 44999f8b758374015f5d48c83f9adcb464607c2f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 11 17:00:59 2018 +0200

    Align NullPool and CrapPool to HB_VECTOR_SIZE

 src/hb-dsalgs.hh  |  3 +--
 src/hb-private.hh | 64
 ++++++++++++++++++++++++++++++++-----------------------
 src/hb-static.cc  |  4 ++--
 3 files changed, 40 insertions(+), 31 deletions(-)

commit 20a318d06acaabdee0090339dfa621aab46f1441
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 11 17:00:13 2018 +0200

    Fix return type of alignof() fallback

 src/hb-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 58cb4d9f73f1292454e3673d5e7ae5a58a566522
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 11 16:44:21 2018 +0200

    Minor

 test/api/test-ot-math.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 7796857c93b779e3c93eedd1cceb217d691dfd81
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 11 15:27:37 2018 +0200

    Minor

 RELEASING.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2b76767bf572364d3d647cdd139f2044a7ad06b2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 11 15:27:13 2018 +0200

    1.8.3

 NEWS             | 8 ++++++++
 configure.ac     | 2 +-
 src/hb-version.h | 4 ++--
 3 files changed, 11 insertions(+), 3 deletions(-)

commit 718dfd4189275b1e4233dc7c12ab457352fccfcb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 10 16:34:31 2018 +0200

    Fix shift

 src/hb-dsalgs.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 25aa411ac524ed08624033da473a5e050ff41633
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 10 16:05:03 2018 +0200

    Put back include dependencies

 src/hb-object-private.hh | 2 ++
 src/hb-private.hh        | 7 ++++---
 2 files changed, 6 insertions(+), 3 deletions(-)

commit 491d93bf74dd0483715ecca430715b69664e1211
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 10 16:03:31 2018 +0200

    Move more stuff from hb-private.hh to hb-dsalgs.hh

 src/hb-debug.hh   |   1 +
 src/hb-dsalgs.hh  | 237
 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-private.hh | 246
 +-----------------------------------------------------
 3 files changed, 240 insertions(+), 244 deletions(-)

commit f477765661c196ac17b2c86731881a3da36a5ae6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 10 15:49:05 2018 +0200

    Move more stuff to hb-dsalgs.hh

 src/hb-dsalgs.hh  | 83
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-private.hh | 81
 -----------------------------------------------------
 2 files changed, 83 insertions(+), 81 deletions(-)

commit be7f664f723fb4e7bcf15c1c2b7c6bec46f90393
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 10 15:23:08 2018 +0200

    Move hb_bytes_t to hb-dsalgs.hh

 src/hb-dsalgs.hh  | 45 ++++++++++++++++++++++++++++++++++-----------
 src/hb-private.hh | 26 --------------------------
 2 files changed, 34 insertions(+), 37 deletions(-)

commit 7a00f7eb2e3859db4563071934e76142bfd13916
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 10 14:42:10 2018 +0200

    Remove hb_auto_array_t

 src/hb-dsalgs.hh | 2 --
 1 file changed, 2 deletions(-)

commit be458eb05962dd5f5c60a25f54cf0b20e7d8b055
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 10 14:41:04 2018 +0200

    Include more basic internal headers from hb-private.hh

 src/hb-blob-private.hh               | 2 --
 src/hb-blob.cc                       | 1 -
 src/hb-buffer-private.hh             | 1 -
 src/hb-common.cc                     | 2 --
 src/hb-coretext.cc                   | 1 -
 src/hb-directwrite.cc                | 1 -
 src/hb-face-private.hh               | 1 -
 src/hb-font-private.hh               | 1 -
 src/hb-ft.cc                         | 1 -
 src/hb-map-private.hh                | 1 -
 src/hb-object-private.hh             | 4 ----
 src/hb-open-type-private.hh          | 1 -
 src/hb-ot-layout-common-private.hh   | 1 -
 src/hb-ot-layout-gsubgpos-private.hh | 1 -
 src/hb-ot-shape-complex-arabic.cc    | 1 -
 src/hb-private.hh                    | 6 +++++-
 src/hb-set-private.hh                | 1 -
 src/hb-shape-plan-private.hh         | 1 -
 src/hb-shape-plan.cc                 | 1 -
 src/hb-subset-input.cc               | 1 -
 src/hb-subset-plan.hh                | 1 -
 src/hb-subset.cc                     | 1 -
 src/hb-unicode-private.hh            | 1 -
 src/hb-uniscribe.cc                  | 1 -
 src/hb-warning.cc                    | 4 +---
 25 files changed, 6 insertions(+), 32 deletions(-)

commit bddeb2b10ca2f4b4bee6f7eaaf5615875a67111d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 10 14:12:37 2018 +0200

    Minor renamings of internal inline functions

 src/hb-buffer.cc               |  4 ++--
 src/hb-dsalgs.hh               |  2 +-
 src/hb-map-private.hh          |  2 +-
 src/hb-open-type-private.hh    |  4 ++--
 src/hb-ot-cmap-table.hh        |  2 +-
 src/hb-ot-hdmx-table.hh        |  2 +-
 src/hb-ot-layout-gpos-table.hh |  4 ++--
 src/hb-ot-layout-gsub-table.hh |  2 +-
 src/hb-ot-map.cc               |  4 ++--
 src/hb-ot-shape.cc             |  4 ++--
 src/hb-private.hh              | 27 ++++++++++++++-------------
 src/hb-set-private.hh          |  6 +++---
 src/hb-subset.cc               |  2 +-
 13 files changed, 33 insertions(+), 32 deletions(-)

commit d652ef299d123f28409e755ed2d2411295293f19
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 10 14:05:00 2018 +0200

    Move hb_vector_t and hb_lockable_set_t to hb-dsalgs.hh

 src/hb-dsalgs.hh  | 311
 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-private.hh | 315
 ------------------------------------------------------
 2 files changed, 311 insertions(+), 315 deletions(-)

commit 9e53b083295ad910a87e778ebd16cbe69ebe2130
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 10 14:03:58 2018 +0200

    Move hb_stable_sort to hb-dsalgs.hh

    Also, include hb-dsalgs.hh from end of hb-pricate.hh

 src/hb-dsalgs.hh                | 51
 +++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-os2-unicode-ranges.hh |  1 -
 src/hb-ot-post-table.hh         |  1 -
 src/hb-private.hh               | 51
 ++---------------------------------------
 4 files changed, 53 insertions(+), 51 deletions(-)

commit 39f11d8e72c6b2568f3b70847c6c9d1f374cd49c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 10 14:01:39 2018 +0200

    Minor

 src/hb-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 763f878cc0595162255c58ffe7a82ac1ca51cb0b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 10 13:47:41 2018 +0200

    Fix syntax

    Oops.

 src/hb-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 83ea277178544cd7e417bdfb7b600ede94910e13
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 10 13:17:27 2018 +0200

    Add posix_memalign() fallback

 configure.ac      |  2 +-
 src/hb-private.hh | 40 ++++++++++++++++++++++++++++++++++++++++
 2 files changed, 41 insertions(+), 1 deletion(-)

commit 292c100d6141eb2e981fa632602d73768f748727
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 10 13:16:52 2018 +0200

    Always compile (but not use) alignof() and round() fallback codes

    Catches compile-errors in them better.

 src/hb-private.hh | 23 ++++++++++++-----------
 1 file changed, 12 insertions(+), 11 deletions(-)

commit 27c5317d918971c2fb67c213621a19ac790440e4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 10 13:03:42 2018 +0200

    Fix alignof impl

 src/hb-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit bca83618cda7ee4f683b4685d10db9e1bef4983c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 10 12:58:13 2018 +0200

    Add fallback implementation for constexpr and alignof

 src/hb-private.hh | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

commit 7cb47d0f3f202843ebc7fb8801bf388bb90ba3aa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 10 12:51:29 2018 +0200

    Minor

 src/hb-set-private.hh | 1 +
 1 file changed, 1 insertion(+)

commit bf9e9676dda686f5b76826b4e3148f4a0b512e3c
Merge: 46d8f0d5 53f73409
Author: Cosimo Lupo <cosimo@anthrotype.com>
Date:   Mon Jul 9 20:24:22 2018 +0200

    Merge pull request #1091 from anthrotype/fix-gen-def-py

    gen-def.py: pass headers as arguments so that msys2 can convert
    posix paths

commit 53f73409a91241765ae6a0cadf7600676988b6af
Author: Cosimo Lupo <cosimo@anthrotype.com>
Date:   Mon Jul 9 18:54:23 2018 +0100

    CMakeLists.txt: don't pass header args as single space-separated
    string

    let python's parse command-line args as usual

 CMakeLists.txt | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 83d2233a5c47cf1feadcdece5bd4a6b498c6ee7a
Author: Cosimo Lupo <cosimo@anthrotype.com>
Date:   Mon Jul 9 18:48:20 2018 +0100

    CMakeLists.txt: pass headers as arguments to gen-def.py; call using
    PYTHON_EXECUTABLE

 CMakeLists.txt | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ccdd15655480fe35226c0b757e28d3527fe2e6af
Author: Cosimo Lupo <cosimo@anthrotype.com>
Date:   Mon Jul 9 18:26:44 2018 +0100

    src/Makefile.am: pass headers to gen-def.py as arguments, not env vars

 src/Makefile.am | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit e3a931ef0b86419b5e4ba17de51535393471ed9d
Author: Cosimo Lupo <cosimo@anthrotype.com>
Date:   Mon Jul 9 18:11:29 2018 +0100

    gen-def.py: pass headers as arguments so that msys2 can convert
    posix paths

    When one is not using the msys2 python, the header files that are
    passed in as environment
    variable cannot be found.

    https://ci.appveyor.com/project/fonttools/ttfautohint-py/build/1.0.65/job/rkremny4jjid9nl2#L803

    This is because msys2 shell and make use POSIX paths
    (e.g. /c/Users/clupo/...)
    whereas non-msys2 python.exe uses native Windows paths
    (e.g. C:\Users\clupo\...).

    Msys2 will automatically convert command line arguments (but not
    environment variables) from
    POSIX to Windows paths when calling a native win32 executable,
    so we pass the header paths
    as arguments instead of environment variables.

    This way the gen-def.py script can support both mingw python running
    in an MSYS2 shell, and
    native win32 python.

 src/gen-def.py | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

commit 46d8f0d5521c3dd0b10c78e66153faefdb9046db
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Fri Jul 6 15:47:03 2018 -0400

    Do not enforce a native direction of LTR for Runic

    Fixes #481

 src/hb-common.cc | 1 +
 1 file changed, 1 insertion(+)

commit 936dadc6610666aa5781e8662b859f18f9baa636
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Sat Jul 7 11:08:17 2018 -0400

    Regenerate the USE table for Grantha and Bhaiksuki (#1090)

    Completes #1037 and fixes #1035.

 src/hb-ot-shape-complex-use-table.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 1ebaa090d80bf0b59308d2c70f5e58dd8da47450
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 5 14:04:13 2018 +0430

    Disable vectorization

    Disable vectorization for now.  To correctly use them, we should
    use posix_memalign() to allocate them.  Otherwise, can cause
    misaligned access.

    https://bugs.chromium.org/p/chromium/issues/detail?id=860184

 src/hb-private.hh | 12 ++++++++++++
 1 file changed, 12 insertions(+)

commit 18a06f8a662ca7a9e63f74c6443e24a035c40655
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 5 14:03:48 2018 +0430

    Fix warning

    ../../src/hb-ot-layout-gsubgpos-private.hh:391:18: warning:
    missed loop optimization, the loop counter may overflow
    [-Wunsafe-loop-optimizations]

 src/hb-ot-layout-gsubgpos-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 058708a665cdd9e796581dbcf60a5778d3f5e240
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 5 13:16:00 2018 +0430

    Allow disabling vector_size use

 src/hb-private.hh | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

commit d8a7dedc83042c5a643195172830acf78f2e59ff
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Jul 4 15:33:39 2018 +0430

    Use CreateFileW explicitly and pass wchar_t to it (#1087)

 src/hb-blob.cc | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

commit 9940504e933d6766f87dca7fccc3c2f889976a22
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 3 14:29:25 2018 +0430

    [indic] Adjust left-matra repositioning and Halant,ZWJ sequence

    From the new code (first paragraph is from the OT Devanagari spec.):

      /*   o Reorder matras:
       *
       *     If a pre-base matra character had been reordered before
       applying basic
       *     features, the glyph can be moved closer to the main consonant
       based on
       *     whether half-forms had been formed. Actual position for
       the matra is
       *     defined as “after last standalone halant glyph, after
       initial matra
       *     position and before the main consonant”. If ZWJ or ZWNJ
       follow this
       *     halant, position is moved after it.
       *
       * IMPLEMENTATION NOTES:
       *
       * It looks like the last sentence is wrong.  Testing, with Windows
       7 Uniscribe
       * and Devanagari shows that the behavior is best described as:
       *
       * "If ZWJ follows this halant, matra is NOT repositioned after
       this halant.
       *  If ZWNJ follows this halant, position is moved after it."
       *
       * Test case, with Adobe Devanagari or Nirmala UI:
       *
       *   U+091F,U+094D,U+200C,U+092F,U+093F
       *   (Matra moves to the middle, after ZWNJ.)
       *
       *   U+091F,U+094D,U+200D,U+092F,U+093F
       *   (Matra does NOT move, stays to the left.)

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1070

    Test case added with Adobe Devanagari.

 src/hb-ot-shape-complex-indic.cc                   |  37
 +++++++++++++++++++++
 .../8116e5d8fedfbec74e45dc350d2416d810bed8c4.ttf   | Bin 0 -> 4364 bytes
 .../data/in-house/tests/indic-joiners.tests        |   4 +++
 3 files changed, 41 insertions(+)

commit 2cb075fe26201f3e370fccfff6c1bc242b5acc79
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 3 13:04:05 2018 +0430

    Fix unused function '_hb_mapped_file_destroy' if no mmap

 src/hb-blob.cc | 2 ++
 1 file changed, 2 insertions(+)

commit 343e8c694b03eea625523229a9468fbb456e3aea
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 3 12:43:59 2018 +0430

    1.8.2

 NEWS             | 8 ++++++++
 configure.ac     | 2 +-
 src/hb-version.h | 4 ++--
 3 files changed, 11 insertions(+), 3 deletions(-)

commit 29e7879bcf3fe955a0be3bb41e929e68f39ad01e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 3 12:38:21 2018 +0430

    Disable .dfont code for now

    The get_table imple was wrong, as table offsets in a dfont are
    relative to the resource.  We were treating them as relative to
    the big blob itself.  To be fixed.

    Part of https://github.com/harfbuzz/harfbuzz/pull/1085

 src/hb-open-file-private.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 32348a43c154eac6bfb21b9e8044b38ed763601e
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Jul 1 15:32:43 2018 +0430

    Fix trak table apply logic

    In collaboration with Behdad

 src/hb-aat-layout-trak-table.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 225b92b7d4437360f8779850ee0aae85966679b5
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Jul 1 14:32:00 2018 +0430

    Support dfont font files (#949)

 src/hb-open-file-private.hh | 196
 ++++++++++++++++++++++++++++++++++++++++++++
 src/hb-open-type-private.hh |   1 +
 src/main.cc                 |   3 +
 3 files changed, 200 insertions(+)

commit 5d8cafcf6a47ce73afff06499f6be23c72ab6797
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Jul 1 01:54:14 2018 +0430

    Improve nommap naming and use C style comments on create_from_file
    (#1084)

 .circleci/config.yml |  2 +-
 src/hb-blob.cc       | 16 ++++++++--------
 2 files changed, 9 insertions(+), 9 deletions(-)

commit d3c0980ac234698627cb281e5526cc99139eed30
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 30 15:59:25 2018 +0430

    Adjust MarkBasePos heuristic in presence of MultipleSubst

    From the issue:
    "In this font, the virama,ya first forms a ligature, then decomposes
    back to
    virama,ya. This causes those two to be marked parts of a MultipleSubst
    sequence. When attaching the matra, we look for the first of the
    MultipleSubst
    sequence because that's where we attach to (because of eg #740). In
    this case,
    the first glyph in the MultipleSubst sequence is a mark, so we skip
    it and
    attach to the base char before it."

    Font in question is Nirmala UI from Windows 10. Test sequence:

      U+0926,U+094D,U+092F,U+0941

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1020

 src/hb-ot-layout-gpos-table.hh | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 8b9cbe3b24be2ae0166e682103e22ec916316ecf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 30 12:28:03 2018 +0430

    [indic] Tweak for old-spec Bengali and halant-ya-halant

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1073

 src/hb-ot-shape-complex-indic.cc | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

commit 9541c9dae10156fb61e4786545d1976cdcfb6bda
Author: punchcutter <zarijoscha@gmail.com>
Date:   Sun Jun 24 22:54:57 2018 -0700

    Rebase and update USE overrides for Bhaiksuki Gap Fillers and
    Grantha Anusvara

 src/gen-use-table.py | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

commit 7b8dfac560abe89d48cfc2f6efb4a61820bd28bf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 30 09:16:54 2018 +0430

    [khmer] Fix infinite-loop in cluster merging

    Indic shaper already had this check.  We removed it when forking
    Khmer shaper by mistake.

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

 src/hb-ot-shape-complex-khmer.cc | 31 +++++++++++++++++--------------
 1 file changed, 17 insertions(+), 14 deletions(-)

commit 25970a93aa6596d50ae538c6274625f95153572c
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Jun 28 14:32:36 2018 +0430

    armcc compatibility, don't use EINTR if doesn't exist

    Fixes #1081

 src/hb-blob.cc | 2 ++
 1 file changed, 2 insertions(+)

commit 8a51f91b7035bbfaf39af1b962faf1613d2ea3b7
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Jun 28 13:22:21 2018 +0430

    Minor on hb_blob_create_from_file, reuse ferror result

    Oops

 src/hb-blob.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 71971800ed1c0501a58e6ff7730e3cebec2ef2f8
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Jun 27 18:14:52 2018 +0430

    [ci] Don't fail on apt update and revive clang-O3-O0

 .circleci/config.yml | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 7b4099f35f766d33d483a4b9d0805ef16020ea23
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Jun 27 16:54:44 2018 +0430

    Minor, rename blob to data on blob_from_file

 src/hb-blob.cc | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

commit fa090ed4d47df12b2e611c9a667c398742f7e4ba
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Jun 27 14:13:26 2018 +0430

    Minor touches on hb_blob_create_from_file (#1079)

    * Handle EINTR on fallback reader
    * Increase fallback reader limitation size limitation to 2 << 28
    * Ensure _O_BINARY does exist if MMAP is used on Windows
      (maybe superfluous but makes me more confident)

 src/hb-blob.cc | 22 +++++++++++++---------
 1 file changed, 13 insertions(+), 9 deletions(-)

commit 01dff1ea1aa871fa19a92c2afd63c8cb5dd6e455
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 26 18:00:58 2018 -0400

    Make round() fallback portable to systems that do have round()

    Makes compiling without HAVE_ROUND on systems that do have it work.

 src/hb-private.hh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 7db2e9ea38329b9393c9e8cc905b180735c9b0f4
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Jun 26 10:46:10 2018 +0430

    Minor on hb_blob_create_from_file

    Add one more "unlikely" annotation and use explicit nullptr check
    for more consistency.

 src/hb-blob.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 4f8753464ae44dfb60bee81ede10448175db7b90
Author: Garret Rieger <grieger@google.com>
Date:   Fri Jun 22 15:29:34 2018 -0700

    [subset] Add fuzzer test case that caused a timeout to the corpus.

 ...testcase-minimized-hb-subset-fuzzer-5750092395970560 | Bin 0 ->
 72435 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)

commit 35ce8f31d37cf7c2a1f8265d36ba4c2c9a3efb2c
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Jun 25 22:23:43 2018 +0430

    Unify our pipe reader with the fallback reader (#1068)

    And assign one bot to use the path always using NOMMAPFILEREADER
    token.

    It's limited to 200mb so no more fun with using /dev/zero on hb-view!

 .circleci/config.yml |   6 +-
 src/hb-blob.cc       | 152
 ++++++++++++++++++++++-----------------------------
 2 files changed, 68 insertions(+), 90 deletions(-)

commit f57804a8a596e88843ddc8b88afac7526349b89b
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Jun 25 18:45:49 2018 +0430

    Resolve ttx absolute path before use (#1075)

 test/subset/run-tests.py | 101
 ++++++++++++++++++++++++++---------------------
 1 file changed, 57 insertions(+), 44 deletions(-)

commit 159ddb872986f121818e816d2ea75d271075ba1f
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Jun 24 23:09:16 2018 +0430

    Treat - just as /dev/stdin and remove one extra file reader (#1065)

 util/options.cc | 27 +++++++++------------------
 1 file changed, 9 insertions(+), 18 deletions(-)

commit b2a187918757a0faaf0f564ec2b0766c09fa364c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 23 10:32:28 2018 -0400

    In Coverage iterator, bail out if table smells

    In particular, if CoverageFormat2 has unsorted ranges, bail out.
    Otherwise, 64k ranges of each 64k glyphs can DoS closure() method.

    We can do the same for CoverageFormat1, but that one does not expose
    the quadratic behavior, so, fine.

 src/hb-ot-layout-common-private.hh | 17 +++++++++++++++--
 1 file changed, 15 insertions(+), 2 deletions(-)

commit 941f2b85489b344698bf036922c589483034a7f2
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Jun 18 20:35:40 2018 +0430

    Support pipe and friends on hb_blob_create_from_file (#1061)

    With this hb-view/hb-shape support pipes and possibly socket and
    named pipe
    also, anything fails just on mmap.

    We can later do the same for Windows also.

    This however reveals two issues, the fact most of our bots don't
    have HAVE_MMAP and using
    this instead the other fread/fopen reader can make failure on CI. I
    should look at them separately
    this change however is very low risk I believe.

 src/hb-blob.cc | 44 +++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 43 insertions(+), 1 deletion(-)

commit d0c2889dfc43da92c76d6eab5482b1298744dc9c
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Jun 18 19:59:33 2018 +0430

    Revert file blob sanitization and index checking (#1062)

    As
    https://github.com/harfbuzz/harfbuzz/pull/1059#issuecomment-397912812
    we
    like to still work with blobs that harfbuzz itself can't handle
    directly that are failing sanitization
    currently apparently.

 util/options.cc | 12 ++----------
 util/options.hh |  2 +-
 2 files changed, 3 insertions(+), 11 deletions(-)

commit c53697d3f2a3fae8b68ec4c5146c7000a07e0963
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Jun 17 17:04:55 2018 +0430

    Verbose fail when something is wrong with hb-shape/hb-view input
    font file (#1059)

    This checks if the blob isn't empty and uses `hb_face_count`
    to see if the font file passes the simple font file sanitization
    so can detect if the input is actually a font and checks also
    whether input font-index is out of range.

 util/options.cc | 11 +++++++++++
 1 file changed, 11 insertions(+)

commit aa0c5df4199ef4e96df2b856c8f629e49fdd5120
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Jun 17 16:49:34 2018 +0430

    Fix reading fonts from stdin (#1060)

    We were passing the font path directly to freetype so rendering
    was broken when we are getting the font from stdin.

    This fixes it by using FT_New_Memory_Face instead.

    This fixes:
    * build/util/hb-view /dev/stdin text < font.ttf
    * build/util/hb-view - text < font.ttf
    * cat font.ttf | build/util/hb-view - text

    but doesn't work on
    * cat font.ttf | build/util/hb-view /dev/stdin text

    which I will try to fix separately.

 util/helper-cairo.cc | 14 ++++++++++----
 util/options.cc      |  5 ++---
 util/options.hh      |  4 +++-
 3 files changed, 15 insertions(+), 8 deletions(-)

commit 3654d9be6b017e66307fe0ffe635266938b14702
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 12 19:38:04 2018 -0400

    1.8.1

 NEWS             | 8 ++++++++
 configure.ac     | 2 +-
 src/hb-version.h | 4 ++--
 3 files changed, 11 insertions(+), 3 deletions(-)

commit f3e58ab8a957cdf36bddef793c473664744885a7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 12 19:32:04 2018 -0400

    [docs] Enlist misc new symbols

 RELEASING.md               |  3 ++-
 docs/harfbuzz-sections.txt | 24 +++++++++++++++++++++++-
 2 files changed, 25 insertions(+), 2 deletions(-)

commit f6893ef82c51a35dd075973b2041b1b19f81faff
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 12 19:20:20 2018 -0400

    Move hb-version.h generation to Makefile

    Fixes https://github.com/harfbuzz/harfbuzz/issues/864

    Unfortunately 1.7.7 and 1.8.0 went out with the wrong hb-version.h
    contents.

 configure.ac     |  1 -
 src/Makefile.am  | 21 ++++++++++++++++-----
 src/hb-version.h |  6 +++---
 3 files changed, 19 insertions(+), 9 deletions(-)

commit cc0b04f48f261c1deb8f4142e7ae0222fbec67fb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 12 18:24:54 2018 -0400

    [subset] Remove HB_SUBSET_BUILTIN

    Just include hb-static.cc in libharfbuzz-subset.so source list as
    well.  Those building it built-in will include hb-static.cc once
    already.  No need for any gymnastics.

 src/Makefile.sources | 1 +
 src/hb-subset.cc     | 5 -----
 2 files changed, 1 insertion(+), 5 deletions(-)

commit ba0ea56efab9caa942d59bf51c78e490969cab87
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jun 11 23:24:41 2018 -0400

    [substitute-closure] Rename function for clarity

 src/hb-ot-layout-gsub-table.hh       | 4 ++--
 src/hb-ot-layout-gsubgpos-private.hh | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

commit 7b5ce416383101cb9d72a775a32d0088984e6817
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jun 11 23:23:40 2018 -0400

    Whitespace

 src/hb-ot-layout-gsub-table.hh | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit c4d0d11c55f018026fc9c1db75fe7a4f8a38f81f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jun 11 22:11:45 2018 -0400

    [vector] Always 0-fill new items

 src/hb-private.hh | 3 +++
 1 file changed, 3 insertions(+)

commit a7e1b4a3b2d7b853ca244156571dd83321739bb1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jun 11 22:05:08 2018 -0400

    Fix compiler warning re reordering of initializations

 src/hb-ot-layout-gsubgpos-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit f56cd9df10824fbbef52172470d07ff673d460cc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jun 11 22:02:38 2018 -0400

    Style

 src/hb-ot-layout.cc | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit a95cde15af4aa34e76c4394dfdf17e7d25164d5b
Author: Jonathan Kew <jfkthame@gmail.com>
Date:   Mon Jun 11 18:09:35 2018 -0700

    [hb-set] Additional testcase for hb-set-intersect.

 test/api/test-set.c | 6 ++++++
 1 file changed, 6 insertions(+)

commit 82484b05ca7a51dec6f3f9e9b0d7967823d7657f
Author: Jonathan Kew <jfkthame@gmail.com>
Date:   Mon Jun 11 20:55:14 2018 -0700

    [hb-set] Don't shrink vectors until after processing their contents.

    Fixes #1054.

 src/hb-set-private.hh | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

commit eb585033cae33ca069bbcdaa21e4074678b6a6e9
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Jun 11 03:47:43 2018 +0430

    Fetch the updated dwrite_1.h header from a better place

    Following to
    https://ci.appveyor.com/project/harfbuzz/harfbuzz/build/1.0.1693/job/mfkjdhcdykjuqdfc

 appveyor.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b8e406f0c7c381d46e2d2bbe35a6107d560f2122
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jun 10 17:22:38 2018 -0400

    More fixes for SunStudio 12.6 build

    Followup to https://github.com/harfbuzz/harfbuzz/pull/1053

 src/hb-ft.cc     | 8 ++++----
 src/hb-subset.cc | 2 +-
 2 files changed, 5 insertions(+), 5 deletions(-)

commit 498e4373dc2eb98fa9b18a0824c7912ed84a4c80
Author: prrace <philip.race@oracle.com>
Date:   Sat Jun 9 16:04:28 2018 -0700

    Fix SunStudio 12.6 build (#1053)

 src/hb-face.cc    | 2 +-
 src/hb-private.hh | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 46f7e7760f4c9b1b2886a27eff3c0fabdab45dbe
Author: Garret Rieger <grieger@google.com>
Date:   Thu Jun 7 15:55:45 2018 -0700

    [subset] Use REPLACEME instead of version.

 src/hb-subset-input.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit fc246ec985890f8256f6e03cdf74c86b9b51ff2a
Author: Garret Rieger <grieger@google.com>
Date:   Thu Jun 7 15:54:19 2018 -0700

    [subset] Move variable declaration out of loop.

 test/api/test-subset-glyf.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 197cb18b22ce11f32f5f2c68c13f7068fb5cc338
Author: Garret Rieger <grieger@google.com>
Date:   Thu Jun 7 15:32:52 2018 -0700

    [subset] Add test cases for gsub closure in subsetting.

 test/api/fonts/Roboto-Regular.gsub.fi.ttf   | Bin 0 -> 2652 bytes
 test/api/fonts/Roboto-Regular.gsub.fil.ttf  | Bin 0 -> 3228 bytes
 test/api/fonts/Roboto-Regular.nogsub.fi.ttf | Bin 0 -> 1856 bytes
 test/api/test-subset-glyf.c                 |  52
 ++++++++++++++++++++++++++++
 4 files changed, 52 insertions(+)

commit 37eab27be3b88079614f66e484c700bb2d40af10
Author: Garret Rieger <grieger@google.com>
Date:   Thu Jun 7 14:39:03 2018 -0700

    [subset] Add fuzzing of gsub closure to hb-subset-fuzzer.

 test/fuzzing/hb-subset-fuzzer.cc | 27 ++++++++++++++++++++-------
 1 file changed, 20 insertions(+), 7 deletions(-)

commit feb23892a36a7c855306db6d21521d5e8362bdf7
Author: Garret Rieger <grieger@google.com>
Date:   Thu Jun 7 14:32:34 2018 -0700

    [subset] Use gsub closure if ot layout is not being dropped.

 src/hb-ot-layout.cc   | 10 ++++++++--
 src/hb-subset-plan.cc | 20 ++++++++++++++++++--
 2 files changed, 26 insertions(+), 4 deletions(-)

commit a5673da9be70f2ba0ff79aab4bd9a4480cb0223e
Author: Garret Rieger <grieger@google.com>
Date:   Thu Jun 7 14:23:03 2018 -0700

    [subset] Add drop_ot_layout setting to subset input.

 src/hb-subset-input.cc   | 17 +++++++++++++++++
 src/hb-subset-plan.cc    |  1 +
 src/hb-subset-plan.hh    |  1 +
 src/hb-subset-private.hh |  1 +
 src/hb-subset.cc         |  3 ++-
 src/hb-subset.h          |  3 +++
 6 files changed, 25 insertions(+), 1 deletion(-)

commit 57badadb769d0bcdbee00afce3af4972bc5c6bf1
Author: Garret Rieger <grieger@google.com>
Date:   Wed Jun 6 16:02:51 2018 -0700

    [subset] add a new closure call to hb-ot-layout that can compute
    the closure over multiple lookups.

 src/hb-ot-layout.cc | 26 ++++++++++++++++++++++++++
 src/hb-ot-layout.h  |  6 ++++++
 src/hb-ot-shape.cc  | 10 +---------
 3 files changed, 33 insertions(+), 9 deletions(-)

commit 11f1f4131b722f0e0338bee222a78110806f5a3d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 6 16:46:50 2018 -0700

    [set] Add is_subset

    New API:
    +hb_set_is_subset()

 src/hb-set-private.hh       | 13 +++++++++++++
 src/hb-set.cc               | 22 ++++++++++++++++++++--
 src/hb-set.h                |  4 ++++
 test/api/test-set.c         |  4 ++++
 test/api/test-subset-glyf.c | 11 +++++------
 5 files changed, 46 insertions(+), 8 deletions(-)

commit 45186b9b8cbffa7b5c8509624fb431a0f79f5130
Author: Garret Rieger <grieger@google.com>
Date:   Tue Jun 5 17:14:42 2018 -0700

    [subset] Add memoization of GSUB lookup closures.

 src/hb-ot-layout-gsub-table.hh       | 15 +++++++++++++--
 src/hb-ot-layout-gsubgpos-private.hh | 20 ++++++++++++++++++++
 src/hb-ot-layout.cc                  |  6 ++++--
 3 files changed, 37 insertions(+), 4 deletions(-)

commit 78d92e0f27e8b688efac014526ef5c4f1f53a58f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 6 15:24:43 2018 -0700

    Minorish

 src/hb-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 676b19f0d1d21629b654e69f220bf53965735940
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 6 15:23:35 2018 -0700

    Compiler gymnastics

    Part of https://github.com/harfbuzz/harfbuzz/issues/630

 src/hb-private.hh | 3 +++
 1 file changed, 3 insertions(+)

commit 0a5952e8ddb3ec955496d582ef5a559a27684a0c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 6 14:55:30 2018 -0700

    Move prime_for back into map

    This was causing problem on systems without visibility when map
    was used
    from both libharfbuzz and libharfbuzz-subset. Sigh.

    https://ci.appveyor.com/project/harfbuzz/harfbuzz/build/1.0.1669/job/dey47nmff0770vp3

 src/hb-map-private.hh | 53
 ++++++++++++++++++++++++++++++++++++++++++++++++++-
 src/hb-private.hh     |  3 ---
 src/hb-static.cc      | 51
 -------------------------------------------------
 3 files changed, 52 insertions(+), 55 deletions(-)

commit a2a1484ef93d5b5c3748b15219eca669d866b0a9
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Wed Jun 6 12:57:28 2018 -0400

    Convert Consonant_Initial_Postfixed to CONS_FINAL

    Consonant_Initial_Postfixed was split off of
    Consonant_Succeeding_Repha,
    so it should correspond to the same USE class, CONS_FINAL.

 src/gen-use-table.py                 | 5 +++--
 src/hb-ot-shape-complex-use-table.cc | 2 +-
 2 files changed, 4 insertions(+), 3 deletions(-)

commit 37986aa9b7ac44b1c4c50ebba9902d06cc8a45e0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 5 18:04:40 2018 -0700

    1.8.0

 NEWS         | 5 +++++
 configure.ac | 2 +-
 2 files changed, 6 insertions(+), 1 deletion(-)

commit 9d3cd13c30d8df41a2f7ff6c4208a1b2d75ddd64
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 5 17:59:31 2018 -0700

    [ucdn] Update to Unicode 11

    https://github.com/grigorig/ucdn/issues/19

 src/hb-ucdn.cc        |    7 +
 src/hb-ucdn/ucdn_db.h | 2754
 ++++++++++++++++++++++++++-----------------------
 2 files changed, 1479 insertions(+), 1282 deletions(-)

commit 060e6b4a13a4224de885214d374b079610224123
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 5 17:31:46 2018 -0700

    Update to Unicode 11.0.0

    UCDN is not updated yet.

 src/gen-use-table.py                    | 13 +++--
 src/hb-common.cc                        |  5 ++
 src/hb-common.h                         | 11 ++++
 src/hb-ot-shape-complex-arabic-table.hh | 43 ++++++++++++---
 src/hb-ot-shape-complex-indic-table.cc  | 77 ++++++++++++++-------------
 src/hb-ot-shape-complex-private.hh      |  9 ++++
 src/hb-ot-shape-complex-use-machine.rl  |  2 +-
 src/hb-ot-shape-complex-use-table.cc    | 94
 +++++++++++++++++++++------------
 8 files changed, 170 insertions(+), 84 deletions(-)

commit 105a3b5e2d2ff228cdc1fbe8618f6c8fdfdabe9e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 5 15:31:04 2018 -0700

    Minor

 src/Makefile.am | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit 60c516789bab499c5a423f80071638955b7b13fd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 5 15:20:23 2018 -0700

    [RELEASING] Update

 RELEASING.md | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit df01f3e560d21900e234c4a6616bcf9c98f5f567
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 5 15:17:39 2018 -0700

    1.7.7

 NEWS           | 37 +++++++++++++++++++++++++++++++++++++
 RELEASING.md   |  5 +++--
 configure.ac   |  2 +-
 src/hb-blob.cc |  2 +-
 src/hb-face.cc |  2 +-
 src/hb-map.cc  | 28 ++++++++++++++--------------
 src/hb-map.h   |  2 +-
 7 files changed, 58 insertions(+), 20 deletions(-)

commit ba3b6d6c6512b58a3d0e5277fbbe4e69b085467d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jun 4 16:47:45 2018 -0700

    [khmer] Fix Coeng vs Halant confusion

    Test suite results are unchanged (34).

 src/hb-ot-shape-complex-khmer.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 8220ef8a54bcc94f122d50804c0a5e829de81be1
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Jun 5 22:50:53 2018 +0430

    Fix hb_face_count build issue

    I should've rebased #1002 before the merge, my bad

 src/hb-face.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 32da0c6bc4770568346f6c05fd6b374be2bbd2b2
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Jun 5 18:56:26 2018 +0430

    Add hb_face_count, a new API (#1002)

    Simply, it returns the number of faces on a font blob.

    To be used on hb-sanitizer tool but other clients also
    can benefit from it.

 TODO                       |  2 -
 docs/harfbuzz-sections.txt |  1 +
 src/hb-face.cc             | 95
 ++++++++++++++++++++++++++++------------------
 src/hb-face.h              |  4 ++
 4 files changed, 64 insertions(+), 38 deletions(-)

commit 4a115fe7fe71e381decb7c894208540663419f75
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jun 4 15:40:43 2018 -0700

    [sinhala] Move reph to after post-consonants

    Apparently this changed between Win 7 and Win 10.

    Fixes https://github.com/harfbuzz/harfbuzz/issues/967

    To be continued in https://github.com/harfbuzz/harfbuzz/issues/1044

 src/hb-ot-shape-complex-indic.cc                         |   2 +-
 test/shaping/data/in-house/Makefile.sources              |   1 +
 .../fonts/5af5361ed4d1e8305780b100e1730cb09132f8d1.ttf   | Bin 0 ->
 3152 bytes
 test/shaping/data/in-house/tests/sinhala.tests           |   1 +
 4 files changed, 3 insertions(+), 1 deletion(-)

commit 3e494caae3dc096339a46d5a3fdeb5a718de6911
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jun 4 15:38:05 2018 -0700

    [test] Fix record-test to use gids not glyph-names

    as those might not match what FontTools think of the glyphs if font
    does NOT have glyph names.

 test/shaping/record-test.sh | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

commit 58400a2ad8b18aeb1da40d6c327135cd62312316
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 2 20:30:09 2018 -0700

    Remove DISALLOW_* from vector, set, and map

    Some of the build bots, still fail on this.  I suppose mine pass
    because
    I enable C++11...

    Anyway, remove these again.

 src/hb-map-private.hh | 3 ---
 src/hb-private.hh     | 6 ------
 src/hb-set-private.hh | 3 ---
 src/hb-subset-plan.hh | 3 ++-
 4 files changed, 2 insertions(+), 13 deletions(-)

commit f9abbf83b6404bc9eb0c0983f562c9dbba1ef57c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 2 15:30:59 2018 -0700

    Fix fallout from 975bdd5ef562e37655067b703b2b9ca7481f4985

    Ouch!

 src/hb-ot-map-private.hh   | 40 ++++++++++++++++++++++------------------
 src/hb-ot-map.cc           | 11 +++++++++++
 src/hb-ot-post-table.hh    |  3 ++-
 src/hb-ot-shape-private.hh | 10 ++++++++--
 src/hb-ot-shape.cc         |  2 ++
 src/hb-subset.cc           |  2 ++
 6 files changed, 47 insertions(+), 21 deletions(-)

commit f7515769fd024faca888a47c58f87fb868b0e760
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 1 17:48:37 2018 -0700

    [vector] Use Crap pool in push() as well

 src/hb-coretext.cc      | 20 +++-----------------
 src/hb-ot-cmap-table.hh |  3 ++-
 src/hb-ot-layout.cc     |  3 +--
 src/hb-ot-map.cc        | 17 ++++-------------
 src/hb-ot-post-table.hh |  6 +-----
 src/hb-private.hh       | 11 ++++-------
 src/hb-subset-plan.cc   |  2 --
 src/hb-subset.cc        |  2 --
 src/hb-uniscribe.cc     | 28 ++++++++--------------------
 9 files changed, 23 insertions(+), 69 deletions(-)

commit 975bdd5ef562e37655067b703b2b9ca7481f4985
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 1 17:37:13 2018 -0700

    [vector] Keep success status

 src/hb-private.hh | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

commit 1ab3c3ed1bbc404086aefffaef4b8261bb77caa7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 1 17:34:24 2018 -0700

    [vector] Whitespace

 src/hb-private.hh | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

commit fb07d1a3ce896f8ebf8b5d5fef51dee91b6ead11
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 1 17:32:07 2018 -0700

    Another attempt at making every compiler happy...

    Sigh.

 src/hb-private.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 4f76f956bb3a95b307322cdad4f8d3b97851678e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 1 17:28:47 2018 -0700

    [map] Move prime_for to hb-static

 src/hb-map-private.hh | 53
 +--------------------------------------------------
 src/hb-private.hh     |  2 ++
 src/hb-static.cc      | 51
 +++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 54 insertions(+), 52 deletions(-)

commit 33d6f46bbbb4fdee110f1cb024a37ed2e46e5e22
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 1 17:25:35 2018 -0700

    [set] Shrink page-map size again

 src/hb-set-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 4ca211bce192b01644c82f721251604df935b603
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 1 17:18:57 2018 -0700

    Fix hb_vector_size_t

 src/hb-private.hh     | 4 ++--
 src/hb-set-private.hh | 3 ++-
 2 files changed, 4 insertions(+), 3 deletions(-)

commit a070dfd333f411bf720120eb332f7da93077054f
Author: Garret Rieger <grieger@google.com>
Date:   Thu May 31 16:47:39 2018 -0700

    [subset] Have the subset fuzzer pull the text string to subset to
    from the end of the fuzzer provided data.

 test/fuzzing/hb-subset-fuzzer.cc | 54
 +++++++++++++++++++++++++---------------
 1 file changed, 34 insertions(+), 20 deletions(-)

commit bb6f4adac70a161505953414aa85ba78cd993c65
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 1 16:30:38 2018 -0700

    Add Codacy badge

 README | 1 +
 1 file changed, 1 insertion(+)

commit a7dd90f519fb7ab046e92ea3b7101c21d5040bbc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 1 16:07:55 2018 -0700

    Revert "Remove HB_DISALLOW_COPY_AND_ASSIGN"

    This reverts commit ff92de766bf775bfdd3a01bda94de699180ff86a.

    Revert that and remove ASSERT_POD. Let's see which bots are
    unhappy with this configuration...

 src/hb-map-private.hh      | 3 +--
 src/hb-ot-shape-private.hh | 2 +-
 src/hb-private.hh          | 6 +++++-
 src/hb-set-private.hh      | 3 +--
 4 files changed, 8 insertions(+), 6 deletions(-)

commit 7b50bf52f274f75f0b41008e0eab150124ae928a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 31 20:20:17 2018 -0700

    Use NullPool for _hb_set_nil and _hb_map_nil

 src/hb-map.cc     | 12 +-----------
 src/hb-private.hh |  2 +-
 src/hb-set.cc     |  8 +-------
 3 files changed, 3 insertions(+), 19 deletions(-)

commit f040ca40ab3ebd4fdb85747477e0e656ab8b073e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 31 20:15:21 2018 -0700

    [set] Minor

 src/hb-set.cc | 2 --
 1 file changed, 2 deletions(-)

commit 7185b273b3d92ee0ba0a589eb94387f25ea40b82
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 31 20:03:00 2018 -0700

    Rename in_error to !successful

    Towards possibly using Null pool for some nil objects.

 src/hb-buffer-deserialize-json.hh    | 758
 +++++++++++++++++------------------
 src/hb-buffer-deserialize-json.rl    |   2 +-
 src/hb-buffer-deserialize-text.hh    | 510 +++++++++++------------
 src/hb-buffer-deserialize-text.rl    |   2 +-
 src/hb-buffer-private.hh             |   2 +-
 src/hb-buffer.cc                     |  24 +-
 src/hb-map-private.hh                |  10 +-
 src/hb-map.cc                        |   4 +-
 src/hb-ot-layout-gsubgpos-private.hh |   4 +-
 src/hb-ot-layout.cc                  |   2 +-
 src/hb-ot-shape-complex-hangul.cc    |   8 +-
 src/hb-ot-shape-complex-indic.cc     |   4 +-
 src/hb-ot-shape-complex-khmer.cc     |   4 +-
 src/hb-ot-shape-complex-myanmar.cc   |   2 +-
 src/hb-ot-shape-complex-thai.cc      |   4 +-
 src/hb-ot-shape-complex-use.cc       |   4 +-
 src/hb-ot-shape-normalize.cc         |  12 +-
 src/hb-ot-shape.cc                   |   2 +-
 src/hb-set-private.hh                |  28 +-
 src/hb-set.cc                        |   4 +-
 20 files changed, 696 insertions(+), 694 deletions(-)

commit 353f4d2efc6c0ce32f5bee08bbdf5a268d720a6a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 31 19:52:16 2018 -0700

    Fix a whitespace inconsistency

    Null() and Crap() are only places that there's no space before '('...

 src/dump-fon.cc   | 12 ++++++------
 src/hb-private.hh |  2 +-
 src/main.cc       |  2 +-
 3 files changed, 8 insertions(+), 8 deletions(-)

commit e36cd1dfd36ed336f63883098dc870c56a5fc10d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 31 19:31:39 2018 -0700

    Remove trivial HB_ATOMIC_INT_INIT()

 src/hb-atomic-private.hh | 9 +--------
 src/hb-object-private.hh | 2 +-
 2 files changed, 2 insertions(+), 9 deletions(-)

commit 550a70f8011c4c1cfd27d739469e79cb98bcdd6e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 31 19:28:04 2018 -0700

    Use 0 as inert object reference value instead of -1

    Towards using Null object for nil objects.

 src/hb-object-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit dcd1b07eeaf2c28f0d20b9812749810d069041e3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 31 17:58:40 2018 -0700

    Add const OffsetTo<> dereference

    Unused, but now that we have CrapPool, implement it.

 src/hb-open-type-private.hh | 6 ++++++
 1 file changed, 6 insertions(+)

commit 2baa357ac7fe2ae91029dff26a01b8ba1cc0b365
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu May 31 12:27:31 2018 +0430

    Fix symbol export issue of prime_mod on Alpine bot

    Apparently our gcc-6.4.0 on Alpine Linux distribution doesn't like
    defining static const
    inside a method, lets put that on outside the classes.

 src/hb-map-private.hh | 89
 ++++++++++++++++++++++++++-------------------------
 1 file changed, 45 insertions(+), 44 deletions(-)

commit 54800f8322e8ab106d801fc332b7e813c58138ac
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 30 16:26:50 2018 -0700

    [map] Mark prime_for HB_INTERNAL

    Trying to see if it fixes gcc-4.2 bots.

 src/hb-map-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit d600e844aa4736b52fe71c1b2a9fa785be5cfecc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 30 16:25:46 2018 -0700

    Add CrapOrNull

 src/hb-private.hh | 11 +++++++++++
 1 file changed, 11 insertions(+)

commit 251cc977e93a75cfdc34671760ef4241daebf60f
Author: Garret Rieger <grieger@google.com>
Date:   Wed May 30 12:23:51 2018 -0700

    [subset] Switch to using hb_map_t inside of hb_subset_plan_t.

 src/hb-ot-cmap-table.hh |  20 +++---
 src/hb-ot-glyf-table.hh |  12 ++--
 src/hb-ot-hdmx-table.hh |  10 +--
 src/hb-ot-hmtx-table.hh |   6 +-
 src/hb-ot-maxp-table.hh |   4 +-
 src/hb-ot-os2-table.hh  |  35 +++--------
 src/hb-ot-post-table.hh |   2 +-
 src/hb-subset-glyf.cc   |   9 ++-
 src/hb-subset-plan.cc   | 159
 ++++++++++++++++--------------------------------
 src/hb-subset-plan.hh   |  68 +++++++++++++--------
 src/hb-subset.cc        |   2 +-
 11 files changed, 139 insertions(+), 188 deletions(-)

commit b3d45de6cff4501e6171ec9d9069af7de29584d4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 30 14:02:49 2018 -0700

    [map] Fix size calculation

    Don't know why I thought I should subtract one there...

 src/hb-map-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ff92de766bf775bfdd3a01bda94de699180ff86a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 29 18:48:45 2018 -0700

    Remove HB_DISALLOW_COPY_AND_ASSIGN

    llvm-gcc-4.2 bot had this problem:
    hb-private.hh:812: error: initializer specified for non-virtual method
    'void hb_vector_t<Type, StaticSize>::operator=(const hb_vector_t<Type,
    StaticSize>&) [with Type = hb_user_data_array_t::hb_user_data_item_t,
    unsigned int StaticSize = 1u]'

    Removing the delete didn't work with a constructor. So, remove
    constructor.
    Just disallow assignment.  Still better than nothing.

 src/hb-map-private.hh      | 2 +-
 src/hb-ot-shape-private.hh | 2 +-
 src/hb-private.hh          | 6 +-----
 src/hb-set-private.hh      | 2 +-
 4 files changed, 4 insertions(+), 8 deletions(-)

commit a2444346220757e7743c972cbd24f925e72b419d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 29 18:32:57 2018 -0700

    [map] Fix resize

 src/hb-map-private.hh | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit efbab6ba3f7434fca41be1b38e4a5281695f231c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 29 18:21:55 2018 -0700

    Disable use of thread_local

    Clang build was failing with:

    /usr/bin/ld: .libs/libharfbuzz_la-hb-blob.o: relocation R_X86_64_PC32
    against undefined hidden symbol `_ZTH12_hb_CrapPool' can not be used
    when making a shared object

    Instead of fighting it, just disable use of it.

 src/hb-private.hh | 4 ++--
 src/hb-static.cc  | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

commit 8c2c5d450817d4cb6f782d286da6ac6d9e5a5e95
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 29 18:15:52 2018 -0700

    [map] Not going to implement is_equal which is complicated

 src/hb-map.h | 7 -------
 1 file changed, 7 deletions(-)

commit ccd01c65559122499b38a44e4449cd5a828d0b05
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 29 18:13:13 2018 -0700

    [map] Move prime_mod to header to avoid linkage issues in subset.so

 src/hb-map-private.hh | 53
 +++++++++++++++++++++++++++++++++++++++++++++++++--
 src/hb-map.cc         | 52
 --------------------------------------------------
 2 files changed, 51 insertions(+), 54 deletions(-)

commit 6baebc5d559e15c7903a81f21be08b45537e7903
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 29 17:58:46 2018 -0700

    [map] Fix copyright year

 src/hb-map-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b0158129d2b161665f8872deeb540ac73349c2de
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 29 17:52:37 2018 -0700

    [map] Minor

 src/hb-map-private.hh | 1 -
 1 file changed, 1 deletion(-)

commit 4099c66f70e1acf89013215ab3add42b11e31fea
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 29 17:52:07 2018 -0700

    [map] Don't return INVALID from get() just because in_error

 src/hb-map-private.hh | 1 -
 1 file changed, 1 deletion(-)

commit 25783907737b561f7b8648b8e92dba601a439828
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 29 17:34:35 2018 -0700

    [map] Fix bool use in C API

 src/hb-map.cc | 2 +-
 src/hb-map.h  | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit a9fa39dca56d3a96dddcdbeb1c55a3d55a6537da
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 29 17:31:01 2018 -0700

    [map] More minor

 src/hb-map-private.hh | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

commit f76c4a7708773eca7a2b8c7ff47f8b5ade5ca0d9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 29 17:27:25 2018 -0700

    [map] Make initial resize actually work

 src/hb-map-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 661e9ae4a55c198eb9fdb2c104979dd55a0fa1f1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 29 17:09:17 2018 -0700

    [map] Add clear(), is_empty(), and get_population()

 src/hb-map-private.hh | 22 ++++++++++++++++++----
 src/hb-map.cc         | 43 +++++++++++++++++++++++++++++++++++++++++++
 src/hb-map.h          | 17 +++++++++--------
 3 files changed, 70 insertions(+), 12 deletions(-)

commit b6959c33e23b464ddbe5fe98fafc80bbb669189c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 29 17:02:22 2018 -0700

    [map] Minor

 src/hb-map-private.hh | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

commit 686476a8ae0039f277eb55ab7bd69386d43a8dc7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 29 17:00:02 2018 -0700

    [map] Track population and occupancy separately

 src/hb-map-private.hh | 30 +++++++++++++++++++++---------
 src/hb-map.cc         |  1 +
 2 files changed, 22 insertions(+), 9 deletions(-)

commit 8a978790cb4dc66816c2cd7b617829f3e9d6e88e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 29 16:45:20 2018 -0700

    [map] Minor

 src/hb-map.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6f12ce47c0ed8c2c4bb251cd6e685459af104db8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 29 16:45:06 2018 -0700

    Revert "[map] Return bool from set()"

    This reverts commit face7cf55d4895ffca314c8448c0a749a26cc182.

 src/hb-map-private.hh | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

commit fc51c45079feb7d77d25204c4c17a0733f1eca56
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 29 16:44:55 2018 -0700

    Revert "[map] Make hb_map_set() return bool"

    This reverts commit 7bf1980146cfc081b06264ac367b23ae9397adf1.

 src/hb-map.cc | 4 ++--
 src/hb-map.h  | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

commit 7bf1980146cfc081b06264ac367b23ae9397adf1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 29 16:42:44 2018 -0700

    [map] Make hb_map_set() return bool

 src/hb-map.cc | 4 ++--
 src/hb-map.h  | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

commit face7cf55d4895ffca314c8448c0a749a26cc182
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 29 16:39:03 2018 -0700

    [map] Return bool from set()

 src/hb-map-private.hh | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit e94be200bd7976a26ea2d6df5050d9dab4de0f08
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 29 16:37:44 2018 -0700

    [map] Implement operator[] for get()ting

 src/hb-map-private.hh | 3 +++
 1 file changed, 3 insertions(+)

commit 743fdd9c618c949d7f45324386bd0bb37435db46
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 29 16:28:48 2018 -0700

    [map] First try at implementing an integer-to-integer hashmap

    Fully untested.

 src/Makefile.sources  |   3 +
 src/hb-map-private.hh | 180 ++++++++++++++++++++++++++++++++
 src/hb-map.cc         | 279
 ++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-map.h          | 110 ++++++++++++++++++++
 src/hb.h              |   1 +
 5 files changed, 573 insertions(+)

commit 65c82179c9b3aafd90987485a49c09dbbb473c90
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat May 26 23:50:10 2018 +0430

    [blob] Use MAP_NORESERVE if available (#1039)

    MAP_NORESERVE is not available on macOS for example so set the flag
    to zero if not defined on the headers.

 src/hb-blob.cc | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit 1ce40d900a9c451d8d5814a9b30759d1e66f99c8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 25 16:34:08 2018 -0700

    [set] Remove stale comment

 src/hb-set.h | 2 --
 1 file changed, 2 deletions(-)

commit 6c2227640bc14754c9472fead5cd04ff25f91b52
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 25 16:21:27 2018 -0700

    Add HB_DISALLOW_COPY_AND_ASSIGN

 src/hb-ot-map-private.hh   |  1 -
 src/hb-ot-shape-private.hh |  4 +---
 src/hb-ot-shape.cc         |  2 --
 src/hb-private.hh          | 10 ++++++++++
 src/hb-set-private.hh      |  3 +++
 5 files changed, 14 insertions(+), 6 deletions(-)

commit fd3d0042319c33c923a60d435779bf7ed5a9a6f5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 24 15:58:26 2018 -0700

    Move pool definitions to hb-static.cc

 src/Makefile.sources |  1 +
 src/dump-emoji.cc    |  8 +-------
 src/dump-fon.cc      |  6 +-----
 src/hb-ot-layout.cc  |  6 ------
 src/hb-static.cc     | 32 ++++++++++++++++++++++++++++++++
 src/hb-subset.cc     |  5 ++---
 src/main.cc          |  6 +-----
 7 files changed, 38 insertions(+), 26 deletions(-)

commit 7f7b1370d37b9187f688dea5e6fee5ea7c2b7290
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 24 14:09:04 2018 -0700

    Fix Uniscribe build

    If a pointer type was passed to Null(), reinterpret_cast<> was
    complaining about qualifiers being removed. Turns out I need the
    const on
    the other side of "Type" to fix that.  Also remove unused const from
    NullPool type.

 src/dump-emoji.cc   | 2 +-
 src/dump-fon.cc     | 2 +-
 src/hb-ot-layout.cc | 2 +-
 src/hb-private.hh   | 6 +++---
 src/hb-subset.cc    | 2 +-
 src/main.cc         | 2 +-
 6 files changed, 8 insertions(+), 8 deletions(-)

commit 31c4236d9643063e518289b28c3e17cedd8401e0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 24 13:38:46 2018 -0700

    Underflow protection in hb_vector_t

 src/hb-private.hh | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

commit f83e992c8b27111ab802fd7e5678592a0c717518
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 24 11:46:57 2018 -0700

    Mark CrapPool thread_local

    Not sure if I like to keep it. For now, aim for correctness.

 src/dump-emoji.cc   |  2 +-
 src/dump-fon.cc     |  2 +-
 src/hb-ot-layout.cc |  2 +-
 src/hb-private.hh   | 14 +++++++++++++-
 src/hb-subset.cc    |  2 +-
 src/main.cc         |  2 +-
 6 files changed, 18 insertions(+), 6 deletions(-)

commit 5d80129891107c7f629c6950b5d257f2a867eee0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 24 11:33:15 2018 -0700

    Add CrapPool

    Common Regoin for Access Protection.  Like the NullPool, but writable.

 src/dump-emoji.cc           |  1 +
 src/dump-fon.cc             |  1 +
 src/hb-open-type-private.hh | 11 +++++++++++
 src/hb-ot-layout.cc         |  1 +
 src/hb-private.hh           | 39 +++++++++++++++++++++++++++++++++++----
 src/hb-subset.cc            |  1 +
 src/main.cc                 |  1 +
 7 files changed, 51 insertions(+), 4 deletions(-)

commit 673b764de050957b2d3b9972d9e55b3a2e5615f4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 23 20:12:23 2018 -0700

    Move code around

 src/hb-private.hh | 91
 ++++++++++++++++++++++++++++++-------------------------
 1 file changed, 49 insertions(+), 42 deletions(-)

commit 65aeabd62275b37c6bb6715f3341e45625f4ba6e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 23 16:15:28 2018 -0700

    Add hb_vector_t::push(const Type &v)

    Makes for cleaner code.

 src/hb-coretext.cc      |  3 +--
 src/hb-ot-post-table.hh |  3 +--
 src/hb-private.hh       | 18 +++++++++++-------
 src/hb-subset-plan.cc   | 12 +++++-------
 src/hb-uniscribe.cc     |  8 ++------
 5 files changed, 20 insertions(+), 24 deletions(-)

commit 38ae0add7001c4db506d3a2c18b9960a2cae7b5d
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed May 23 13:37:57 2018 +0430

    [ci] Revive the SunCC bot

    * Adds libnsl to the bot as it is now needed apparently
    * Disables hb-icu, apparently the newer ICU itself is not compatible
    with SunCC

 .circleci/config.yml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 6c818c5516913f2c8192d58bd2724b1d3bb60d24
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 22 22:00:05 2018 -0700

    Actually enable vectorized operations

    Fixup for previous commit. Was accidentally turned off.

 src/hb-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f56a250b04f50f12c78d81d1a068187be3d95a8c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 22 21:36:07 2018 -0700

    Another try at smart vectorization

    Make clang happy. Also, don't use anonymous union.

 src/hb-private.hh | 36 +++++++++++++++++++++++++-----------
 1 file changed, 25 insertions(+), 11 deletions(-)

commit b995b501ef5cf113534c5aead6c85baea6cc423c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 22 21:06:22 2018 -0700

    Try enabling vectorization smartly

    We'll see if this sticks to the bots.

 src/hb-private.hh     | 25 +++++++++++++++++--------
 src/hb-set-private.hh |  7 -------
 2 files changed, 17 insertions(+), 15 deletions(-)

commit dd22c29f951ceec98516d7cb378bf2aa7e21d89a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 22 20:57:19 2018 -0700

    [set] Always check population before checking for equality

 src/hb-set-private.hh | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

commit 2eb9bbd986f6930f1b2594b8971ac677e9647c93
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 22 18:28:13 2018 -0700

    [test/text-rendering-tests] Update from upstream

 test/shaping/data/text-rendering-tests/DISABLED         |   2 ++
 test/shaping/data/text-rendering-tests/Makefile.sources |   2 ++
 .../text-rendering-tests/fonts/TestMORXTwentyeight.ttf  | Bin 0 ->
 2660 bytes
 .../text-rendering-tests/fonts/TestMORXTwentyseven.ttf  | Bin 0 ->
 2432 bytes
 .../data/text-rendering-tests/fonts/TestShapeKndaV3.ttf | Bin 0 ->
 89400 bytes
 .../data/text-rendering-tests/tests/MORX-27.tests       |   3 +++
 .../data/text-rendering-tests/tests/MORX-28.tests       |   5 +++++
 7 files changed, 12 insertions(+)

commit 8eb53b853dcc4b0cc8e240cff6bfc5acb92182b0
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri May 11 22:44:44 2018 +0430

    Minor, make CreateFile compatible with the disabled writable flag

    "writable" is not in use and probably we can go in the reverse
    direction
    and remove the flags that are useful for enabled writable, this
    is just
    for the sake of completeness however.

 src/hb-blob.cc | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 33eb1bd23b100a8e65a0e66621760368b5aecdaf
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri May 11 14:36:41 2018 +0430

    Remove unnecessary headers and definitions of hb-blob (#1028)

    It removes io.h and other polyfills which we no longer need as 7e76d74

 src/hb-blob.cc | 22 ++++------------------
 1 file changed, 4 insertions(+), 18 deletions(-)

commit 7e76d746e2555d5bba7f65d3958aa97a7f179d7b
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri May 11 13:40:33 2018 +0430

    Make hb_blob_create_from_file more portable (#1027)

    This makes it compatible with ARMCC which I had access in
    a collaboration with @imgtec, thanks!

    Basically hb_blob_create_from_file features three code paths,
    mmap, Win32 and fallback.

    We had fallback implementation even before this but it was relied
    to "open" which is not available on some environments. This change
    improved the situtation by using only fopen and friends for
    fallback path.

    Interestingly we could use "open" on Windows but in fact it was
    emulated by MSVCRT so I've completely split that from Unix path
    now that we have a distinct path for fallback path also.

 src/hb-blob.cc | 64
 +++++++++++++++++++++++++++++++++++++++-------------------
 1 file changed, 43 insertions(+), 21 deletions(-)

commit e99d75ea9c4fe1f64d7f8408093741a682ed5243
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 9 15:28:30 2018 -0700

    Fix warning

 src/hb-ot-cmap-table.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 191c4edc5423017d9123d291462fbfa87a805218
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 9 15:27:17 2018 -0700

    Reinstante DEFINE_NULL_DATA

    Seems like I messed up; buffer overrun got reported.

 src/hb-open-type-private.hh        |  2 ++
 src/hb-ot-layout-common-private.hh | 13 +++----------
 src/hb-private.hh                  | 13 +++++++++++++
 3 files changed, 18 insertions(+), 10 deletions(-)

commit 93bdf9b2dfe18af0f1aa93b890f0be260f31d90e
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed May 9 23:24:17 2018 +0430

    Use arrayZ on hb-coretext and hb-uniscribe and fix macOS/Win bots
    (#1024)

    Following to 63f57f4

 src/hb-coretext.cc  |  2 +-
 src/hb-uniscribe.cc | 12 ++++++------
 2 files changed, 7 insertions(+), 7 deletions(-)

commit 63f57f4dab3d3179838d5d1cd03d116837a7e5c2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 8 16:56:11 2018 -0700

    Mark more unsized array's as arrayZ

 src/hb-aat-layout-common-private.hh  | 14 ++++----
 src/hb-aat-layout-kerx-table.hh      |  2 +-
 src/hb-aat-layout-morx-table.hh      |  6 ++--
 src/hb-open-file-private.hh          |  6 ++--
 src/hb-open-type-private.hh          | 40 +++++++++++-----------
 src/hb-ot-cmap-table.hh              |  2 +-
 src/hb-ot-color-cbdt-table.hh        | 10 +++---
 src/hb-ot-layout-common-private.hh   | 12 +++----
 src/hb-ot-layout-gsub-table.hh       | 16 ++++-----
 src/hb-ot-layout-gsubgpos-private.hh | 64
 ++++++++++++++++++------------------
 src/hb-ot-post-table.hh              |  4 +--
 src/hb-ot-var-avar-table.hh          | 26 +++++++--------
 src/hb-private.hh                    | 54 +++++++++++++++---------------
 src/hb-set-private.hh                |  4 +--
 src/hb-subset.cc                     |  2 +-
 15 files changed, 131 insertions(+), 131 deletions(-)

commit 091c17df5ac5f7ddc9b776481da845f4eda67570
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 8 16:42:45 2018 -0700

    Use UnsizedArrayOf<> in one place where [VAR] was used

    Trying to see how many can converted meaningfully.

 src/hb-ot-layout-common-private.hh | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit 0644d92ef32b09e32d473c758d2a968f2d125628
Merge: 2a2e28e7 3be050f0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 8 15:21:09 2018 -0700

    Merge pull request #1018 from googlefonts/cmap4

    [subset] Add cmap format 4 subsetting.

commit 2a2e28e701319b4053a5c95f06c68f859e4ce99b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 8 03:00:21 2018 -0700

    Don't keep instance in hb_table_lazy_loader_t

 src/hb-open-type-private.hh | 15 ++++++---------
 1 file changed, 6 insertions(+), 9 deletions(-)

commit 57bac8f6995fabbb98eb9824d822f370f9449488
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 8 02:55:20 2018 -0700

    Rename

 src/hb-open-type-private.hh | 6 +++---
 src/hb-ot-layout-private.hh | 8 ++++----
 2 files changed, 7 insertions(+), 7 deletions(-)

commit 2a46a020fd2fa2fe99886ab06188db5f0fa37ad1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 8 02:53:03 2018 -0700

    Minor

 src/hb-open-type-private.hh | 4 ++--
 src/hb-ot-kern-table.hh     | 2 +-
 src/hb-ot-layout.cc         | 6 +++---
 src/hb-ot-post-table.hh     | 2 +-
 4 files changed, 7 insertions(+), 7 deletions(-)

commit eba1c16a604d1be774f22541bf3e417f27a27c68
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 8 02:47:42 2018 -0700

    Always lock blob in sanitize. Remove blob->lock_as() in favor of
    blob->lock()

 src/dump-emoji.cc             | 4 ++--
 src/dump-fon.cc               | 2 +-
 src/hb-aat-layout.cc          | 4 ++--
 src/hb-blob-private.hh        | 6 ------
 src/hb-face.cc                | 8 ++++----
 src/hb-open-type-private.hh   | 8 ++++++--
 src/hb-ot-cmap-table.hh       | 2 +-
 src/hb-ot-color-cbdt-table.hh | 4 ++--
 src/hb-ot-color-sbix-table.hh | 2 +-
 src/hb-ot-color-svg-table.hh  | 2 +-
 src/hb-ot-glyf-table.hh       | 6 +++---
 src/hb-ot-hmtx-table.hh       | 8 ++++----
 src/hb-ot-kern-table.hh       | 2 +-
 src/hb-ot-layout.cc           | 6 +++---
 src/hb-ot-post-table.hh       | 2 +-
 src/hb-subset.cc              | 2 +-
 src/main.cc                   | 2 +-
 17 files changed, 34 insertions(+), 36 deletions(-)

commit b4fa50501414b7471e840f2ee6b9dfe87080b078
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 8 02:45:08 2018 -0700

    Move Sanitizer::lock_instance<>() to blob->lock_as<>().

 src/dump-emoji.cc             |  4 ++--
 src/dump-fon.cc               |  3 +--
 src/hb-aat-layout.cc          |  4 ++--
 src/hb-blob-private.hh        | 17 +++++++++++++++++
 src/hb-face.cc                |  9 +++++----
 src/hb-open-type-private.hh   |  9 ++-------
 src/hb-ot-cmap-table.hh       |  2 +-
 src/hb-ot-color-cbdt-table.hh |  4 ++--
 src/hb-ot-color-sbix-table.hh |  2 +-
 src/hb-ot-color-svg-table.hh  |  2 +-
 src/hb-ot-glyf-table.hh       |  6 +++---
 src/hb-ot-hmtx-table.hh       |  8 ++++----
 src/hb-ot-kern-table.hh       |  2 +-
 src/hb-ot-layout.cc           |  6 +++---
 src/hb-ot-post-table.hh       |  2 +-
 src/hb-subset.cc              |  2 +-
 src/main.cc                   |  2 +-
 17 files changed, 48 insertions(+), 36 deletions(-)

commit abc12f7b8157c3981216d82ead60627db31a6c14
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 8 02:23:36 2018 -0700

    Move null pool to hb-private

 src/dump-emoji.cc                  |  6 ++---
 src/dump-fon.cc                    | 14 +++++------
 src/hb-aat-layout.cc               |  8 +++----
 src/hb-open-type-private.hh        | 48
 +++-----------------------------------
 src/hb-ot-cmap-table.hh            |  4 ++--
 src/hb-ot-color.cc                 |  4 ++--
 src/hb-ot-layout-common-private.hh | 13 ++++++++---
 src/hb-ot-layout.cc                | 22 ++++++++---------
 src/hb-ot-math.cc                  |  4 ++--
 src/hb-ot-var.cc                   |  6 ++---
 src/hb-private.hh                  | 29 +++++++++++++++++++++++
 src/hb-subset.cc                   |  4 ++--
 src/main.cc                        |  2 +-
 13 files changed, 79 insertions(+), 85 deletions(-)

commit 08e280fd84384f73d395918646ee044a5bbfee45
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 8 01:57:27 2018 -0700

    Rename hb_string_t to hb_bytes_t

 src/hb-ot-post-table.hh | 16 ++++++++--------
 src/hb-private.hh       | 12 ++++++------
 src/hb-string-array.hh  |  6 +++---
 3 files changed, 17 insertions(+), 17 deletions(-)

commit bd021a67203aa5b07c31c02d63e6154da0c05d31
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 8 01:50:30 2018 -0700

    Minor

 src/hb-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 16e4ccf7b417f021948643012cbe7641ba02c039
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 8 01:47:05 2018 -0700

    Allocate user-data-array on the heap

    This saves each object allocation 72 bytes.  Now object overhead
    is just
    16 bytes (on x86) instead of 88 bytes. Neat.

 src/hb-object-private.hh | 36 ++++++++++++++++++++++++++++--------
 1 file changed, 28 insertions(+), 8 deletions(-)

commit 61920b21ca0c632ba58aef95c7f65f409cc0fbd2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 8 01:28:19 2018 -0700

    Oops

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1023

 src/hb-blob-private.hh | 77
 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 77 insertions(+)

commit f673cfbd64d0c9d97123500a7b851b9cfc09deb3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 7 13:58:32 2018 -0700

    Support scripts that are written both LTR and RTL

    Right now only Old Italic is marked as such.

    Fixes https://github.com/harfbuzz/harfbuzz/issues/1000

 src/hb-buffer.cc                                         |   4 ++++
 src/hb-common.cc                                         |   6 ++++++
 src/hb-ot-shape.cc                                       |   7 +++++--
 test/api/test-common.c                                   |   1 +
 test/shaping/data/in-house/Makefile.sources              |   1 +
 .../fonts/73e84dac2fc6a2d1bc9250d1414353661088937d.ttf   | Bin 0 ->
 1136 bytes
 test/shaping/data/in-house/tests/none-directional.tests  |   3 +++
 7 files changed, 20 insertions(+), 2 deletions(-)

commit 90869e6962caf0e55a480b5d7e777cc521596e8b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 7 14:04:01 2018 -0700

    [ot] Apply langsys's required feature even if no other feature exists

 src/hb-ot-map.cc | 3 ---
 1 file changed, 3 deletions(-)

commit 90baf721978236f2e06dff89ad1cb0cace0753ea
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 3 22:14:54 2018 -0400

    Move some blob functions to methods

 src/hb-blob.cc | 80
 +++++++++++++++++++++++++---------------------------------
 1 file changed, 34 insertions(+), 46 deletions(-)

commit 5c64d61475f15d7f8de8993a52639735b2bcf750
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 3 21:10:57 2018 -0400

    Add hb-blob-private.hh

    Towards making blob more memory-allocation-friendly

 src/Makefile.sources |  1 +
 src/hb-blob.cc       | 21 +++++----------------
 2 files changed, 6 insertions(+), 16 deletions(-)

commit 203dc44ebc141af0ba8c54edec2dc0405664997a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 3 21:03:27 2018 -0400

    [ot-layout] Remove unused members

    We should hang those off somewhere else. For now, the unused ones
    can go.

 src/hb-aat-layout-common-private.hh |  2 +-
 src/hb-aat-layout.cc                |  6 ++++++
 src/hb-ot-layout-private.hh         |  6 ------
 src/hb-ot-layout.cc                 | 29 ++++++++---------------------
 4 files changed, 15 insertions(+), 28 deletions(-)

commit ac92ed7d6875374451246a2391859fb763329adb
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue May 8 01:05:15 2018 +0430

    Set inline hidden flag only on shared library building

    To avoid need of CMP0063 which is not available on older CMake
    versions

 CMakeLists.txt | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

commit 3be050f07572d8556726b188668d727e3e7ba643
Author: Garret Rieger <grieger@google.com>
Date:   Fri May 4 11:23:32 2018 -0700

    [subset] entrySelectorZ -> entrySelector.

 src/hb-ot-cmap-table.hh | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

commit 7c22f98da789f831e1afb9078085b2e33d864d25
Author: Garret Rieger <grieger@google.com>
Date:   Thu May 3 13:14:28 2018 -0700

    [subset] add missing template parameter.

 src/hb-ot-cmap-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 95eb0f3bafb7ab0e2451e3e2f8afc5008e18e88e
Author: Garret Rieger <grieger@google.com>
Date:   Thu May 3 13:00:19 2018 -0700

    [subset] Switch to a non-log using implementation of caculating
    searchRangeZ, entrySelectorZ, and rangeShiftZ in cmap4.

 src/hb-ot-cmap-table.hh | 12 +++++-------
 1 file changed, 5 insertions(+), 7 deletions(-)

commit b0d7971be0fa3c9393b04038b8d0a76398b0d8d7
Author: Garret Rieger <grieger@google.com>
Date:   Thu May 3 11:22:51 2018 -0700

    [subset] Updated expected files for japanese subset integration
    tests to include cmap4.

 ...gular.default.3042,3044,3046,3048,304A,304B.ttf | Bin 3032 ->
 3112 bytes
 ...gular.default.3042,3044,3046,73E0,5EA6,8F38.ttf | Bin 3268 ->
 3356 bytes
 .../Mplus1p-Regular.default.61,63,65,6B.ttf        | Bin 2584 ->
 2656 bytes
 ...gular.default.660E,6975,73E0,5EA6,8F38,6E05.ttf | Bin 3564 ->
 3652 bytes
 .../japanese/Mplus1p-Regular.default.660E.ttf      | Bin 2348 ->
 2396 bytes
 ...ar.drop-hints.3042,3044,3046,3048,304A,304B.ttf | Bin 2304 ->
 2384 bytes
 ...ar.drop-hints.3042,3044,3046,73E0,5EA6,8F38.ttf | Bin 2540 ->
 2628 bytes
 .../Mplus1p-Regular.drop-hints.61,63,65,6B.ttf     | Bin 1856 ->
 1928 bytes
 ...ar.drop-hints.660E,6975,73E0,5EA6,8F38,6E05.ttf | Bin 2836 ->
 2924 bytes
 .../japanese/Mplus1p-Regular.drop-hints.660E.ttf   | Bin 1620 ->
 1668 bytes
 test/subset/data/fonts/Mplus1p-Regular.ttf         | Bin 1758820 ->
 1757292 bytes
 11 files changed, 0 insertions(+), 0 deletions(-)

commit 79479273170275447042aa50912acee74bbacdf6
Author: Garret Rieger <grieger@google.com>
Date:   Thu May 3 11:18:02 2018 -0700

    [subset] Update expected files for subset integration tests to
    include cmap4.

 .../basics/Roboto-Regular.abc.default.61,62,63.ttf    | Bin 2120 ->
 2168 bytes
 .../basics/Roboto-Regular.abc.default.61,63.ttf       | Bin 1932 ->
 1988 bytes
 .../expected/basics/Roboto-Regular.abc.default.61.ttf | Bin 1744 ->
 1792 bytes
 .../expected/basics/Roboto-Regular.abc.default.62.ttf | Bin 1692 ->
 1740 bytes
 .../expected/basics/Roboto-Regular.abc.default.63.ttf | Bin 1668 ->
 1716 bytes
 .../basics/Roboto-Regular.abc.drop-hints.61,62,63.ttf | Bin 876 ->
 924 bytes
 .../basics/Roboto-Regular.abc.drop-hints.61,63.ttf    | Bin 792 ->
 848 bytes
 .../basics/Roboto-Regular.abc.drop-hints.61.ttf       | Bin 684 ->
 732 bytes
 .../basics/Roboto-Regular.abc.drop-hints.62.ttf       | Bin 652 ->
 700 bytes
 .../basics/Roboto-Regular.abc.drop-hints.63.ttf       | Bin 656 ->
 704 bytes
 .../Roboto-Regular.default.1FC,21,41,20,62,63.ttf     | Bin 3700 ->
 3772 bytes
 .../full-font/Roboto-Regular.default.61,62,63.ttf     | Bin 3320 ->
 3368 bytes
 .../Roboto-Regular.default.D7,D8,D9,DA,DE.ttf         | Bin 3668 ->
 3732 bytes
 .../Roboto-Regular.drop-hints.1FC,21,41,20,62,63.ttf  | Bin 2152 ->
 2224 bytes
 .../full-font/Roboto-Regular.drop-hints.61,62,63.ttf  | Bin 1968 ->
 2016 bytes
 .../Roboto-Regular.drop-hints.D7,D8,D9,DA,DE.ttf      | Bin 2188 ->
 2252 bytes
 16 files changed, 0 insertions(+), 0 deletions(-)

commit a8e7f9b958dcb4e00226f78d0ff83f031bc1323d
Author: Garret Rieger <grieger@google.com>
Date:   Thu May 3 10:59:00 2018 -0700

    [subset] Get cmap tests passing again.

 test/api/fonts/Roboto-Regular.D7,D8,D9,DA,DE.ttf | Bin 2972 -> 2816 bytes
 test/api/test-subset-cmap.c                      |   2 +-
 2 files changed, 1 insertion(+), 1 deletion(-)

commit c817992f495cba21bf468014f22afe349fbc799f
Author: Garret Rieger <grieger@google.com>
Date:   Thu May 3 10:53:20 2018 -0700

    [subset] Write out a format 4, plat 0 encoding record to match
    fontTools.

 src/hb-ot-cmap-table.hh     | 24 +++++++++++++++---------
 test/api/test-subset-cmap.c |  2 +-
 2 files changed, 16 insertions(+), 10 deletions(-)

commit 9ef55a4c1354028f4d5e81300cdaf8ce5e03b8e9
Author: Garret Rieger <grieger@google.com>
Date:   Wed May 2 18:50:56 2018 -0700

    [subset] A few bug fixes for cmap format 4 subsetting.

 src/hb-ot-cmap-table.hh | 57
 ++++++++++++++++++++++++++++---------------------
 1 file changed, 33 insertions(+), 24 deletions(-)

commit 81ea75f5c860ef682184bd2c9d0ff8b48251e3ce
Author: Garret Rieger <grieger@google.com>
Date:   Wed May 2 17:46:30 2018 -0700

    [subset] Complete implementation of cmap4 subsetting.

 src/hb-ot-cmap-table.hh | 31 ++++++++++++++++++++++++++++---
 1 file changed, 28 insertions(+), 3 deletions(-)

commit 4195a52b041af749046b716dcac7d6560ae37611
Author: Garret Rieger <grieger@google.com>
Date:   Wed May 2 17:11:18 2018 -0700

    [subset] WIP implementation of serialize for cmap format 4.

 src/hb-ot-cmap-table.hh | 39 ++++++++++++++++++++++++++++++++++++++-
 1 file changed, 38 insertions(+), 1 deletion(-)

commit cfa592d31ce2fd1ec2765a69ab31bf80161479dd
Author: Garret Rieger <grieger@google.com>
Date:   Wed May 2 16:37:38 2018 -0700

    [subset] Add an implement for cmap format 4 create_sub_table_plan.

 src/hb-ot-cmap-table.hh | 43 ++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 42 insertions(+), 1 deletion(-)

commit 295d67ea7d0ddac5666bd6aa4b647dd9cbf8e8f7
Author: Garret Rieger <grieger@google.com>
Date:   Wed May 2 16:12:04 2018 -0700

    [subset] WIP cmap format 4 subsetting.

 src/hb-ot-cmap-table.hh | 104
 ++++++++++++++++++++++++++++++++++++++++--------
 1 file changed, 88 insertions(+), 16 deletions(-)

commit 0053d13283458996372f04bd501001d450523605
Author: Garret Rieger <grieger@google.com>
Date:   Wed May 2 15:42:43 2018 -0700

    [subset] Refactor cmap subsetting to make it possible to add support
    for more sub tables.

 src/hb-ot-cmap-table.hh | 161
 ++++++++++++++++++++++++++++++------------------
 1 file changed, 102 insertions(+), 59 deletions(-)

commit 03b27548123756dfd9988a8fc74bc78733fb2c44
Author: Garret Rieger <grieger@google.com>
Date:   Wed May 2 15:42:08 2018 -0700

    [subset] Add const to the hb_subset_plan_t input to a couple functions
    in hb-subset-plan.

 src/hb-subset-plan.cc |  4 ++--
 src/hb-subset-plan.hh | 18 +++++++++---------
 2 files changed, 11 insertions(+), 11 deletions(-)

commit 5b93f6916958e6096044372c1195501ea9f37436
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 2 14:59:14 2018 -0400

    Rename some X-terminated members to Z-terminated

    X-terminated means don't access this, it's not located correctly.
    Z-terminated means this is a C array with no bound checking.

 src/hb-aat-layout-morx-table.hh |  4 ++--
 src/hb-open-type-private.hh     | 16 ++++++++--------
 src/hb-ot-cmap-table.hh         | 28 ++++++++++++++--------------
 src/hb-ot-glyf-table.hh         | 14 +++++++-------
 src/hb-ot-var-avar-table.hh     |  6 +++---
 5 files changed, 34 insertions(+), 34 deletions(-)

commit f1f6bc0a6f28a6611a247f37b8a83e6f782d7227
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 2 12:56:21 2018 -0400

    [set] Fix init/fini of set on the stack to call object init/fini

    Part of https://github.com/harfbuzz/harfbuzz/issues/1017

 src/hb-set-private.hh | 14 ++++++++++++--
 src/hb-set.cc         |  4 ++--
 2 files changed, 14 insertions(+), 4 deletions(-)

commit 37b95612d4ae8a9d75a1a5a5165bc073c709cf30
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 1 19:09:00 2018 -0400

    Remove hb_auto_array_t

    Part of https://github.com/harfbuzz/harfbuzz/issues/1017

 src/hb-coretext.cc      |  8 ++++----
 src/hb-ot-cmap-table.hh |  2 +-
 src/hb-ot-layout.cc     |  2 +-
 src/hb-subset-plan.cc   |  2 +-
 src/hb-uniscribe.cc     | 12 ++++++------
 5 files changed, 13 insertions(+), 13 deletions(-)

commit 5c3112aec8b77d0fe39164f0f700e2a1aa810022
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 1 19:07:04 2018 -0400

    s/hb_prealloced_array_t/hb_vector_t/g

    Part of https://github.com/harfbuzz/harfbuzz/issues/1017

 src/hb-ot-cmap-table.hh  |  6 +++---
 src/hb-ot-hmtx-table.hh  |  2 +-
 src/hb-ot-map-private.hh | 10 +++++-----
 src/hb-ot-os2-table.hh   |  4 ++--
 src/hb-ot-post-table.hh  |  2 +-
 src/hb-private.hh        |  6 +++---
 src/hb-set-private.hh    |  4 ++--
 src/hb-subset-glyf.cc    | 12 ++++++------
 src/hb-subset-plan.cc    |  8 ++++----
 src/hb-subset-plan.hh    |  6 +++---
 src/hb-subset.cc         |  2 +-
 11 files changed, 31 insertions(+), 31 deletions(-)

commit 4a01eb1234a72e6a91ed66d3ed60b5db378fe340
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 1 19:05:58 2018 -0400

    Add hb_auto_t

    Part of https://github.com/harfbuzz/harfbuzz/issues/1017

 src/hb-private.hh | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

commit a60ba7964ea196a3a02c48e813f2d9505d0cded2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 1 19:01:25 2018 -0400

    s/finish/fini

    For consistency.

 src/hb-common.cc            |  8 ++++----
 src/hb-mutex-private.hh     |  2 +-
 src/hb-object-private.hh    | 10 +++++-----
 src/hb-ot-layout-private.hh |  4 ++--
 src/hb-ot-map-private.hh    | 14 +++++++-------
 src/hb-ot-post-table.hh     |  2 +-
 src/hb-ot-shape-private.hh  |  4 ++--
 src/hb-ot-shape.cc          |  2 +-
 src/hb-private.hh           | 16 ++++++++--------
 src/hb-set-private.hh       |  6 +++---
 src/hb-set.cc               |  2 +-
 src/hb-subset-glyf.cc       |  6 +++---
 src/hb-subset-plan.cc       |  6 +++---
 src/hb-subset.cc            |  2 +-
 14 files changed, 42 insertions(+), 42 deletions(-)

commit 17618ee2ecd02cb100ca911bd1907d108e9df475
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 1 18:39:25 2018 -0400

    Add hb_object_fini()

 src/hb-object-private.hh | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

commit bd5f918e2f86241d3e2cb706bf558de21c198860
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 1 18:27:41 2018 -0400

    [set] Cache population

    Part of https://github.com/harfbuzz/harfbuzz/issues/1017

 src/hb-set-private.hh | 24 +++++++++++++++++++++++-
 src/hb-set.cc         |  1 +
 2 files changed, 24 insertions(+), 1 deletion(-)

commit 93b03119da8674a3eddb7879857e9f17fa16fd2a
Author: violet-sippial <38817272+violet-sippial@users.noreply.github.com>
Date:   Sat Apr 28 20:29:13 2018 +0200

    [subset] Do not compare ttx progress output in the tests

    Suppress progress messages of ttx. This avoids comparing this output
    to the reference file which lets the test fail.

 test/subset/run-tests.py | 1 +
 1 file changed, 1 insertion(+)

commit a57f5a1a185c333ae21a4ac1577387312895e107
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Apr 28 13:58:55 2018 +0430

    [dwrite] Minor, enable the original code assertions

 src/hb-directwrite.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 9925030f19851957381b78c197e6f50c77fde756
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Apr 13 12:43:29 2018 +0430

    Don't decompose Bengali Rra and Rha

    Fixes #779 and follow up to b01d9b3d90e892341ee4463f2eda4600850b97d8

 src/hb-ot-shape-complex-indic.cc                        |   3 +++
 test/shaping/data/in-house/Makefile.sources             |   1 +
 .../fonts/932ad5132c2761297c74e9976fe25b08e5ffa10b.ttf  | Bin 0 ->
 22980 bytes
 test/shaping/data/in-house/tests/indic-decompose.tests  |   1 +
 4 files changed, 5 insertions(+)

commit 5ad87a93fefcb94ee5f28de8d75903b2550c8d94
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Apr 25 16:44:04 2018 +0430

    Minor, improve file reading failing condition comment

    https://bugzilla.gnome.org/show_bug.cgi?id=659212 for more context

 src/hb-blob.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 2eaba80cbd3afb32363da93ebf6e60b11509d3f8
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Apr 24 09:04:15 2018 +0430

    Minor, re-add unused mark to some of ragel defined state machines
    (#1005)

 src/hb-ot-shape-complex-indic-machine.hh   | 2 +-
 src/hb-ot-shape-complex-indic-machine.rl   | 2 +-
 src/hb-ot-shape-complex-khmer-machine.hh   | 2 +-
 src/hb-ot-shape-complex-khmer-machine.rl   | 2 +-
 src/hb-ot-shape-complex-myanmar-machine.hh | 2 +-
 src/hb-ot-shape-complex-myanmar-machine.rl | 2 +-
 src/hb-ot-shape-complex-use-machine.hh     | 2 +-
 src/hb-ot-shape-complex-use-machine.rl     | 2 +-
 8 files changed, 8 insertions(+), 8 deletions(-)

commit 48f0204cfea616a788d75c5065ad4999c7685513
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Apr 24 08:11:13 2018 +0430

    Minor, re-add unused mark for two TRACE_ macros

    To revive Travis CI bot

 src/hb-debug.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 816b8169a90e0454b82a83719fc9ec1c83934d6f
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Apr 23 19:36:53 2018 +0430

    Resolve some of clang's double-promotion warnings

 src/hb-aat-layout-trak-table.hh    | 6 +++---
 src/hb-open-type-private.hh        | 8 ++++----
 src/hb-ot-layout-common-private.hh | 2 +-
 3 files changed, 8 insertions(+), 8 deletions(-)

commit 24b8b9b227f53b4f67a713c994cec04a5f774634
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Apr 23 19:03:57 2018 +0430

    Resolve clang's used-but-marked-unused warnings

 src/hb-debug.hh                            | 4 ++--
 src/hb-font.cc                             | 4 ++--
 src/hb-ft.cc                               | 8 ++++----
 src/hb-open-type-private.hh                | 2 +-
 src/hb-ot-font.cc                          | 6 +++---
 src/hb-ot-shape-complex-indic-machine.hh   | 2 +-
 src/hb-ot-shape-complex-indic-machine.rl   | 2 +-
 src/hb-ot-shape-complex-khmer-machine.hh   | 2 +-
 src/hb-ot-shape-complex-khmer-machine.rl   | 2 +-
 src/hb-ot-shape-complex-myanmar-machine.hh | 2 +-
 src/hb-ot-shape-complex-myanmar-machine.rl | 2 +-
 src/hb-ot-shape-complex-use-machine.hh     | 2 +-
 src/hb-ot-shape-complex-use-machine.rl     | 2 +-
 src/hb-set.cc                              | 2 +-
 src/hb-unicode.cc                          | 2 +-
 15 files changed, 22 insertions(+), 22 deletions(-)

commit eaf649450a29115ca0b2aac2921cc40c17aa55ac
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Apr 23 18:39:40 2018 +0430

    Resolve clang's conditional-uninitialize warnings

 src/hb-ot-layout-gpos-table.hh | 2 +-
 src/hb-ot-shape-normalize.cc   | 4 ++--
 util/view-cairo.cc             | 2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)

commit 8b0d642e6610dd44f98a986580451eb562276897
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Apr 23 18:37:35 2018 +0430

    Resolve some of clang's zero-as-null-pointer-constant warnings

 src/hb-coretext.cc              | 4 ++--
 src/hb-dsalgs.hh                | 2 +-
 src/hb-ot-os2-unicode-ranges.hh | 2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)

commit 8100380d9e6fdd52eb7054f3300046028dcde8f9
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Apr 22 10:58:37 2018 +0430

    Minor, fix calloc call order

 src/hb-blob.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2a4cdfad20fa8f0d2894383c2f10a6983f88b34b
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Apr 20 21:12:58 2018 +0430

    [aat/kerx] Minor (#1003)

 src/hb-aat-layout-kerx-table.hh | 46
 +++++++++++++++++++++--------------------
 1 file changed, 24 insertions(+), 22 deletions(-)

commit ce17340b23d96f543cd88e400e631bdb5656331c
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Apr 20 10:29:06 2018 +0430

    Add hb_blob_create_from_file, a new API (#926)

 TODO                         |   2 -
 docs/harfbuzz-sections.txt   |   1 +
 src/dump-emoji.cc            |  33 +----------
 src/dump-fon.cc              |  11 +---
 src/hb-blob.cc               | 131
 ++++++++++++++++++++++++++++++++++++++++---
 src/hb-blob.h                |   2 +
 src/main.cc                  |  26 +--------
 src/test-buffer-serialize.cc |  42 +-------------
 src/test-size-params.cc      |  42 +-------------
 src/test-would-substitute.cc |  42 +-------------
 src/test.cc                  |  42 +-------------
 test/api/hb-subset-test.h    |  54 +-----------------
 test/api/hb-test.h           |  33 -----------
 util/options.cc              |  88 +++++++----------------------
 util/options.hh              |   6 --
 util/view-cairo.hh           |   3 +-
 16 files changed, 159 insertions(+), 399 deletions(-)

commit 4fa1c6705a1bc5299adb5a848ceaf6ac8f33c0ba
Author: Garret Rieger <grieger@google.com>
Date:   Thu Apr 19 15:30:35 2018 -0700

    [subset] Check instruction offsets in glyph to ensure they are
    in bounds.

 src/hb-ot-glyf-table.hh                            |  18 ++++++++++--
 .../oom-ccc61c92d589f895174cdef6ff2e3b20e9999a1a   | Bin 0 -> 63302 bytes
 test/api/test-subset-glyf.c                        |  31
 +++++++++++++++++++++
 3 files changed, 47 insertions(+), 2 deletions(-)

commit 3c97614598ecd0bbccb2c90a8e0e99f010952b76
Author: Garret Rieger <grieger@google.com>
Date:   Thu Apr 19 13:39:57 2018 -0700

    [subset] In subset fuzzer run through drop hints and keep hints
    pathways.

 test/fuzzing/hb-subset-fuzzer.cc | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

commit 6fdeeb2ae3059ac1bc5ff99fd1655b4e94576151
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Thu Apr 19 23:41:37 2018 +0300

    [util] Check all specified shapers are known (#993)

    A bit brute force and requires all shapers to be known, not just one.

    Fixes https://github.com/harfbuzz/harfbuzz/issues/956

 util/options.cc | 22 ++++++++++++++++++++--
 1 file changed, 20 insertions(+), 2 deletions(-)

commit 535fb23c0211c733d59f72c3431643d89dc16d16
Author: Garret Rieger <grieger@google.com>
Date:   Wed Apr 18 17:37:39 2018 -0700

    [subset] Add integration tests for cmap breakge.

 .../full-font/Roboto-Regular.default.D7,D8,D9,DA,DE.ttf  | Bin 0 ->
 3668 bytes
 .../Roboto-Regular.drop-hints.D7,D8,D9,DA,DE.ttf         | Bin 0 ->
 2188 bytes
 test/subset/data/tests/full-font.tests                   |   1 +
 3 files changed, 1 insertion(+)

commit e29c8e33f3debf721e18306b896df7a3233386ac
Author: Garret Rieger <grieger@google.com>
Date:   Wed Apr 18 17:32:43 2018 -0700

    [subset] Add a test for previous cmap breakage.

 test/api/fonts/Roboto-Regular.D7,D8,D9,DA,DE.ttf | Bin 0 -> 2972 bytes
 test/api/test-subset-cmap.c                      |  23
 +++++++++++++++++++++++
 2 files changed, 23 insertions(+)

commit 5e318e09ba590eef7b7ec047d7857f7f1eb7d787
Author: Garret Rieger <grieger@google.com>
Date:   Wed Apr 18 17:13:37 2018 -0700

    [subset] Fix broken cmap creation.
    It was ignoring the restriction that gids must be consecutive to be
    placed into a single group.

 src/hb-ot-cmap-table.hh | 23 ++++++++++++++++-------
 1 file changed, 16 insertions(+), 7 deletions(-)

commit a47070cd40cee51fe792cb838ff9f21e0ea482c6
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Apr 18 12:09:37 2018 +0430

    Minor, annotate the added tables with likely/unlikely (#997)

 src/hb-aat-fmtx-table.hh        |  2 +-
 src/hb-aat-gcid-table.hh        |  2 +-
 src/hb-aat-layout-ankr-table.hh |  7 ++++---
 src/hb-aat-layout-bsln-table.hh |  9 +++++----
 src/hb-aat-layout-feat-table.hh | 10 +++++-----
 src/hb-aat-layout-kerx-table.hh | 12 ++++++------
 src/hb-aat-layout-trak-table.hh | 21 +++++++++++++--------
 src/hb-aat-ltag-table.hh        |  2 +-
 src/hb-ot-color-colr-table.hh   | 10 +++++-----
 src/hb-ot-color-cpal-table.hh   | 18 ++++++++++--------
 src/hb-ot-color-sbix-table.hh   |  2 +-
 src/hb-ot-color-svg-table.hh    |  6 +++---
 12 files changed, 55 insertions(+), 46 deletions(-)

commit 1a309dcd72f9f54672a7341788a9b2241c922793
Author: Garret Rieger <grieger@google.com>
Date:   Tue Apr 17 18:11:32 2018 -0700

    [subset] Remove printf's from fuzzing targets.

 test/fuzzing/hb-subset-fuzzer.cc                | 1 -
 test/fuzzing/hb-subset-get-codepoints-fuzzer.cc | 1 -
 2 files changed, 2 deletions(-)

commit c55aa147c33eb733ab552d404a88749cb6ff6d73
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Apr 18 00:01:20 2018 +0430

    Do sanitization before the use on 'main' mini-program (#994)

 src/main.cc | 22 ++++++++++++++++++----
 1 file changed, 18 insertions(+), 4 deletions(-)

commit c02b40e58f35ecd10c4945d2fa2b7074137c2c04
Author: Garret Rieger <grieger@google.com>
Date:   Tue Apr 17 08:21:22 2018 -0600

    [subset] add a fuzzer target for subset_get_all_codepoints
    method. (#987)

 test/fuzzing/CMakeLists.txt                     |  7 ++++++-
 test/fuzzing/Makefile.am                        | 16 ++++++++++++++++
 test/fuzzing/hb-subset-get-codepoints-fuzzer.cc | 24
 ++++++++++++++++++++++++
 test/fuzzing/run-subset-fuzzer-tests.py         | 19 ++++++++++++++++++-
 4 files changed, 64 insertions(+), 2 deletions(-)

commit 924803166e074c569ecfa7e598686f334777770f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 17 15:32:02 2018 +0200

    [colr] Check layer record access

 src/hb-ot-color-colr-table.hh | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

commit 5dadbb0fa096574b6bccd75cced203baf615fedf
Author: Garret Rieger <grieger@google.com>
Date:   Tue Apr 17 07:00:23 2018 -0600

    [subset] Add implementation of cmap format 12 codepoint
    listing. (#988)

 src/hb-ot-cmap-table.hh                        |  21 +++++++++++-
 test/api/fonts/Roboto-Regular.abc.format12.ttf | Bin 0 -> 2412 bytes
 test/api/test-subset-codepoints.c              |  44
 +++++++++++++++++++++++++
 3 files changed, 64 insertions(+), 1 deletion(-)

commit 6771e79bcc2166b5c03ca615d271c8508d692416
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Apr 17 09:36:52 2018 +0430

    Add pre-opentype font pages detection code (#986)

    As Khaled's finding on #981 this is the way Uniscribe detects those
    fonts. This is its detection part.

 src/hb-ot-os2-table.hh | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

commit 277e328986d5887fa93c72dc8b12d842d41db87f
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Apr 17 09:13:35 2018 +0430

    Make some of implicit header uses explicit (#989)

    Splitted from #950 and #986 IIRC Chromium had a policy about this
    encouraging it,
    not sure about automated way to detect and add them but for now lets
    have the needed
    ones of them.

 src/hb-aat-layout-morx-table.hh | 1 +
 src/hb-aat-layout-trak-table.hh | 1 +
 src/hb-ot-hdmx-table.hh         | 1 +
 src/hb-ot-hmtx-table.hh         | 1 +
 src/hb-ot-os2-table.hh          | 1 +
 src/hb-ot-post-table.hh         | 1 +
 6 files changed, 6 insertions(+)

commit f5811bad04be9dac8a4fca8e16904d6270e47777
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Apr 17 09:13:03 2018 +0430

    Add round to F2DOT14 inner store setter (#990)

    It uses floor implicitly without it but explicit use of round will
    be more correct.

 src/hb-open-type-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 39754fb65981fa8d11615e1dced852285ad09e4e
Author: Garret Rieger <grieger@google.com>
Date:   Mon Apr 16 15:09:27 2018 -0700

    [subset] Don't assume the last segment in cmap 4 can be skipped,
    actually check it.

 src/hb-ot-cmap-table.hh | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

commit 21a181af2bf1582991c55de5f9281494733c5d12
Author: Garret Rieger <grieger@google.com>
Date:   Tue Apr 10 15:40:24 2018 -0700

    [subset] sketch out support for a call that lists all codepoints
    present in a font. Implement support for it in format 4 cmap sub
    table.

 src/hb-ot-cmap-table.hh                       |  37 ++++++++++++++--
 src/hb-subset.cc                              |  14 ++++++
 src/hb-subset.h                               |   5 ++-
 test/api/Makefile.am                          |   2 +
 test/api/fonts/Roboto-Regular.abc.format4.ttf | Bin 0 -> 2424 bytes
 test/api/test-subset-codepoints.c             |  59
 ++++++++++++++++++++++++++
 6 files changed, 113 insertions(+), 4 deletions(-)

commit aef96e246cb695c4c83b8b6daed06a0d14fe1d32
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Apr 16 18:30:25 2018 +0430

    Further improvements on dump-fon (#985)

 src/dump-fon.cc | 153
 +++++++++++++++++++++++++++++++++++++++++++++-----------
 1 file changed, 123 insertions(+), 30 deletions(-)

commit 67dfb1937b703b3f1dc45251f4f884abf35c8576
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Apr 16 14:25:45 2018 +0430

    Add dump-fon, a prototype on how to work with .fon/.fnt files (#981)

 src/Makefile.am |   4 +
 src/dump-fon.cc | 475
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 479 insertions(+)

commit ce99dd04de830c8426af14c11dbee45f8bcc9e60
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Apr 15 22:08:50 2018 +0430

    Implement to_float and set_float of F2DOT14 (#984)

 src/hb-open-type-private.hh | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

commit 435b1878e710b67e21872572ad9fd5ed1369e97f
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Apr 15 21:18:48 2018 +0430

    Rename UINT24 to HBUINT24 for consistency (#983)

 src/hb-open-type-private.hh        | 2 +-
 src/hb-ot-cmap-table.hh            | 6 +++---
 src/hb-ot-layout-common-private.hh | 2 +-
 3 files changed, 5 insertions(+), 5 deletions(-)

commit 3737c652a5e0b6d73b6090dc6c3863008c9dc8fd
Merge: 632713ba 8f4c1230
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Apr 13 23:19:19 2018 +0430

    Merge pull request #979 from ebraminio/msvc05

    Reinstate support for Visual Studio 2005

commit 8f4c12308a8d9e61922fb352e913acae46b28a88
Author: Tor Andersson <tor.andersson@artifex.com>
Date:   Fri Apr 13 23:01:54 2018 +0430

    Reinstate support for Visual Studio 2005

 src/hb-common.h    | 10 ++++++++++
 src/hb-private.hh  |  6 +++---
 src/hb-ucdn/ucdn.h | 10 ++++++++++
 3 files changed, 23 insertions(+), 3 deletions(-)

commit 632713babbc349920f71f73cc304c9a18078fd6b
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Apr 12 14:17:03 2018 +0430

    Always enable atexit on Android (#971)

    Obviously one can use a newer NDK for building an updated HarfBuzz
    instead that now pretty old version however I am concerned if that
    version checking is working with clang that is used with the newer
    NDK versions.

 src/hb-private.hh | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

commit f24b0b9728f87d7599867a4ba6ec7d30da43b869
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Apr 12 13:40:45 2018 +0430

    Update the links and revive the dead ones

 src/hb-common.cc                           |  4 ++--
 src/hb-common.h                            |  6 +++---
 src/hb-coretext.cc                         |  6 +++---
 src/hb-ft.cc                               |  2 +-
 src/hb-ot-cmap-table.hh                    | 12 ++++++------
 src/hb-ot-layout-common-private.hh         |  8 ++++----
 src/hb-ot-layout-private.hh                |  2 +-
 src/hb-ot-layout.h                         |  2 +-
 src/hb-ot-shape-complex-arabic.cc          |  4 ++--
 src/hb-ot-shape-complex-indic-private.hh   |  2 +-
 src/hb-ot-shape-complex-indic.cc           |  4 ++--
 src/hb-ot-shape-complex-khmer.cc           |  2 +-
 src/hb-ot-shape-complex-myanmar-private.hh |  2 +-
 src/hb-ot-shape-complex-myanmar.cc         |  2 +-
 src/hb-ot-shape-complex-thai.cc            |  2 +-
 src/hb-ot-shape-complex-use-private.hh     |  2 +-
 src/hb-ot-shape-complex-use.cc             |  2 +-
 src/hb-ot-shape-fallback.cc                |  2 +-
 src/hb-ot-tag.cc                           |  9 ++++-----
 src/hb-private.hh                          |  4 ++--
 src/hb-string-array.hh                     |  2 +-
 src/hb-unicode-private.hh                  | 18 +++++++++---------
 test/api/test-buffer.c                     |  2 +-
 test/api/test-ot-tag.c                     |  6 +++---
 test/api/test-shape.c                      |  2 +-
 25 files changed, 54 insertions(+), 55 deletions(-)

commit a02c3ee70f4ca9de1fd55f1d8d535f6bd0d32606
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Apr 12 13:38:19 2018 +0430

    Add or update tables specifications links

 src/hb-aat-fmtx-table.hh        |  9 ++++-----
 src/hb-aat-gcid-table.hh        |  8 ++++----
 src/hb-aat-layout-ankr-table.hh |  8 ++++----
 src/hb-aat-layout-bsln-table.hh | 10 +++++-----
 src/hb-aat-layout-feat-table.hh | 10 +++++-----
 src/hb-aat-layout-kerx-table.hh |  4 ++++
 src/hb-aat-layout-morx-table.hh |  4 ++++
 src/hb-aat-layout-trak-table.hh |  4 ++++
 src/hb-aat-ltag-table.hh        | 10 +++++-----
 src/hb-ot-color-cbdt-table.hh   | 24 ++++++++++++------------
 src/hb-ot-color-colr-table.hh   |  6 +++---
 src/hb-ot-color-cpal-table.hh   |  6 +++---
 src/hb-ot-color-sbix-table.hh   | 11 ++++++-----
 src/hb-ot-color-svg-table.hh    |  3 ++-
 src/hb-ot-glyf-table.hh         |  4 ++--
 src/hb-ot-hdmx-table.hh         | 11 ++++++-----
 src/hb-ot-head-table.hh         | 10 +++++-----
 src/hb-ot-hhea-table.hh         | 15 ++++++++-------
 src/hb-ot-hmtx-table.hh         | 14 +++++++-------
 src/hb-ot-kern-table.hh         | 10 ++++++----
 src/hb-ot-layout-base-table.hh  |  3 ++-
 src/hb-ot-layout-gdef-table.hh  |  3 ++-
 src/hb-ot-layout-gpos-table.hh  |  3 ++-
 src/hb-ot-layout-gsub-table.hh  |  3 ++-
 src/hb-ot-layout-jstf-table.hh  |  3 ++-
 src/hb-ot-math-table.hh         |  3 ++-
 src/hb-ot-maxp-table.hh         |  3 ++-
 src/hb-ot-name-table.hh         |  4 ++--
 src/hb-ot-os2-table.hh          |  3 +--
 src/hb-ot-post-table.hh         |  8 ++++----
 src/hb-ot-var-avar-table.hh     | 14 ++++++++------
 src/hb-ot-var-fvar-table.hh     | 15 ++++++++-------
 src/hb-ot-var-hvar-table.hh     |  7 ++++---
 src/hb-ot-var-mvar-table.hh     |  4 ++--
 34 files changed, 142 insertions(+), 115 deletions(-)

commit b799fc80777c1424e469a835f782b4e0f41c0043
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Apr 11 18:36:09 2018 +0430

    minor, use LOffsetTo and LArrayOf whenever possible (#966)

 src/hb-aat-layout-morx-table.hh | 10 ++++++----
 src/hb-aat-ltag-table.hh        |  2 +-
 src/hb-open-file-private.hh     |  2 +-
 src/hb-ot-cmap-table.hh         |  4 ++--
 4 files changed, 10 insertions(+), 8 deletions(-)

commit cb3fa70cd4c33e9f1c736f778cb3b606d15c0936
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Apr 11 18:00:13 2018 +0430

    [dwrite] Cosmetic change (#963)

 src/hb-directwrite.cc | 39 +++++++++++++++++++--------------------
 src/hb-directwrite.h  |  5 +++--
 2 files changed, 22 insertions(+), 22 deletions(-)

commit 09d5e5468858f4403ce91aca46749397b23825d9
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Apr 11 17:41:48 2018 +0430

    [graphite] Use tabs instead 8 spaces (#965)

 src/hb-graphite2.cc | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

commit 211da5efdcaff203eafda2a5081cd81e3d6cc35b
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Apr 11 17:41:24 2018 +0430

    [aat] Cosmetic changes (#964)

 src/hb-aat-gcid-table.hh            |  4 ++--
 src/hb-aat-layout-ankr-table.hh     | 11 ++++++-----
 src/hb-aat-layout-common-private.hh |  6 +++---
 src/hb-aat-layout-kerx-table.hh     | 29 +++++++++++++++--------------
 src/hb-aat-layout-morx-table.hh     |  6 +++---
 src/hb-aat-layout-trak-table.hh     | 10 +++++-----
 src/hb-aat-ltag-table.hh            |  8 ++++----
 7 files changed, 38 insertions(+), 36 deletions(-)

commit f8bb582bcc2af6cae531d8255da002f0c514f1a9
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Apr 11 17:13:20 2018 +0430

    [ot-color] Cosmetic changes (#962)

 src/hb-open-type-private.hh   |  1 -
 src/hb-ot-color-cbdt-table.hh | 10 +++++-----
 src/hb-ot-color-cpal-table.hh |  4 ++--
 src/hb-ot-color-sbix-table.hh | 41
 ++++++++++++++++++++---------------------
 src/hb-ot-color-svg-table.hh  | 37 +++++++++++++++++++------------------
 5 files changed, 46 insertions(+), 47 deletions(-)

commit 1e1e9086c09185a7bd6f65d1e391418642229616
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Apr 10 03:26:01 2018 +0430

    minor

 src/dump-emoji.cc | 1 +
 1 file changed, 1 insertion(+)

commit a62554af89b8324c73c623e64f87ec822c757515
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Apr 10 00:53:50 2018 +0430

    [colr/cpal] Improvements and add a sample renderer (#927)

 src/Makefile.am               |  13 ++-
 src/dump-emoji.cc             | 181
 +++++++++++++++++++++++++++++++++++++++---
 src/hb-ot-color-colr-table.hh |  43 +++++++++-
 src/hb-ot-color-cpal-table.hh |  70 +++++++++-------
 4 files changed, 259 insertions(+), 48 deletions(-)

commit f25731a3606ff0972505eeb934477480019ffcd3
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Apr 10 00:51:57 2018 +0430

    [ci] Don't fail on brew warnings

    Not the best fix but it works and we don't care about brew warnings,
    so

 .travis.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 58e569e5f7143a12cadcd6c42434558f9981e00e
Author: Ryan Schmidt <ryandesign@macports.org>
Date:   Thu Apr 5 17:03:36 2018 -0500

    Fix build with CoreText on OS X 10.7 and earlier (#952)

 src/hb-coretext.cc | 30 ++++++++++++++++++++++++++++--
 1 file changed, 28 insertions(+), 2 deletions(-)

commit d3984b45b5d110f34febbb9e1d8a9c2203080a1b
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Apr 1 12:16:42 2018 +0430

    [aat] Further improvements on feat (#948)

 src/Makefile.sources                               |  2 +-
 ...t-feat-table.hh => hb-aat-layout-feat-table.hh} | 48
 +++++++++++-----------
 src/hb-aat-layout.cc                               |  2 +-
 3 files changed, 25 insertions(+), 27 deletions(-)

commit 93dad9ade7078d28086b2e5c3b5e8dafa67617d2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Mar 31 17:06:17 2018 +0200

    [hangul] Fix comment

 src/hb-ot-shape-complex-hangul.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 44bf4320922d340d1357c4d42d093fa466c3610f
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Mar 31 16:51:36 2018 +0430

    [aat] Implement feat table parsing (#947)

 src/Makefile.sources     |   3 +-
 src/hb-aat-feat-table.hh | 122
 +++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-aat-layout.cc     |   1 +
 3 files changed, 125 insertions(+), 1 deletion(-)

commit 08b8eb678a6cb74c118a32e75b880599e3ac4a7c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Mar 31 12:15:50 2018 +0200

    Another try at fixing linker issue

    Fixes https://github.com/harfbuzz/harfbuzz/issues/880

 configure.ac    | 11 +++++++++--
 src/Makefile.am |  6 ------
 2 files changed, 9 insertions(+), 8 deletions(-)

commit eff36cd8f06ee992218ed3f198f6a4ea19d7089c
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Mar 30 22:25:35 2018 +0430

    Minor build related changes

 .editorconfig  | 3 +++
 CMakeLists.txt | 6 +++---
 configure.ac   | 2 +-
 3 files changed, 7 insertions(+), 4 deletions(-)

commit 9d68f73d5cf3f3df6bc5516ada987d9019d3fe3d
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Mar 30 21:57:10 2018 +0430

    [aat] Implement gcid table parsing (#944)

 src/Makefile.sources     |  1 +
 src/hb-aat-gcid-table.hh | 73
 ++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-aat-layout.cc     |  1 +
 3 files changed, 75 insertions(+)

commit 0e230a83ae8a2c5fbe40dc0e74e5e7ead106e45e
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Mar 30 19:36:00 2018 +0430

    [aat] Implement bsln table parsing (#943)

 src/Makefile.sources            |   1 +
 src/hb-aat-layout-bsln-table.hh | 156
 ++++++++++++++++++++++++++++++++++++++++
 src/hb-aat-layout.cc            |   3 +-
 3 files changed, 159 insertions(+), 1 deletion(-)

commit 70d36543aa929320ff82a9ce589786e58adb1836
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Mar 30 05:00:28 2018 +0430

    Make atexit callbacks threadsafe (#930)

 src/hb-common.cc    | 60
 +++++++++++++++++++++++++++++------------------------
 src/hb-ft.cc        | 44 ++++++++++++++++++++++++---------------
 src/hb-glib.cc      |  7 ++++++-
 src/hb-icu.cc       |  7 ++++++-
 src/hb-ot-font.cc   |  7 ++++++-
 src/hb-shape.cc     |  7 ++++++-
 src/hb-shaper.cc    |  9 ++++++--
 src/hb-ucdn.cc      |  7 ++++++-
 src/hb-uniscribe.cc |  8 +++++++
 9 files changed, 105 insertions(+), 51 deletions(-)

commit d3a432a7b272917edb83f8fe8468120beb37206b
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Mar 30 04:58:47 2018 +0430

    [graphite] Make get_table threadsafe (#931)

 src/hb-graphite2.cc | 10 ++++++----
 src/hb-graphite2.h  |  4 ++--
 2 files changed, 8 insertions(+), 6 deletions(-)

commit 80395f14e8873f30d2c9a49e42fc9febf5c87e45
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Mar 29 22:00:41 2018 +0430

    Make gen-* scripts LC_ALL=C compatible (#942)

 src/gen-arabic-table.py | 5 ++---
 src/gen-indic-table.py  | 4 ++--
 src/gen-use-table.py    | 4 ++--
 3 files changed, 6 insertions(+), 7 deletions(-)

commit 26e0cbd834e7a8bab331b395257e9c21dde4c2b1
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Mar 29 21:22:47 2018 +0430

    Actual py3 compatibility making on gen-* scripts (#941)

 src/gen-arabic-table.py       |  6 ++----
 src/gen-indic-table.py        | 13 +++++--------
 src/gen-use-table.py          | 12 +++++++++---
 test/shaping/hb_test_tools.py |  4 ++--
 4 files changed, 18 insertions(+), 17 deletions(-)

commit cab2c2c08c67e7d1606c03700df3e4e9c0dc59fd
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Mar 29 12:48:47 2018 +0430

    Make more gen-* scripts py3 compatible (#940)

 src/Makefile.am                                    |   2 +-
 src/gen-arabic-table.py                            | 163
 +++++++++++----------
 src/gen-def.py                                     |   2 +-
 src/gen-indic-table.py                             | 120 +++++++--------
 src/gen-unicode-ranges.py                          |   8 +-
 src/gen-use-table.py                               |   3 +-
 src/hb-ot-shape-complex-indic-table.cc             |   2 -
 src/sample.py                                      |   5 +-
 test/fuzzing/run-shape-fuzzer-tests.py             |   3 +-
 test/fuzzing/run-subset-fuzzer-tests.py            |   3 +-
 .../data/text-rendering-tests/extract-tests.py     |   3 +-
 test/shaping/hb_test_tools.py                      |   3 +-
 test/shaping/run-tests.py                          |   3 +-
 test/subset/run-tests.py                           |   2 +-
 14 files changed, 166 insertions(+), 156 deletions(-)

commit 5f7f0bfa1ecef6406cb9670b4eb057ea12c28730
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Mar 29 04:22:53 2018 +0430

    Add README.wine.md and touch some other docs (#939)

 Makefile.am                       |  3 ++-
 README.python => README.python.md | 12 +++++++++---
 README.wine.md                    | 40
 +++++++++++++++++++++++++++++++++++++++
 RELEASING.md                      | 25 +++++++++++++-----------
 4 files changed, 65 insertions(+), 15 deletions(-)

commit 5aa2c6e194bc75637d3f4862a096c0e7100072e2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 28 15:33:51 2018 -0700

    [atexit] Make hb_languate_item_t *langs freeing threadsafe

    Part of https://github.com/harfbuzz/harfbuzz/issues/923

 src/hb-common.cc | 15 ++++++++++-----
 1 file changed, 10 insertions(+), 5 deletions(-)

commit 8c9451107d46c87ed0e50e718977f0c286972f3b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 28 14:06:58 2018 -0700

    Fix one UBSan warning

    Fixes https://github.com/harfbuzz/harfbuzz/issues/935

 src/hb-font-private.hh | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit 48baf7e389faf8a57649ddc572da2ec8ec8829bb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 28 13:38:51 2018 -0700

    [uniscribe] Fixup for previous commit

    Fixes https://github.com/harfbuzz/harfbuzz/issues/934

 src/hb-uniscribe.cc | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit b17e1a40885245df690a14c7528939b3881e1fe4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 28 10:44:52 2018 -0700

    [uniscribe] Fix assertion fail in checksum calc

    Program:
    Z:\Users\ebrahim\Desktop\harfbuzz\winbuild\util\.libs\hb-shape.exe
    File: ../../src/hb-open-type-private.hh, Line 769

    Expression: 0 == (Length & 3)

    abnormal program termination

 src/hb-uniscribe.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a48dd6ef235d569d4b6f6f213ba93a54e142458d
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Mar 28 19:08:19 2018 +0430

    Make gen-use-table.py py3 compatible (#932)

 src/gen-use-table.py | 105
 ++++++++++++++++++++++++++-------------------------
 1 file changed, 53 insertions(+), 52 deletions(-)

commit 1c3372786c503f3f9108971dfa8956e4cb95f65d
Author: Garret Rieger <grieger@google.com>
Date:   Tue Mar 27 10:42:19 2018 -0700

    [subset] fix infinite loop bug in looping through tables for
    subsetting.

 src/hb-subset.cc                                   |   2 +-
 ...ase-minimized-hb-subset-fuzzer-5521982557782016 | Bin 0 -> 1228 bytes
 test/api/test-subset.c                             |  23
 +++++++++++++++++++++
 3 files changed, 24 insertions(+), 1 deletion(-)

commit 8fd55422c3fa2279991d93875d912fca4ee89cf5
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Mar 27 16:57:09 2018 +0430

    Implement an internal emojis dumper tool (#909)

    Later to be expanded to a more general tool but for now it only
    supports CBDT, SVG and CBDT.

 CMakeLists.txt                |   2 +-
 src/Makefile.am               |   4 ++
 src/dump-emoji.cc             | 141
 ++++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-color-cbdt-table.hh |  71 +++++++++++++++++++++
 src/hb-ot-color-sbix-table.hh |  79 ++++++++++++++---------
 src/hb-ot-color-svg-table.hh  |  56 ++++++++++++-----
 6 files changed, 307 insertions(+), 46 deletions(-)

commit 430f82817d048ac917f1956e07d9089b9fd7e695
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Mar 27 13:59:56 2018 +0430

    [ci] Fix coverage build fail (#925)

 src/Makefile.am | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

commit 07851aae9d28fed751663c543799f2b59369f892
Author: Garret Rieger <grieger@google.com>
Date:   Mon Mar 26 20:56:56 2018 -0600

    [subset] Couple of fixes for fuzzer discovered issues. (#924)

    * [subset] sanitize individual DeviceRecord's as part of hdmx
    sanitization.

    * [subset] Fix out of bounds read with non-two byte align glyphs.

    * [subset] Just use size_device_record >= DeviceRecord::min_size.

    * [subset] Add TODO.

    * [subset] Re-order checks in hdmx sanitize.

 src/hb-ot-hdmx-table.hh                            |   1 +
 src/hb-subset-glyf.cc                              |   6 +++---
 src/hb-subset.cc                                   |   6 +++++-
 ...ase-minimized-hb-subset-fuzzer-5609911946838016 | Bin 0 -> 313 bytes
 ...ase-minimized-hb-subset-fuzzer-6651660668502016 | Bin 0 -> 15229 bytes
 test/api/test-subset-hdmx.c                        |  23
 +++++++++++++++++++++
 6 files changed, 32 insertions(+), 4 deletions(-)

commit 6f46883f5b74b206a3b77246891ab2ac57a27c4e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Mar 26 19:55:22 2018 -0700

    [hdmx] Minor

 src/hb-ot-hdmx-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c589681926e50834bdc614479efced7382dfbf61
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Mar 26 19:55:16 2018 -0700

    Minor

 src/check-symbols.sh | 2 --
 1 file changed, 2 deletions(-)

commit 19ec366fb12afe5fce23239bbeb61e67d732a169
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Mar 26 15:09:54 2018 -0700

    Fix previous commit

    Automake has this stupid behavior where if your Makefile.am has
    syntactic error, it can get to a state that make succeeds but just
    ignores broken Makefile.am.  Ouch.

 src/Makefile.am | 1 -
 1 file changed, 1 deletion(-)

commit 44b6c77c64d367eb3c9227cf1c0fbaff4ab294b2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Mar 26 14:26:45 2018 -0700

    Try fixing linking again

    Before 1.7.5, we were setting -fno-exceptions etc on CXXFLAGS. In
    1.7.6
    we set it as CPPFLAGS. Try fixing. Also, I'm fairly sure it's safe to
    set these unconditionally.

    Fixes https://github.com/harfbuzz/harfbuzz/issues/880 (or so I hope)

 src/Makefile.am      | 19 +++++++------------
 test/api/Makefile.am |  2 +-
 2 files changed, 8 insertions(+), 13 deletions(-)

commit e4d1cbfb4fbc17d7dbe08133d1e5e181e1c9bbc5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Mar 26 14:09:29 2018 -0700

    Add HB_SUBSET_BUILTIN

    Fixes https://github.com/harfbuzz/harfbuzz/issues/865

 src/hb-subset.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c14b24fcd0052fc6100c32deea6ee1dcb0c98f85
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Mar 26 10:44:54 2018 -0700

    Add HB_NO_ATEXIT

 src/hb-private.hh | 3 +++
 1 file changed, 3 insertions(+)

commit aa53cb50ba3eea5c23458207faf879bd162d6599
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Mar 26 13:28:26 2018 +0430

    [aat] Unprefix not essentially layout tables (#921)

 src/Makefile.sources                                      | 4 ++--
 src/{hb-aat-layout-fmtx-table.hh => hb-aat-fmtx-table.hh} | 7 ++++---
 src/hb-aat-layout.cc                                      | 4 ++--
 src/{hb-aat-layout-ltag-table.hh => hb-aat-ltag-table.hh} | 7 ++++---
 4 files changed, 12 insertions(+), 10 deletions(-)

commit 8269791900cc765234915b29c974b34ed1f35519
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Sun Mar 25 20:50:41 2018 -0400

    Allow trailing non-numeric chars in --unicodes

 util/options.cc | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit a289aaff477dfbda25b90ba5ffb1296518d68d21
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Mar 26 01:14:07 2018 -0700

    [aat/ltag] Whitespace

 src/hb-aat-layout-ltag-table.hh | 14 ++++++--------
 1 file changed, 6 insertions(+), 8 deletions(-)

commit 158f2810b2868c7398dc80cbb089b88a566ce99e
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Mar 26 12:04:30 2018 +0430

    [aat/ltag] Implement the table parsing (#911)

 src/Makefile.sources            |  2 ++
 src/hb-aat-layout-fmtx-table.hh |  6 ++--
 src/hb-aat-layout-kerx-table.hh |  4 +--
 src/hb-aat-layout-ltag-table.hh | 80
 +++++++++++++++++++++++++++++++++++++++++
 src/hb-aat-layout-morx-table.hh |  4 +--
 src/hb-aat-layout-trak-table.hh |  4 +--
 src/hb-aat-layout.cc            |  3 +-
 7 files changed, 93 insertions(+), 10 deletions(-)

commit 9eee38a55cdcbfd34b530dcc8defff84057a9eb2
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Mar 25 23:56:02 2018 +0430

    [aat/fmtx] Implement the table parsing (#910)

 src/hb-aat-layout-fmtx-table.hh | 67
 +++++++++++++++++++++++++++++++++++++++++
 src/hb-aat-layout-trak-table.hh |  4 +--
 src/hb-aat-layout.cc            |  1 +
 3 files changed, 70 insertions(+), 2 deletions(-)

commit 1d3f4f835175c658c63e96be12052b80d27cf6fa
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Mar 25 18:45:50 2018 +0430

    [ci] Add a build only apple-gcc-4.2 i686 bot

 .circleci/config.yml | 13 +++++++++++++
 1 file changed, 13 insertions(+)

commit fe18c471a4aee1f6eba62383b64f0a8969cbc6ea
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Mar 25 18:19:23 2018 +0430

    [dwrite] minor

 src/dev-run.sh        |   5 ++-
 src/hb-directwrite.cc | 118
 ++++++++++++++++++++------------------------------
 2 files changed, 50 insertions(+), 73 deletions(-)

commit ebccd019749e24e6c045518ee1ffbfc947744204
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Mar 24 17:51:55 2018 -0700

    More ULL fixes

    Fixes https://github.com/harfbuzz/harfbuzz/issues/901

 src/hb-private.hh | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit 7ec3ba21f0dc43f9f8ea1fc4344d3ea4524841b1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Mar 24 14:12:12 2018 -0700

    Define uint64_t constants with ULL suffix

    Fixes https://github.com/harfbuzz/harfbuzz/issues/901

 src/hb-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 19256bef9d264f96187261929992b96e61fa43fd
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Mon Mar 12 13:33:03 2018 +0800

    hb-private.hh: Add fallback implementation for round()

    For pre-C99 compilers that do not support round(), we need to have a
    simplistic implementation for it, when it is not detected during build
    configuration, either via CMake or autotools, by using floor() and
    ceil(), which are provided in the pre-C99 compilers.

    Please see discussion at commit 86a0ac2 for more details for re-adding
    this patch.

 src/hb-private.hh | 13 +++++++++++++
 1 file changed, 13 insertions(+)

commit 95f0458f44e9a7ec250f1bc7d9f060745dbabcf3
Author: Nikolaus Waxweiler <madigens@gmail.com>
Date:   Fri Mar 23 19:38:11 2018 +0000

    Policy 0063 must be enabled to have hidden inline visibility... (#900)

    ...on static builds.

 CMakeLists.txt | 2 ++
 1 file changed, 2 insertions(+)

commit 2a236063392c4f7c4d718be36d2dec2b8804b560
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Mar 23 18:37:01 2018 +0430

    Fix llvm-gcc-4.2 compile issue and add a macOS bot to test it (#899)

 .circleci/config.yml        | 16 ++++++++++++++++
 src/hb-open-file-private.hh | 12 +++++++-----
 src/hb-ot-glyf-table.hh     | 40 ++++++++++++++++++++++------------------
 src/hb-ot-kern-table.hh     |  2 +-
 4 files changed, 46 insertions(+), 24 deletions(-)

commit 7919033ce8f6fd32b2dd980ad0aa59c7149a4827
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Mar 22 16:04:38 2018 +0430

    [dwrite] Replace rest of 'malloc/free's with 'new/delete' (#897)

 src/hb-directwrite.cc | 251
 +++++++++++++++++++++++++-------------------------
 1 file changed, 127 insertions(+), 124 deletions(-)

commit 3f55e0e74680c246819233a7250df612821698d7
Author: Garret Rieger <grieger@google.com>
Date:   Tue Mar 20 17:36:52 2018 -0700

    [subset] Check for the Null table and not nullptr to detect failure
    to find a table in glyf accelerator.

 src/hb-ot-glyf-table.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 45def99eae81e470be3c38d2962aafaaa85500b9
Author: Garret Rieger <grieger@google.com>
Date:   Tue Mar 20 17:28:47 2018 -0700

    [subset] Fix to debug message.

 src/hb-subset-glyf.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 139661404006b8be039436a81cb6b1a73ec44042
Author: Garret Rieger <grieger@google.com>
Date:   Tue Mar 20 16:55:42 2018 -0700

    [subset] don't use pointers returned from push after array has
    resized in hb-subset-glyf.cc

 src/hb-subset-glyf.cc                                   |   9 +++++++--
 .../crash-b577db318b30f2851828a4c9ef97cb30678b1b54      | Bin 0 ->
 22473 bytes
 2 files changed, 7 insertions(+), 2 deletions(-)

commit 3531efdb4c641ef543ea0686fef9289307d52096
Author: Garret Rieger <grieger@google.com>
Date:   Tue Mar 20 16:31:21 2018 -0700

    [subset] Fixed out of bounds read when subsetting hdmx.

 src/hb-ot-hdmx-table.hh                            |  30
 ++++++++++++++++-----
 .../crash-ccc61c92d589f895174cdef6ff2e3b20e9999a1a | Bin 0 -> 63302 bytes
 test/api/test-subset-hdmx.c                        |  23 ++++++++++++++++
 3 files changed, 47 insertions(+), 6 deletions(-)

commit e597436b994c0a553e85e4c2dbd74aa037e69b60
Author: Garret Rieger <grieger@google.com>
Date:   Tue Mar 20 13:00:49 2018 -0700

    [subset] Disable glyf accelerator_t methods if it didn't successfully
    init.

 src/hb-ot-glyf-table.hh                            |   7 ++++++-
 .../crash-4b60576767ee4d9fe1cc10959d89baf73d4e8249 | Bin 0 -> 3140 bytes
 test/api/test-subset.c                             |  23
 +++++++++++++++++++++
 3 files changed, 29 insertions(+), 1 deletion(-)

commit 7251181b56af564e2a9444f002f8ac03f98c7ee3
Author: Garret Rieger <grieger@google.com>
Date:   Tue Mar 20 11:21:06 2018 -0700

    [subset] Fix infinite loop in there are more then 32 tables.

 src/hb-subset.cc                                   |   1 +
 test/api/Makefile.am                               |   1 +
 .../oom-6ef8c96d3710262511bcc730dce9c00e722cb653   | Bin 0 -> 24233 bytes
 test/api/test-subset.c                             |  62
 +++++++++++++++++++++
 4 files changed, 64 insertions(+)

commit 1a94804d35d533d39849d21a177039c4cbfade98
Author: Garret Rieger <grieger@google.com>
Date:   Mon Mar 19 18:39:22 2018 -0700

    [subset] Add a fix for segfault in hmtx/vmtx subsetting code.

 src/hb-ot-hmtx-table.hh     | 13 +++++++++++--
 test/api/test-subset-hmtx.c |  3 ++-
 2 files changed, 13 insertions(+), 3 deletions(-)

commit 31281d6a17a03a124456a4cab54e31b248b41267
Author: Garret Rieger <grieger@google.com>
Date:   Mon Mar 19 17:47:57 2018 -0700

    [subset] Add a test demonstrating a seg fault while subsetting hmtx.

 .../crash-e4e0bb1458a91b692eba492c907ae1f94e635480 | Bin 0 -> 63302 bytes
 test/api/test-subset-hmtx.c                        |  22
 +++++++++++++++++++++
 2 files changed, 22 insertions(+)

commit b5c7d6cffc2098dafa06822b28a5fd4f6218b60c
Author: Garret Rieger <grieger@google.com>
Date:   Fri Mar 16 10:20:21 2018 -0700

    [subset] Restore subset to hb-subset-fuzzer.

 test/fuzzing/Makefile.am         | 2 +-
 test/fuzzing/hb-subset-fuzzer.cc | 2 --
 2 files changed, 1 insertion(+), 3 deletions(-)

commit 957e7756634a4fdf1654041e20e883cf964ecac9
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Mar 19 12:19:42 2018 +0330

    [dwrite] Use new again and enable the build on msys2 bots (#890)

 appveyor.yml          |  7 ++++---
 src/hb-directwrite.cc | 19 ++++++++-----------
 2 files changed, 12 insertions(+), 14 deletions(-)

commit 8d1b4082ae01b8fd87b2e83c89f670c1c7cfa0b1
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Mar 17 01:05:03 2018 +0330

    Appropriate fix for msys2 bot fail on gen-def.py (#894)

 src/Makefile.am | 2 +-
 src/gen-def.py  | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 7b4333b090a3adf04519ec853456cafff07dedf0
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Mar 16 22:45:09 2018 +0330

    Do feature test before adding -Bsymbolic-functions, autotools part
    (#892)

 configure.ac             |  2 +-
 m4/ax_check_link_flag.m4 | 74
 ++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 75 insertions(+), 1 deletion(-)

commit d68f00e4d8b061f56d3bd46d5ed1bc51406a4f1a
Author: Joel Winarske <joel.winarske@gmail.com>
Date:   Fri Mar 16 12:14:27 2018 -0700

    Do feature test before adding -Bsymbolic-functions, cmake part (#889)

 CMakeLists.txt | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit 42d3271cc39050c9df5f8c7345322ae90592158e
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Mar 16 22:39:58 2018 +0330

    [cmake] Don't hide symbols by default (#891)

    But keep use of cmake idiomatic way of making inlines hidden

 CMakeLists.txt | 17 ++---------------
 1 file changed, 2 insertions(+), 15 deletions(-)

commit 584693e0cb3585a910b18d7916d7e554ecdf619a
Author: Garret Rieger <grieger@google.com>
Date:   Thu Mar 15 18:27:01 2018 -0700

    [subset] Test not linking libharfbuzz-subset-fuzzing into
    hb-subset-fuzzer.

 test/fuzzing/Makefile.am                | 2 +-
 test/fuzzing/hb-subset-fuzzer.cc        | 2 ++
 test/fuzzing/run-subset-fuzzer-tests.py | 2 +-
 3 files changed, 4 insertions(+), 2 deletions(-)

commit 3f9361fe7a68896d2a5a44709ec08fe510144215
Author: Garret Rieger <grieger@google.com>
Date:   Thu Mar 15 18:06:15 2018 -0700

    [subset] Test hb-shape-fuzzer in run-subset-fuzzer-tests.

 test/fuzzing/run-subset-fuzzer-tests.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ce368e0d05147e70d8ad90383d748644b07f1d6f
Author: Garret Rieger <grieger@google.com>
Date:   Thu Mar 15 18:04:54 2018 -0700

    [subset] make libharfbuzz-subset-fuzzing.la depend on lib target.

 test/fuzzing/Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit 85a57029cdad634f56aa3ccc768e72bcb03888e3
Author: Garret Rieger <grieger@google.com>
Date:   Thu Mar 15 16:31:38 2018 -0700

    [subset] %d -> %zu

 test/fuzzing/hb-subset-fuzzer.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 318eea585329807477aab4eec173b561a08a46ca
Author: Garret Rieger <grieger@google.com>
Date:   Thu Mar 15 16:14:01 2018 -0700

    [subset] Add some more logging to hb-subset-fuzzer.

 test/fuzzing/hb-subset-fuzzer.cc | 1 +
 1 file changed, 1 insertion(+)

commit 64bab8b3d009ed4327c2db9fa3425682de225810
Author: Garret Rieger <grieger@google.com>
Date:   Thu Mar 15 16:12:00 2018 -0700

    [subset] Fix run-shape-fuzzer-tests.py. It was generating incorrect
    paths for input fonts.

 test/fuzzing/run-shape-fuzzer-tests.py | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit 6f9a584371ba4a9a63be3fa89f46474047a43ceb
Author: Garret Rieger <grieger@google.com>
Date:   Thu Mar 15 15:41:08 2018 -0700

    [subset] Add more verbose output for subset fuzzer test.

 test/fuzzing/run-shape-fuzzer-tests.py  | 2 +-
 test/fuzzing/run-subset-fuzzer-tests.py | 8 ++++++--
 2 files changed, 7 insertions(+), 3 deletions(-)

commit 0ce0f8781213f8f01b9ebc8cfa31434784899952
Author: Garret Rieger <grieger@google.com>
Date:   Thu Mar 15 13:04:31 2018 -0700

    [subset] Rename hb-fuzzer -> hb-shape-fuzzer.

 test/fuzzing/CMakeLists.txt                              | 16
 ++++++++--------
 test/fuzzing/Makefile.am                                 | 16
 ++++++++--------
 test/fuzzing/{hb-fuzzer.cc => hb-shape-fuzzer.cc}        |  0
 .../{run-fuzzer-tests.py => run-shape-fuzzer-tests.py}   | 12
 ++++++------
 4 files changed, 22 insertions(+), 22 deletions(-)

commit 1e9bd6d5ff0af0189b6398c5e13cff11ee70762b
Author: Garret Rieger <grieger@google.com>
Date:   Wed Mar 14 19:58:15 2018 -0700

    [subset] Add rub-subset-fuzzer-tests.py to dist files.

 test/fuzzing/Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit 474afaafd908a9c8174e05d693ac214ef2cc2597
Author: Garret Rieger <grieger@google.com>
Date:   Wed Mar 14 19:15:33 2018 -0700

    [subset] Add a test runner for hb-subset-fuzzer and cmake build
    config.

 test/fuzzing/CMakeLists.txt             |  9 +++++++++
 test/fuzzing/Makefile.am                |  3 ++-
 test/fuzzing/run-subset-fuzzer-tests.py | 31
 +++++++++++++++++++++++++++++++
 3 files changed, 42 insertions(+), 1 deletion(-)

commit aa9612d35f59f7f269fba4797c8da491844c56ec
Author: Garret Rieger <grieger@google.com>
Date:   Mon Mar 12 18:04:34 2018 -0700

    [subset] Fix fuzzing build for hb-subset-fuzzer.

 src/Makefile.am          | 19 +++----------------
 test/fuzzing/Makefile.am |  1 +
 2 files changed, 4 insertions(+), 16 deletions(-)

commit b674fc1f9fa36857214ddaba3d32877f03ffec8c
Author: Garret Rieger <grieger@google.com>
Date:   Mon Mar 12 16:33:47 2018 -0700

    [subset] Add missing destroy of subsetting result in subset fuzzer.

 test/fuzzing/hb-subset-fuzzer.cc | 1 +
 1 file changed, 1 insertion(+)

commit 1beb08862e9bd668599f0385d7ba59272fc24912
Author: Garret Rieger <grieger@google.com>
Date:   Mon Mar 12 16:08:16 2018 -0700

    [subset] First pass at setting up a fuzzing program for hb-subset.

 src/Makefile.am                  | 24 +++++++++++++++++++++++-
 test/fuzzing/Makefile.am         | 15 +++++++++++++++
 test/fuzzing/hb-subset-fuzzer.cc | 37
 +++++++++++++++++++++++++++++++++++++
 3 files changed, 75 insertions(+), 1 deletion(-)

commit 127096e4748d6381339342fc2750dd540e815fa5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Mar 15 13:23:27 2018 -0700

    [util] Remove line buffering

    Something weird seems to be going on. Just kill it.

    Fixes https://github.com/harfbuzz/harfbuzz/issues/888

 configure.ac    |  2 +-
 util/options.cc | 12 ------------
 2 files changed, 1 insertion(+), 13 deletions(-)

commit e6e2ee2b923f8ab7c0694d4557375ba316e15dff
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Mar 15 09:05:22 2018 -0700

    Remove extra stdbool includes

    They are handled in our common header.

 test/api/test-subset-post.c | 2 --
 test/api/test-subset-vmtx.c | 2 --
 2 files changed, 4 deletions(-)

commit a0dccb6188d7a9174643c7239041cb1a5300b957
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 14 16:31:53 2018 +0100

    Add NameID

 src/hb-aat-layout-trak-table.hh    |  8 ++++----
 src/hb-open-type-private.hh        |  3 +++
 src/hb-ot-layout-common-private.hh | 10 +++++-----
 src/hb-ot-var-fvar-table.hh        |  6 +++---
 4 files changed, 15 insertions(+), 12 deletions(-)

commit 56946d21c0696ed6a098434537979396171c9bfb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 14 16:26:33 2018 +0100

    [color/COLR] Simplify

 src/hb-ot-color-colr-table.hh | 48
 +++----------------------------------------
 1 file changed, 3 insertions(+), 45 deletions(-)

commit 6418ae4e8a3f4681cb4e7d54c589562930bc0678
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 14 16:18:42 2018 +0100

    [color/COLR] Clean up

 src/hb-aat-layout-common-private.hh | 84
 -------------------------------------
 src/hb-open-type-private.hh         | 84
 +++++++++++++++++++++++++++++++++++++
 src/hb-ot-color-colr-table.hh       | 30 ++++++-------
 3 files changed, 99 insertions(+), 99 deletions(-)

commit 150c53ee969876c2831b6165cb71655e7ce2dbdb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 14 16:08:12 2018 +0100

    [color/COLR] Fix bad sanitize

    Bad bad bad bad code. Don't do that. If compiler's not happy,
    understand why.

 src/hb-ot-color-colr-table.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 399c800b93879186da2b7c892c7aa21468f062f2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 14 16:03:01 2018 +0100

    [color/COLR] Clean up

 src/hb-ot-color-colr-table.hh | 32 +++++++++++++++++---------------
 1 file changed, 17 insertions(+), 15 deletions(-)

commit 9e337341d54c4ee12eec58e025a6831bb976d61f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 14 15:52:53 2018 +0100

    [color/cbdt] Clean up

 src/hb-ot-color-cbdt-table.hh | 112
 ++++++++++++++++++++----------------------
 1 file changed, 54 insertions(+), 58 deletions(-)

commit 86a0ac284fc4c2ce96354bfdf32878b6db5c77bd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 14 15:51:33 2018 +0100

    Revert "hb-private.hh: Add fallback implementation for round()"

    This reverts commit b9dcbb1f8312d8606b230f75594d40b7d4087004.

    This is gross. Should be only done if a specific macro is defined. Not
    the other way
    around. This fails my build as autotools companions where not
    added anyway.

 src/hb-private.hh | 13 -------------
 1 file changed, 13 deletions(-)

commit 791d80a1d42ce0bd7c5f0a3d3d10c562a6161a82
Merge: d4907e83 22de9bf5
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Mar 15 11:40:52 2018 +0330

    Merge pull request #886 from madig/only-export-visible-symbols

    CMake: hide symbols by default on non-MSVC, define export attribute

commit 22de9bf56d80dbf6a13a06beafd21711bdab78af
Author: Nikolaus Waxweiler <nikolaus.waxweiler@daltonmaag.com>
Date:   Wed Mar 14 10:29:24 2018 +0000

    Enable implicit symbol hiding for all libraries, static and shared

    This covers all built libraries now and both static and shared builds.

 CMakeLists.txt | 35 +++++++++++++++++++++++------------
 1 file changed, 23 insertions(+), 12 deletions(-)

commit d4907e83ef8e0d03acb701957cc1ee9acacb0a19
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Mar 14 11:04:28 2018 +0330

    [dwrite] GCC/mingw/msys2 compatibility (#884)

 src/hb-directwrite.cc | 37 +++++++++++++++++++++----------------
 1 file changed, 21 insertions(+), 16 deletions(-)

commit 93f8f89dedd2f8cf5eb40165a20d009de24c5eda
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Mar 14 09:56:31 2018 +0330

    [ci] Trying to fix gen-def issue on appveyor (#885)

 src/gen-def.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ce975dce7ae8950b6e7b9a2d0c00ead9d45f73ff
Author: Nikolaus Waxweiler <madigens@gmail.com>
Date:   Wed Mar 14 00:50:32 2018 +0000

    CMake: hide symbols by default on non-MSVC, define export attribute

    This change makes sure that non-MSVC builds using CMake properly hide
    non-exported functions.

 CMakeLists.txt | 20 ++++++++++++--------
 1 file changed, 12 insertions(+), 8 deletions(-)

commit a12dd6f75d85cf29ed78182ac97a12ebbcf77375
Merge: 28f25f32 7c43adab
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Mar 14 02:54:07 2018 +0330

    Merge pull request #877 from fanc999/master.msvc

    Fix CMake builds on Windows, MSVC in particular

commit 7c43adab6deb9302a24cc857c4aaa9b6b62215d2
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Mon Mar 12 16:43:53 2018 +0800

    CMake: Fix utility program installation

    Put in the utility program that was missed in installation by
    replacing
    the one that was duplicated.

 CMakeLists.txt | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e9b8002a6024d7a9b6de204897345ae77bb50881
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Mon Mar 12 16:23:57 2018 +0800

    CMake: Fix introspection on Windows

    The list of source files to pass to g-ir-scanner is becoming too
    long for Windows, as Windows imposes a 8192-character limit for
    command
    lines, so we need to first transform that list into a listings
    file, and
    then use the --filelist option for g-ir-scanner to build the
    introspection files.

 CMakeLists.txt | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

commit 831d4a2dab1f229811c3a90b791f2a19c88fc1b5
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Mon Mar 12 13:48:55 2018 +0800

    test/api: Fix building subset tests

    Include stdbool.h in hb-setset-test.h instead of in the individual
    sources, if it is found; otherwise use a simplistic fallback for it if
    it is not found.

    Also declare variables at the top of the block, to build on pre-C99
    compiliers.

 test/api/hb-subset-test.h   | 17 +++++++++++++++--
 test/api/test-subset-cmap.c |  8 ++++----
 test/api/test-subset-glyf.c | 23 ++++++++++++++---------
 test/api/test-subset-hdmx.c |  8 ++++----
 test/api/test-subset-hmtx.c | 17 ++++++++++-------
 test/api/test-subset-os2.c  |  4 ++--
 6 files changed, 49 insertions(+), 28 deletions(-)

commit eda6a5ea807ba8a4e7fa20ad0273b394ed72d106
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Mon Mar 12 13:38:01 2018 +0800

    CMake: Fix running tests on Windows

    For the API tests, output the test programs at $(TOP_BUILDDIR) so that
    the freshly-built DLLs will be available for the test programs.  For
    those that are run through the Python wrapper scripts, use
    ${PYTHON_EXECUTABLE} instead of plain 'python' in case the Python
    interpreter is not in the PATH.

 test/api/CMakeLists.txt     | 7 ++++++-
 test/fuzzing/CMakeLists.txt | 2 +-
 test/shaping/CMakeLists.txt | 4 ++--
 test/subset/CMakeLists.txt  | 2 +-
 4 files changed, 10 insertions(+), 5 deletions(-)

commit b9dcbb1f8312d8606b230f75594d40b7d4087004
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Mon Mar 12 13:33:03 2018 +0800

    hb-private.hh: Add fallback implementation for round()

    Add a simplistic round() implementation for our purposes, used
    when the
    compiler does not support round() directly.

 src/hb-private.hh | 13 +++++++++++++
 1 file changed, 13 insertions(+)

commit 89dbabff65a39dfb0d9ad036516d5b96c37739de
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Mon Mar 12 13:27:38 2018 +0800

    configure.ac/CMake: Check for round() and stdbool.h

    Not all the compilers that HarfBuzz is buildable on supports round()
    and
    has the header stdbool.h, so we check for them and define HAVE_ROUND
    and
    HAVE_STDBOOL_H repsectively in our CFLAGS so that we include them only
    when they are found, or use fallback implementations when necessary.

    Also include FindPythonInterp earlier as we need PYTHON_EXECUTABLE
    to be
    set for running the tests.

 CMakeLists.txt | 12 ++++++++++--
 configure.ac   |  9 ++++++++-
 2 files changed, 18 insertions(+), 3 deletions(-)

commit 28f25f32fc63c3e1ae0d04b6eb5ea6b729fb2228
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Mar 12 14:00:11 2018 +0330

    [ot-color/SVG] Minor (#878)

 src/hb-ot-color-svg-table.hh | 24 ++++++++++++++++--------
 1 file changed, 16 insertions(+), 8 deletions(-)

commit fb0f3e3767b488651f13978c1fd8651aefdd6b83
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Mar 11 20:38:40 2018 +0100

    [sbix] Clean up

 src/hb-ot-color-sbix-table.hh | 70
 +++++++++++++++++++++++--------------------
 1 file changed, 37 insertions(+), 33 deletions(-)

commit 218fa7166e9626f2036d08882854a86d753e4192
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Mar 10 11:13:52 2018 +0330

    [ot-color] SVG table implementation (#874)

 src/Makefile.sources         |   3 +-
 src/hb-ot-color-svg-table.hh | 111
 +++++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-layout.cc          |   1 +
 3 files changed, 114 insertions(+), 1 deletion(-)

commit 4c63c82383cba11f2c44c00cbc953863346e627c
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Mar 10 11:07:56 2018 +0330

    [ot-color] sbix table implementation (#870)

 src/Makefile.sources          |   1 +
 src/hb-ot-color-sbix-table.hh | 128
 ++++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-layout.cc           |   1 +
 3 files changed, 130 insertions(+)

commit 62b3d8fb7034c53e0804689d58e2eb7330e04430
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Mar 10 00:44:36 2018 +0330

    [dev-run] minor

 src/dev-run.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 743ef317619a57ebf5a75935db0eecccade5d5b7
Merge: 9206762b 39b2f69f
Author: Garret Rieger <grieger@google.com>
Date:   Fri Mar 9 12:06:52 2018 -0700

    Merge pull request #872 from googlefonts/drop-tables

    [subset] Drop the same tables by default as fontTools does.

commit 9206762bbd4033e97d6d35ef1cce1b7940fbc935
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Mar 9 15:43:03 2018 +0330

    Make subset test runner compatible with py3

    Fixes #873

 test/subset/run-tests.py | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit dbadb871d1ca62eff10768564fc0a17b9aaa4d63
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Mar 9 15:25:59 2018 +0330

    [ci] Enable subset tests on ArchLinux to test

    This makes ArchLinux bots fail, a starting point to #873

 .circleci/config.yml | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit 39b2f69fab3b8aec1296dcda111d358559d39f0b
Author: Garret Rieger <grieger@google.com>
Date:   Thu Mar 8 16:30:36 2018 -0800

    [subset] Drop the same tables by default as fontTools does.

 src/hb-subset.cc | 49 ++++++++++++++++++++++++++++++++++---------------
 1 file changed, 34 insertions(+), 15 deletions(-)

commit dbe552770fa7cec91bba750e0e81aaeae96b3caf
Merge: 2ebf4c69 8548fa15
Author: Garret Rieger <grieger@google.com>
Date:   Thu Mar 8 15:50:25 2018 -0700

    Merge pull request #871 from googlefonts/mplus

    [subset] Add a Japanese font to the subset integration tests.

commit 8548fa152241d6c5b020146f97aac15934ba0065
Author: Garret Rieger <grieger@google.com>
Date:   Wed Mar 7 12:37:03 2018 -0800

    [subset] Drop cmap 12, platform 0 tables from Mplus1p expected files.

 ...-Regular.default.3042,3044,3046,3048,304A,304B.ttf | Bin 3040 ->
 3032 bytes
 ...-Regular.default.3042,3044,3046,73E0,5EA6,8F38.ttf | Bin 3276 ->
 3268 bytes
 .../japanese/Mplus1p-Regular.default.61,63,65,6B.ttf  | Bin 2592 ->
 2584 bytes
 ...-Regular.default.660E,6975,73E0,5EA6,8F38,6E05.ttf | Bin 3572 ->
 3564 bytes
 .../japanese/Mplus1p-Regular.default.660E.ttf         | Bin 2356 ->
 2348 bytes
 ...gular.drop-hints.3042,3044,3046,3048,304A,304B.ttf | Bin 2312 ->
 2304 bytes
 ...gular.drop-hints.3042,3044,3046,73E0,5EA6,8F38.ttf | Bin 2548 ->
 2540 bytes
 .../Mplus1p-Regular.drop-hints.61,63,65,6B.ttf        | Bin 1864 ->
 1856 bytes
 ...gular.drop-hints.660E,6975,73E0,5EA6,8F38,6E05.ttf | Bin 2844 ->
 2836 bytes
 .../japanese/Mplus1p-Regular.drop-hints.660E.ttf      | Bin 1628 ->
 1620 bytes
 10 files changed, 0 insertions(+), 0 deletions(-)

commit 9b00b9a10d5fdfd2d9deb1b0e847695797b7e09b
Author: Garret Rieger <grieger@google.com>
Date:   Tue Mar 6 17:47:40 2018 -0800

    [subset] Fix deadlock waiting for process output in subset test
    runner.

 test/subset/run-tests.py | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit bfec28a7db0631f42dd420a8c04638624e4602af
Author: Garret Rieger <grieger@google.com>
Date:   Tue Mar 6 15:43:08 2018 -0800

    [subset] add some extra logging to subset run-tests.py.

 test/subset/run-tests.py | 2 ++
 1 file changed, 2 insertions(+)

commit c7d814eaa8e9af6c447124ceeaa896eb5e17abd7
Author: Garret Rieger <grieger@google.com>
Date:   Thu Mar 1 18:20:00 2018 -0800

    [subset] Add japanese font file to subset integration tests.

 test/subset/data/Makefile.am                          |   1 +
 test/subset/data/Makefile.sources                     |   1 +
 ...-Regular.default.3042,3044,3046,3048,304A,304B.ttf | Bin 0 ->
 3040 bytes
 ...-Regular.default.3042,3044,3046,73E0,5EA6,8F38.ttf | Bin 0 ->
 3276 bytes
 .../japanese/Mplus1p-Regular.default.61,63,65,6B.ttf  | Bin 0 ->
 2592 bytes
 ...-Regular.default.660E,6975,73E0,5EA6,8F38,6E05.ttf | Bin 0 ->
 3572 bytes
 .../japanese/Mplus1p-Regular.default.660E.ttf         | Bin 0 ->
 2356 bytes
 ...gular.drop-hints.3042,3044,3046,3048,304A,304B.ttf | Bin 0 ->
 2312 bytes
 ...gular.drop-hints.3042,3044,3046,73E0,5EA6,8F38.ttf | Bin 0 ->
 2548 bytes
 .../Mplus1p-Regular.drop-hints.61,63,65,6B.ttf        | Bin 0 ->
 1864 bytes
 ...gular.drop-hints.660E,6975,73E0,5EA6,8F38,6E05.ttf | Bin 0 ->
 2844 bytes
 .../japanese/Mplus1p-Regular.drop-hints.660E.ttf      | Bin 0 ->
 1628 bytes
 test/subset/data/fonts/Mplus1p-Regular.ttf            | Bin 0 ->
 1758820 bytes
 test/subset/data/tests/japanese.tests                 |  16
 ++++++++++++++++
 14 files changed, 18 insertions(+)

commit 2ebf4c69b18452caa0c871aebec9785e80348166
Merge: 1ab51480 869ccac5
Author: Garret Rieger <grieger@google.com>
Date:   Thu Mar 8 14:41:59 2018 -0700

    Merge pull request #868 from googlefonts/post

    [subset] Drop glyph names from post when subsetting.

commit 869ccac5ab69060f2db2893014b5538539fd4f45
Author: Garret Rieger <grieger@google.com>
Date:   Thu Mar 8 11:06:49 2018 -0800

    [subset] use create_sub_blob instead of manually copying the post
    table.

 src/hb-ot-post-table.hh | 20 +++++++-------------
 1 file changed, 7 insertions(+), 13 deletions(-)

commit ec47cd95ba6c550314a1cbcc46fafd7946e52ece
Author: Garret Rieger <grieger@google.com>
Date:   Wed Mar 7 10:33:02 2018 -0800

    [subset] Unit test to check that post subsetting drops glyph names.

 test/api/Makefile.am                               |   2 +
 ...lus1p-Regular.660E,6975,73E0,5EA6,8F38,6E05.ttf | Bin 3572 ->
 3724 bytes
 test/api/test-subset-post.c                        |  61
 +++++++++++++++++++++
 3 files changed, 63 insertions(+)

commit dd107699938740e261948e4b525fa0ad501beb03
Author: Garret Rieger <grieger@google.com>
Date:   Tue Mar 6 18:33:39 2018 -0800

    [subset] drop all glyph names from the post table.

 src/hb-ot-post-table.hh | 28 ++++++++++++++++++++++++++++
 src/hb-subset.cc        |  4 ++++
 2 files changed, 32 insertions(+)

commit 1ab514805ced190efdabc2103e4800d40b248300
Merge: 70ad69f2 362f2824
Author: Garret Rieger <grieger@google.com>
Date:   Wed Mar 7 12:36:00 2018 -0700

    Merge pull request #867 from googlefonts/vmtx

    [subset] Add vmtx subsetting.

commit 362f28240683fde395ff52f4fc1216fbc7131452
Author: Garret Rieger <grieger@google.com>
Date:   Wed Mar 7 11:08:55 2018 -0800

    [subset] fix author.

 test/api/test-subset-vmtx.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 89465cb1c7b8ab61c0ef4887f51572ba91039f3e
Author: Garret Rieger <grieger@google.com>
Date:   Wed Mar 7 10:29:15 2018 -0800

    [subset] s/hmetrics/vmetrics.

 test/api/test-subset-vmtx.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 91867cda6ae5ae063482b28b0a52ebc30718cb40
Author: Garret Rieger <grieger@google.com>
Date:   Wed Mar 7 10:17:06 2018 -0800

    [subset] cleanup.

 src/hb-subset.cc            | 2 +-
 test/api/test-subset-vmtx.c | 3 +--
 2 files changed, 2 insertions(+), 3 deletions(-)

commit d9263f0230693d108249be0904bc5a3280560cb3
Author: Garret Rieger <grieger@google.com>
Date:   Tue Mar 6 15:40:35 2018 -0800

    [subset] add unit tests for vmtx subsetting.

 test/api/Makefile.am                               |   2 +
 ...lus1p-Regular.660E,6975,73E0,5EA6,8F38,6E05.ttf | Bin 0 -> 3572 bytes
 test/api/fonts/Mplus1p-Regular.660E.ttf            | Bin 0 -> 2356 bytes
 test/api/test-subset-vmtx.c                        | 100
 +++++++++++++++++++++
 4 files changed, 102 insertions(+)

commit 0e8f9430c83c076993a0c7a320713bb484051343
Author: Garret Rieger <grieger@google.com>
Date:   Tue Mar 6 13:08:20 2018 -0800

    [subset] Skip subsetting vhea.

 src/hb-subset.cc | 3 +++
 1 file changed, 3 insertions(+)

commit 64cf53d6197a0e6c56aef744ceff2f8a0ff85654
Author: Garret Rieger <grieger@google.com>
Date:   Fri Mar 2 17:33:49 2018 -0800

    [subset] Subset vmtx if present.

 src/hb-ot-hmtx-table.hh | 2 +-
 src/hb-subset.cc        | 3 +++
 2 files changed, 4 insertions(+), 1 deletion(-)

commit 70ad69f2449d754fcc5270ff3ca3848a77f4c7af
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 7 16:11:44 2018 +0100

    [test] Fix build with older glib

 test/api/hb-subset-test.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ff2f81432bb0484a019a678058595e10217df51d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 7 16:05:14 2018 +0100

    1.7.6

 NEWS             | 15 +++++++++++++++
 configure.ac     |  2 +-
 src/hb-version.h |  4 ++--
 3 files changed, 18 insertions(+), 3 deletions(-)

commit ac2ece3e153167224c85cc384e2826ea9711a8b5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 7 15:52:42 2018 +0100

    [ot] Comment out AAT include

 src/hb-ot-shape.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 23a9ac993862b4a9032d38e80491a769b7ee86da
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 7 15:51:42 2018 +0100

    Remove hb-ot-color.h

    So I can make a release.

 src/Makefile.sources          |  1 -
 src/hb-ot-color-cpal-table.hh | 48 +++++++++++++++++++++++++
 src/hb-ot-color.h             | 81
 -------------------------------------------
 src/hb-ot.h                   |  1 -
 4 files changed, 48 insertions(+), 83 deletions(-)

commit 790a11700773dd664e4d5edac63c404c5ebce080
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 7 15:31:15 2018 +0100

    [ot] Remove hb-ot-base.h

    BASE table API will go into hb-ot-layout.h.

 src/Makefile.sources           |  1 -
 src/hb-ot-base.h               | 56
 ------------------------------------------
 src/hb-ot-layout-base-table.hh |  1 -
 src/hb-ot-layout.h             | 16 ++++++++++++
 src/hb-ot.h                    |  1 -
 5 files changed, 16 insertions(+), 59 deletions(-)

commit f014a124f582215fa96afc28b534a1ca0bf17167
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 7 10:49:26 2018 +0100

    [set] Fix algebra

    Was totally b0rked. Ouch!

    Fixes https://github.com/harfbuzz/harfbuzz/issues/863

 src/hb-set-private.hh | 20 +++++++++++++++++---
 1 file changed, 17 insertions(+), 3 deletions(-)

commit 7587683cdce8ee9b7f07bae82aa1bb163e79ab92
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 7 09:55:22 2018 +0100

    [set] Minor

    In preparation to fix https://github.com/harfbuzz/harfbuzz/issues/863

    Binary operations are sets are completely broken. Ouch.

 src/hb-set-private.hh | 21 ++++++++++++++-------
 1 file changed, 14 insertions(+), 7 deletions(-)

commit e4cbb87bd3512c3a6e97ea3923ecd1b26b0a1251
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 7 09:37:22 2018 +0100

    Minor

 src/hb-ot-color-colr-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c6150333c29b458ed34858f24e94acc0f771aa0b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 7 09:27:16 2018 +0100

    Sign

 src/test-unicode-ranges.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9a6f9b4d4284f0378a71a181fe216d97c913669e
Author: Garret Rieger <grieger@google.com>
Date:   Tue Mar 6 13:46:51 2018 -0800

    [set] add a test demonstrating a bug in hb_set_union.

 test/api/test-set.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

commit 9b4a5d7ef1ec068042e3c793845a4dbc3308d4b7
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Mar 7 00:23:40 2018 +0330

    [ci] Enable -Werror=unused (#862)

 .travis.yml             | 4 ++--
 src/hb-ot-glyf-table.hh | 1 -
 2 files changed, 2 insertions(+), 3 deletions(-)

commit 54cbe6702c1e4c934c60512367abaf801294c1bb
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Mar 6 16:41:08 2018 +0330

    [ot-color] Further improvements on COLR/CPAL implementation (#859)

    * Implemented a bsearch on get_base_glyph_record
    * Made get_color_record_argb actually work

 src/hb-ot-color-colr-table.hh | 35 ++++++++++++++-----------
 src/hb-ot-color-cpal-table.hh | 59
 +++++++++++++++----------------------------
 src/hb-ot-color.h             | 12 ++-------
 3 files changed, 42 insertions(+), 64 deletions(-)

commit 18d14b8e0d5d28106800ebf835ff3155a4f4de7c
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Mar 5 14:25:11 2018 +0330

    [dev-run] an option to open using a GUI app

 src/dev-run.sh | 22 ++++++++++++++++++----
 1 file changed, 18 insertions(+), 4 deletions(-)

commit 1db83954948dfae3f75f61c535c5de1b3a843a69
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Mar 5 13:02:50 2018 +0330

    [ci] minor, bring back the removed assertion

 .ci/run-coveralls.sh | 2 ++
 1 file changed, 2 insertions(+)

commit 5895fe3d4d0441dacf8989740cf4150193397796
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Mar 5 12:58:34 2018 +0330

    [ci] minor

 .ci/trigger-coverity.sh | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

commit a3e29fd38f01b26b6306f9f7142a54cc7d6c6080
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Mar 4 02:56:27 2018 +0330

    [aat/kerx] Add a TODO

 src/hb-aat-layout-kerx-table.hh | 1 +
 1 file changed, 1 insertion(+)

commit 0ef6ab25ab4456e387711ae246900486ad738d26
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Mar 4 02:47:26 2018 +0330

    [ot-color] Move cbdt to the namespace (#860)

 src/Makefile.sources                                   | 2 +-
 src/{hb-ot-cbdt-table.hh => hb-ot-color-cbdt-table.hh} | 6 +++---
 src/hb-ot-font.cc                                      | 3 ++-
 3 files changed, 6 insertions(+), 5 deletions(-)

commit 6659cb56fae0c900ae88e95bedcb3b76234c8838
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Mar 4 02:31:53 2018 +0330

    [ci] Remove --coverage as use of --enable-code-coverage

 .travis.yml | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

commit 00dd321ace75ff0d1824cf75cd41490c5dd6ad76
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Mar 3 23:26:11 2018 +0330

    [ci] Don't run coveralls on freetype folder

 .travis.yml | 1 +
 1 file changed, 1 insertion(+)

commit f50aedd371f1a6894d1bf7732f017b51cbdd59bd
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Mar 3 23:17:36 2018 +0330

    [ci] Remove failing check on run-coveralls

 .ci/run-coveralls.sh | 2 --
 1 file changed, 2 deletions(-)

commit a0031c120e3ac5c059b81a004b9386fab3d662fc
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Mar 3 23:09:25 2018 +0330

    Add lcov tool for coverage tests

 .travis.yml | 1 +
 1 file changed, 1 insertion(+)

commit ecef95b21264347f9505e3ed4fb25ec7e4ccca5d
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Mar 3 23:03:13 2018 +0330

    [ci] Enable code coverage on Travis Linux builds

 .travis.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f7399796a1ed36cfc4f1ef7631584569baa80981
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Mar 3 22:55:09 2018 +0330

    Enable coverage test on autotools (#857)

 configure.ac           |   1 +
 m4/ax_code_coverage.m4 | 264
 +++++++++++++++++++++++++++++++++++++++++++++++++
 src/Makefile.am        |   6 +-
 3 files changed, 269 insertions(+), 2 deletions(-)

commit c446c23f0f09e541891b49184febdfc75cb3505f
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Mar 3 22:43:23 2018 +0330

    [ot-color] Move the related tables to hb-ot-color-* (#858)

 src/Makefile.sources                                   | 4 ++--
 src/{hb-ot-colr-table.hh => hb-ot-color-colr-table.hh} | 6 +++---
 src/{hb-ot-cpal-table.hh => hb-ot-color-cpal-table.hh} | 6 +++---
 src/hb-ot-color.cc                                     | 4 ++--
 src/hb-ot-layout.cc                                    | 4 ++--
 5 files changed, 12 insertions(+), 12 deletions(-)

commit 48ed15a2bcdc1999e2d39fdcb2644ba4c3beccfe
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Mar 3 22:00:29 2018 +0330

    [COLR/CPAL] Provide enough helper for rasterization (#855)

 src/hb-ot-colr-table.hh | 47
 ++++++++++++++++++++++++++++++++++++++++++++---
 src/hb-ot-cpal-table.hh | 18 +++++++++++++++---
 2 files changed, 59 insertions(+), 6 deletions(-)

commit 432758a7ac3c1a857e67069f157efbf4ebf5521b
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Mar 3 01:05:59 2018 +0330

    [COLR] Revert previous sanitization on the table

    That sanitization wasn't right, firstLayerIndex is an index from
    beginning of the Layer Records
    not the table itself.

 src/hb-ot-colr-table.hh | 23 ++++++-----------------
 1 file changed, 6 insertions(+), 17 deletions(-)

commit 71b4598ea37b316571bae22ced2f1b38185c9f44
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Mar 2 11:04:09 2018 +0330

    [aat/kerx] Improve format 6 subtable

 src/hb-aat-layout-kerx-table.hh | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

commit b73a5a1c240478616827529c94f0133018f9f790
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Mar 2 00:07:26 2018 +0330

    [aat/kerx] Make parsing of the table actually work (#850)

 src/hb-aat-layout-kerx-table.hh | 298
 +++++++++++++++++-----------------------
 1 file changed, 124 insertions(+), 174 deletions(-)

commit a570edcde2f89e59b5ccd4867a8c0eed084bf35d
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Mar 2 00:06:03 2018 +0330

    [COLR] Sanitize BaseGlyphRecord (#854)

 src/hb-ot-colr-table.hh | 27 ++++++++++++++++++---------
 1 file changed, 18 insertions(+), 9 deletions(-)

commit 7e958646a4a825bfe3aac56ddb96100d68c5592c
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Mar 1 10:27:18 2018 +0330

    [CPAL] Fix version checking logic on sanitizer (#851)

 src/hb-ot-cpal-table.hh | 14 ++++++--------
 1 file changed, 6 insertions(+), 8 deletions(-)

commit bcf578fefe6d7af0a962329ceb9989ce61ec467d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 28 16:31:46 2018 -0800

    [test] Add test suite for Brahmi Number Joiners

    https://github.com/harfbuzz/harfbuzz/pull/660

 .../fonts/1ed7e9064f008f62de6ff0207bb4dd29409597a5.ttf   | Bin 0 ->
 2768 bytes
 test/shaping/data/in-house/tests/use-syllable.tests      |   1 +
 test/shaping/record-test.sh                              |   2 +-
 3 files changed, 2 insertions(+), 1 deletion(-)

commit b4ba71ea7ccce70e24138373774741c7f03dd24e
Author: Garret Rieger <grieger@google.com>
Date:   Wed Feb 28 15:44:00 2018 -0800

    [subset] In subset integration test pass output through ots-sanitize
    if present.

 test/subset/run-tests.py | 25 +++++++++++++++++++++++--
 1 file changed, 23 insertions(+), 2 deletions(-)

commit 588a4e0f9b2d71362503a274de7200f3eb4367f7
Merge: 55a4dfa3 b3f1a045
Author: rsheeter <rsheeter@google.com>
Date:   Wed Feb 28 13:52:29 2018 -0800

    Merge pull request #845 from googlefonts/drophints

    [subset] drop hints from composites

commit b3f1a045a8b86747afce6bc154f2a166ea678efb
Author: Rod Sheeter <rsheeter@google.com>
Date:   Wed Feb 28 11:41:24 2018 -0800

    [subset] kick the build

 src/hb-subset-glyf.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 20d57399235b410d2bdc98103c8bb3dfd1c34176
Author: Rod Sheeter <rsheeter@google.com>
Date:   Wed Feb 28 11:15:08 2018 -0800

    [subset] extract a method to flip off composite instruction flag

 src/hb-subset-glyf.cc | 24 +++++++++++++++---------
 1 file changed, 15 insertions(+), 9 deletions(-)

commit 55a4dfa374bae1db846c3b848b7e59fb0014b627
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Feb 28 15:43:23 2018 +0330

    Use old project location of coverity

    https://github.com/harfbuzz/harfbuzz/commit/8089711a61687d565f207c56d3d2b658f514d7ab#commitcomment-27835452

 .travis.yml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 3821978bcd92cbdb607111452796e051c456f391
Merge: 77227462 f671f7f0
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Feb 28 13:30:17 2018 +0330

    Merge pull request #847 from ebraminio/colr

    [colr] Implement

commit f671f7f0a8caa7b5763e00146e1ec4b9a7258227
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Feb 28 13:19:40 2018 +0330

    [colr] Implement

 src/Makefile.sources        |  1 +
 src/hb-ot-color.cc          |  9 +++++
 src/hb-ot-color.h           |  9 -----
 src/hb-ot-colr-table.hh     | 98
 +++++++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-cpal-table.hh     |  6 +--
 src/hb-ot-layout-private.hh |  6 ++-
 src/hb-ot-layout.cc         | 11 +++--
 7 files changed, 122 insertions(+), 18 deletions(-)

commit 772274625e9f17d726f2a1da8192ec3ec24793a3
Merge: 0eec3315 5b9c2340
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Feb 28 12:05:49 2018 +0330

    Merge pull request #841 from ebraminio/color

    Support CPAL table

commit 0eec33154a418fba97a08be7169b59e748b7e785
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Feb 28 11:53:39 2018 +0330

    [cmake] cleanup (#846)

 CMakeLists.txt          | 70
 ++++++++++++++++++++-----------------------------
 test/api/CMakeLists.txt |  2 +-
 2 files changed, 30 insertions(+), 42 deletions(-)

commit 5b9c234043d0483e53e9da5fe4afd7743190b538
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Feb 27 22:56:17 2018 +0330

    [CPAL] Refactor and address the reviews

 NEWS                                               |   3 +-
 src/Makefile.am                                    |   1 -
 src/hb-ot-color.cc                                 |  70 +++----------
 src/hb-ot-color.h                                  |  31 +++---
 src/hb-ot-cpal-table.hh                            | 116
 +++++++++++++++------
 src/hb-ot-layout-private.hh                        |   3 +-
 src/hb-ot-layout.cc                                |   5 +-
 test/api/hb-test.h                                 |   2 +
 test/api/test-ot-color.c                           |  39 +++----
 .../319f5d7ebffbefc5c5e6569f8cea73444d7a7268.ttf   | Bin
 .../e90374e5e439e00725b4fe7a8d73db57c5a97f82.ttf   | Bin
 11 files changed, 141 insertions(+), 129 deletions(-)

commit 6836a821428b714b9f2e95d5c4ebbd73867d9a53
Author: Rod Sheeter <rsheeter@google.com>
Date:   Tue Feb 27 20:51:12 2018 -0800

    [subset] remove WE_HAVE_INSTRUCTIONS from composites when dropping
    hints

 src/hb-subset-glyf.cc | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

commit ffcb5cbf71b312cdd4606a3285e10e201ff5bccd
Author: Rod Sheeter <rsheeter@google.com>
Date:   Tue Feb 27 20:17:04 2018 -0800

    [subset] update the test file for composite, fix an offset calculation

 src/hb-ot-glyf-table.hh                                  |   2 +-
 test/api/fonts/Roboto-Regular.components.1fc.nohints.ttf | Bin 0 ->
 932 bytes
 test/api/test-subset-glyf.c                              |   5 ++---
 3 files changed, 3 insertions(+), 4 deletions(-)

commit c8b230e4377bc8e80d37835a229511ce0e30cc47
Merge: b3790a65 904dd7be
Author: Rod Sheeter <rsheeter@google.com>
Date:   Tue Feb 27 17:25:32 2018 -0800

    Merge branch 'expand-tests' of github.com:googlefonts/harfbuzz
    into drophints

commit 904dd7beea756fd7429fad36f5c37321aedb4e81
Author: Garret Rieger <grieger@google.com>
Date:   Tue Feb 27 14:33:36 2018 -0800

    [subset] Add drop hinting profile to full-font.tests

 .../Roboto-Regular.drop-hints.1FC,21,41,20,62,63.ttf     | Bin 0 ->
 2152 bytes
 .../full-font/Roboto-Regular.drop-hints.61,62,63.ttf     | Bin 0 ->
 1968 bytes
 test/subset/data/tests/full-font.tests                   |   1 +
 3 files changed, 1 insertion(+)

commit 70a1049b3f8dc241fcb9b524bd010f0c1606f6ad
Author: Garret Rieger <grieger@google.com>
Date:   Tue Feb 27 14:28:50 2018 -0800

    [subset] Add a drop hints profile to basics.tests

 .../basics/Roboto-Regular.abc.drop-hints.61,62,63.ttf     | Bin 0 ->
 876 bytes
 .../basics/Roboto-Regular.abc.drop-hints.61,63.ttf        | Bin 0 ->
 792 bytes
 .../expected/basics/Roboto-Regular.abc.drop-hints.61.ttf  | Bin 0 ->
 684 bytes
 .../expected/basics/Roboto-Regular.abc.drop-hints.62.ttf  | Bin 0 ->
 652 bytes
 .../expected/basics/Roboto-Regular.abc.drop-hints.63.ttf  | Bin 0 ->
 656 bytes
 test/subset/data/profiles/drop-hints.txt                  |   1 +
 test/subset/data/tests/basics.tests                       |   1 +
 7 files changed, 2 insertions(+)

commit 5241d7f4b999d5457de564bd950b60d70f9d0e19
Author: Garret Rieger <grieger@google.com>
Date:   Tue Feb 27 13:15:40 2018 -0800

    [subset] apply subset profiles (flags) to the subset integration
    tests.

 test/subset/generate-expected-outputs.py | 27 ++++++++++++++-------------
 test/subset/run-tests.py                 |  3 ++-
 test/subset/subset_test_suite.py         | 11 ++++++++---
 3 files changed, 24 insertions(+), 17 deletions(-)

commit a4aca190a93f94c25c906ec0269183d8b2d0b5e8
Author: Garret Rieger <grieger@google.com>
Date:   Tue Feb 27 11:36:16 2018 -0800

    [subset] add expected/full-font to dist files.

 test/subset/data/Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit d31ace32740b1777ebb023ffdb10cd0cfec3997e
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 26 18:51:56 2018 -0800

    [subset] Add subset integration tests using the full roboto font.

 test/subset/data/Makefile.sources                      |   1 +
 .../Roboto-Regular.default.1FC,21,41,20,62,63.ttf      | Bin 0 ->
 3700 bytes
 .../full-font/Roboto-Regular.default.61,62,63.ttf      | Bin 0 ->
 3320 bytes
 test/subset/data/fonts/Roboto-Regular.ttf              | Bin 0 ->
 171676 bytes
 test/subset/data/tests/full-font.tests                 |  10 ++++++++++
 test/subset/generate-expected-outputs.py               |  12 ++++++++----
 6 files changed, 19 insertions(+), 4 deletions(-)

commit 33f4381314c5248b8b112e344af7548806f93a82
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 26 18:39:09 2018 -0800

    [subset] Add some more variations of the basic test.

 .../basics/Roboto-Regular.abc.default.61,62,63.ttf       | Bin 0 ->
 2120 bytes
 .../expected/basics/Roboto-Regular.abc.default.61,63.ttf | Bin 0 ->
 1932 bytes
 .../expected/basics/Roboto-Regular.abc.default.61.ttf    | Bin 0 ->
 1744 bytes
 .../expected/basics/Roboto-Regular.abc.default.63.ttf    | Bin 0 ->
 1668 bytes
 test/subset/data/tests/basics.tests                      |   4 ++++
 5 files changed, 4 insertions(+)

commit b3790a65a18e8402b2b09dfc24aaea40a51de569
Author: Rod Sheeter <rsheeter@google.com>
Date:   Tue Feb 27 17:23:30 2018 -0800

    [subset] add a (failing for now) test for composite glyf hint dropping

 src/hb-ot-glyf-table.hh     |  8 ++++----
 test/api/test-subset-glyf.c | 27 +++++++++++++++++++++++++--
 2 files changed, 29 insertions(+), 6 deletions(-)

commit 4c6023f861a4b87782c17ac626ffee7e93f15fc8
Merge: d7633d0a 921b65cb
Author: Garret Rieger <grieger@google.com>
Date:   Tue Feb 27 17:06:27 2018 -0700

    Merge pull request #842 from googlefonts/maxp

    [subset] when dropping hints, clear hint related fields in maxp.

commit 921b65cbc29f0c2c9c13e9fb272dafe4c8a14591
Author: Garret Rieger <grieger@google.com>
Date:   Tue Feb 27 14:37:18 2018 -0800

    [subset] minor fixes in hb-ot-maxp-table.hh

 src/hb-ot-maxp-table.hh | 15 +++++++--------
 1 file changed, 7 insertions(+), 8 deletions(-)

commit b26db48bfff804e139331817a86ecc811547afcd
Author: Garret Rieger <grieger@google.com>
Date:   Tue Feb 27 14:14:05 2018 -0800

    [subset] whitespace for hb-ot-maxp-table.hh

 src/hb-ot-maxp-table.hh | 30 +++++++++++++++---------------
 1 file changed, 15 insertions(+), 15 deletions(-)

commit a76344da796670f33b2fa48a9b1676545dac93c2
Author: Garret Rieger <grieger@google.com>
Date:   Tue Feb 27 14:11:36 2018 -0800

    [subset] Add maxpV1Tail instead of defining a struct inside maxp
    for v1 data.

 src/hb-ot-maxp-table.hh | 81
 ++++++++++++++++++++++++++++++-------------------
 1 file changed, 49 insertions(+), 32 deletions(-)

commit f14d1b64c2d148ffdec95c17adbee3f185d5d436
Author: Garret Rieger <grieger@google.com>
Date:   Tue Feb 27 13:49:00 2018 -0800

    [subset] when dropping hints, clear hint related fields in maxp.

 src/hb-ot-maxp-table.hh     | 43
 ++++++++++++++++++++++++++++++++++++++++---
 test/api/test-subset-glyf.c | 30 +++++++++++++++++++++++-------
 2 files changed, 63 insertions(+), 10 deletions(-)

commit d7633d0a4091c025638ba3fc8fb0d8e9a0e9ff8c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 27 12:50:57 2018 -0800

    [BASE] More

 src/hb-ot-layout-base-table.hh | 153
 ++++-------------------------------------
 1 file changed, 12 insertions(+), 141 deletions(-)

commit 7a70c20fec6ece9e729dc2634e2896a8d8eb9962
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 27 12:45:26 2018 -0800

    [BASE] Clean up first 29%

 src/hb-ot-layout-base-table.hh | 262
 +++++++++++++++++++----------------------
 src/hb-ot-layout-gsub-table.hh |   2 +-
 2 files changed, 125 insertions(+), 139 deletions(-)

commit 101850f9e6b9e0932fe1dd4169f88d6764c669c1
Merge: 5967eaba f110c0c8
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Feb 27 20:15:54 2018 +0330

    Merge with master

commit f110c0c8866c853c0d5a930564a2b69231a33322
Merge: 4a1d51ef 0ad8c663
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Feb 27 11:41:12 2018 +0330

    Merge pull request #838 from harfbuzz/BASE

    BASE table

commit 0ad8c663e0b4602e2a413e77a8158bf8a46755d5
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Feb 26 12:45:08 2018 +0330

    Remove public API of the branch

 src/hb-ot-base.h               |  4 ++--
 src/hb-ot-layout-base-table.hh | 20 +++++++++---------
 src/hb-ot-layout.cc            | 48
 ++++++++++++++++++++----------------------
 3 files changed, 35 insertions(+), 37 deletions(-)

commit 4a1d51ef15a423706406f784a146078073147885
Merge: d0caf7e5 903771b6
Author: rsheeter <rsheeter@google.com>
Date:   Mon Feb 26 20:23:41 2018 -0800

    Merge pull request #818 from googlefonts/drophints

    [subset] Drop hints

commit 903771b6c7689b9eee9a11bac128c42f39833b2e
Author: Rod Sheeter <rsheeter@google.com>
Date:   Mon Feb 26 19:50:06 2018 -0800

    [subset] clearer name for trim() and better comment about composite
    handling, per review feedback

 src/hb-ot-glyf-table.hh |  8 +++++---
 src/hb-subset-glyf.cc   | 17 ++++++++---------
 2 files changed, 13 insertions(+), 12 deletions(-)

commit d0caf7e5e3294c25230ed0e5580c647fa0f1a2c8
Merge: 6c844ae8 44dc36dd
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 26 19:24:18 2018 -0700

    Merge pull request #840 from googlefonts/os2

    [subset] During os2 subsetting update ulUnicodeRange[]c

commit 44dc36dd82fc948a15e2ad0d605eb4a466b3553d
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 26 17:56:23 2018 -0800

    [subset] update to comment in hb-ot-os2-unicode-ranges.hh

 src/hb-ot-os2-unicode-ranges.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ad3f2f77dafdee524e836e732077ee9670602369
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 26 17:51:27 2018 -0800

    [subset] small cleanups in hb-ot-os2-table.

 src/hb-ot-os2-table.hh          | 5 +++--
 src/hb-ot-os2-unicode-ranges.hh | 2 +-
 2 files changed, 4 insertions(+), 3 deletions(-)

commit f1c8fc3487d5c5efb8ee1804acb07e6e282d3bc5
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 26 17:48:51 2018 -0800

    [subset] small updates to gen-unicode-ranges.py

 src/gen-unicode-ranges.py       | 6 ++++--
 src/hb-ot-os2-unicode-ranges.hh | 3 ++-
 2 files changed, 6 insertions(+), 3 deletions(-)

commit 0c0fe2ff8209228f2ddfce464b7b6f1b1ee1654a
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 26 17:47:10 2018 -0800

    [subset] Move util/generated-unicode-ranges.py to
    src/gen-unicode-ranges.py

 util/generate-unicode-ranges.py => src/gen-unicode-ranges.py | 0
 1 file changed, 0 insertions(+), 0 deletions(-)

commit f630ae5161bfc8420f9ae0127fd8c7f447874fdd
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 26 17:46:17 2018 -0800

    [subset] unsigned int -> hb_codepoint_t.

 src/hb-ot-os2-unicode-ranges.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 6368ce4c927b1457cf19945d5957e91d4621dc8b
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 26 17:44:39 2018 -0800

    [subset] const in _compare_range.

 src/hb-ot-os2-unicode-ranges.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 0be9fea0a96701b159a9db190e55b1c3efc38a28
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 26 16:15:09 2018 -0800

    [subset] Add comment to os2UnicodeRangesSorted.

 src/hb-ot-os2-unicode-ranges.hh | 1 +
 1 file changed, 1 insertion(+)

commit e20ab71d12b032371b830b76462e5e979d963b58
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 26 16:13:10 2018 -0800

    [subset] Fix incorrect index.

 src/hb-ot-os2-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 074b5a29a166d1812abc7229a71af4a3bb311536
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 26 16:11:24 2018 -0800

    [subset] Add special case handling of bit 57 in os2 ulUnicodeRange.

 src/hb-ot-os2-table.hh     | 7 +++++++
 src/test-unicode-ranges.cc | 3 ---
 2 files changed, 7 insertions(+), 3 deletions(-)

commit ddc4f2b9fc5566e70558a57133289f84d467cc98
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 26 15:59:32 2018 -0800

    [subset] Add python util that was used to generated
    hb-ot-os2-unicode-ranges.hh

 util/generate-unicode-ranges.py | 50
 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 50 insertions(+)

commit f757757eda5f00a89a156e3427bdf8c4313611ef
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 26 15:56:36 2018 -0800

    [subset] Add cmake build def for test-unicode-ranges.

 CMakeLists.txt  | 2 +-
 src/Makefile.am | 1 -
 2 files changed, 1 insertion(+), 2 deletions(-)

commit f82f2a3e50805503d93aa1aa1ccb27da4967a14a
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 26 15:52:01 2018 -0800

    [subset] Rename hb-os2-unicode-ranges.cc to test-unicode-ranges.cc.

 src/Makefile.am                                             | 2 +-
 src/{hb-ot-os2-unicode-ranges.cc => test-unicode-ranges.cc} | 0
 2 files changed, 1 insertion(+), 1 deletion(-)

commit 4014555ca083dea3e4f42120aeaf52a2186b8a09
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 26 15:50:13 2018 -0800

    [subset] set ulUnicodeRange[] in os2.

 src/Makefile.sources            |   1 -
 src/hb-ot-os2-table.hh          |  23 ++++-
 src/hb-ot-os2-unicode-ranges.cc | 221
 ++--------------------------------------
 src/hb-ot-os2-unicode-ranges.hh | 210
 +++++++++++++++++++++++++++++++++++++-
 4 files changed, 236 insertions(+), 219 deletions(-)

commit a570142d0c6d819feeeeb9e209fc90a33c1c2b48
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 26 15:20:23 2018 -0800

    [subset] Move hb-ot-os2-unicode-ranges into a cc file with a helper
    methods and tests.

 src/Makefile.am                 |   9 +-
 src/Makefile.sources            |   2 +
 src/hb-ot-os2-unicode-ranges.cc | 279
 ++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-os2-unicode-ranges.hh | 189 +--------------------------
 4 files changed, 292 insertions(+), 187 deletions(-)

commit 8e81799b32f3dfaca000fa5d42943ceed9af8d17
Author: Garret Rieger <grieger@google.com>
Date:   Fri Feb 23 18:35:41 2018 -0800

    [subset] Add hb-ot-os2-unicode-ranges.hh, a map of os2 unicode ranges.

 src/hb-ot-os2-unicode-ranges.hh | 220
 ++++++++++++++++++++++++++++++++++++++++
 1 file changed, 220 insertions(+)

commit 6c844ae8e89f52f5f40eace66bb987544fc316e3
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Feb 26 23:04:27 2018 +0330

    [dev-run] show images using iTerm2 images feature

 src/dev-run.sh | 32 ++++++++++++++++++++++++++++----
 1 file changed, 28 insertions(+), 4 deletions(-)

commit 28c4245e9f76c6c53a4589e7745a60ed0e97414a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 26 01:10:42 2018 -0800

    [aat/ankr] Define Anchor struct

 src/hb-aat-layout-ankr-table.hh | 16 +++++++++++++++-
 1 file changed, 15 insertions(+), 1 deletion(-)

commit e347fb908b188f71df13215c8939b0f3a12c716f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 26 01:08:00 2018 -0800

    Minor

 src/hb-ot-layout-gdef-table.hh |  4 ++--
 src/hb-ot-layout-gpos-table.hh | 12 ++++++------
 2 files changed, 8 insertions(+), 8 deletions(-)

commit 05fbd14e715ed5d0f0f86388b1538ad8e8c7c506
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 26 01:04:16 2018 -0800

    [aat/ankr] Minor

    DEFINE_SIZE_MIN is to be used only in rare cases. For fixed-size
    structs
    we want DEFINE_SIZE_STATIC.

 src/hb-aat-layout-ankr-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f90cd9b1f5ade8ad5e3b7caf0272936ad7a0f419
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 26 01:03:23 2018 -0800

    [aat/ankr] Hook up Lookup table

 src/hb-aat-layout-ankr-table.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit c36598450e9698168851c0ae7d0b4c9e562c4924
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 26 00:57:07 2018 -0800

    [aat/ankr] Simplify

 src/hb-aat-layout-ankr-table.hh | 36 ++++++++----------------------------
 1 file changed, 8 insertions(+), 28 deletions(-)

commit fa3a69e2334ec4122d672670614a8e5a95611d75
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 26 00:32:11 2018 -0800

    [aat/trak] Simplify sanitize()

 src/hb-aat-layout-trak-table.hh | 67
 ++++++++++-------------------------------
 1 file changed, 16 insertions(+), 51 deletions(-)

commit f0bc6c0992c4302ae1a20f155ad256bfa331087c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 26 00:18:17 2018 -0800

    [aat/trak] Clean up

    We always just used "unsigned int" for counter values. There's
    no use for uint16_t outside of a struct.

    Also, no need for explict casting where implicit does.

 src/hb-aat-layout-trak-table.hh | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit bb82f01383db7cf05040fbd5881e17e263ef6369
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Feb 25 12:30:33 2018 +0330

    [aat] trak sanitization

 src/dev-run.sh                  |  4 +-
 src/hb-aat-layout-trak-table.hh | 95
 ++++++++++++++++++++++++++++++++---------
 src/hb-aat-layout.cc            |  2 +-
 util/options.hh                 |  2 +-
 4 files changed, 78 insertions(+), 25 deletions(-)

commit becb1d9eea15c07f9ea4e229be56f9aca0f768af
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Feb 26 11:29:48 2018 +0330

    [aat] minor

    Ops, this was done for testing

 src/hb-aat-layout-ankr-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit df1c7d5b60520d2b3c756b700d5ac41668fc0983
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 25 19:06:25 2018 -0800

    Minor

 src/hb-open-type-private.hh | 5 +++--
 src/hb-subset.cc            | 2 +-
 2 files changed, 4 insertions(+), 3 deletions(-)

commit 6dd46fa598cacdd046ba4548bc6ddf7f37c46dee
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 25 18:54:52 2018 -0800

    [aat/trak] Minor

    Maybe we should make DEFINE_* make structs uncopyable.

 src/hb-aat-layout-trak-table.hh | 56
 +++++++++++++++++++++++------------------
 1 file changed, 32 insertions(+), 24 deletions(-)

commit ae14dd0fb0a176f6f0143690907b51626999d248
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Feb 26 00:31:09 2018 +0330

    [aat] Implement ankr

 src/Makefile.sources            |  3 +-
 src/hb-aat-layout-ankr-table.hh | 86
 +++++++++++++++++++++++++++++++++++++++++
 src/hb-aat-layout-kerx-table.hh |  2 +-
 src/hb-aat-layout.cc            | 37 +++++++++++++-----
 src/hb-ot-layout-private.hh     |  6 ++-
 src/hb-ot-layout.cc             |  6 ++-
 6 files changed, 124 insertions(+), 16 deletions(-)

commit 551fa2d200a06d00d054f2c8e7aad1cb4d25249b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 25 16:32:17 2018 -0800

    [BASE] Minor

 src/Makefile.sources           |   1 -
 src/hb-ot-base.cc              |  58 -----------------------
 src/hb-ot-layout-base-table.hh | 103
 ++++++++++++++++++++++++++++-------------
 src/hb-ot-layout.cc            |  34 ++++++++++++++
 src/hb-ot-layout.h             |   1 +
 5 files changed, 105 insertions(+), 92 deletions(-)

commit 05699fd996ed9c0e5dde8918388ac188e58df1a7
Merge: 83af6c23 3ebcd5a3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Feb 24 12:01:54 2018 -0800

    Merge remote-tracking branch 'eroux/add-base'

commit a8d3c2c030d2c21c70e0b8bd43f7d05ff4818b75
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Feb 24 16:42:12 2018 +0330

    [ci] Add clang O3/O0 testers (#834)

 .circleci/config.yml | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

commit c73255f3eb2f060ec72d18790b374f6b6e4032aa
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Sat Feb 24 00:44:07 2018 +0200

    Workaround for old automake on Travis Linux images

    https://github.com/harfbuzz/harfbuzz/pull/821#issuecomment-368116538

 .ci/fail.sh | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

commit cd28eb9f5dc237325c64380d9d87e673b8e94985
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Feb 24 14:17:54 2018 +0330

    Add -Werror=unused-function check to Travis (#832)

 .travis.yml          |  4 ++--
 src/hb-aat-layout.cc | 24 ++++++++++++------------
 test/api/test-set.c  | 19 ++++++++++---------
 3 files changed, 24 insertions(+), 23 deletions(-)

commit 1ab16f4556ef3e54a40b63cf4570c0ae986894e7
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Feb 24 12:49:42 2018 +0330

    [aat] Implement trak logic (#816)

 src/hb-aat-layout-kerx-table.hh |  7 ++++
 src/hb-aat-layout-private.hh    |  3 ++
 src/hb-aat-layout-trak-table.hh | 78
 +++++++++++++++++++++++++++++++++++++++--
 src/hb-aat-layout.cc            | 46 ++++++++++++++++++++++++
 src/hb-open-type-private.hh     |  4 +--
 src/hb-ot-layout-private.hh     | 22 ++++++++++++
 src/hb-ot-layout.cc             |  4 +++
 src/hb-ot-shape.cc              |  2 ++
 8 files changed, 161 insertions(+), 5 deletions(-)

commit b91e8da36e164168cd532fd6e6950c5d743a14dd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 23 22:51:17 2018 -0800

    Include hb-version.h in git (#825)

 CMakeLists.txt       | 36 ++++++++++++++--------------
 src/Makefile.am      |  8 +++----
 src/Makefile.sources |  3 ---
 src/hb-version.h     | 66
 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 4 files changed, 87 insertions(+), 26 deletions(-)

commit 5267520e078ed413df78f3a6781fd5370b6da63a
Author: Rod Sheeter <rsheeter@google.com>
Date:   Fri Feb 23 18:36:22 2018 -0800

    [subset] update hdmx test to create input explicitly

 test/api/test-subset-hdmx.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 2e3ee489f8374227fa94a8d8684e839e643888ea
Author: Rod Sheeter <rsheeter@google.com>
Date:   Fri Feb 23 18:18:54 2018 -0800

    [subset] format tweak, doc string

 src/hb-subset-input.cc | 12 +++++++++---
 src/hb-subset.h        |  2 +-
 2 files changed, 10 insertions(+), 4 deletions(-)

commit d78393b5547135b8db0356b0ec14d5ed0d334768
Merge: 1454d82a 83af6c23
Author: Rod Sheeter <rsheeter@google.com>
Date:   Fri Feb 23 17:53:26 2018 -0800

    Merge branch 'master' of https://github.com/harfbuzz/harfbuzz into
    drophints

commit 1454d82a9d3d9a47901b3d92ff7f2c05c596c0d5
Author: Rod Sheeter <rsheeter@google.com>
Date:   Fri Feb 23 17:49:23 2018 -0800

    [subset] keep glyph trim separate of more general get_offset

 src/hb-ot-glyf-table.hh | 12 ++++--------
 src/hb-subset-glyf.cc   |  6 ++++--
 2 files changed, 8 insertions(+), 10 deletions(-)

commit 0ac8c0c1e6a6c076ce33b16baa173ff8763ac04e
Author: Rod Sheeter <rsheeter@google.com>
Date:   Fri Feb 23 17:43:00 2018 -0800

    [subset] zero glyf and loca memory before writing so pads are
    clean. Test just the part of maxp we care about

 src/hb-ot-glyf-table.hh     |  6 +++---
 src/hb-subset-glyf.cc       |  4 ++--
 test/api/test-subset-glyf.c | 19 ++++++++++++++++---
 3 files changed, 21 insertions(+), 8 deletions(-)

commit 83af6c237f2bfd66af76a8647a62b3d1ab996744
Merge: 7e5e1feb dc5c7927
Author: Garret Rieger <grieger@google.com>
Date:   Fri Feb 23 18:33:25 2018 -0700

    Merge pull request #829 from googlefonts/test-checksum

    [subset] Caclculate head table checksum adjustment

commit dc5c7927e75ea09461e46fe6e56897091b4b4f00
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 23 16:42:06 2018 -0800

    [subset] Caclculate head table checksum adjustment

    Test still fails, because we do not serialize tables in the same
    order that fonttools subsetter does.

 src/hb-open-file-private.hh | 51
 ++++++++++++++++++++++++++++++++++-----------
 src/hb-ot-head-table.hh     |  2 ++
 src/hb-subset.cc            |  2 ++
 3 files changed, 43 insertions(+), 12 deletions(-)

commit 7e5e1feb666d6a861b5cd64bf29a16e3854fb812
Merge: ec2538c8 99967e21
Author: Garret Rieger <grieger@google.com>
Date:   Fri Feb 23 17:59:08 2018 -0700

    Merge pull request #828 from googlefonts/mem-fixes

    [subset] Fix several memory leaks in subsetting.

commit ec2538c8803be254b6e09ca0ea724b07c35126da
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 23 15:51:26 2018 -0800

    [subset] Fix checksum calc out-of-bounds access

 src/hb-open-file-private.hh | 18 ++++++++++--------
 src/hb-open-type-private.hh |  3 ++-
 2 files changed, 12 insertions(+), 9 deletions(-)

commit 99967e21c6e3f6882d6eadf5c22f4120684b1fc5
Author: Garret Rieger <grieger@google.com>
Date:   Fri Feb 23 15:45:45 2018 -0800

    [subset] Fix memory leak in hb-subset-glyf.

 src/hb-subset-glyf.cc | 2 ++
 1 file changed, 2 insertions(+)

commit e61f360dc828bfd46477b7ddff56874da9f03538
Author: Garret Rieger <grieger@google.com>
Date:   Fri Feb 23 15:44:21 2018 -0800

    [subset] Fix memory leak in hb-subset-plan.

 src/hb-subset-plan.cc | 1 +
 1 file changed, 1 insertion(+)

commit 66b0a390793ab06692dd49e67baef52a6a7d82aa
Author: Garret Rieger <grieger@google.com>
Date:   Fri Feb 23 15:41:52 2018 -0800

    [subset] Fix memory leak in hb-subset.

 src/hb-subset.cc | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

commit 0fb8a5ce192025ffd83ae714db932e4b86594ae1
Author: Garret Rieger <grieger@google.com>
Date:   Fri Feb 23 15:37:43 2018 -0800

    [subset] Fix memory leak in cmap subsetting.

 src/hb-ot-cmap-table.hh | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

commit 4665aaa19304bdf0362bdfcebcae65feb19a8964
Author: Garret Rieger <grieger@google.com>
Date:   Fri Feb 23 15:36:14 2018 -0800

    [subset] Fix memory leak in hmtx subsetting.

 src/hb-ot-hmtx-table.hh | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

commit 5a36b55fba03cd07c9b101f0222b8d189bcd3bbf
Author: Garret Rieger <grieger@google.com>
Date:   Fri Feb 23 15:30:14 2018 -0800

    [subset] Fix memory leak in subset face destroy.

 src/hb-subset.cc | 3 +++
 1 file changed, 3 insertions(+)

commit d38f37b2e37942a3fd13cd753c8b8587a06c0f3a
Author: Ben Boeckel <mathstuf@users.noreply.github.com>
Date:   Fri Feb 23 16:55:53 2018 -0500

    autoconf: provide a harfbuzz-config for use from CMake (#822)

 configure.ac                 |  2 ++
 src/Makefile.am              |  4 ++-
 src/harfbuzz-config.cmake.in | 82
 ++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 87 insertions(+), 1 deletion(-)

commit e0939d811f1fdeda9c5763e7e53887b3d3cb21eb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 23 13:19:34 2018 -0800

    Clean up check-defs and check-symbols (#821)

    Also, call c++filt on their results.

    Also build and fix and check harfbuzz-gobject.def

    Also changes harfbuzz-gobject to distribute generated enum sources.

 CMakeLists.txt              |  3 +--
 src/Makefile.am             | 33 ++++++++++++++++------------
 src/Makefile.sources        |  9 +++++---
 src/check-defs.sh           | 52
 ---------------------------------------------
 src/check-symbols.sh        | 30 ++++++++++++++++++++------
 src/hb-gobject-enums.h.tmpl |  3 ++-
 src/hb-gobject-structs.h    | 45 ++++++++++++++++++++++++++-------------
 7 files changed, 81 insertions(+), 94 deletions(-)

commit 9bd6d25254d9bfc612004982dba286a3751d1d29
Author: Rod Sheeter <rsheeter@google.com>
Date:   Fri Feb 23 13:05:58 2018 -0800

    [subset] clone trim logic from fonttools glyf handling

 src/hb-ot-glyf-table.hh                      |  92
 ++++++++++++++++++++++++++-
 src/hb-subset-glyf.cc                        |  26 ++++----
 src/hb-subset-plan.cc                        |   3 +
 src/hb-subset.cc                             |  13 ++--
 test/api/fonts/Roboto-Regular.ac.nohints.ttf | Bin 1128 -> 848 bytes
 test/api/hb-subset-test.h                    |   1 +
 test/api/test-subset-glyf.c                  |   6 +-
 7 files changed, 117 insertions(+), 24 deletions(-)

commit b1ec82105189053d648a798cf5b3ab2887046298
Merge: e15e41ef c2e4713b
Author: Garret Rieger <grieger@google.com>
Date:   Fri Feb 23 12:32:18 2018 -0700

    Merge pull request #823 from googlefonts/hdmx

    [subset] Add hdmx subsetting.

commit e15e41ef12e146333e355defef8db210378b5be0
Author: Garret Rieger <grieger@google.com>
Date:   Thu Feb 22 18:41:50 2018 -0800

    [subset] Remove commented code from run-tests.py.

 test/subset/run-tests.py | 3 ---
 1 file changed, 3 deletions(-)

commit 2b844803433bd1557a7fd0c93a91c66ef5319b21
Author: Garret Rieger <grieger@google.com>
Date:   Thu Feb 22 18:38:44 2018 -0800

    [subset] Update expected files for subsetting integration test to
    not include cmap 4.

 .../expected/basics/Roboto-Regular.abc.default.62.ttf | Bin 1740 ->
 1692 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)

commit a88504c601ac95601730bd602861c13e5ac4fdd8
Author: Garret Rieger <grieger@google.com>
Date:   Thu Feb 22 14:28:18 2018 -0800

    [subset] Fix checksum clearning in subset test diff. Add an updated
    expected file (has cmap4 restored).

 .../expected/basics/Roboto-Regular.abc.default.62.ttf | Bin 1692 ->
 1740 bytes
 test/subset/run-tests.py                              |   7 +++++--
 2 files changed, 5 insertions(+), 2 deletions(-)

commit 537698b60131bd3d7999919a04596c41dda6b2e4
Author: Garret Rieger <grieger@google.com>
Date:   Thu Feb 22 14:07:52 2018 -0800

    [subset] Don't compare actual to itself in Fix
    test/subset/run-tests. Print a diff on failure.

 test/subset/run-tests.py | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit c2e4713b5b561675b0f7b358ccf83d64ef0b6c41
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 23 10:45:03 2018 -0800

    [hdmx] Fix sanitize()

 src/hb-ot-hdmx-table.hh | 23 +++++++----------------
 1 file changed, 7 insertions(+), 16 deletions(-)

commit 84d4bb91ceca22484abb597c19eb18311e2514f1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 23 10:38:35 2018 -0800

    [hdmx] Minor

 src/hb-ot-hdmx-table.hh | 21 +++++++++++----------
 1 file changed, 11 insertions(+), 10 deletions(-)

commit cf7a6e520e9601da9d27bc8f6bbe5d2eff23998d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 23 10:34:26 2018 -0800

    [hdmx] Move DeviceRecord to toplevel again

    More readable.

 src/hb-ot-hdmx-table.hh | 112
 ++++++++++++++++++++++++------------------------
 1 file changed, 57 insertions(+), 55 deletions(-)

commit 96d7805a9235443972c6b6c5cd9502283c8836e9
Author: Garret Rieger <grieger@google.com>
Date:   Thu Feb 22 16:48:28 2018 -0800

    [subset] More complete sanitization implementation for hdmx.

 src/hb-ot-hdmx-table.hh | 18 ++++++++++++++----
 1 file changed, 14 insertions(+), 4 deletions(-)

commit c02532a3d2325c8fb9332f63f687cbaec77b2239
Author: Garret Rieger <grieger@google.com>
Date:   Thu Feb 22 16:40:50 2018 -0800

    [subset] Formatting and comments in hdmx.

 src/hb-ot-hdmx-table.hh | 31 +++++++++++++++++++------------
 1 file changed, 19 insertions(+), 12 deletions(-)

commit 6b372f439b257808b048d02ebf5a867dabcd1231
Author: Garret Rieger <grieger@google.com>
Date:   Thu Feb 22 12:00:00 2018 -0800

    [subset] In hb-ot-hdmx-table, s/glyf/hdmx.

 src/hb-ot-hdmx-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ec302ad5bda6bea870f6d33f9698a1782472a213
Author: Garret Rieger <grieger@google.com>
Date:   Thu Feb 22 11:57:35 2018 -0800

    [subset] Fail subset if a table fails to sanitize.

 src/hb-subset.cc | 19 +++++++++++--------
 1 file changed, 11 insertions(+), 8 deletions(-)

commit 15fc45bfedef433025145289fe916739907b573b
Author: Garret Rieger <grieger@google.com>
Date:   Wed Feb 21 17:59:57 2018 -0800

    [subset] Add a unit test for hdmx subsetting.

 test/api/Makefile.am        |  2 ++
 test/api/test-subset-hdmx.c | 81
 +++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 83 insertions(+)

commit aa4aa2353c52f86fd56446de6b7ff86a9e990b9c
Author: Garret Rieger <grieger@google.com>
Date:   Wed Feb 21 17:43:32 2018 -0800

    [subset] Enable hdmx subsetting.

 src/hb-subset.cc | 3 +++
 1 file changed, 3 insertions(+)

commit bd18b6adf8697c1ce3f4e3831b9f2a99d930e97d
Author: Garret Rieger <grieger@google.com>
Date:   Wed Feb 21 17:42:58 2018 -0800

    [subset] Move DeviceRecord inside of hdmx.

 src/hb-ot-hdmx-table.hh | 98
 +++++++++++++++++++++++++------------------------
 1 file changed, 50 insertions(+), 48 deletions(-)

commit 6704cded65985b2de262bdd3bb0887929e5a3b0b
Author: Garret Rieger <grieger@google.com>
Date:   Wed Feb 21 16:00:10 2018 -0800

    [subset] Add hdmx subsetting implementation.

 src/hb-ot-hdmx-table.hh | 29 ++++++++++++++++++++++++++---
 1 file changed, 26 insertions(+), 3 deletions(-)

commit 84b68e58862647b4ede414b2e608c47d390fd60a
Author: Garret Rieger <grieger@google.com>
Date:   Wed Feb 21 15:43:47 2018 -0800

    [subset] In hdmx serialize set the correct value of sizeDeviceRecord.

 src/hb-ot-hdmx-table.hh | 29 ++++++++++++++++-------------
 1 file changed, 16 insertions(+), 13 deletions(-)

commit dddf44279f610e77e8b9a0819fd91f48802158b6
Author: Garret Rieger <grieger@google.com>
Date:   Wed Feb 21 15:36:09 2018 -0800

    [subset] When serializing a DeviceRecord in hdmx pad to make 32
    bit aligned.

 src/hb-ot-hdmx-table.hh | 19 +++++++++++++------
 1 file changed, 13 insertions(+), 6 deletions(-)

commit ab7a8f3b7419b604816e12cb93e77c0ba45a57af
Author: Garret Rieger <grieger@google.com>
Date:   Wed Feb 21 15:15:22 2018 -0800

    [subset] Begin implementing serialize for hdmx.

 src/hb-ot-hdmx-table.hh | 79
 +++++++++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 77 insertions(+), 2 deletions(-)

commit fe42862ab30d17483a1d0c2e2b1d859d01bbaff1
Author: Garret Rieger <grieger@google.com>
Date:   Wed Feb 21 14:18:49 2018 -0800

    [subset] Sketch out a basic hb-ot-hdmx.hh.

 src/Makefile.sources    |  1 +
 src/hb-ot-hdmx-table.hh | 77
 +++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-subset.cc        |  1 +
 3 files changed, 79 insertions(+)

commit 4f6f7c3b22ec788f609bdffc7e0893816657b3a0
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Feb 23 02:54:12 2018 +0330

    [util] Implement ppem/ptem on hb-{shape,view} (#811)

 util/options.cc | 33 ++++++++++++++++++++++++++++-----
 util/options.hh |  6 ++++++
 2 files changed, 34 insertions(+), 5 deletions(-)

commit a6bd6bcee08c9522f9269b5c63f784688abddcff
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Feb 22 16:52:56 2018 +0330

    [dev-run] minor

 src/dev-run.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit fa13a04cf3345311a2434f0d7f6346f967491c45
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Feb 22 16:48:03 2018 +0330

    [dev-run] Add gdb/lldb shortcuts

 src/dev-run.sh | 40 +++++++++++++++++++++++++++++++---------
 1 file changed, 31 insertions(+), 9 deletions(-)

commit 4f07437dfebd3dc5923f40154c6f1b7e1dce1bd4
Author: Rod Sheeter <rsheeter@google.com>
Date:   Wed Feb 21 22:23:05 2018 -0800

    [subset] sketch out dropping in-glyf instructions. Sometimes yields
    differnet size glyphs than fonttools, possibly due to padding not
    being corrected

 src/hb-ot-glyf-table.hh                      |  45 ++++++++++++++++
 src/hb-subset-glyf.cc                        |  78
 +++++++++++++++++++++------
 src/hb-subset-input.cc                       |   6 +++
 src/hb-subset.h                              |   2 +
 test/api/fonts/Roboto-Regular.ac.nohints.ttf | Bin 0 -> 1128 bytes
 test/api/hb-subset-test.h                    |  15 +++---
 test/api/test-subset-cmap.c                  |   4 +-
 test/api/test-subset-glyf.c                  |  32 +++++++++--
 test/api/test-subset-hmtx.c                  |  10 ++--
 test/api/test-subset-os2.c                   |   2 +-
 10 files changed, 160 insertions(+), 34 deletions(-)

commit 2d0265242bb9a080886d6e0aa653c62e5770a15a
Author: Rod Sheeter <rsheeter@google.com>
Date:   Wed Feb 21 09:42:46 2018 -0800

    [subset] keep the result of _subset

 src/hb-subset.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 4fb97be78d9287e489c9f67d1bfe7682235bdf38
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 21 14:38:02 2018 -0800

    Add two more ragel-generated headers

    Fixes https://github.com/harfbuzz/harfbuzz/issues/817

 src/hb-buffer-deserialize-json.hh | 643
 ++++++++++++++++++++++++++++++++++++++
 src/hb-buffer-deserialize-text.hh | 571 +++++++++++++++++++++++++++++++++
 2 files changed, 1214 insertions(+)

commit 74e0c13a4a55848e797242c02c8f067e587ea603
Author: Rod Sheeter <rsheeter@google.com>
Date:   Wed Feb 21 11:19:18 2018 -0800

    [subset] drop hint tables if so flagged. Still need to dump glyf
    instructions.

 src/hb-subset-plan.cc    |  1 +
 src/hb-subset-plan.hh    |  2 ++
 src/hb-subset-private.hh |  2 +-
 src/hb-subset.cc         | 11 +++++++++--
 util/hb-subset.cc        |  2 +-
 util/options.cc          |  2 +-
 util/options.hh          |  4 ++--
 7 files changed, 17 insertions(+), 7 deletions(-)

commit edee28801e4dbb5b734b4038d93fe1594e267ab1
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Feb 21 22:13:58 2018 +0330

    Add .editorconfig (#810)

    More information: http://editorconfig.org/

 .editorconfig | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

commit 0bd100e144885ed8144cf23e7e106014858a1724
Author: Rod Sheeter <rsheeter@google.com>
Date:   Wed Feb 21 10:34:00 2018 -0800

    [subset] add --hinting flag

 src/hb-subset-private.hh |  1 +
 util/hb-subset.cc        |  6 +++++-
 util/options.cc          | 15 +++++++++++++++
 util/options.hh          | 14 ++++++++++++++
 4 files changed, 35 insertions(+), 1 deletion(-)

commit 7ecca8c0a83a6c71154fcc80887a4f895c0c5a23
Author: Rod Sheeter <rsheeter@google.com>
Date:   Wed Feb 21 09:42:46 2018 -0800

    [subset] keep the result of _subset

 src/hb-subset.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit eada749e4642ea90300c9c68c226fa76a3e35a75
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 21 00:35:23 2018 -0800

    Use HB_SET_VALUE_INVALID consistently

 src/hb-ot-layout-common-private.hh | 6 +++---
 src/hb-ot-shape.cc                 | 2 +-
 2 files changed, 4 insertions(+), 4 deletions(-)

commit 2cc845f311b6dc4f0feda8b8fc5609fbd51b5923
Author: Garret Rieger <grieger@google.com>
Date:   Tue Feb 20 18:13:41 2018 -0800

    [subset] fix calculation of range shiftz. Should be 16 * len -
    searchRange not 16 * (len - searchRange).

 src/hb-open-type-private.hh | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 8e614ade5aef102baed56f91c2fcb1f3d1788ea9
Author: Garret Rieger <grieger@google.com>
Date:   Tue Feb 20 17:36:54 2018 -0800

    [subset] Reverse table order for font serialization to match what
    OTS expects.

 src/hb-open-file-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a998eeee4ad7bba4a1574c9735618891b6bd0948
Author: Garret Rieger <grieger@google.com>
Date:   Tue Feb 20 16:48:52 2018 -0800

    [subset] sanity check glyph data writes during glyph subsetting to
    ensure they are inbounds.

 src/hb-subset-glyf.cc | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

commit 0ab73e594275cf064e09b9df2e1df337a589745d
Author: Garret Rieger <grieger@google.com>
Date:   Tue Feb 20 15:33:03 2018 -0800

    [subset] Sanity check that loca writes are inbounds.

 src/hb-subset-glyf.cc | 55
 ++++++++++++++++++++++++++++++++++++++-------------
 1 file changed, 41 insertions(+), 14 deletions(-)

commit 73e20ec6e9ad86bea023fc8b6fc10287889ed048
Merge: 6ae4013f 69e443b2
Author: Garret Rieger <grieger@google.com>
Date:   Tue Feb 20 17:34:59 2018 -0700

    Merge pull request #812 from googlefonts/cleanup

    Clean up of glyf subsetting.

commit 6ae4013f2e53d6496507a58b715298fee4eadcee
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 20 15:02:25 2018 -0800

    [aat] Cosmetic touch-ups to trak table

 src/hb-aat-layout-trak-table.hh | 31 +++++++++++++++++--------------
 1 file changed, 17 insertions(+), 14 deletions(-)

commit abc82b493e301e5588d689baa1434b3ce6577fcd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 20 14:34:16 2018 -0800

    Add Ragel-generated files to git

    I know it's bad form; I know I've said no to this multiple times...
    But this is part of an experiment to see if we can make rolling
    HarfBuzz
    into Chrome much faster. That will give us a lot more testing exposure
    that currently Chrome does.

    Doing this while those files are still considered ignored by our
    gitignore rules; will see how that flies.

 autogen.sh                                 |   10 +-
 src/Makefile.am                            |    3 +-
 src/hb-ot-shape-complex-indic-machine.hh   | 1319
 ++++++++++++++++++++++++++++
 src/hb-ot-shape-complex-khmer-machine.hh   |  294 +++++++
 src/hb-ot-shape-complex-myanmar-machine.hh |  413 +++++++++
 src/hb-ot-shape-complex-use-machine.hh     |  502 +++++++++++
 6 files changed, 2535 insertions(+), 6 deletions(-)

commit 69e443b254fceb29f26f6a0c0129fe3c93c19cfb
Author: Garret Rieger <grieger@google.com>
Date:   Tue Feb 20 14:29:21 2018 -0800

    [subset] Switch to hb_blob_copy_writable_or_fail in glyf subsetting.

 src/hb-ot-glyf-table.hh | 29 +++++++++++------------------
 src/hb-ot-maxp-table.hh |  3 +--
 2 files changed, 12 insertions(+), 20 deletions(-)

commit e3e0ac98238b78530a625a6b7e7647dbabbe1c4d
Author: Garret Rieger <grieger@google.com>
Date:   Tue Feb 20 14:07:40 2018 -0800

    [subset] Move glyf subsetting code into hb-ot-glyf-table.hh

 src/hb-ot-glyf-table.hh | 49
 +++++++++++++++++++++++++++++++++++++++++++++++-
 src/hb-subset.cc        | 50
 +------------------------------------------------
 2 files changed, 49 insertions(+), 50 deletions(-)

commit d1f16fce963092404bf0b59e449a3215ca031b54
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 20 10:32:09 2018 -0800

    Don't use %zu

    Some of our bots / compilers don't like it. Wasn't caught by bots
    because this
    is only in debug code.

    https://github.com/harfbuzz/harfbuzz/pull/809/commits/825ad378e0f0e6e6bb690894a0d5d25f198be21b

 src/hb-ot-cmap-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c7e834a2fc5f8fb81f5316447e4075902d58d8a3
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Feb 20 17:59:04 2018 +0330

    [dev-run] minor

 src/dev-run.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 975c35214f8c8f0d90a8b114e1a8c06d5ecdecfd
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Feb 20 17:49:29 2018 +0330

    [dev-run] Support autotools builds

 src/dev-run.sh | 46 +++++++++++++++++++++++++++++++---------------
 1 file changed, 31 insertions(+), 15 deletions(-)

commit 25136d9b7265d8920a78f3f832f1c69da4ef1f5b
Author: Dominik Röttsches <drott@chromium.org>
Date:   Tue Feb 20 10:26:07 2018 +0200

    Use %zu format specifier for size_t to fix cross platform build

    Fixes Chromium Android builds, compare
    https://ci.chromium.org/buildbot/tryserver.chromium.android/linux_android_rel_ng/491787

 src/hb-ot-cmap-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 53cf61b0299775f94c625de1bb0a7979b3b0c379
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Feb 20 10:53:10 2018 +0330

    Change Alpine and ArchLinux bot to test O3 and O0 on gcc, #801

 .circleci/config.yml | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)

commit a64eacd8a6cb9811bcaadf20b8b8ae56306cbd75
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Feb 19 23:27:08 2018 +0330

    [aat] First dig on 'trak'

 src/Makefile.sources            |   3 +-
 src/hb-aat-layout-trak-table.hh | 100
 ++++++++++++++++++++++++++++++++++++++++
 src/hb-aat-layout.cc            |   3 +-
 src/hb-ot-layout-private.hh     |   6 ++-
 4 files changed, 108 insertions(+), 4 deletions(-)

commit 0bff6991de308044b077ce74bd45d57d8c4afe5f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 19 11:51:25 2018 -0800

    Ugh. Really fix build.

 src/hb-subset-private.hh  | 2 +-
 src/hb-subset.cc          | 3 +--
 test/api/hb-subset-test.h | 1 +
 3 files changed, 3 insertions(+), 3 deletions(-)

commit 4fcbd22b18040cbfd7410e6a090c5f9624eb9a0f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 19 11:49:25 2018 -0800

    Fix build after previous commit

 src/hb-subset-plan.hh | 2 ++
 1 file changed, 2 insertions(+)

commit 0bbf90ded00dd00ee3f79c1bd16c775d7c893278
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 19 11:38:53 2018 -0800

    [subset] Don't include hb-subset.h from hb.h

 src/hb.h | 1 -
 1 file changed, 1 deletion(-)

commit fde04777d1d429fd0981002194f5c19599fda350
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Feb 19 20:00:07 2018 +0330

    Check availability of entr instead now that this works with it

 src/dev-run.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b095ce59ebc5723a1b9c049eebb8f204455c9a72
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Feb 19 11:58:20 2018 +0330

    Simplify hb-fuzzer output printing and fix ArchLinux bot

 test/fuzzing/run-fuzzer-tests.py | 6 +-----
 1 file changed, 1 insertion(+), 5 deletions(-)

commit be51f763a752bed1c395bff19afe3291a6063d00
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Feb 19 11:06:13 2018 +0330

    Test debug builds on ArchLinux bot

    Fixes #805

 .circleci/config.yml | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit e2d2d819848ed0ff1c60b9bde1f9c8f9495ec5b4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 18 17:28:53 2018 -0800

    Limit how much work sanitize() can do

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

 src/Makefile.am                                       |   2 ++
 src/hb-open-type-private.hh                           |  16
 ++++++++++++++--
 .../233c1e252e737ca79e03a9fd56b71aaa4a230f2b.ttf      | Bin 0 ->
 1048576 bytes
 test/shaping/data/in-house/tests/fuzzed.tests         |   1 +
 4 files changed, 17 insertions(+), 2 deletions(-)

commit 7033fe5877c6f9500575f20f17135f74dc9c0547
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 18 17:12:04 2018 -0800

    [aat] Minor

 src/hb-aat-layout-common-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6fa690c75a572a1076124b428b76929b2674e532
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 18 16:27:59 2018 -0800

    Fix debug build

    Context needs to be called 'c'. The TRACE_* rely on that.

 src/hb-ot-cmap-table.hh | 22 +++++++++++-----------
 1 file changed, 11 insertions(+), 11 deletions(-)

commit 05d1e77db8f3e5280e93b6885ff4f7df113b612b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 18 16:26:04 2018 -0800

    [aat] Silence warning

 src/hb-aat-layout-kerx-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a21fceb05311f61ef179b2f3aa6497562555f241
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 18 16:10:15 2018 -0800

    [ci] Make AppVeyor less noisy

 appveyor.yml | 3 +++
 1 file changed, 3 insertions(+)

commit 1c50a88623a881a9e2b2b0f1f6a783962626f03a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 18 15:57:09 2018 -0800

    Readjust mark attachment heuristic a bit more

    Previously adjusted logic could fail if nothing around was ligated,
    and something moved.  This should take care of that.

    CC https://github.com/harfbuzz/harfbuzz/issues/740

 src/hb-ot-layout-gpos-table.hh | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 246e280d88b6b26757297a349f01e52c15eaec53
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 18 15:42:25 2018 -0800

    [test] Add test for https://github.com/harfbuzz/harfbuzz/issues/740

 .../fonts/573d3a3177c9a8646e94c8a0d7b224334340946a.ttf   | Bin 0 ->
 5680 bytes
 test/shaping/data/in-house/tests/use.tests               |   1 +
 2 files changed, 1 insertion(+)

commit 79756c9039a628b0df441228ca1ea20b8a91e3e8
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Feb 19 03:17:44 2018 +0330

    [aat] First dig on 'kerx' (#704)

 src/Makefile.sources            |   1 +
 src/hb-aat-layout-kerx-table.hh | 377
 ++++++++++++++++++++++++++++++++++++++++
 src/hb-aat-layout.cc            |   1 +
 src/hb-ot-layout-private.hh     |   2 +
 4 files changed, 381 insertions(+)

commit 279c70a5b36446f444e5d2f4ac1db7614c8a3db8
Merge: e9164478 89b82814
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 18 14:04:33 2018 -0800

    Merge pull request #796 from ebraminio/dev-run

    Add a continuous builder using fswatch

commit e91644786bf7c278e75962b851d5d47011ff175c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 18 12:41:24 2018 -0800

    Remove unused check

 configure.ac | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 89b82814b605d2bfcc481a47607e642a928dff15
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Feb 16 12:53:33 2018 +0330

    Add a continuous builder using fswatch

 CMakeLists.txt          | 24 +++++++++++++-----------
 src/dev-run.sh          | 22 ++++++++++++++++++++++
 test/api/CMakeLists.txt |  2 +-
 3 files changed, 36 insertions(+), 12 deletions(-)

commit 0bd2d76bdd83569366762416bf7c8fd8e90021aa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 18 11:55:26 2018 -0800

    [test] Fix a couple of coverity_scan issues

 test/api/hb-subset-test.h | 17 +++++++++++------
 1 file changed, 11 insertions(+), 6 deletions(-)

commit 8089711a61687d565f207c56d3d2b658f514d7ab
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Feb 18 23:25:15 2018 +0330

    Another attempt on fixing coverity

    I hope I am in a correct direction at least

 .travis.yml | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

commit 79d0d791b9ee920e1f687a93de5adf5d113cc829
Merge: 21646cc4 97a71102
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 18 11:35:51 2018 -0800

    Merge pull request #800 from harfbuzz/bitops

    Optimize set through optimized bit operations

commit 97a71102153d28982297a190739c7d82e76b109e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 18 10:50:24 2018 -0800

    Fix BitScanForward() usage

    Should fix Win64 bot.

 src/hb-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit fe8f40a4180e7b02831a264c0b3c66763156abb6
Merge: cd11107b 21646cc4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 18 10:45:33 2018 -0800

    Merge branch 'master' into bitops

commit 21646cc4a6160088933774e179df9be4865a9f4b
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Fri Feb 16 12:08:55 2018 -0500

    Do not mark the first glyph as unsafe to break

    Fixes #791.

 src/hb-buffer-private.hh | 3 +--
 src/hb-coretext.cc       | 4 ----
 src/hb-directwrite.cc    | 2 --
 src/hb-graphite2.cc      | 1 -
 src/hb-uniscribe.cc      | 2 --
 5 files changed, 1 insertion(+), 11 deletions(-)

commit 04dedec96b76600eecdb739b72814a4a56b270ae
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 16 18:32:57 2018 -0800

    [test] Remove unused var

 test/api/test-subset-hmtx.c | 1 -
 1 file changed, 1 deletion(-)

commit 181b7471074cc814e0f498fc05fd6850c3f5e403
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 16 17:08:44 2018 -0800

    Update outdated TODO file

 TODO | 29 +----------------------------
 1 file changed, 1 insertion(+), 28 deletions(-)

commit 6d56db8983e03fbebbeb61282bef8cb1f9abb8e2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 16 17:02:57 2018 -0800

    [test/api] Distribute all fonts

 test/api/Makefile.am | 21 ++-------------------
 1 file changed, 2 insertions(+), 19 deletions(-)

commit e5ab34fd3a104f7ff2f0b36c66770c88b2ea1051
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 16 16:58:17 2018 -0800

    Misc fixes

    Should bring bag djgpp bot.

 src/hb-ot-os2-table.hh | 54
 +++++++++++++++++++++++++-------------------------
 src/hb-subset-plan.cc  | 16 +++++++--------
 2 files changed, 34 insertions(+), 36 deletions(-)

commit df9e22656de746bde65dee775a66f1a80f1c2e32
Author: Garret Rieger <grieger@google.com>
Date:   Fri Feb 16 17:02:51 2018 -0700

    [subset] add a glyf subsetting test for a font with composite glyphs.

 .../api/fonts/Roboto-Regular.components.subset.ttf | Bin 0 -> 2052 bytes
 test/api/fonts/Roboto-Regular.components.ttf       | Bin 0 -> 2572 bytes
 test/api/test-subset-glyf.c                        |  21
 +++++++++++++++++++++
 3 files changed, 21 insertions(+)

commit c36d015b0e9c363431cd9d228b776ad419fde474
Author: Garret Rieger <grieger@google.com>
Date:   Fri Feb 16 17:02:15 2018 -0700

    [subset] missing return.

 test/api/hb-subset-test.h | 1 +
 1 file changed, 1 insertion(+)

commit 2130392dcc30784ee34c487ab16316006c91f16d
Author: Garret Rieger <grieger@google.com>
Date:   Fri Feb 16 17:01:00 2018 -0700

    [subset] Add support for updating reference gids in components to
    their new values.

 src/hb-subset-glyf.cc | 38 +++++++++++++++++++++++++++++++++-----
 1 file changed, 33 insertions(+), 5 deletions(-)

commit 49544eb860e523838892d6ce88eeca72ffd19da4
Author: Garret Rieger <grieger@google.com>
Date:   Fri Feb 16 16:56:15 2018 -0700

    [subset] Refactor composite glyf iteration code into an Iterator
    outside of the accelerator.

 src/hb-ot-glyf-table.hh | 110
 +++++++++++++++++++++++++-----------------------
 src/hb-subset-plan.cc   |   6 +--
 2 files changed, 60 insertions(+), 56 deletions(-)

commit dc6d67df1395faf38d7587b1dd3c6661ee7cd6f0
Author: Garret Rieger <grieger@google.com>
Date:   Fri Feb 16 15:20:14 2018 -0700

    [subset] Use gids_to_retain_sorted to produce old gid -> new gid
    mapping since it now has the more complete set.

 src/hb-subset-plan.cc | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

commit dcac9fe96429d4e272a3fbd60a6162f988f58f71
Author: Garret Rieger <grieger@google.com>
Date:   Fri Feb 16 11:27:03 2018 -0700

    [subset] Use complex glyph closure to populate gids_to_retain_sorted.

 src/hb-subset-plan.cc | 43 ++++++++++++++++++++++++-------------------
 src/hb-subset-plan.hh |  6 ++++++
 2 files changed, 30 insertions(+), 19 deletions(-)

commit 58a54c9d4f72e228c012451c4469da730742d3d8
Author: Garret Rieger <grieger@google.com>
Date:   Fri Feb 16 11:20:38 2018 -0700

    [subset] add constant to get_composite and in_table methods in
    hb-ot-glyf-table

 src/hb-ot-glyf-table.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 73e1434814eb37005b4159babf972a2743b25700
Author: Garret Rieger <grieger@google.com>
Date:   Thu Feb 15 14:41:56 2018 -0800

    [subset] Add a DFS search to produce a closure of composite glyphs.

 src/hb-subset-plan.cc | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

commit d3684141437fad6ebf5f9945f92125c9a42ea853
Author: Garret Rieger <grieger@google.com>
Date:   Thu Feb 15 14:03:34 2018 -0800

    [subset] add helper methods to glyf accelerator for reading composite
    glyph information.

 src/hb-ot-glyf-table.hh | 115
 ++++++++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 112 insertions(+), 3 deletions(-)

commit cd11107bb44ac719709e10264e9e6ba6a1cfae0c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 16 18:28:58 2018 -0800

    Another bitops fallback fix

    I'm confident that all bugs are hashed out now.

 src/hb-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 4e517ecb6b7c27d4053a6476bb9262858e2567ed
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 16 18:20:12 2018 -0800

    Another bitops fallback impl fix

 src/hb-private.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit f18b9fbf6583dff72675be7859fc147ec24a0dd2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 16 18:14:41 2018 -0800

    [set] Implement iteration using bitop intrinsics

 src/hb-set-private.hh | 55
 ++++++++++++++++++---------------------------------
 1 file changed, 19 insertions(+), 36 deletions(-)

commit 6a91a2eb04951f6e33706c2b8e9cd987b429fce9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 16 17:49:41 2018 -0800

    Fix wide bitops implemenetation

 src/hb-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit d25c3e69e9b0cb9d947e98845b9e3a14ce58e350
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 16 17:45:09 2018 -0800

    [set] Readjust parameters

 src/hb-set-private.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 6d5c0bf8b18ed53e8d40dcbae83ec66ed2116843
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 16 17:33:26 2018 -0800

    Fix bitops fallback impl

 src/hb-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 82eb1dac163cb4aef8a2e4ebad542378f4e28dca
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 16 16:52:09 2018 -0800

    Flesh out other bit ops some more for 128bit as well

 src/hb-private.hh | 165
 +++++++++++++++++++++++++++++++++++++++++-------------
 1 file changed, 126 insertions(+), 39 deletions(-)

commit 864a2dddae9eb1303c59d0d3717fce307a72a524
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 16 14:21:40 2018 -0800

    Clean up bit functions

    Compile all code-paths possible, to better catch errors.
    Also enable MSVC ones on mingw which seems to support them.

 src/hb-private.hh | 43 +++++++++++++++++++++++++++----------------
 1 file changed, 27 insertions(+), 16 deletions(-)

commit 978ace6fbbc828adc20f21591d138f41d8508ebc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 16 16:06:17 2018 -0800

    Improve _hb_popcount()

    Support 128bit type.

 configure.ac                   |  3 ++-
 src/hb-ot-layout-gpos-table.hh |  2 +-
 src/hb-ot-map.cc               |  2 +-
 src/hb-private.hh              | 61
 +++++++++++++++++++++++++++---------------
 4 files changed, 44 insertions(+), 24 deletions(-)

commit 7b5ce7404716a17f91ff86d374c7b76ee7ce3247
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 16 15:37:22 2018 -0800

    Fix warnings

 src/hb-ot-os2-table.hh    | 2 +-
 test/api/hb-subset-test.h | 3 ++-
 test/api/hb-test.h        | 9 +++++++--
 3 files changed, 10 insertions(+), 4 deletions(-)

commit 94d32d1b83892ed4f124463cf4322bf74b3e850d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 16 15:36:20 2018 -0800

    Enable C99 if available

    Hopefully we can now mix-and-match code and declaration in the C
    test files.

 configure.ac | 1 +
 1 file changed, 1 insertion(+)

commit 926db874552519734fab6c04258887ea634f5324
Merge: 882a3bf4 c7a633f9
Author: rsheeter <rsheeter@google.com>
Date:   Fri Feb 16 15:27:29 2018 -0800

    Merge pull request #792 from googlefonts/master

    Support more tables in subsetter

commit 882a3bf4abcdac60414db41d54dbbb7d2368c908
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 16 14:17:20 2018 -0800

    That didn't work...

 RELEASING.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b1f186df78ed14cbc8be919e7f552df2bd7561e0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 16 14:13:38 2018 -0800

    Add mingw32.sh and mingw64.sh

 RELEASING.md | 28 +---------------------------
 mingw32.sh   | 22 ++++++++++++++++++++++
 mingw64.sh   | 22 ++++++++++++++++++++++
 3 files changed, 45 insertions(+), 27 deletions(-)

commit d37310ac5d5f8a3fd1ce1e535647e7c6bb0d7926
Author: Arkady Shapkin <arkady.shapkin@gmail.com>
Date:   Fri Feb 16 21:45:08 2018 +0300

    Remove checking macros __OPTIMIZE__ for MSVC

    Visual C++ compiler doesn't define macros __OPTIMIZE__  when
    optimizations enabled

 src/hb-private.hh | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

commit 4eff0fc5b87084765ac2e36ba9f09d7d257f32fb
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Fri Feb 16 20:22:52 2018 +0200

    Make this work for old versions of automake

 .ci/fail.sh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit f8077c97909778c117d37773c9da570d831dacd2
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Thu Feb 15 11:47:08 2018 +0200

    Print only the failed log

 .ci/fail.sh | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit 8e3b4c0e11642470069b866a73768a866ac3fdb3
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Thu Feb 15 11:25:24 2018 +0200

    Simplify calls to collect-logs.sh

 .ci/{collect-logs.sh => fail.sh} |  3 +++
 .circleci/config.yml             | 13 +++++++++----
 .travis.yml                      |  6 +++---
 appveyor.yml                     |  2 +-
 4 files changed, 16 insertions(+), 8 deletions(-)

commit c7a633f95710fcf2fe9151b41feba7db4b1bab0e
Author: Rod Sheeter <rsheeter@google.com>
Date:   Fri Feb 16 11:11:20 2018 -0800

    [subset] try to get more info from bot where g_assert_cmpmem fails

 test/api/hb-subset-test.h | 12 +++++-------
 test/api/hb-test.h        | 11 ++++++++---
 2 files changed, 13 insertions(+), 10 deletions(-)

commit 0bb2d7ac12b7cf482580b6d2e8534eef8a233f96
Author: Rod Sheeter <rsheeter@google.com>
Date:   Fri Feb 16 06:26:02 2018 -0800

    [subset] fix int type for blob length in hb-subset-test.h

 test/api/hb-subset-test.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit be0a01a67613f45db7f7e9be84cb883f0344c817
Merge: 7acaa3b7 139c9928
Author: Rod Sheeter <rsheeter@google.com>
Date:   Fri Feb 16 06:01:41 2018 -0800

    Merge branch 'master' of https://github.com/harfbuzz/harfbuzz

commit 139c9928f6152088fa6eee0279e33cb821aeb541
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Feb 16 13:27:26 2018 +0330

    Fix hb-private.hh compile issue

 src/hb-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 6c10328eb88b0641586f31a782b63f45eada5609
Author: Arkady Shapkin <arkady.shapkin@gmail.com>
Date:   Thu Feb 15 23:17:46 2018 +0300

    Use _BitScanForward and _BitScanReverse on MSVC

 src/hb-private.hh | 12 ++++++++++++
 1 file changed, 12 insertions(+)

commit 7acaa3b781da835cdb11dbe523c819feb4eef996
Author: Rod Sheeter <rsheeter@google.com>
Date:   Thu Feb 15 14:28:29 2018 -0800

    [subset] apparently C99 is too much to ask in 2018

 src/hb-ot-hmtx-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b1740106a9c825874faf3f1315770d1e3c790cf9
Author: Rod Sheeter <rsheeter@google.com>
Date:   Thu Feb 15 13:55:21 2018 -0800

    [subset] fix format specifier for size_t

 src/hb-ot-hmtx-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e00c37aaae3922b425c0528bfdd36d59cf9c5796
Author: Rod Sheeter <rsheeter@google.com>
Date:   Thu Feb 15 12:53:52 2018 -0800

    [subset] fix no matching function MIN in djgpp

 src/hb-ot-hmtx-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6122ad2442666d89ef39bdf5a2bb9d3f6d8e2b03
Author: Rod Sheeter <rsheeter@google.com>
Date:   Thu Feb 15 11:40:28 2018 -0800

    [subset] add files to EXTRA_DIST

 test/api/Makefile.am | 3 +++
 1 file changed, 3 insertions(+)

commit 0758cbc4c2f52c629d05515b8d2816e8d6a2a2c1
Author: Rod Sheeter <rsheeter@google.com>
Date:   Thu Feb 15 11:29:01 2018 -0800

    [subset] correct bug introduced to get_advance

 src/hb-ot-hmtx-table.hh | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

commit 3fd11f4397aec9cda3a7d29246ab3ae56115ad36
Author: Rod Sheeter <rsheeter@google.com>
Date:   Thu Feb 15 11:15:12 2018 -0800

    [subset] remove unused decl

 src/hb-subset-private.hh | 3 ---
 1 file changed, 3 deletions(-)

commit 23d21a74b55eaf6d6d367097099e6b3bb78bae37
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Thu Feb 15 02:52:15 2018 +0200

    Move collect_logs to .ci dir

    Next to other CI scripts.

 .collect_logs => .ci/collect-logs.sh | 0
 .circleci/config.yml                 | 8 ++++----
 .travis.yml                          | 6 +++---
 appveyor.yml                         | 2 +-
 4 files changed, 8 insertions(+), 8 deletions(-)

commit 0e088a63d10dd09e025515bfa8ae68aa2922eaf6
Author: Rod Sheeter <rsheeter@google.com>
Date:   Wed Feb 14 21:11:45 2018 -0800

    [subset] hmtx space bracket. authors++

 src/hb-ot-hmtx-table.hh | 40 ++++++++++++++++++++--------------------
 1 file changed, 20 insertions(+), 20 deletions(-)

commit 1725c35da0ea2f829b6d6b6c1963607fd6dfb577
Author: Rod Sheeter <rsheeter@google.com>
Date:   Wed Feb 14 19:36:33 2018 -0800

    [subset] cmap space bracket

 src/hb-ot-cmap-table.hh | 72
 ++++++++++++++++++++++++-------------------------
 1 file changed, 36 insertions(+), 36 deletions(-)

commit e158739bfb9e5d60989e179fcc8744f3125e2067
Author: Rod Sheeter <rsheeter@google.com>
Date:   Wed Feb 14 19:22:37 2018 -0800

    [subset] space bracket

 src/hb-ot-hmtx-table.hh | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

commit 2d6b1e2af74abea645a943d264e148d56d018101
Author: Rod Sheeter <rsheeter@google.com>
Date:   Wed Feb 14 19:14:01 2018 -0800

    [subset] maxp copy writeable fn

 src/hb-ot-maxp-table.hh | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

commit 1efecd965fe81d65e2763be4f43df2d8c4d8be44
Author: Rod Sheeter <rsheeter@google.com>
Date:   Wed Feb 14 18:42:29 2018 -0800

    [subset] hmtx use copy writeable fn instead of direct memory

 src/hb-ot-hmtx-table.hh | 23 ++++-------------------
 1 file changed, 4 insertions(+), 19 deletions(-)

commit 27012526f9b3848676bc2a4fb8e68c630af18620
Author: Rod Sheeter <rsheeter@google.com>
Date:   Wed Feb 14 19:01:00 2018 -0800

    [subset] whitespace

 test/api/test-subset-hmtx.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

commit b1bd0b5f506dad9d04fd3a6abcb92122f231e0f7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 14 18:50:19 2018 -0800

    [subset] Minor

 src/hb-ot-cmap-table.hh | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit 83f57e24bfc2000373192ec44b067fdd7dee8a65
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 14 18:43:53 2018 -0800

    [test] Reinstate
    test/shaping/data/in-house/tests/myanmar-syllable.tests

 test/shaping/data/in-house/tests/myanmar-syllable.tests | 1 +
 1 file changed, 1 insertion(+)

commit 5ae6526ef4aa9b3c943cad984dc2fff09cdf597b
Merge: 2903b2f3 04c1ec2b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 14 18:42:32 2018 -0800

    [subset] Merge remote-tracking branch 'googlefonts/master'

commit 04c1ec2b7396c05f6e8afc9d87679422782aa1e8
Author: Garret Rieger <grieger@google.com>
Date:   Wed Feb 14 17:00:18 2018 -0800

    [subset] Don't fail on different checksum adjustment in subsetting
    tests.

 .../expected/basics/Roboto-Regular.abc.default.62.ttf | Bin 1740 ->
 1692 bytes
 test/subset/run-tests.py                              |   8 ++++++++
 2 files changed, 8 insertions(+)

commit 0775bc0f7a59241456142b48abced75fd3db5a42
Author: Garret Rieger <grieger@google.com>
Date:   Wed Feb 14 16:37:35 2018 -0800

    [subset] Fix hhea subsetting and clean up some memory leaks.

 src/hb-ot-hmtx-table.hh | 25 ++++++++++++++-----------
 1 file changed, 14 insertions(+), 11 deletions(-)

commit b56c9384bcc177236debd26fdbbf14319e4c62b9
Author: Garret Rieger <grieger@google.com>
Date:   Wed Feb 14 16:05:39 2018 -0800

    [subset] Add missing face reference in hb-subset-plan plus ensure
    all struct members are cleaned up on destroy.

 src/hb-subset-plan.cc | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit e0ffebead6230b8e1ee8dd97425505706321793e
Author: Garret Rieger <grieger@google.com>
Date:   Wed Feb 14 16:01:08 2018 -0800

    [subset] In hb-subset-test use hb_set_union instead of manually
    copying set.

 test/api/hb-subset-test.h | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

commit e330ef3711c543372f9f8550a967c512bbf87d83
Author: Garret Rieger <grieger@google.com>
Date:   Wed Feb 14 15:57:11 2018 -0800

    [subset] Restore hb_face_data_destroy to be internal.

 src/hb-subset.cc | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit 3ab7d2649bf5c92d3837b3132d65d4659d0fa003
Author: Garret Rieger <grieger@google.com>
Date:   Wed Feb 14 15:48:57 2018 -0800

    [subset] Fix memory leak in hb-ot-{maxp,os2}. Plus some formatting.

 src/hb-ot-maxp-table.hh |  6 ++++--
 src/hb-ot-os2-table.hh  | 24 +++++++++++++-----------
 2 files changed, 17 insertions(+), 13 deletions(-)

commit 2903b2f357eb495c9badac1b2f74e65e1d1075bd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 14 15:46:27 2018 -0800

    Another linker tweaking

    Trying to fix this warning:
    cc1: warning: command line option ‘-fno-threadsafe-statics’ is
    valid for C++/ObjC++ but not for C

    Let's see what the clang bots think of it.

 src/Makefile.am | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit e1f1f96577a80846749782b6e199a661f4189ec0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 14 15:44:48 2018 -0800

    [set] Tune size again

    Switch from a 128+64 hierarchy, to 32+32. New page size is 1024.
    This should make set iteration faster, without affecting other op
    performances much.

 src/hb-set-private.hh | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

commit 66e282df32410831f1c4e157e9dcf8c76f2bc3d8
Author: Rod Sheeter <rsheeter@google.com>
Date:   Wed Feb 14 15:31:13 2018 -0800

    [subset] remove TODO that was already done

 src/hb-subset-plan.hh | 1 -
 1 file changed, 1 deletion(-)

commit 4696624ad9987b0eebcf5c84dafdb204b886f28e
Author: Rod Sheeter <rsheeter@google.com>
Date:   Wed Feb 14 15:30:49 2018 -0800

    [subset] maxp wrong int type, note to use copy_writable_or_fail

 src/hb-ot-maxp-table.hh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 3ed70e5e64910e1c22225f542a525807b000cb2a
Author: Rod Sheeter <rsheeter@google.com>
Date:   Wed Feb 14 15:24:49 2018 -0800

    [subset] return bool not hb_bool_t from table::subset

 src/hb-ot-cmap-table.hh | 2 +-
 src/hb-ot-maxp-table.hh | 2 +-
 src/hb-ot-os2-table.hh  | 2 +-
 src/hb-subset.cc        | 2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

commit 88d56e241bd6bb768656d77cf8f99ccc97fb2446
Author: Rod Sheeter <rsheeter@google.com>
Date:   Wed Feb 14 15:20:43 2018 -0800

    [subset] Use a supplier instead of memcpy and fix a few unnecessary
    {}s for cmap

 src/hb-ot-cmap-table.hh | 24 ++++++------------------
 1 file changed, 6 insertions(+), 18 deletions(-)

commit 42a80f00d51317207c49611b76d6bba06230371b
Author: Rod Sheeter <rsheeter@google.com>
Date:   Wed Feb 14 15:04:35 2018 -0800

    [subset] add free

 src/hb-ot-hmtx-table.hh | 1 +
 1 file changed, 1 insertion(+)

commit d463e9f6b57bebb3aa4875fe11c927c26c3e3974
Author: Rod Sheeter <rsheeter@google.com>
Date:   Wed Feb 14 15:04:15 2018 -0800

    [subset] Give Behdad credit again

 src/hb-subset.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit fa87770372a3156658412ff0d70e32083c6b0484
Author: Rod Sheeter <rsheeter@google.com>
Date:   Wed Feb 14 14:16:25 2018 -0800

    [subset] First pass at hmtx

 src/hb-ot-cmap-table.hh                           |  19 +--
 src/hb-ot-hhea-table.hh                           |   6 +-
 src/hb-ot-hmtx-table.hh                           | 163
 ++++++++++++++++++---
 src/hb-ot-maxp-table.hh                           |   8 +-
 src/hb-ot-os2-table.hh                            |   8 +-
 src/hb-subset-glyf.cc                             |   5 +-
 src/hb-subset-glyf.hh                             |   1 -
 src/hb-subset-plan.cc                             |  12 ++
 src/hb-subset-plan.hh                             |  10 ++
 src/hb-subset-private.hh                          |  11 ++
 src/hb-subset.cc                                  |  85 ++++++-----
 test/api/Makefile.am                              |   7 +
 test/api/fonts/Inconsolata-Regular.ab.ttf         | Bin 0 -> 5048 bytes
 test/api/fonts/Inconsolata-Regular.abc.ttf        | Bin 0 -> 5224 bytes
 test/api/fonts/Inconsolata-Regular.abc.widerc.ttf | Bin 0 -> 5228 bytes
 test/api/fonts/Inconsolata-Regular.ac.ttf         | Bin 0 -> 4940 bytes
 test/api/fonts/Inconsolata-Regular.ac.widerc.ttf  | Bin 0 -> 4944 bytes
 test/api/fonts/README                             |   2 +
 test/api/test-subset-hmtx.c                       | 164
 ++++++++++++++++++++++
 19 files changed, 422 insertions(+), 79 deletions(-)

commit 20022575c658b29796db80c387641309d0c49586
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Feb 15 01:15:39 2018 +0330

    Redirect email notifications to another mailing list dedicated for
    this (#790)

 .travis.yml  | 4 ++--
 appveyor.yml | 5 +++++
 2 files changed, 7 insertions(+), 2 deletions(-)

commit 581996ea7976847b6356c9cc81b564f0c278f0f3
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Feb 15 00:43:46 2018 +0330

    Add .collect_logs and use it on CI bots, fixes #786 (#789)

 .circleci/config.yml | 8 ++++----
 .collect_logs        | 6 ++++++
 .travis.yml          | 6 +++---
 appveyor.yml         | 2 +-
 4 files changed, 14 insertions(+), 8 deletions(-)

commit e5edcc81bf14311c56bd2f50808552076c3c4d77
Author: Garret Rieger <grieger@google.com>
Date:   Wed Feb 14 11:17:53 2018 -0800

    [subset] Fix codepoint iteration in hb-subset-test.

 test/api/hb-subset-test.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ccae99fdadcf86aeda15dc230a3ddcd6ff176533
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 14 11:12:09 2018 -0800

    Another try

 src/Makefile.am | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 8b1dbbef1aec3b6880186070e7386a5553d67b15
Author: Garret Rieger <grieger@google.com>
Date:   Wed Feb 14 11:04:12 2018 -0800

    Fix compile error in hb-subset-test.

 test/api/hb-subset-test.h | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

commit f53627e19100df6eb7f32d58e7c4ce47a783f1a6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 14 10:59:22 2018 -0800

    [test] Fix warning

 test/api/test-subset.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 8c3612af650e4c8e01a9fdc127342b07b5c77962
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 14 10:57:34 2018 -0800

    Tweak Makefile some more

 src/Makefile.am | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit d594f947b68ad36d32ce107847f5f02ec3528076
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 14 10:55:25 2018 -0800

    [subset] Allow linking to libstdc++

    We want to use it.

 src/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a0fe3011bafbe36e7d5810acc7df21bea08c802a
Author: Rod Sheeter <rsheeter@google.com>
Date:   Wed Feb 14 10:52:41 2018 -0800

    copy all cmap groups at once

 src/hb-ot-cmap-table.hh | 14 ++++----------
 1 file changed, 4 insertions(+), 10 deletions(-)

commit d008b62887afe631f50009f40e605c8456ddd011
Merge: b0eefacf 109314cb
Author: Garret Rieger <grieger@google.com>
Date:   Wed Feb 14 10:38:52 2018 -0800

    Merge remote-tracking branch 'upstream/master' into fixed

commit b0eefacf4cb885f510f9551bf2e9216808ca61e8
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 12 18:15:58 2018 -0800

    [subset] Drop GSUB, GDEF, GPOS, and DSIG from subsetter expected
    test outputs.

 .../expected/basics/Roboto-Regular.abc.default.62.ttf | Bin 2460 ->
 1740 bytes
 test/subset/generate-expected-outputs.py              |   1 +
 2 files changed, 1 insertion(+)

commit 89f17e3965ba776565f2de2bf56a4b135f336e53
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 12 18:14:50 2018 -0800

    [subset] capitalize dsig.

 src/hb-subset.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit df6d780355d7da805a9b9033452f8814c5360bba
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 12 17:56:17 2018 -0800

    [subset] Extract maxp subsetting into hb-ot-maxp-table.

 src/hb-ot-maxp-table.hh     | 19 ++++++++++++++++++-
 src/hb-subset.cc            | 28 ++--------------------------
 test/api/test-subset-glyf.c |  5 +++--
 3 files changed, 23 insertions(+), 29 deletions(-)

commit 865b6971ad5c2ec4bc33c36a78a36b90da5f5543
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 12 17:42:20 2018 -0800

    [subset] Add a test for OS/2 fixes during subsetting.

 test/api/Makefile.am                |   2 ++
 test/api/fonts/Roboto-Regular.b.ttf | Bin 0 -> 1996 bytes
 test/api/test-subset-os2.c          |  59
 ++++++++++++++++++++++++++++++++++++
 3 files changed, 61 insertions(+)

commit 343dfe89655683966836e44afb4fd32c47377844
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 12 17:33:48 2018 -0800

    [subset] white and add inline in hb-ot-cmap-table.

 src/hb-ot-cmap-table.hh | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

commit 24904383df03c472c865bd97bfe844f5e86a7172
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 12 17:31:01 2018 -0800

    [subset] Correct usFirstCharIndex and usLastCharIndex in OS2 table
    when subsetting.

 src/hb-ot-os2-table.hh | 45 +++++++++++++++++++++++++++++++++++++++++++++
 src/hb-subset.cc       | 16 ++++++++++------
 2 files changed, 55 insertions(+), 6 deletions(-)

commit 109314cb55e6d95d5c3a87b9ed1ba4e74a880078
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Feb 14 21:05:11 2018 +0330

    Another attempt on fixing the tests on Travis (#788)

 src/Makefile.am | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 694eaf636713b8d0bbe13f38c2553b1a2f3d2d3a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 14 01:00:10 2018 -0800

    [set] Add backwards iterator

    New API:
    - hb_set_previous()
    - hb_set_previous_range()

 docs/harfbuzz-sections.txt |  2 ++
 src/hb-set-private.hh      | 79
 +++++++++++++++++++++++++++++++++++++++++++++-
 src/hb-set.cc              | 49 +++++++++++++++++++++++++++-
 src/hb-set.h               | 19 ++++++++---
 test/api/test-set.c        | 53 +++++++++++++++++++++++++++++--
 5 files changed, 194 insertions(+), 8 deletions(-)

commit fe3bc524bd4f93bd67c13ed402720a13dd3484d3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 13 23:51:45 2018 -0800

    [set] Allow starting iteration from a non-member of the set

 src/hb-set-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a989f3edec5864d5de8b217aa595c962d8fc4b0a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 13 22:12:36 2018 -0800

    Add hb_blob_copy_writable_or_fail()

    New API:
    - hb_blob_copy_writable_or_fail()

 docs/harfbuzz-sections.txt |  1 +
 src/hb-blob.cc             | 25 +++++++++++++++++++++++++
 src/hb-blob.h              |  3 +++
 3 files changed, 29 insertions(+)

commit 9046e924421869bf167b52cd394e868796091f62
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 13 22:07:12 2018 -0800

    [subset] Rename constructor to hb_subset_input_create_or_fail()

    To signify that unlike rest of library, returns nullptr on failure.

 src/hb-subset-input.cc      | 6 ++----
 src/hb-subset.h             | 2 +-
 test/api/test-subset-glyf.c | 3 ++-
 test/api/test-subset.c      | 7 +++++--
 util/hb-subset.cc           | 2 +-
 5 files changed, 11 insertions(+), 9 deletions(-)

commit 507804479a81672ec0c089313adad9fa308d78fd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 13 21:46:28 2018 -0800

    [use] Add dump-use-data

 src/Makefile.am                        |  4 ++++
 src/dump-use-data.cc                   | 38
 ++++++++++++++++++++++++++++++++++
 src/gen-use-table.py                   |  2 +-
 src/hb-ot-shape-complex-use-private.hh |  2 +-
 src/hb-ot-shape-complex-use-table.cc   |  2 +-
 src/hb-ot-shape-complex-use.cc         |  4 ++--
 6 files changed, 47 insertions(+), 5 deletions(-)

commit 15ba4fbe01433c8627f9e6a60106ca77d3e1ad4c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 13 21:41:51 2018 -0800

    [khmer] Add dump-khmer-data

 src/Makefile.am                          |   4 +
 src/Makefile.sources                     |   1 +
 src/dump-khmer-data.cc                   |  43 +++++++++++
 src/hb-ot-shape-complex-khmer-private.hh | 124
 +++++++++++++++++++++++++++++++
 src/hb-ot-shape-complex-khmer.cc         |  98 +-----------------------
 5 files changed, 173 insertions(+), 97 deletions(-)

commit effddd03bd6fb0aac14b46a16b281f3749e44780
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 13 21:38:15 2018 -0800

    [myanmar] Add dump-myanmar-data

 src/Makefile.am                            |   4 +
 src/Makefile.sources                       |   1 +
 src/dump-myanmar-data.cc                   |  43 ++++++++
 src/hb-ot-shape-complex-indic-private.hh   |   8 +-
 src/hb-ot-shape-complex-myanmar-private.hh | 171
 +++++++++++++++++++++++++++++
 src/hb-ot-shape-complex-myanmar.cc         | 138 +----------------------
 6 files changed, 225 insertions(+), 140 deletions(-)

commit c0e45b60a001a45c8ed1f12af8f2f222161eca6a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 13 21:23:38 2018 -0800

    [indic] Rename print-indic-table to dump-indic-data

    Makes more sense given what this prints, err, dumps.

 src/Makefile.am                                  | 8 ++++----
 src/{print-indic-table.cc => dump-indic-data.cc} | 0
 2 files changed, 4 insertions(+), 4 deletions(-)

commit 9b878bd2165236b067d59410673cf5cc54968fa7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 13 21:22:47 2018 -0800

    [indic] Explicitly number indic_position_t

    So it's easier to cross-reference from output of print-indic-table.

 src/hb-ot-shape-complex-indic-private.hh | 32
 ++++++++++++++++----------------
 1 file changed, 16 insertions(+), 16 deletions(-)

commit 8634846a0a1049c42ea84ca34402957c981b4c73
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 13 21:18:00 2018 -0800

    More tweaking linker and linker flags

 src/Makefile.am | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit d830d3d2448b2248dff642c701b442e1260e2d85
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 13 19:01:03 2018 -0800

    [indic] Share some copy/pasta code

 src/hb-ot-shape-complex-indic-private.hh | 29
 +++++++++++++++++++++++++++--
 src/hb-ot-shape-complex-indic.cc         | 27 ---------------------------
 src/hb-ot-shape-complex-khmer.cc         | 30
 ++++++++----------------------
 src/hb-ot-shape-complex-myanmar.cc       | 19 ++-----------------
 4 files changed, 37 insertions(+), 68 deletions(-)

commit 397ed53e55b9450742867a43d164b498ec735f50
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 13 18:54:26 2018 -0800

    [indic] Add print-indic-table

 src/Makefile.am                          |  14 ++-
 src/hb-ot-shape-complex-indic-private.hh | 185
 ++++++++++++++++++++++++++++++
 src/hb-ot-shape-complex-indic.cc         | 187
 -------------------------------
 src/print-indic-table.cc                 |  43 +++++++
 4 files changed, 239 insertions(+), 190 deletions(-)

commit fd0bde6325a7dfe3ba54b683646ca0693c414446
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 13 16:35:30 2018 -0800

    [subset] Fix loca offsets

    Was writing source font's offsets. Ouch.

 src/hb-subset-glyf.cc | 30 +++++++++++-------------------
 1 file changed, 11 insertions(+), 19 deletions(-)

commit aeed082e282b97e40c2e8590bdd8818affc7de6c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 13 14:02:59 2018 -0800

    Another tweak at libstdc++ things

    To fix this warning:

    cc1: warning: command line option ‘-fno-threadsafe-statics’ is
    valid for C++/ObjC++ but not for C

 src/Makefile.am | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit c7d7c9898e22905888dc4304f6d8e79b55654174
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 13 14:00:14 2018 -0800

    [aat] Minor

 src/hb-aat-layout-morx-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2dbfeecf96c6993d42594f43133d945d67ddbdbc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 13 13:59:39 2018 -0800

    Minor

 src/hb-aat-layout-morx-table.hh | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

commit d5b33f2fe1603e894e21f45afb4c00c8d670fb5c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 13 13:50:50 2018 -0800

    [subset] hb_subset_input_t changes

 src/Makefile.sources        |   1 +
 src/hb-face.h               |   1 -
 src/hb-set.cc               |  14 +++---
 src/hb-subset-input.cc      | 109
 ++++++++++++++++++++++++++++++++++++++++++++
 src/hb-subset-plan.cc       |   2 +-
 src/hb-subset-private.hh    |  11 ++++-
 src/hb-subset.cc            |  40 ++--------------
 src/hb-subset.h             |  12 ++++-
 test/api/test-subset-glyf.c |   4 +-
 test/api/test-subset.c      |   2 +-
 util/hb-subset.cc           |  20 ++++----
 11 files changed, 153 insertions(+), 63 deletions(-)

commit 28e63a1287fd38a98eed6725c2f4d0820066b0d8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 13 13:39:50 2018 -0800

    Disable threadsafe static's for all libraries

    Even in libharfbuzz-subset, we still will handle our own threadsafety
    for statics.

 src/Makefile.am | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 7caddb51b1e69a2803f86756e2ce2acff685c7d0
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Feb 13 15:12:43 2018 +0330

    Specify the project name for coverity, trying to fix #785

 .travis.yml | 1 +
 1 file changed, 1 insertion(+)

commit b969a82e30f0ff7bf6b2ea2600ef170764774a8c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 12 20:51:26 2018 -0800

    Pass no-libstdc++ flags only to libraries suppressing it

 src/Makefile.am | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

commit 97a2f0320056b591d7a747022869fe9cd8ecc6e1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 12 18:51:10 2018 -0800

    [subset] Allocate bulk memory with malloc(), not calloc()

    We use calloc() to allocate simple structs and set them to zero.
    For bulk memory, use malloc() that doesn't zero.

 src/hb-subset-glyf.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 96f1f52ea3a42b27f59aecffe65c918295e53b3b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 12 18:48:51 2018 -0800

    Use hb_face_get_upem() instead of face->get_upem()

    Such that hmtx accelerator can be used from libharfbuzz-subset.

 src/hb-ot-cbdt-table.hh | 2 +-
 src/hb-ot-hmtx-table.hh | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 3d66f441cc4d4feb2fd4b03be9f764c91f4de8b2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 12 18:43:42 2018 -0800

    [subset] Remove unreachable code

    sanitizer.sanitize never return nullptr.

 src/hb-subset.cc | 4 ----
 1 file changed, 4 deletions(-)

commit 42040a273facc696d9a54fc4d89857665e87e3d1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 12 18:41:36 2018 -0800

    Allow libharfbuzz-subset to link to libstdc++

    We want to use it instead of reinventing hashmap...

    Also, don't change linker for ICU since libicu also uses libstdc++.

 src/Makefile.am        | 2 --
 src/check-libstdc++.sh | 3 ++-
 2 files changed, 2 insertions(+), 3 deletions(-)

commit 4af3c5e25822cc5a401837da547c75a17b7f7b48
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Feb 12 23:21:24 2018 +0330

    Move linker specifying to a better place

 src/Makefile.am | 15 +++++++--------
 1 file changed, 7 insertions(+), 8 deletions(-)

commit 8cf8b78faaf3e7ee261bdc44a1ad5a1973eab1a2
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 12 16:30:21 2018 -0800

    [subset] whitespace

 test/api/test-subset-cmap.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit d1a4d5616f792c6ad84bcc5011040167ddd7cc3f
Author: Rod Sheeter <rsheeter@google.com>
Date:   Mon Feb 12 16:25:32 2018 -0800

    output format 12 as enc 10 to match how Roboto did it

 src/hb-ot-cmap-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 89ee20f1a39ac78268b57a9aebe8e7428f9944bf
Author: Rod Sheeter <rsheeter@google.com>
Date:   Mon Feb 12 16:01:15 2018 -0800

    basic wiring for a (failing) cmap test

 test/api/Makefile.am                               |   2 +
 test/api/fonts/README                              |   1 +
 .../Roboto-Regular.abc.cmap-format12-only.ttf      | Bin 0 -> 2412 bytes
 .../fonts/Roboto-Regular.ac.cmap-format12-only.ttf | Bin 0 -> 2212 bytes
 test/api/hb-subset-test.h                          |   3 +-
 test/api/test-subset-cmap.c                        |  82
 +++++++++++++++++++++
 test/api/test-subset-glyf.c                        |   5 +-
 .../data/in-house/tests/myanmar-syllable.tests     |   1 -
 8 files changed, 87 insertions(+), 7 deletions(-)

commit afb1da3a1891b7c0fdd047bcb7b3bde86e830444
Author: Rod Sheeter <rsheeter@google.com>
Date:   Mon Feb 12 14:37:47 2018 -0800

    auto-completed the wrong gids_to_retain

 src/hb-subset-plan.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 1330edc4fe3ffbf18313d6432045606865c610c4
Author: Rod Sheeter <rsheeter@google.com>
Date:   Mon Feb 12 14:29:23 2018 -0800

    Use functions to get new gids. Avoid 0; fonttools drops it from cmap.

 src/hb-ot-cmap-table.hh | 24 ++++++++++++++++++------
 src/hb-subset-plan.cc   | 25 ++++++++++++++++++++-----
 src/hb-subset-plan.hh   |  5 +++++
 src/hb-subset.cc        |  2 +-
 4 files changed, 44 insertions(+), 12 deletions(-)

commit 1639bdd33122dc8e5522b95c37660273d1fc609e
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 12 13:40:42 2018 -0800

    [subset] Remove test-subset, testing is planned to be done at the
    table level here with test/subset covering the complete subsetting
    operation.

 test/api/Makefile.am   |  1 -
 test/api/test-subset.c | 73
 --------------------------------------------------
 2 files changed, 74 deletions(-)

commit 4cdd1b16c99f2681eb11d626c4408eebcc1672be
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 12 13:36:28 2018 -0800

    [subset] added todo in test-subset-glyf.

 test/api/test-subset-glyf.c | 2 ++
 1 file changed, 2 insertions(+)

commit 1714feef4f7ec9e758e65edcbe5d5591562f46ee
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 12 13:35:17 2018 -0800

    [subset] re-enable test-subset-glyf. Refactor to use common functions
    in hb-subset-test.h

 test/api/test-subset-glyf.c | 109
 +++++++++++---------------------------------
 1 file changed, 27 insertions(+), 82 deletions(-)

commit d8d8bd8405ec0db781c4c2bbb7ebd6ff520b3c2d
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 12 13:33:55 2018 -0800

    [subset] Add some helper functions for writing tests around
    subsetting.

 test/api/Makefile.am      |   2 +-
 test/api/hb-subset-test.h | 123
 ++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 124 insertions(+), 1 deletion(-)

commit e8318188c0e53a267a01c45b0fc8d29ad775738a
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 12 11:38:28 2018 -0800

    [subset] Fix loca generation, was previously writing the original
    glyph starting offset.

 src/hb-subset-glyf.cc | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit 0b94d590d971de0b44b0db941c7a3e095f15fbc9
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Mon Feb 12 16:45:36 2018 +0200

    Rename --with-stdcpp → --with-libstdc++

    Also improve wording a bit and fix make check in --with-libstdc++=yes.

 configure.ac    | 11 ++++++-----
 src/Makefile.am | 11 ++++++++---
 2 files changed, 14 insertions(+), 8 deletions(-)

commit a5713bc2cb4a3fd71d3bc94b9f155339b09eb71a
Author: Rod Sheeter <rsheeter@google.com>
Date:   Mon Feb 12 11:30:45 2018 -0800

    we love all our groups

 src/hb-ot-cmap-table.hh | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

commit 692f86e569847adb332186cbb08f344ebe41fa6c
Author: Rod Sheeter <rsheeter@google.com>
Date:   Mon Feb 12 11:29:23 2018 -0800

    drop GDEF, GPOS, GSUB, and dsig

 src/hb-subset.cc | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

commit 83e1ef92156d8688b96d14957efcdf7601768799
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 12 11:22:32 2018 -0800

    [subset] Set the new number of glyphs in maxp.

 src/hb-ot-maxp-table.hh |  5 +++++
 src/hb-subset.cc        | 37 ++++++++++++++++++++++++++++++++-----
 2 files changed, 37 insertions(+), 5 deletions(-)

commit 427f9e4b90bfadb8af13cbd27b7c3ee0153ca8b1
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 12 11:18:28 2018 -0800

    Don't force loca version to long.

 src/hb-subset-glyf.cc | 2 --
 1 file changed, 2 deletions(-)

commit 5df080bf155a12f98929b99438da492063ab9218
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 12 10:15:59 2018 -0800

    Destroy the subset plan at the end of subsetting.

 src/hb-subset.cc | 1 +
 1 file changed, 1 insertion(+)

commit 0301e5be286f5080ec34e9f30c75e73f28d0218b
Author: Rod Sheeter <rsheeter@google.com>
Date:   Mon Feb 12 10:12:11 2018 -0800

    Build a working cmap format 12

 src/hb-ot-cmap-table.hh | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

commit ebd31d376d63c9698c0eae34ed295558f7230918
Author: Rod Sheeter <rsheeter@google.com>
Date:   Mon Feb 12 10:10:08 2018 -0800

    subset for real

 src/hb-subset.cc | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

commit 62c7d677e8699143e55e7bfa0cc3c1db75f32506
Author: Rod Sheeter <rsheeter@google.com>
Date:   Mon Feb 12 10:09:35 2018 -0800

    C-style comments

 src/hb-open-file-private.hh | 15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)

commit 91f0d51f0525097fef6173046379a89414cb515f
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Feb 12 17:20:12 2018 +0330

    Fix symbol exporting issue on msys2 and ✅ bringing all the bots
    (#781)

 src/Makefile.am | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)

commit 133e17fe2335abb77f61dbf1cff1955c21334137
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Feb 12 15:24:22 2018 +0330

    Minor

 src/check-defs.sh | 1 +
 1 file changed, 1 insertion(+)

commit 16f5b53eec4c3238cf92438a17e6dc532e8a61f5
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Feb 12 15:18:13 2018 +0330

    Minor, don't skip the whole test when one .def file not found

 src/check-defs.sh | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit a9b650d38407f6f2a26d8386e801600b1004d5d6
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Feb 12 15:10:13 2018 +0330

    Apply check-defs.sh to -icu and -subset, toward mingw fix (#780)

 CMakeLists.txt    | 11 ++++++++---
 src/Makefile.am   | 21 ++++++++++++++++-----
 src/check-defs.sh | 12 +++++-------
 src/gen-def.py    |  9 ++++++---
 4 files changed, 35 insertions(+), 18 deletions(-)

commit 2efc8965506d8fd31934be1dba3322f922f3409d
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Feb 12 12:00:07 2018 +0330

    Add --with-stdcpp for ossfuzzer and mupdf use (#770)

 configure.ac    | 12 ++++++------
 src/Makefile.am | 14 +++++++++++++-
 2 files changed, 19 insertions(+), 7 deletions(-)

commit 82e04758c895ce2cd6bddde5f72e592c718fcb69
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Feb 12 11:56:32 2018 +0330

    minor

 .travis.yml | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 7daa2822f6320801dfed09782ae46687e7c8cbb3
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Feb 12 11:27:00 2018 +0330

    Add Travis based Coverity trigger (#778)

 .ci/trigger-coverity.sh | 13 +++++++++++++
 .travis.yml             | 14 ++++++++++++++
 2 files changed, 27 insertions(+)

commit 7747bdb11b0635738a14c099bfaf58461cadd79a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 11 19:12:52 2018 -0800

    Remove linker selection from hb-ucdn

    Since this is a convenience library, it's not actually linked. Or
    so I think.
    Hoping this might fix this Appveyor failure:

    https://ci.appveyor.com/project/harfbuzz/harfbuzz/build/job/9884jyb5vryja9pw

    Making all in hb-ucdn
    make[4]: Entering directory '/c/projects/harfbuzz/src/hb-ucdn'
      CC       libhb_ucdn_la-ucdn.lo
      GEN      libhb-ucdn.la
    /bin/sh: libhb_ucdn_la-ucdn.lo: command not found
    make[4]: *** [Makefile:404: libhb-ucdn.la] Error 127
    make[4]: Leaving directory '/c/projects/harfbuzz/src/hb-ucdn'
    make[3]: *** [Makefile:2548: all-recursive] Error 1
    make[3]: Leaving directory '/c/projects/harfbuzz/src'
    make[2]: *** [Makefile:1382: all] Error 2
    make[2]: Leaving directory '/c/projects/harfbuzz/src'
    make[1]: *** [Makefile:486: all-recursive] Error 1
    make[1]: Leaving directory '/c/projects/harfbuzz'
    make: *** [Makefile:418: all] Error 2

 src/hb-ucdn/Makefile.am | 11 -----------
 1 file changed, 11 deletions(-)

commit 90d1c740c370b97dfff52420db013ed50075b984
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 11 19:08:59 2018 -0800

    Add MSVC to no-visibility list

 src/hb-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0db6c6f214a83ffeeefb7c3b77476567e534facb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 11 18:28:10 2018 -0800

    Add Sun compiler to no-visibility as well

    Fixes https://github.com/harfbuzz/harfbuzz/pull/776

 src/hb-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit d33ba163611c42acd0125472191ea40745f905eb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 11 18:26:41 2018 -0800

    Fix more warnings

 test/api/test-buffer.c | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

commit dde6448379c9eeb0fc7cc476688002be661229b8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 11 18:24:22 2018 -0800

    Another try at fixing multiple-defintion of NullPool

    This one might do it...

 src/hb-open-type-private.hh | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit b5f25844fbdd3167051c8d3586b404ae7f077b3b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 11 19:49:18 2018 -0600

    [docs] Minor update

 docs/harfbuzz-sections.txt | 4 ++++
 1 file changed, 4 insertions(+)

commit 41906cd5efc2fe17f5fff3fa5fe8488e0cdc6399
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 11 19:46:06 2018 -0600

    [subset] Another fixup

    I broke this in c31fcf4c58d96eb7d9781a986991b1a79ac7be44

 src/hb-ot-cmap-table.hh  | 2 +-
 test/subset/run-tests.py | 1 +
 2 files changed, 2 insertions(+), 1 deletion(-)

commit cd32177a322b5fd70c92f67f21b64686bf5d5533
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 11 19:34:05 2018 -0600

    Try at fixing multiple-definition of NullPool

    If we don't have visibility, make NullPool static.

 src/hb-open-type-private.hh | 8 +++++++-
 src/hb-ot-layout.cc         | 2 ++
 src/hb-private.hh           | 4 +---
 3 files changed, 10 insertions(+), 4 deletions(-)

commit 3d421ce30713582484471baba76470c84dabc118
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 11 19:01:44 2018 -0600

    [subset] Use auto_array_t where it does make sense

    Better fix for https://github.com/harfbuzz/harfbuzz/pull/775

 src/hb-subset-plan.cc | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 9aa2eb61e6cb3e4308140bed8a8531877ffd6adf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 11 19:00:42 2018 -0600

    Minor

 src/hb-ot-cmap-table.hh | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

commit ae6d0259b4f075885070f833d0f2a96333bf4af3
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Feb 11 15:40:55 2018 +0330

    Install fonttools on two bots and enable cmake hb-subset test (#777)

 .circleci/config.yml       | 6 ++++--
 test/subset/CMakeLists.txt | 8 ++++----
 2 files changed, 8 insertions(+), 6 deletions(-)

commit c8d4c2e32f1cea610a9c91dc6b0c32e9ffe84f20
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Feb 11 13:15:44 2018 +0330

    Initialize bad_indices on hb-subset (#775)

 src/hb-subset-plan.cc | 1 +
 1 file changed, 1 insertion(+)

commit 5845e5ca3bac21c0b03e71eab282b02fb7e868a4
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Feb 11 12:03:33 2018 +0330

    fix gobject compile issue (#773)

 src/hb-gobject-structs.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 9b5af3ec7f80a7793d5d3891e762d83026de0a5b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Feb 10 21:50:26 2018 -0600

    [gpos] Adjust mark attachment heuristic

    Hopefully it...
    fixes https://github.com/harfbuzz/harfbuzz/issues/740

 src/hb-ot-layout-gpos-table.hh | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

commit 70b06cc6e71e15f0d7550f67b113eed5e6f30a5f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Feb 10 16:13:06 2018 -0600

    More fixes

 util/hb-subset.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 6c1848b1e3b8969afc441f094b0d7b64b4b14933
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Feb 10 15:52:35 2018 -0600

    Misc warning fixes

 test/api/test-blob.c   |  2 +-
 test/api/test-buffer.c | 14 +++++++-------
 test/api/test-ot-tag.c |  2 +-
 3 files changed, 9 insertions(+), 9 deletions(-)

commit 7039803b51f23cb15dd7e12b105c379bd2e38d71
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Feb 10 15:47:50 2018 -0600

    Fix djgpp bot

 src/hb-subset-glyf.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit cdab20df1e55da196ffc6bc00d580e5ef74c1975
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Feb 10 15:45:17 2018 -0600

    Minor

 src/hb-ot-layout.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 203b647530b1550388bb3ce2f67e3b17e019d3e4
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Feb 11 01:00:03 2018 +0330

    Favor use of static instead HB_INTERNAL

 src/hb-subset-glyf.cc | 8 ++++----
 src/hb-subset-plan.cc | 4 ++--
 src/hb-subset.cc      | 2 +-
 3 files changed, 7 insertions(+), 7 deletions(-)

commit 4c5bdb4b39a723b624346d9b9ff9ace964fff0fe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Feb 10 15:40:54 2018 -0600

    [test] Disable test-subset-glyf for now

 test/api/test-subset-glyf.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 43314ff4c05076decbd1eb07ed78f732b6ebcba9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Feb 10 15:40:03 2018 -0600

    More fixes

    test-subset-glyf still failing. No idea why :(

 src/hb-subset.cc            |  3 +--
 test/api/test-subset-glyf.c | 26 ++++++++++++++++----------
 2 files changed, 17 insertions(+), 12 deletions(-)

commit a981d798eab41b6a7c6484776f04fe178bd536ba
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Feb 10 15:17:28 2018 -0600

    Fix more build issues

    Hopefully most bots come back with this...

 src/check-libstdc++.sh   |  5 +++--
 src/check-symbols.sh     |  2 +-
 src/hb-buffer.h          |  1 -
 src/hb-gobject-structs.h |  6 ++++++
 src/hb-subset-plan.cc    | 10 +++++++---
 src/hb-subset.cc         |  6 +++---
 6 files changed, 20 insertions(+), 10 deletions(-)

commit 6c4ca6135a2ce846431b0ede6a288d3b2f97167e
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Feb 11 00:42:06 2018 +0330

    Hide more symbols of hb-subset (#771)

 src/hb-subset-plan.cc | 2 +-
 src/hb-subset.cc      | 6 +++---
 2 files changed, 4 insertions(+), 4 deletions(-)

commit c31fcf4c58d96eb7d9781a986991b1a79ac7be44
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Feb 10 14:20:10 2018 -0600

    [subset] Replace auto_array with prealloced_array

    auto_array has constructor/destructor. Cannot be used in POD object,
    as the clang
    bots all noticed...

 src/hb-ot-cmap-table.hh |  8 ++++----
 src/hb-subset-glyf.cc   |  6 +++---
 src/hb-subset-plan.cc   | 23 +++++++++++------------
 src/hb-subset-plan.hh   |  9 +++------
 4 files changed, 21 insertions(+), 25 deletions(-)

commit 931d67900ee6d96b5962a475c1b71a58b821bcba
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Feb 10 14:11:16 2018 -0600

    Fix some other bots

 src/hb-subset-glyf.cc | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

commit 4011d885b7fca87c717fdaa4bd0318a42308865a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Feb 10 14:09:06 2018 -0600

    [util] Remove use of ssize_t which was failing on MSVC

 util/hb-subset.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit bfa871634ce9ef9f4ed18348d898686952d6cbe3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Feb 10 13:37:28 2018 -0600

    Minor

 src/hb-subset-glyf.hh | 2 +-
 src/hb-subset-plan.hh | 2 +-
 src/hb-subset.cc      | 3 +--
 src/hb-subset.h       | 2 +-
 4 files changed, 4 insertions(+), 5 deletions(-)

commit 844f48ea9a72d28e2c088497f6c403c54e1751a8
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Feb 10 23:13:12 2018 +0330

    Fix symbol exporting and libstdc++ linkage of hb-subset (#769)

 CMakeLists.txt          |  6 ++----
 src/Makefile.am         |  3 +++
 src/check-defs.sh       |  2 +-
 src/check-libstdc++.sh  | 20 +++++++++++---------
 src/check-symbols.sh    | 28 +++++++++++++++-------------
 src/hb-subset-glyf.cc   |  8 ++++----
 src/hb-subset-glyf.hh   |  2 +-
 src/hb-subset-plan.cc   |  4 ++--
 src/hb-subset-plan.hh   |  8 ++++----
 src/hb-subset.cc        |  2 +-
 src/hb-ucdn/Makefile.am | 11 +++++++++++
 11 files changed, 55 insertions(+), 39 deletions(-)

commit 91519c6a5b130ced569cedc3710ab395b663240d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Feb 10 13:35:17 2018 -0600

    [aat] Add buffer messages

 src/hb-aat-layout-morx-table.hh | 8 ++++++++
 1 file changed, 8 insertions(+)

commit af274507c4f4c5a582543affa71d81a87d6d9151
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Feb 10 13:25:49 2018 -0600

    Minor

 src/hb-private.hh | 15 ++++++---------
 1 file changed, 6 insertions(+), 9 deletions(-)

commit 570d523761b23a3c668d9071712d5f10944d21fc
Merge: 71130a20 d18decd2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Feb 10 13:24:22 2018 -0600

    [subset] Merge remote-tracking branch 'googlefonts/master'

commit 71130a20fae7c256b0ab1aa397cc1ac2d11dd487
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Feb 10 13:15:57 2018 -0600

    Replace Supplier.advance with Supplier::operator+=

 src/hb-open-file-private.hh        |  4 ++--
 src/hb-open-type-private.hh        |  7 ++++---
 src/hb-ot-layout-common-private.hh |  4 ++--
 src/hb-ot-layout-gsub-table.hh     | 10 +++++-----
 4 files changed, 13 insertions(+), 12 deletions(-)

commit d0f3e7f59719bdb6a2105ee85a8f3ee799741dab
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Feb 10 12:45:28 2018 -0600

    [util] Use setlinebuf() if present

    To work around mysterious bug on OS X.

    Fixes https://github.com/harfbuzz/harfbuzz/issues/727

 configure.ac    |  6 ++----
 util/options.cc | 12 ++++++++++--
 2 files changed, 12 insertions(+), 6 deletions(-)

commit ad575a5f47a51ee553710873ac2672479b76ba5e
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Feb 10 19:50:11 2018 +0330

    Fix cast warnings on clang (#768)

 src/hb-open-type-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit d18decd2013f24f315dbd3b15cdd80c5a734e7e9
Author: Garret Rieger <grieger@google.com>
Date:   Fri Feb 9 18:41:21 2018 -0800

    In glyf subsetting add suport for writing out a short loca table
    when possible.

 src/hb-subset-glyf.cc | 42 +++++++++++++++++++++++++++++++++---------
 1 file changed, 33 insertions(+), 9 deletions(-)

commit 9275bd03ea427eb607dde6a8e65f78a350b88323
Author: Rod Sheeter <rsheeter@google.com>
Date:   Fri Feb 9 17:33:34 2018 -0800

    First pass at building a cmap

 src/hb-ot-cmap-table.hh | 103
 ++++++++++++++++++++++++++++++++++++++++++++----
 src/hb-subset.cc        |  37 +++++++++--------
 2 files changed, 115 insertions(+), 25 deletions(-)

commit d2170d14780ad6f8e0d17a1e011445c3bcc20871
Author: Garret Rieger <grieger@google.com>
Date:   Fri Feb 9 17:24:16 2018 -0800

    Check for failures from add table.

 src/hb-subset.cc | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

commit 4816064c0e5464d032a55001a959a9abcef7f70e
Author: Rod Sheeter <rsheeter@google.com>
Date:   Fri Feb 9 17:14:37 2018 -0800

    add missing return

 src/hb-private.hh | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 0089443756cdcef0182e55cf8480b96a64d31cc7
Author: Garret Rieger <grieger@google.com>
Date:   Fri Feb 9 16:22:09 2018 -0800

    Keep a second set of glyph ids in subset plan which is sorted by
    glyph id and always has gid 0

 src/hb-subset-glyf.cc |  2 +-
 src/hb-subset-plan.cc | 34 +++++++++++++++++++++++++---------
 src/hb-subset-plan.hh |  1 +
 3 files changed, 27 insertions(+), 10 deletions(-)

commit 3bc81558d836e27e77bda0d6da9c71f530719579
Author: Garret Rieger <grieger@google.com>
Date:   Fri Feb 9 16:06:33 2018 -0800

    Formatting for hb-subset-plan.

 src/hb-subset-plan.cc | 51
 +++++++++++++++++++++++++++------------------------
 1 file changed, 27 insertions(+), 24 deletions(-)

commit 8cef3a61995317d3a5724221108647d7e66fe24a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 9 16:04:23 2018 -0600

    Try fixing build with Sun Studio

    Trying to fix:
    https://circleci.com/gh/harfbuzz/harfbuzz/6635

    Also part of:
    https://github.com/harfbuzz/harfbuzz/issues/630

 src/hb-private.hh | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

commit 86aa4b3ba7cd075f01614874dae88a771b8c54fd
Author: Garret Rieger <grieger@google.com>
Date:   Fri Feb 9 13:54:43 2018 -0800

    Return empty face on hb_subset failure instead of null. Plus some
    minor cleanups for _add_head_and_set_loca_version

 src/hb-subset.cc | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

commit d45f240e4e330cedad737fdb792b311c37a19e32
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 9 15:51:45 2018 -0600

    Typo

 src/hb-buffer.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 3b7aa651b4714b996816023a4929c0289065493f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 9 15:43:20 2018 -0600

    [docs] Improve UNSAFE_TO_BREAK docs

 src/hb-buffer.h | 17 +++++++++++++++--
 1 file changed, 15 insertions(+), 2 deletions(-)

commit 671f0a7733a496eb46b08dc88c3c46b804cdd895
Author: bungeman <bungeman@chromium.org>
Date:   Thu Feb 1 13:31:25 2018 -0500

    Documentation for HB_GLYPH_FLAG_UNSAFE_TO_BREAK.

    HB_GLYPH_FLAG_UNSAFE_TO_BREAK means that the glyph with this flag is
    somehow affected by the previous logical glyph (the previous index
    in the buffer if ltr and the next index if the buffer is rtl). If
    these two glyphs are separated by a break (line or otherwise) then the
    underlying text should be re-shaped on both sides up to corresponding
    position in the text of some glyph not marked with this flag.

 src/hb-buffer.h | 6 ++++++
 1 file changed, 6 insertions(+)

commit 1582eabee6017839518b821ef93a329a0a86a453
Author: Garret Rieger <grieger@google.com>
Date:   Fri Feb 9 12:52:08 2018 -0800

    Update head table with loca format selected by glyf+loca subsetting.

 src/hb-subset-glyf.cc |  7 +++----
 src/hb-subset-glyf.hh |  1 +
 src/hb-subset.cc      | 37 +++++++++++++++++++++++++++++++++++--
 3 files changed, 39 insertions(+), 6 deletions(-)

commit 335bbaa66f66e86d417cc123a2bf397e8b834f64
Author: Garret Rieger <grieger@google.com>
Date:   Fri Feb 9 10:55:15 2018 -0800

    Remove uneeded code in hb-subset.

 src/hb-subset.cc | 19 -------------------
 1 file changed, 19 deletions(-)

commit 3346ba9cd5198d27c7416b8c71fecb6c8d3cb335
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 9 11:05:17 2018 -0600

    [test/text-rendering-tests] Update from upstream

 .../text-rendering-tests/fonts/TestMORXTwentysix.ttf  | Bin 3260 ->
 3252 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)

commit 1cd98d05e07498653ba60a68b6342d1a90429eba
Author: Rod Sheeter <rsheeter@google.com>
Date:   Thu Feb 8 19:39:57 2018 -0800

    Create the groups for a cmap format12. Does not yet build the
    actual table.

 src/hb-ot-cmap-table.hh | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

commit 59c658c8d53481990fe0efa66422353d0687474b
Author: Rod Sheeter <rsheeter@google.com>
Date:   Thu Feb 8 19:22:47 2018 -0800

    capture codepoints sorted so we can use them for cmap later. one
    day we will have a map

 src/hb-ot-cmap-table.hh | 14 ---------
 src/hb-private.hh       | 61 +++++++++++++++++++++++++---------------
 src/hb-subset-glyf.cc   | 16 +++++------
 src/hb-subset-plan.cc   | 75
 ++++++++++++++++++++++++++++++++++---------------
 src/hb-subset-plan.hh   |  8 ++++--
 src/hb-subset.cc        | 29 ++++++++++++-------
 6 files changed, 123 insertions(+), 80 deletions(-)

commit 8431c38cdc05ddcddb1aa5fbb72a95446b500fd2
Author: Rod Sheeter <rsheeter@google.com>
Date:   Thu Feb 8 19:20:58 2018 -0800

    remove output noise

 util/hb-subset.cc | 1 -
 1 file changed, 1 deletion(-)

commit 5cca0c07afbe9ab4b28d333f6f853063ecd75aff
Author: Rod Sheeter <rsheeter@google.com>
Date:   Thu Feb 8 19:05:46 2018 -0800

    fix comment

 src/hb-open-file-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a19138e668e77a0c05da2ab065c5366c8359b377
Author: Rod Sheeter <rsheeter@google.com>
Date:   Thu Feb 8 19:03:41 2018 -0800

    comment the serialization of table

 src/hb-open-file-private.hh | 8 ++++++++
 1 file changed, 8 insertions(+)

commit 5a34114f9685680d4a8cdf85a8ac90172c5620d7
Author: Garret Rieger <grieger@google.com>
Date:   Thu Feb 8 18:32:24 2018 -0800

    Add an extra entry to the end of the loca table to identify the end
    of the last glyph's data.

 src/hb-subset-glyf.cc | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

commit aac7d962120aa137385324b33a173df4f19fd80b
Author: Garret Rieger <grieger@google.com>
Date:   Thu Feb 8 18:18:16 2018 -0800

    Apply per table subsetting while building the new face in hb_subset.

 src/hb-subset-glyf.cc |   1 +
 src/hb-subset.cc      | 105
 ++++++++++++++++++++++++++++++--------------------
 2 files changed, 65 insertions(+), 41 deletions(-)

commit 3e81832432a1cae0dc28242bb6ff279753effd27
Author: Garret Rieger <grieger@google.com>
Date:   Thu Feb 8 15:55:12 2018 -0800

    Disable subset tests on cmake for now.

 test/subset/CMakeLists.txt | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit 2f941053111d60433ab39cc70edd69c962896961
Author: Garret Rieger <grieger@google.com>
Date:   Thu Feb 8 15:55:12 2018 -0800

    Disable subset tests on cmake for now.

 test/subset/CMakeLists.txt | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit e081c9e8fc84843740c8a55b49403acc3fe4f0b7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 8 17:44:24 2018 -0600

    Oops!

 test/subset/run-tests.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 1c49afe179e7e1884ceeae1d93e50fa51f18f894
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 8 17:38:58 2018 -0600

    Whitespace

 test/subset/run-tests.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9682ef135f16cb3368b9c5970fdcec71301b687e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 8 17:35:57 2018 -0600

    Minor fixups

 CMakeLists.txt              | 2 +-
 src/hb-ot-cmap-table.hh     | 6 +++---
 src/hb-subset.cc            | 6 +++---
 test/api/hb-test.h          | 5 +++++
 test/api/test-subset-glyf.c | 4 ----
 test/api/test-subset.c      | 4 ----
 6 files changed, 12 insertions(+), 15 deletions(-)

commit 35eeb893efcdfa2bf6a136cd2911d564334e573c
Author: Garret Rieger <grieger@google.com>
Date:   Thu Feb 8 15:17:34 2018 -0800

    Don't include subset headers in libharfbuzz.

 CMakeLists.txt | 1 -
 1 file changed, 1 deletion(-)

commit 42234424a0fc43d298be082b4c7b1e288e94bbb6
Author: Garret Rieger <grieger@google.com>
Date:   Thu Feb 8 15:11:15 2018 -0800

    Fix include gaurds and include order in hb-subset-glyf and
    hb-subset-plan

 src/hb-subset-glyf.hh | 6 ++++--
 src/hb-subset-plan.cc | 2 +-
 src/hb-subset-plan.hh | 5 +++--
 3 files changed, 8 insertions(+), 5 deletions(-)

commit 0f3c756cbfe8a263ee388481acac7a24d9684c44
Author: Garret Rieger <grieger@google.com>
Date:   Thu Feb 8 14:59:32 2018 -0800

    Add CMake config for building a separate harfbuzz-subset.

 CMakeLists.txt          | 17 ++++++++++++++---
 test/api/CMakeLists.txt |  2 +-
 2 files changed, 15 insertions(+), 4 deletions(-)

commit d4d120ad79ff65c6987ca127da5d9ee30740b0b1
Author: Garret Rieger <grieger@google.com>
Date:   Thu Feb 8 14:26:18 2018 -0800

    Skip subset to fonttools comparison test if TTX is not present.

 test/subset/run-tests.py | 5 +++++
 1 file changed, 5 insertions(+)

commit 29d915284e46fb9be01221a88c9e969080daa1b2
Author: Garret Rieger <grieger@google.com>
Date:   Thu Feb 8 11:31:27 2018 -0800

    Whitespace

 test/subset/run-tests.py | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

commit f9420d9effcfb3464d4b99e54decb3d90e4a410d
Author: Garret Rieger <grieger@google.com>
Date:   Thu Feb 8 11:30:36 2018 -0800

    In the hb-subset to fontTools comparison, use ttx to compare the
    fonts. This allows for some binary differences such as re-ordered
    tables.

 test/subset/run-tests.py | 21 ++++++++++++++-------
 1 file changed, 14 insertions(+), 7 deletions(-)

commit 8e9fd6f1ab491519cf7205467bc5d20056fce99d
Author: Garret Rieger <grieger@google.com>
Date:   Wed Feb 7 19:01:21 2018 -0800

    Implement basic loca (long version only) subsetting.

 src/hb-subset-glyf.cc | 66
 +++++++++++++++++++++++++++++++++++----------------
 1 file changed, 46 insertions(+), 20 deletions(-)

commit f9c665fed1347f7af6d36ba129f9d174f4ac54dc
Author: Garret Rieger <grieger@google.com>
Date:   Wed Feb 7 16:53:18 2018 -0800

    Update interface to hb-subset-glyf to subset glyf and loca.

 src/hb-subset-glyf.cc | 10 +++++++---
 src/hb-subset-glyf.hh |  7 ++++---
 src/hb-subset.cc      |  7 +++++--
 3 files changed, 16 insertions(+), 8 deletions(-)

commit f2ceb5ee4d745e0e6e754f0b0ea16b29dbedbf1b
Author: Garret Rieger <grieger@google.com>
Date:   Wed Feb 7 16:47:31 2018 -0800

    Comment out failing assert in test-subset-glyf for now. Should be
    re-enabled once hb_subset is writing out a new face.

 test/api/test-subset-glyf.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 89dbebd4ad948ddad8e10323315a809c11d7cafa
Author: Garret Rieger <grieger@google.com>
Date:   Wed Feb 7 16:32:56 2018 -0800

    Add a basic test for glyf subsetting.

 test/api/Makefile.am                  |   4 +
 test/api/fonts/Roboto-Regular.abc.ttf | Bin 0 -> 2460 bytes
 test/api/fonts/Roboto-Regular.ac.ttf  | Bin 0 -> 2268 bytes
 test/api/test-subset-glyf.c           | 134
 ++++++++++++++++++++++++++++++++++
 4 files changed, 138 insertions(+)

commit 217ed5e3c885532fa8b332cc0d0f9cb4eef32e2b
Author: Garret Rieger <grieger@google.com>
Date:   Wed Feb 7 16:30:07 2018 -0800

    Cleanups in hb-subset-glyf and hb-subset-plan.

 src/hb-subset-glyf.cc | 30 +++++++++++++++---------------
 src/hb-subset-plan.hh |  2 +-
 2 files changed, 16 insertions(+), 16 deletions(-)

commit 13193a9b97302480cc11787787fa6826a97be4bb
Author: Rod Sheeter <rsheeter@google.com>
Date:   Wed Feb 7 16:09:52 2018 -0800

    move to the hb_face_t dest pattern

 src/hb-ot-cmap-table.hh |  7 ++++++-
 src/hb-subset.cc        | 28 +++++++++++++---------------
 2 files changed, 19 insertions(+), 16 deletions(-)

commit 0859a006695097c2a66a07284f3cc5b8de8edb05
Author: Rod Sheeter <rsheeter@google.com>
Date:   Wed Feb 7 15:59:36 2018 -0800

    sketch a subset<T> and call it for cmap. Add subset to cmap, albeit
    not working even for the msot basic case just yet

 src/hb-ot-cmap-table.hh | 18 ++++++++++++++++--
 src/hb-subset.cc        | 30 ++++++++++++++++++++++++++++++
 2 files changed, 46 insertions(+), 2 deletions(-)

commit c1ab95dd907b1c4a2e2de17447683fe803fe4087
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 8 17:22:07 2018 -0600

    Fix overflow in space fallback shaping

    Fixes https://bugs.chromium.org/p/chromium/issues/detail?id=657466

 src/hb-ot-shape-fallback.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b220b5a44425db387b2149c4904a43ab369a2d6a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 8 17:14:52 2018 -0600

    Avoid undefined-behavior in fallback mark positioning

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

 src/hb-ot-shape-fallback.cc | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

commit 3b68a03a1c5a23adbc73f4508009dd5b72bc9d81
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 8 17:00:37 2018 -0600

    [fuzzer] Minor

 src/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 194140d3f352b53b95757cccb7fff50425747cd6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 8 16:27:57 2018 -0600

    [util] Minor

 util/hb-subset.cc |  2 +-
 util/options.hh   | 10 ++++++++--
 2 files changed, 9 insertions(+), 3 deletions(-)

commit 5021ba2a2186a77d7d70be5602b960d14634d8b2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 8 15:11:28 2018 -0600

    [aat] Minor

 src/hb-aat-layout-common-private.hh | 10 +++++-----
 src/hb-aat-layout-morx-table.hh     |  7 +++----
 2 files changed, 8 insertions(+), 9 deletions(-)

commit 1242ad8424f5e8357fe6fd2143430aa8cfaf0954
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 8 14:10:01 2018 -0600

    [test/text-rendering-tests] Update from upstream

 test/shaping/data/text-rendering-tests/DISABLED          |   2 ++
 test/shaping/data/text-rendering-tests/Makefile.sources  |   2 ++
 .../text-rendering-tests/fonts/TestMORXTwentyfive.ttf    | Bin 0 ->
 3260 bytes
 .../text-rendering-tests/fonts/TestMORXTwentysix.ttf     | Bin 0 ->
 3260 bytes
 .../data/text-rendering-tests/tests/MORX-25.tests        |   9 +++++++++
 .../data/text-rendering-tests/tests/MORX-26.tests        |   2 ++
 6 files changed, 15 insertions(+)

commit 77ad8b5c8b3a9148cf2944abdd494618e642ee2c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 7 21:54:33 2018 -0600

    TODO

 src/hb-open-file-private.hh | 2 ++
 1 file changed, 2 insertions(+)

commit 941bbd9f257367f838e55d079751c6059974fe2f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 7 21:49:01 2018 -0600

    [subset] Fix thinko

 src/hb-open-file-private.hh | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit 931f8b7eb5e740ce81e5be6bfec60dbe3ac7ebc4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 7 21:42:03 2018 -0600

    Fix another thinko

 src/hb-open-file-private.hh | 2 +-
 src/hb-private.hh           | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 39b86695cf56736170c772424c9a8b75bca0254c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 7 21:37:03 2018 -0600

    [subset] Fix thinko

 src/hb-subset.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit eeffabc87572193a9e95f22647e80ae44e5a0089
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 7 21:34:05 2018 -0600

    Build

 src/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c479a59988b0cf3e557e22e97e1977962c803fa7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 7 21:13:10 2018 -0600

    [subset] Assemble font

 src/hb-open-file-private.hh | 50
 +++++++++++++++++++++++++++++++++++++++++++-
 src/hb-open-type-private.hh | 33 +++++++++++++++++++++++------
 src/hb-ot-map-private.hh    | 10 ++++-----
 src/hb-private.hh           | 20 +++++++++++-------
 src/hb-set-private.hh       |  8 +++----
 src/hb-subset.cc            | 51
 +++++++++++++++++++++++++++++++++++++++------
 test/api/test-subset.c      |  9 ++++++--
 7 files changed, 150 insertions(+), 31 deletions(-)

commit 34ac3548b7c9dbc57f277cf9a7a337cd1a8a04bb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 7 18:07:45 2018 -0600

    [set] Respect stride

    Ouch!

 src/hb-set-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 577becaf7b5ccd9de8ba533447f944427b9e4452
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 7 17:38:40 2018 -0600

    [subset] Fixup

 src/hb-subset.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c9acab3cfbe4a21e86ad309ebb452f103b1c1b04
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 7 17:12:55 2018 -0600

    Whitespace

 src/hb-open-file-private.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 7fd0b61dee18380c302009f8be9cd68dadab7308
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 7 16:44:52 2018 -0600

    [subset] Create new face and copy all tables to it

    test-subset fails now because subset-face does not know how to
    compile itself.

 src/hb-subset.cc | 37 ++++++++++++++++++++++++++-----------
 1 file changed, 26 insertions(+), 11 deletions(-)

commit 4e1abe2ce0b5163cbbbb8f8be0e9f7deba5ab2cb
Author: Garret Rieger <grieger@google.com>
Date:   Wed Feb 7 13:28:11 2018 -0800

    Refactor subset glyf to remove multiple calls to glyf.fini()

 src/hb-subset-glyf.cc | 52
 +++++++++++++++++++++++++++++----------------------
 1 file changed, 30 insertions(+), 22 deletions(-)

commit 0a5d1440f829f07454592adde9dd3aa93ad74442
Author: Garret Rieger <grieger@google.com>
Date:   Wed Feb 7 13:09:54 2018 -0800

    Add implementation of glyf subsetting.

 src/hb-subset-glyf.cc | 81
 +++++++++++++++++++++++++++++++++++++++++++++++----
 1 file changed, 76 insertions(+), 5 deletions(-)

commit 05d65baa1bb64664ba838993fd35f3899d52eb8d
Author: Garret Rieger <grieger@google.com>
Date:   Wed Feb 7 10:55:30 2018 -0800

    Extract glyf offset calculation into it's own method.

 src/hb-ot-glyf-table.hh | 26 ++++++++++++++++++--------
 1 file changed, 18 insertions(+), 8 deletions(-)

commit 6d7c6e19dc769cf9997b7c1f8a4598eb44ca0b3c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 7 14:09:56 2018 -0600

    Fix two undefined-behavior issues

    Fixes https://github.com/harfbuzz/harfbuzz/issues/761
    Fixes https://github.com/harfbuzz/harfbuzz/issues/762

 src/hb-ot-hmtx-table.hh              |  4 ++--
 src/hb-ot-layout-gsubgpos-private.hh | 10 +++++-----
 2 files changed, 7 insertions(+), 7 deletions(-)

commit b87cbe2bec1d589621ba143af59443f63230ffeb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 7 14:11:26 2018 -0500

    Try fixing build for platforms that have no visibility attributes

 src/hb-private.hh | 1 +
 src/hb-subset.cc  | 2 ++
 src/main.cc       | 2 ++
 3 files changed, 5 insertions(+)

commit f70100417c71cff071c119607a7b75dcead05a05
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 7 13:58:23 2018 -0500

    [test] Minor

 test/api/test-ot-tag.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6804b61d2e49fcf9eac9fa0b86497ba91b220bee
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 7 13:47:35 2018 -0500

    [subset] Add hb_subset_face

    It's a hb_face_t that has add_table() and in the future knows how to
    compile itself into a font blob.

 src/hb-private.hh |  9 ++++++
 src/hb-subset.cc  | 88
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 97 insertions(+)

commit af02812fc51812a7e2265a1100bbca1a5bf8af45
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 7 13:07:46 2018 -0500

    [subset] Change hb_subset API to remove hb_subset_face_t

 src/hb-subset-plan.cc    | 12 ++++++++---
 src/hb-subset-plan.hh    |  2 +-
 src/hb-subset-private.hh | 10 ----------
 src/hb-subset.cc         | 52
 ++++++++----------------------------------------
 src/hb-subset.h          | 25 ++++++-----------------
 test/api/test-subset.c   |  9 +++++----
 util/hb-subset.cc        | 12 ++++++-----
 7 files changed, 36 insertions(+), 86 deletions(-)

commit 2da0d87e769b2ced71e4281e336bdbca65de2b3f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 7 12:44:35 2018 -0500

    Remove NullPool visibility hack

    We keep a separate private NullPool in libharfbuzz-subset.so
    This can fire back later since now there are two separate null
    objects,
    and comparisons to the null pool can be confused.  Something to deal
    with when it comes up. Ouch!

 src/hb-open-type-private.hh | 4 +---
 src/hb-subset.cc            | 4 ++++
 2 files changed, 5 insertions(+), 3 deletions(-)

commit b95aa204ee284c47e63dc1e34b3c5b4bdf9e7ab7
Author: Rod Sheeter <rsheeter@google.com>
Date:   Wed Feb 7 09:37:06 2018 -0800

    glyph ids to retain should most likely keep the glyph id not the
    codepoint

 src/hb-subset-plan.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 91428713bd6975b3bbfbdce54701f6aef5457121
Author: Rod Sheeter <rsheeter@google.com>
Date:   Wed Feb 7 09:35:59 2018 -0800

    Remove \ns leftover from fprintf

 src/hb-subset-plan.cc | 4 ++--
 src/hb-subset.cc      | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

commit eb485bb9e90017abaf7dcdd7e39a82125d6807c3
Author: Rod Sheeter <rsheeter@google.com>
Date:   Wed Feb 7 09:32:36 2018 -0800

    Horrid hack to assign new gids. Use DEBUG_MSG over fprintf

 src/hb-subset-plan.cc | 27 +++++++++++++++++++++++----
 src/hb-subset-plan.hh |  5 +++++
 src/hb-subset.cc      |  9 +++++++++
 3 files changed, 37 insertions(+), 4 deletions(-)

commit 8b80cbb1dd13e2870a956825f5dafc4419b44200
Author: Rod Sheeter <rsheeter@google.com>
Date:   Wed Feb 7 09:31:31 2018 -0800

    Add a subset debug category

 src/hb-debug.hh | 13 +++++++++++++
 1 file changed, 13 insertions(+)

commit ee433d36fa544c3138718cc3f796b29e6df8a195
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 7 12:30:18 2018 -0500

    [aat] Set debug lookup_index

 src/hb-aat-layout-common-private.hh | 2 ++
 src/hb-aat-layout-morx-table.hh     | 3 +++
 2 files changed, 5 insertions(+)

commit 38df1ec8e0b457be9140c67e2c5c19153714d90e
Author: Rod Sheeter <rsheeter@google.com>
Date:   Wed Feb 7 07:58:58 2018 -0800

    TEMPORARY: remove HB_INTERNAL from null pool so subset builds again

 src/hb-open-type-private.hh | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 53aa0e95420c5c3bfe8af21cf7956535d35b06e6
Author: Garret Rieger <grieger@google.com>
Date:   Tue Feb 6 17:05:22 2018 -0800

    Add an instance of glyf::accelerator_t to hb-subset-glyf.

 src/hb-subset-glyf.cc | 13 ++++++++++---
 src/hb-subset-glyf.hh |  2 +-
 src/hb-subset.cc      |  4 +---
 3 files changed, 12 insertions(+), 7 deletions(-)

commit ef62dfed3fc7cfad7f7ce9292cb3bd1616f09384
Author: Rod Sheeter <rsheeter@google.com>
Date:   Tue Feb 6 17:12:17 2018 -0800

    add back assert_pod

 src/hb-subset-private.hh | 1 +
 1 file changed, 1 insertion(+)

commit d0ce3c66e2af2785203f7bbb1d4abca5c226045d
Author: Rod Sheeter <rsheeter@google.com>
Date:   Tue Feb 6 16:58:35 2018 -0800

    Resolve codepoints:glyph ids. Does not compile; undefined reference
    to OT::_hb_NullPool

 src/hb-subset-plan.cc    | 25 +++++++++++++++++++------
 src/hb-subset-plan.hh    |  2 +-
 src/hb-subset-private.hh | 17 +++++++++++++++--
 src/hb-subset.cc         | 13 ++++---------
 4 files changed, 39 insertions(+), 18 deletions(-)

commit 6a45e5df24ccc59c5a39bf42323c9b550f49e16d
Author: Garret Rieger <grieger@google.com>
Date:   Tue Feb 6 16:04:09 2018 -0800

    Add skeleton of hb-subset-glyf, call if from hb_subset(...)

 src/Makefile.sources  |  2 ++
 src/hb-subset-glyf.cc | 45 +++++++++++++++++++++++++++++++++++++++++++++
 src/hb-subset-glyf.hh | 37 +++++++++++++++++++++++++++++++++++++
 src/hb-subset.cc      | 18 ++++++++++++++++--
 4 files changed, 100 insertions(+), 2 deletions(-)

commit 31ec3c2ec41161c6ae75bc91d1c237bf2d245e37
Author: Garret Rieger <grieger@google.com>
Date:   Tue Feb 6 15:37:34 2018 -0800

    Create a subset plan in hb_subset.

 src/hb-subset.cc | 12 ++++++++++++
 1 file changed, 12 insertions(+)

commit 6c52d94fd11915b76e858bc45633ee60b8c1d8f4
Author: Rod Sheeter <rsheeter@google.com>
Date:   Tue Feb 6 15:31:14 2018 -0800

    capture the set of codepoints passed by --unicodes

 util/hb-subset.cc | 17 ++++++++++++++++-
 1 file changed, 16 insertions(+), 1 deletion(-)

commit 25e9173fe8446735f7e36ec963c7d3554c85631b
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 5 17:26:25 2018 -0800

    Make hb-subset-plan private.

 src/Makefile.sources                        |  2 +-
 src/hb-subset-plan.cc                       | 27
 ++++++++++++++++-----------
 src/{hb-subset-plan.h => hb-subset-plan.hh} | 22 +++++++++++++---------
 3 files changed, 30 insertions(+), 21 deletions(-)

commit af46a4da5a47dd6e0dd98e1740f18e93c337e689
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 5 17:14:46 2018 -0800

    Move definition of hb_subset_input into hb-subset-private.hh.

 src/Makefile.sources     |  1 +
 src/hb-subset-plan.cc    |  2 +-
 src/hb-subset-private.hh | 40 ++++++++++++++++++++++++++++++++++++++++
 src/hb-subset.cc         | 12 ++----------
 4 files changed, 44 insertions(+), 11 deletions(-)

commit 7481f0ce21489d2b19b2e33d05358736ddee20bf
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 5 16:05:12 2018 -0800

    Add codepoints to subset input.

 src/hb-subset.cc       | 24 ++++++++++++++++--------
 src/hb-subset.h        |  2 +-
 test/api/test-subset.c |  2 +-
 util/hb-subset.cc      |  2 +-
 4 files changed, 19 insertions(+), 11 deletions(-)

commit 1cfe650f020cf440bf157daa9907bffd6e35bd7a
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 5 15:22:30 2018 -0800

    Add a basic sketch of hb-subset-plan.

 src/Makefile.sources  |  2 ++
 src/hb-subset-plan.cc | 72
 +++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-subset-plan.h  | 49 +++++++++++++++++++++++++++++++++++
 3 files changed, 123 insertions(+)

commit 126ffdbe95020c04dc61413690febd8a56bf264f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 7 12:26:41 2018 -0500

    [aat] Fix debug compile

 src/hb-aat-layout-common-private.hh | 6 +++++-
 src/hb-aat-layout-morx-table.hh     | 2 +-
 2 files changed, 6 insertions(+), 2 deletions(-)

commit 8cb8bfd5b5eff75247cd447f3766294fdff2d644
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Feb 6 20:40:42 2018 +0330

    [test] Fix test-subset on old distros (#758)

    https://developer.gnome.org/glib/stable/glib-Testing.html#g-assert-cmpmem

 test/api/test-subset.c | 4 ++++
 1 file changed, 4 insertions(+)

commit 2971e9da49d6ac07f8a9a4e9b00e167b800a5c7f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 6 11:48:04 2018 -0500

    [aat] Adjust unsafe-to-break logic some more

    I believe I'm happy with it now.

 src/hb-aat-layout-common-private.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit f49256d80f19bc265e6a197719345313ba26f9d6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 6 11:39:36 2018 -0500

    [aat] Simplify unsafe-to-break logic

 src/hb-aat-layout-common-private.hh | 11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)

commit cc1e0840baed881f2bfd8468a9645bfe94f47303
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 6 10:20:48 2018 -0500

    [buffer] Tweak diff re glyph_flags again

    We expect the buffer to have no flags that the reference doesn't...
    Meh. Makes MORX tests pass now. Need to better define the behavior.

 src/hb-buffer.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit d49ae5154e0b069ffa2605ea3f66abb583319ec8
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Feb 6 13:48:10 2018 +0330

    Fix hb-buffer logic error

 src/hb-buffer.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 70e13ade81a2a09e17d75bdc7e3fe45d8ec9e2c6
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Feb 6 13:20:38 2018 +0330

    [subset] Fix Windows issue on endlines (#756)

 util/hb-subset.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f41b92134a276716b7e2d7ef54996b30f36a10a9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 5 19:51:09 2018 -0500

    Fix fallthrough compiler warning with gcc >= 7

    Fixes https://github.com/harfbuzz/harfbuzz/issues/755

 src/hb-private.hh | 3 +++
 1 file changed, 3 insertions(+)

commit b7b7f0ac59ec85b224e13d9e6c3c4063e731ad32
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 5 19:40:31 2018 -0500

    [test] Minor

 test/api/Makefile.am | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 0ff007daaa471d05cc0473beec4ba4d434b084b1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 4 20:22:07 2018 -0500

    [subset] Minor

 src/hb-subset.h | 7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)

commit fc1e82a5aef410138381bc8f5476dcff5679b464
Merge: ae39fc81 2ea22893
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 5 15:35:13 2018 -0800

    Merge pull request #754 from googlefonts/master

    Fix build for subsetting code.

commit 2ea228935d41b55fed45b7423b69bc15b42e3abc
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 5 15:10:01 2018 -0800

    ssize_t -> size_t

 util/hb-subset.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c25898eb54217e2a1c681233a6b9adcd7940652e
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 5 14:35:32 2018 -0800

    Switch to fopen() instead of open() in subset test. open wasn't
    compiling on windows.

 util/hb-subset.cc | 13 ++++++-------
 1 file changed, 6 insertions(+), 7 deletions(-)

commit fc04f11ce1999da042a39c5b271351223033292f
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 5 11:12:33 2018 -0800

    Rename HB_SUBSET_sources -> HB_SUBSET_CLI_sources to match what
    cmake is looking for.

 util/Makefile.am      | 3 +--
 util/Makefile.sources | 2 +-
 2 files changed, 2 insertions(+), 3 deletions(-)

commit e428f7b1c21e0a7d6b9af507d98031b8eebcbeb5
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 5 10:24:16 2018 -0800

    Wrap unistd.h include in ifdef.

 util/hb-subset.cc | 2 ++
 1 file changed, 2 insertions(+)

commit 5f6eb1256fb6c251303d3728fc27875fe7a9ffb8
Author: Garret Rieger <grieger@google.com>
Date:   Mon Feb 5 10:23:38 2018 -0800

    Add libharfbuzz-subset.la to linking when building api tests.

 test/api/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ae39fc8171b2c26d4ae64954a8055732c9241bcc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 4 20:18:52 2018 -0500

    [subset] Build hb-subset into separate libharfbuzz-subset.so

 src/Makefile.am           | 19 +++++++++++++------
 src/harfbuzz-subset.pc.in | 12 ++++++++++++
 util/Makefile.am          |  2 ++
 3 files changed, 27 insertions(+), 6 deletions(-)

commit eac20e459564134e0087497ed76b1c84195ad7e3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 4 20:08:50 2018 -0500

    [subset] Minor

 util/Makefile.am      |  2 +-
 util/Makefile.sources |  2 +-
 util/hb-subset.cc     | 10 +++++-----
 3 files changed, 7 insertions(+), 7 deletions(-)

commit 257022b1789f928975b04b5d214bbe9192e11997
Merge: 3615f344 edcd3b80
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 4 20:01:35 2018 -0500

    Merge pull request #745 from googlefonts/master

    Interface for hb_subset, skeleton for the hb-subset cli, and basic
    testing rigging.

commit 3615f344ec00059972d8ce75522022b5294764a7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 4 17:19:58 2018 -0500

    [test/text-rendering-tests] Update from upstream

 test/shaping/data/text-rendering-tests/DISABLED          |   1 +
 test/shaping/data/text-rendering-tests/Makefile.sources  |   3 ++-
 .../text-rendering-tests/fonts/TestMORXTwentythree.ttf   | Bin 0 ->
 1836 bytes
 .../data/text-rendering-tests/tests/MORX-23.tests        |   1 +
 4 files changed, 4 insertions(+), 1 deletion(-)

commit 54e6efadd6a30587736858d3fb497ed4e5e5f252
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 4 14:58:02 2018 -0500

    [aat] Fix unsafe-to-break

    At any position, if state is not zero, mark unsafe-to-break before,
    unless we can reason it safe.

    At any position, if there's an action entry for end-of-text, mark
    unsafe to break.

    Also changes buffer diff impl to allow for flag differences as long
    as the buffer glyph flags are superset of reference glyph flags.

    With this, all MORX tests pass.

 src/hb-aat-layout-common-private.hh | 31 +++++++++++++++++++++++++------
 src/hb-aat-layout-morx-table.hh     | 35
 +++++++++++++++++++++++------------
 src/hb-buffer.cc                    |  2 +-
 3 files changed, 49 insertions(+), 19 deletions(-)

commit edcd3b80e9617ec8c4c4a55536938fb510b6aeba
Author: Rod Sheeter <rsheeter@google.com>
Date:   Sun Feb 4 12:31:24 2018 -0800

    Actually call hb_subset

 util/hb-subset.cc | 51
 ++++++++++++++++++++++++++++++++++-----------------
 1 file changed, 34 insertions(+), 17 deletions(-)

commit 7b01761adef6f64f1139b30c985aa5f52314073a
Author: Garret Rieger <grieger@google.com>
Date:   Fri Feb 2 17:54:11 2018 -0800

    Add CMakeLists.txt to dist files for subset test.

 test/subset/Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit f83a43b56134188c2e1f3496d40ec0cd9109f250
Author: Garret Rieger <grieger@google.com>
Date:   Fri Feb 2 17:50:45 2018 -0800

    Add CMake configuration for all of the new subsetting code.

 CMakeLists.txt             | 14 ++++++++++++++
 src/Makefile.sources       |  9 +++++++--
 test/CMakeLists.txt        |  1 +
 test/subset/CMakeLists.txt |  9 +++++++++
 util/Makefile.am           |  2 +-
 util/Makefile.sources      |  2 +-
 6 files changed, 33 insertions(+), 4 deletions(-)

commit 5bc0cda179bca452145d4523eeba415986edb6e3
Author: Garret Rieger <grieger@google.com>
Date:   Fri Feb 2 17:49:14 2018 -0800

    Add missing unistd header to hb-subset.

 util/hb-subset.cc | 2 ++
 1 file changed, 2 insertions(+)

commit 06fe297f2a9fc6ee98179ddd26ef089b7fdb9e74
Author: Garret Rieger <grieger@google.com>
Date:   Thu Feb 1 18:36:15 2018 -0800

    Properly include subset test data files.

 test/subset/data/Makefile.am | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 058b1260ad1105d0d8d6bf21f8f65a336e735bd2
Author: Garret Rieger <grieger@google.com>
Date:   Thu Feb 1 18:22:14 2018 -0800

    Re-write hb-subset utility to use main-font-text driver.

 test/subset/run-tests.py |  15 +++---
 util/Makefile.sources    |   3 ++
 util/hb-subset.cc        | 131
 +++++++++++++++++++++++++----------------------
 3 files changed, 82 insertions(+), 67 deletions(-)

commit ede84ffa426edb950c4ec4f89833c85475a1c64f
Author: Garret Rieger <grieger@google.com>
Date:   Thu Feb 1 17:17:36 2018 -0800

    Whitespace

 util/hb-subset.cc | 36 ++++++++++++++++++------------------
 1 file changed, 18 insertions(+), 18 deletions(-)

commit 2763a2c5982c0db072697abe8ba01342d5977237
Author: Garret Rieger <grieger@google.com>
Date:   Thu Feb 1 17:14:51 2018 -0800

    Include subset test files in distribution.

 test/subset/Makefile.am      | 7 ++++++-
 test/subset/data/Makefile.am | 7 +++++++
 2 files changed, 13 insertions(+), 1 deletion(-)

commit 34fa7b3ad23b544b0914bc6002d60525224c68e1
Author: Garret Rieger <grieger@google.com>
Date:   Thu Feb 1 16:50:18 2018 -0800

    Whitespace

 src/hb-subset.h | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

commit 8c3a6727377895f18e1b5c7076404d8aede17176
Author: Garret Rieger <grieger@google.com>
Date:   Wed Jan 31 15:43:24 2018 -0800

    Get test-subset to pass.

 src/hb-subset.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 74d39ed2639857d5f1a90d9c0d864227a6482b40
Author: Garret Rieger <grieger@google.com>
Date:   Wed Jan 31 15:20:52 2018 -0800

    Attach add a hb_face_t to hb_subset_face_t.

 src/hb-subset.cc | 17 +++++++++++++----
 1 file changed, 13 insertions(+), 4 deletions(-)

commit 76b84c36b9560e132918adb4c0c5a0d9bdfb0978
Author: Garret Rieger <grieger@google.com>
Date:   Wed Jan 31 14:53:28 2018 -0800

    Whitespace

 test/api/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a2965f2ea5428c19be54f998ef9152c5ff6975ea
Author: Garret Rieger <grieger@google.com>
Date:   Wed Jan 31 14:53:09 2018 -0800

    Add a basic implementation of hb-subset to enable compilation of
    test-subset.

 src/hb-subset.cc       | 146
 +++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-subset.h        |   5 +-
 test/api/Makefile.am   |   1 +
 test/api/test-subset.c |  12 ++--
 4 files changed, 156 insertions(+), 8 deletions(-)

commit 38af23b8df1a84f24d379d27d1a1e20f9ce07f34
Author: Garret Rieger <grieger@google.com>
Date:   Wed Jan 31 11:32:23 2018 -0800

    Make the expected output for subsetting basics test be equal to the
    input file for now.

 .../expected/basics/Roboto-Regular.abc.default.62.ttf | Bin 1996 ->
 2460 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)

commit b59c08eb045db2b6c952de81510b8159a4f72fb1
Author: Garret Rieger <grieger@google.com>
Date:   Wed Jan 31 11:14:53 2018 -0800

    Add the beginning of a unit test for hb-subset

 test/api/test-subset.c | 67
 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 67 insertions(+)

commit e9d154ac8ddd2712a34c53c95a17e469f95e5b30
Author: Rod Sheeter <rsheeter@google.com>
Date:   Tue Jan 30 19:27:11 2018 -0800

    tweak test failure output. write to a temp file not stdout. test
    still fails because expected is not just an identical copy of input

 test/subset/run-tests.py | 41 +++++++++++++++++++++++++++----------
 util/hb-subset.cc        | 53
 +++++++++++++++++++++++++++++++++---------------
 2 files changed, 67 insertions(+), 27 deletions(-)

commit cf403e1a53381f293aceac5cdbe031bbb2a7af77
Author: Garret Rieger <grieger@google.com>
Date:   Tue Jan 30 18:40:23 2018 -0800

    Add hb-subset.h to hb.h

 src/hb.h | 1 +
 1 file changed, 1 insertion(+)

commit c02573516c05ac97acb243ef5dec26af86086ded
Author: Garret Rieger <grieger@google.com>
Date:   Tue Jan 30 18:39:41 2018 -0800

    Fix typo in hb-subset.h

 src/hb-subset.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 76351518ca9bc88aa6fbc975e1e35bd86432d652
Author: Garret Rieger <grieger@google.com>
Date:   Tue Jan 30 14:03:16 2018 -0800

    Remove basic subset test from XFAIL

 test/subset/data/Makefile.sources | 1 -
 1 file changed, 1 deletion(-)

commit b029b7c19a733a2a39860238ad300e6c4a3f7802
Author: Garret Rieger <grieger@google.com>
Date:   Mon Jan 29 13:31:49 2018 -0800

    Whitespace

 test/subset/data/Makefile.sources | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 0853260e997aded264f42bb369d4fcb39cccb7d6
Author: Garret Rieger <grieger@google.com>
Date:   Mon Jan 29 13:30:02 2018 -0800

    Configure automake to run the new subset tests.

 configure.ac                                        |  2 ++
 test/Makefile.am                                    |  2 +-
 test/subset/Makefile.am                             | 16 ++++++++++++++++
 test/subset/data/Makefile.am                        | 16 ++++++++++++++++
 test/subset/data/Makefile.sources                   | 10 ++++++++++
 test/subset/data/tests/{basics.txt => basics.tests} |  0
 6 files changed, 45 insertions(+), 1 deletion(-)

commit 5c63c37b2b5aba8bf2f8ff35b7da0d116ebfe8b5
Author: Garret Rieger <grieger@google.com>
Date:   Fri Jan 26 16:57:42 2018 -0800

    WIP test runner for subset tests.

 test/subset/run-tests.py | 64
 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 64 insertions(+)

commit cc46cd88a1b84b02694fa6d88c4286e93336f096
Author: Garret Rieger <grieger@google.com>
Date:   Fri Jan 26 14:25:39 2018 -0800

    In generate-expected-outputs read the test definition with utf8
    encoding.

 test/subset/generate-expected-outputs.py | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 4cdae914e2e2fff1ff91e2f42648a8acb82a5494
Author: Garret Rieger <grieger@google.com>
Date:   Fri Jan 26 13:57:48 2018 -0800

    Add basic directory structure for subsetter integration tests. Plus
    a utility for generating expected output files.

 .../basics/Roboto-Regular.abc.default.62.ttf       | Bin 0 -> 1996 bytes
 test/subset/data/fonts/Roboto-Regular.abc.ttf      | Bin 0 -> 2460 bytes
 test/subset/data/profiles/default.txt              |   0
 test/subset/data/tests/basics.txt                  |   8 ++
 test/subset/generate-expected-outputs.py           |  40 ++++++++++
 test/subset/subset_test_suite.py                   |  82
 +++++++++++++++++++++
 6 files changed, 130 insertions(+)

commit 9ccb8366f603a9e4a7a3c3f96420a19d4f6fb390
Author: Rod Sheeter <rsheeter@google.com>
Date:   Wed Jan 17 22:09:07 2018 -0800

    Start to sketch APIs for subsetting

 src/Makefile.am       |  2 ++
 src/Makefile.sources  |  4 +++
 src/hb-subset.cc      |  0
 src/hb-subset.h       | 88
 +++++++++++++++++++++++++++++++++++++++++++++++++++
 util/Makefile.am      |  3 ++
 util/Makefile.sources |  4 +++
 util/hb-subset.cc     | 61 +++++++++++++++++++++++++++++++++++
 7 files changed, 162 insertions(+)

commit 89b1906d990658c763f35113c8978a5e21bffc22
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 4 14:45:02 2018 -0500

    [aat] More adjustment to ContextualSubtable

    See comment.

    With this, MORX-20 passes if I turn --verify off.  Our unsafe-to-break
    logic is currently broken in presence of end-of-text actions.  That's,
    ugh, extra work to fix.  Let me try...

 src/hb-aat-layout-morx-table.hh | 8 ++++++++
 1 file changed, 8 insertions(+)

commit 8be596f0b76543e19644c0b77c1bcf4d9e783c2b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 4 14:40:17 2018 -0500

    [aat] In ContextualSubstitute, apply end-of-text action to last glyph

 src/hb-aat-layout-morx-table.hh | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

commit c0b1c7eb2eed67147adec3d2c9e02d01f279c8f4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 4 14:19:41 2018 -0500

    [aat] Remove unneeded check

 src/hb-aat-layout-morx-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit fcb8be1a385cb4432dc6064fba77939716d27a02
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 4 12:38:18 2018 -0500

    [configure] Fix wording

    Fixes https://github.com/harfbuzz/harfbuzz/issues/741

 configure.ac | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit aed32589af6d5fce3e68fe41865e258ea7eb2413
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 2 16:08:50 2018 -0500

    [aat] In ContextualSubtable, mark mark after substituting mark

    Fixes MORX-21.

 src/hb-aat-layout-morx-table.hh | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

commit fe5f9b1ae318939eaa23d0175a5eb7e1739177ac
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 2 15:53:25 2018 -0500

    [aat] Fix ContextualSubtable sanitization

    Fixes MORX-18, MORX-19, and MORX-22.

 src/hb-aat-layout-morx-table.hh | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit cf943f682bcdd73e3ad1f6108c1a1870b991d5e4
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Sun Feb 4 12:05:12 2018 +0200

    Correctly show documentation build status

    Correctly show if building documentation is enabled or not in
    configure
    summary.

    Fixes https://github.com/harfbuzz/harfbuzz/issues/741

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e8859fca3eafb5aab6d029563b31219ccca0d673
Author: Bruce Mitchener <bruce.mitchener@gmail.com>
Date:   Sun Feb 4 01:26:57 2018 +0700

    Enable use of atexit() on macOS and related platforms.

    The atexit() man page indicates that this is expected to behave
    in the expected way on unloading of shared libraries.

 src/hb-private.hh | 6 ++++++
 1 file changed, 6 insertions(+)

commit a89573770b4c0f9c444ad6499bec5dc022087a97
Author: Bruce Mitchener <bruce.mitchener@gmail.com>
Date:   Sun Feb 4 01:31:53 2018 +0700

    Use nullptr, not NULL.

 src/hb-aat-layout-common-private.hh | 2 +-
 src/hb-buffer-deserialize-json.rl   | 4 ++--
 src/hb-buffer-deserialize-text.rl   | 4 ++--
 3 files changed, 5 insertions(+), 5 deletions(-)

commit 07885e65adf1d3cb324de99501f9867f1a2553f8
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Feb 3 12:53:48 2018 +0330

    [cmake] unistd typo fix (#747)

 CMakeLists.txt | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

commit ccb0367dae4cbb9c8215dbf20ac7f9acfba2fa14
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Fri Feb 2 12:04:04 2018 -0500

    Let VS1 follow U+1031 MYANMAR VOWEL SIGN E

 src/hb-ot-shape-complex-myanmar-machine.rl               |   2 +-
 src/hb-ot-shape-complex-myanmar.cc                       |   5 +++++
 test/shaping/README.md                                   |  10 +++++-----
 test/shaping/data/in-house/Makefile.sources              |   1 +
 .../fonts/af3086380b743099c54a3b11b96766039ea62fcd.ttf   | Bin 0 ->
 1536 bytes
 test/shaping/data/in-house/tests/myanmar-syllable.tests  |   1 +
 6 files changed, 13 insertions(+), 6 deletions(-)

commit c6dbf6e77cae30772ffa110c651cb4287ab3b0dc
Author: punchcutter <zarijoscha@gmail.com>
Date:   Wed Jan 31 14:09:04 2018 -0800

    Allow optional ZWJ in virama terminated cluster

 src/hb-ot-shape-complex-use-machine.rl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit dae20fb5a79caad9a4af14137a961b60fe256235
Author: Bruce Mitchener <bruce.mitchener@gmail.com>
Date:   Wed Jan 31 20:16:08 2018 +0700

    Use nullptr instead of 0.

 src/hb-coretext.cc           | 4 ++--
 src/test-buffer-serialize.cc | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

commit 90218fa93cf8b5d4b192be12d31aed92d271d09e
Author: Bruce Mitchener <bruce.mitchener@gmail.com>
Date:   Wed Jan 31 20:44:45 2018 +0700

    Fix typos.

 src/hb-blob.cc                     | 2 +-
 src/hb-buffer-private.hh           | 2 +-
 src/hb-common.cc                   | 2 +-
 src/hb-coretext.cc                 | 2 +-
 src/hb-directwrite.cc              | 2 +-
 src/hb-ft.cc                       | 2 +-
 src/hb-graphite2.cc                | 2 +-
 src/hb-ot-layout-common-private.hh | 2 +-
 8 files changed, 8 insertions(+), 8 deletions(-)

commit 148ca61075d821a09e42e2c75fbc9be47cfc6003
Author: Bruce Mitchener <bruce.mitchener@gmail.com>
Date:   Wed Jan 31 22:24:51 2018 +0700

    [ot-layout] Fix nullptr dereference.

    If the `calloc` for `gsub_accels` or `gpos_accels` fails, then the
    unlikely branch afterwards can be taken, which frees up the
    `hb_ot_layout_t`, but since those fields can now be `nullptr`, then
    we don't want to dereference them.

 src/hb-ot-layout.cc | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

commit 0c66043a924fd114017a862d2cacd70f64b92370
Author: Bruce Mitchener <bruce.mitchener@gmail.com>
Date:   Wed Jan 31 20:24:27 2018 +0700

    [coretext] Fix memory leaks.

    In `reference_table`, if the data is empty and we return early,
    we still need to release the data object.

    In `hb_coretext_shape`, there two edge cases where an early
    return should release the attributed string.

 src/hb-coretext.cc | 9 +++++++++
 1 file changed, 9 insertions(+)

commit f0b700db394ccdff30ff83961a3e2ea9ff4ea472
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 30 11:16:51 2018 -0800

    1.7.5

 NEWS         | 9 +++++++++
 configure.ac | 2 +-
 2 files changed, 10 insertions(+), 1 deletion(-)

commit 585b5760987e1ddd31e11fc55a2ce55ddb5b1663
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 30 11:51:56 2018 -0800

    Fix distcheck

 test/shaping/data/in-house/Makefile.am             | 2 +-
 test/shaping/data/text-rendering-tests/Makefile.am | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit e89df6e1aee9cb6fe1268643ce19816808baf0c4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 30 10:58:44 2018 -0800

    [aat] Limit number of DontAdvance transitions

    Remove the faulty loop-detection logic. Use max-ops for breaking
    out of infinite loops or heavy work.

    https://twitter.com/behdadesfahbod/status/958065026262183936

 src/hb-aat-layout-common-private.hh | 33
 ++-------------------------------
 1 file changed, 2 insertions(+), 31 deletions(-)

commit e00743b47d25a2487b7f232a514a042e2962a089
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 29 10:07:05 2018 -0800

    [test/text-rendering-tests] Update from upstream

 test/shaping/data/text-rendering-tests/DISABLED          |   7 +++++++
 test/shaping/data/text-rendering-tests/Makefile.sources  |   7 +++++++
 .../data/text-rendering-tests/fonts/TestMORXEighteen.ttf | Bin 0 ->
 3256 bytes
 .../text-rendering-tests/fonts/TestMORXSeventeen.ttf     | Bin 0 ->
 1788 bytes
 .../data/text-rendering-tests/fonts/TestMORXSixteen.ttf  | Bin 0 ->
 1812 bytes
 .../data/text-rendering-tests/fonts/TestMORXTwenty.ttf   | Bin 0 ->
 3232 bytes
 .../text-rendering-tests/fonts/TestMORXTwentyone.ttf     | Bin 0 ->
 3244 bytes
 .../text-rendering-tests/fonts/TestMORXTwentytwo.ttf     | Bin 0 ->
 3256 bytes
 .../data/text-rendering-tests/tests/MORX-14.tests        |   1 +
 .../data/text-rendering-tests/tests/MORX-16.tests        |   1 +
 .../data/text-rendering-tests/tests/MORX-17.tests        |   1 +
 .../data/text-rendering-tests/tests/MORX-18.tests        |   4 ++++
 .../data/text-rendering-tests/tests/MORX-19.tests        |   2 ++
 .../data/text-rendering-tests/tests/MORX-20.tests        |   7 +++++++
 .../data/text-rendering-tests/tests/MORX-21.tests        |   1 +
 .../data/text-rendering-tests/tests/MORX-22.tests        |   1 +
 16 files changed, 32 insertions(+)

commit 29d901286e632fa4de5ea198cc455cae56bc09a8
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Jan 30 10:01:46 2018 +0330

    [cmake] Build src/ executables (#733)

 CMakeLists.txt | 40 ++++++++++++++++++++++++++--------------
 1 file changed, 26 insertions(+), 14 deletions(-)

commit 55cae0d72eecb5116008815b598481dd1404fc6a
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Jan 29 18:05:24 2018 +0330

    [test] Use 'otool -L' where ldd doesn't exist (macOS) (#732)

 src/check-libstdc++.sh | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

commit 2ec7dd1f6cb78ee6a0621aa98f18500d3318c90c
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Sun Jan 28 17:48:28 2018 -0500

    Fix Travis build on macOS (#731)

 .travis.yml       | 2 +-
 src/check-defs.sh | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

commit 12757b692905062fe0fc266a6230238b3492abfd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 26 18:14:05 2018 -0800

    Misc warning fixes

    Fixes https://github.com/harfbuzz/harfbuzz/issues/712

 src/hb-ot-layout-gsubgpos-private.hh | 9 ++++-----
 src/hb-ot-map-private.hh             | 1 -
 src/hb-ot-map.cc                     | 5 ++---
 3 files changed, 6 insertions(+), 9 deletions(-)

commit 85be365ed9238caf0283346ab4e5c5127096fc8a
Author: bungeman <bungeman@chromium.org>
Date:   Fri Jan 26 13:38:06 2018 -0500

    Use KernSubTableFormat2::rightClassTable

    Issue originally reported at http://cppfiles.com/chromium.txt .

    This fixes what appears to be a copy - paste issue which causes both
    KernSubTableFormat2::rightClassTable and the 'right' argument to
    KernSubTableFormat2::get_kerning to go unused.

 src/hb-ot-kern-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c41b7fc10588323b5d8c0007befa701994115f7b
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Jan 25 09:53:32 2018 +0330

    [cmake] Use -fvisibility-inlines-hidden instead (#726)

 CMakeLists.txt | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

commit 3d615766060e34a6e716c8737f651b6d6871ae85
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Jan 22 21:23:19 2018 +0330

    [cmake] fix symbol exporting issue on newer gcc (#724)

 CMakeLists.txt | 22 +++++++++++-----------
 1 file changed, 11 insertions(+), 11 deletions(-)

commit 8b60e7c2c301a24906d591c80c42fd5e506072d2
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Jan 22 18:37:26 2018 +0330

    [ci] minor, less hacks (#722)

 .circleci/config.yml | 20 ++++++--------------
 .travis.yml          |  8 ++++----
 CMakeLists.txt       | 11 +++++++----
 3 files changed, 17 insertions(+), 22 deletions(-)

commit aaf934de3b9e3447897b4da566655d6d0494e87b
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Jan 22 13:16:54 2018 +0330

    [ci] minor (#721)

 .circleci/config.yml | 4 ++--
 .travis.yml          | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

commit bd752db733e3d8c2c8773d831aebdd8a5cbb5e04
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Jan 22 13:08:35 2018 +0330

    [ci] unbreak bots with outdated freetype version (#718)

 .circleci/config.yml | 10 +++++++++-
 .travis.yml          | 10 +++++++++-
 2 files changed, 18 insertions(+), 2 deletions(-)

commit 19a93fcf1946ad29f07306a0b6c65377bdaa49f0
Author: Bruce Mitchener <bruce.mitchener@gmail.com>
Date:   Sun Jan 21 20:40:34 2018 +0700

    Fix typos.

 src/hb-blob.h   | 2 +-
 src/hb-buffer.h | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

commit 51ce3828e67a8ca7e4ea4b69e88c395e243bf01f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 19 18:36:39 2018 -0800

    [aat] Fix Ligature matching

    I hope... Makes "ffi" work with Zapfino. I'm not sure if doing it
    correctly though...

 src/hb-aat-layout-morx-table.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit bef509855c7a2c4400a947d2527d1dc048da1284
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 19 18:24:00 2018 -0800

    [aat] Add TODO

 src/hb-aat-layout-morx-table.hh | 1 +
 1 file changed, 1 insertion(+)

commit e6f283ed7db6f8e2f8016dcbf07e589c40976aa6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 19 18:08:56 2018 -0800

    [aat] Implement LigatureSubtable

    We form the Zapfino ligature now. Yay! No further testing done.

 src/hb-aat-layout-common-private.hh |  25 ++++++---
 src/hb-aat-layout-morx-table.hh     | 108
 +++++++++++++++++++++++++++++++++---
 2 files changed, 115 insertions(+), 18 deletions(-)

commit f07ce661a2056965c573c99bdb721c065563ea7b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 19 16:52:01 2018 -0800

    [aat] Embed a sanitizer context in hb_aat_apply_context_t

    For run-time checking.

 src/hb-aat-layout-common-private.hh | 22 ++++++++++++++++------
 src/hb-aat-layout.cc                | 16 ++++++++--------
 2 files changed, 24 insertions(+), 14 deletions(-)

commit 046690a4df0fdc93e3490210ef105f26057b1462
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 17 16:59:55 2018 -0800

    [aat] Add hb_aat_apply_context_t

 src/hb-aat-layout-common-private.hh | 23 +++++++++++++++++++++++
 src/hb-aat-layout-morx-table.hh     | 27 +++++++++++++--------------
 src/hb-aat-layout-private.hh        |  2 +-
 src/hb-aat-layout.cc                |  8 +++++---
 src/hb-ot-shape.cc                  |  3 +--
 5 files changed, 43 insertions(+), 20 deletions(-)

commit fd034490942c06e31cfb42f32023c78734f8aeeb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 17 16:46:51 2018 -0800

    Rename hb_apply_context_t to hb_ot_apply_context_t

 src/hb-aat-layout-morx-table.hh            | 16 ++++-----
 src/hb-aat-layout-private.hh               |  2 +-
 src/hb-aat-layout.cc                       |  2 +-
 src/hb-ot-layout-gpos-table.hh             | 48 ++++++++++++-------------
 src/hb-ot-layout-gsub-table.hh             | 24 ++++++-------
 src/hb-ot-layout-gsubgpos-private.hh       | 58
 +++++++++++++++---------------
 src/hb-ot-layout-private.hh                |  4 +--
 src/hb-ot-layout.cc                        | 16 ++++-----
 src/hb-ot-shape-complex-arabic-fallback.hh |  2 +-
 src/hb-ot-shape-fallback.cc                |  4 +--
 src/hb-ot-shape.cc                         |  2 +-
 11 files changed, 89 insertions(+), 89 deletions(-)

commit 94b49beee972fec98cbb80658df3d8491b45485d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 17 12:46:08 2018 -0800

    Whitespace

 src/hb-ot-head-table.hh | 20 +++++++++-----------
 src/hb-ot-post-table.hh | 10 +++++-----
 2 files changed, 14 insertions(+), 16 deletions(-)

commit e849b8a85bb66219db4d797d86ddd60ed7c26a2e
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Jan 19 16:12:24 2018 +0330

    [cmake] Always put test/api/CMakeLists.txt on distributions

 test/api/Makefile.am | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit c8f2a4f5b99d3be3079286817386b4185d35a545
Author: Cosimo Lupo <cosimo@anthrotype.com>
Date:   Thu Jan 18 22:49:40 2018 +0100

    hb-common.cc: Hatran script is right-to-left (#714)

    "Hatran is written from right to left horizontally"

    http://www.unicode.org/L2/L2012/12312-n4324-hatran.pdf

    This ancient script was added with Unicode 8.0.

    Also this spreadsheet (referenced in an inline comment in the
    source code) has it as RTL: http://goo.gl/x9ilM

 src/hb-common.cc | 1 +
 1 file changed, 1 insertion(+)

commit 00806149b9b591e4ec15996d3d56bdbd60687821
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Jan 19 01:12:31 2018 +0330

    Improve avoiding C++ linkage, definition creation and cmake tests
    (#710)

 .circleci/config.yml |  4 ++--
 CMakeLists.txt       | 46 ++++++++++++++++++++++++++--------------------
 configure.ac         |  3 +++
 src/Makefile.am      | 11 ++---------
 src/check-defs.sh    | 37 +++++++++++++++++++++++--------------
 src/gen-def.py       | 16 ++++++++++++++++
 6 files changed, 72 insertions(+), 45 deletions(-)

commit 9b693212a834a96252f4ebe0b006b85e9f35fc91
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Thu Jan 18 16:34:13 2018 -0500

    Update record-test.sh to the new directory layout (#716)

 test/shaping/README.md      | 11 ++++++-----
 test/shaping/record-test.sh | 17 +++++++++++++----
 2 files changed, 19 insertions(+), 9 deletions(-)

commit 461a605fdec3361a038d3715adf615353c4f91fa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 17 10:02:48 2018 -0800

    [aat] Allocate set dynamically

 src/hb-aat-layout-common-private.hh | 21 ++++++++++++---------
 1 file changed, 12 insertions(+), 9 deletions(-)

commit 4c4a9fc8617fed9bc1a7805c9aed294b4f6b66ea
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 17 09:47:50 2018 -0800

    Typo

    Fixes https://github.com/harfbuzz/harfbuzz/issues/711

 util/options.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 90f01bad637c8b1214f46d4df6d9552a6a728e29
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Jan 16 22:00:21 2018 +0330

    [cmake] don't link to libstdc++ (#707)

 CMakeLists.txt | 38 +++++++++++++++++++++++++-------------
 1 file changed, 25 insertions(+), 13 deletions(-)

commit 5e14e5f65d3dd1ed471ed73fab7e3207ae04e8fb
Author: rdb <rdb@users.noreply.github.com>
Date:   Tue Jan 16 17:04:33 2018 +0100

    [cmake] Fix for CMake 3.0 and below (#706)

 CMakeLists.txt | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit c97a7eca7f7b6fc1c50a4ac7fccf3fa2d777430e
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Jan 16 14:18:09 2018 +0330

    [cmake] Fix symbols visibility and enable check-symbols.sh test (#705)

 .circleci/config.yml |  2 +-
 CMakeLists.txt       | 22 ++++++++++++++--------
 2 files changed, 15 insertions(+), 9 deletions(-)

commit 60f84ef014f9280da24d5eb9ce833a7f37210242
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 15 20:46:58 2018 -0500

    Disable MORX-13/14

    Really, need better way to catch these :(.

 test/shaping/data/text-rendering-tests/DISABLED         | 2 ++
 test/shaping/data/text-rendering-tests/Makefile.sources | 4 ++--
 2 files changed, 4 insertions(+), 2 deletions(-)

commit 949f6af2897b8982c81a059ea98e1c29bbce4772
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 15 20:44:10 2018 -0500

    Disallow sanitize recursing into Extension subtables multiple times

    Fixes https://oss-fuzz.com/v2/testcase-detail/5216838347653120
    which is a stack overflow, not by way of infinite recursion, just
    being deep.  That's disallowed anyway, so catch it as it happens,
    not afterwards.

 src/hb-ot-layout-gsub-table.hh       | 5 ++---
 src/hb-ot-layout-gsubgpos-private.hh | 4 +++-
 2 files changed, 5 insertions(+), 4 deletions(-)

commit bcb6f1ae0a08e5c7af88a7affaad42a67c5adac5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 15 20:34:05 2018 -0500

    Whitespace

 src/hb-ot-layout-gsubgpos-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 12fffce10eb6ffebdedd655d0b1f10a99adf1808
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 15 15:41:51 2018 -0500

    [aat] Sanitize classTable in StateTable

 src/hb-aat-layout-common-private.hh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit e6263c7142ca22efd9a3c93353a513f475c1c48d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 15 15:37:55 2018 -0500

    [aat] Wire up table length to apply()

 src/hb-aat-layout-morx-table.hh | 17 +++++++++--------
 src/hb-aat-layout.cc            | 20 +++++++++++++++-----
 src/hb-open-type-private.hh     |  6 +++---
 3 files changed, 27 insertions(+), 16 deletions(-)

commit 679ae744d07db7746a983ece54c22635a9dc3cff
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 14 15:03:31 2018 -0500

    [aat] Towards implementing LigatureSubtable

 src/hb-aat-layout-morx-table.hh | 61
 +++++++++++++++++++++++++++++++++++++++--
 1 file changed, 58 insertions(+), 3 deletions(-)

commit c9e12a2b9b34d73d37def2261a5c1a7ef20b8349
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 13 17:05:12 2018 +0000

    Fix set initializer

 src/hb-set-private.hh | 1 +
 1 file changed, 1 insertion(+)

commit 54a1e250a839f030b43dbeba66cadc50ab5f90f6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 13 14:44:39 2018 +0000

    [test/text-rendering-tests] Update from upstream

 test/shaping/data/text-rendering-tests/Makefile.sources  |   2 ++
 .../data/text-rendering-tests/fonts/TestMORXFourteen.ttf | Bin 0 ->
 1816 bytes
 .../data/text-rendering-tests/fonts/TestMORXThirteen.ttf | Bin 0 ->
 1820 bytes
 .../data/text-rendering-tests/tests/MORX-13.tests        |   1 +
 .../data/text-rendering-tests/tests/MORX-14.tests        |   1 +
 5 files changed, 4 insertions(+)

commit 9009b341c46caaa81deae8ea55e6f7dd98565f59
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 12 12:04:53 2018 +0100

    [aat] Fix some struct sizes

    I hate it that with my compiler at least, it doesn't catch totally
    uncompilable
    statements in templates if they are not used...

 src/hb-aat-layout-common-private.hh | 2 +-
 src/hb-aat-layout-morx-table.hh     | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

commit 57051b4f672d7d9dd10c45cc95b1e50e32cd42a9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 12 11:42:25 2018 +0100

    [aat] Flush rest of buffer if state machine failed

 src/hb-aat-layout-common-private.hh | 12 +++++++++---
 src/hb-aat-layout-morx-table.hh     |  2 ++
 2 files changed, 11 insertions(+), 3 deletions(-)

commit 369dfab0f8b7f22338bbd7a58a27e2e02e1efc29
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 12 11:37:01 2018 +0100

    Minor

 docs/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 25364c4f0020a66bd6f4bce1656ea47f1093396d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 12 11:31:20 2018 +0100

    [aat] Fix symbol visibility

    Not sure why only one of the bots sees this as visible...

 src/hb-aat-layout-morx-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ee16b9d8d35af1e74369edf7b733886c4b743a68
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 12 11:28:09 2018 +0100

    Revert accidental morx enablement

 src/hb-ot-shape.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 44f0ee346f53c51ec4abccc81cc24abf6f018e85
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 12 11:27:51 2018 +0100

    Fix docs

 docs/harfbuzz-sections.txt | 1 +
 1 file changed, 1 insertion(+)

commit cdfa801ff4fe301d7bd41c9eee57cae75001ce4b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 12 11:12:20 2018 +0100

    [aat] Tweak previous commit

 src/hb-aat-layout-common-private.hh | 2 ++
 src/hb-ot-shape.cc                  | 4 ++--
 2 files changed, 4 insertions(+), 2 deletions(-)

commit f7600228a4b37e6f6b65394aceeeb14bf4133c23
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 12 11:09:21 2018 +0100

    [aat] Detect infinite-loops in state machine

 src/hb-aat-layout-common-private.hh | 36
 +++++++++++++++++++++++++++++-------
 1 file changed, 29 insertions(+), 7 deletions(-)

commit d514f1480cffb81850ef212155c66ee9e0383350
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 12 10:55:44 2018 +0100

    [circleci] cat test logs on failure on autotools-based builds

 .circleci/config.yml | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 1facef337862a0ceee9a8ac1d4dc94ff94fcb3b3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 12 10:53:52 2018 +0100

    [travis] On test failure, cat all .log files

 .travis.yml | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit cdd86bf3a28961e85a8918d77937587df313d47b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 12 10:51:51 2018 +0100

    [travis] Update cat'ing test-suite.log files

 .travis.yml | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 22d8c765e7b556601173a3e70f5bc9f310263a98
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 12 09:46:38 2018 +0100

    Disable C++11

    To better catch errors locally.

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit dd38db523a1001178bf4cae3721c098466534736
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 12 09:45:42 2018 +0100

    [aat] Fix more builds

    Maybe I should disable C++11 detection such that my compiler also
    catches
    these.  Doesn't look like we can switch to it for a while anyway...

 src/hb-aat-layout-common-private.hh |  2 +-
 src/hb-aat-layout-morx-table.hh     | 18 +++++++++---------
 2 files changed, 10 insertions(+), 10 deletions(-)

commit 72cb2b1f57ba79938c74e0406fc7457fce287f69
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 12 09:38:55 2018 +0100

    [aat] Fix builds

 src/hb-aat-layout-morx-table.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit e3a15d0c6d088963e61f7fbebe25e1096d8e2903
Author: Ting-Wei Lan <lantw@src.gnome.org>
Date:   Fri Jan 12 15:33:16 2018 +0800

    Update _POSIX_C_SOURCE to the latest version

    Defining _POSIX_C_SOURCE to an old version on FreeBSD can cause C99 to
    be disabled in libc.

 src/hb-blob.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c70d58f97da7dcbdd7ea72a44f39130a75a279f7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 12 00:08:22 2018 +0100

    [aat] Port RearrangementSubtable to StateTableDriver

 src/hb-aat-layout-morx-table.hh | 91
 ++++++++++++++++++++---------------------
 1 file changed, 44 insertions(+), 47 deletions(-)

commit 117cfe7bb7cef682eb151b94f1eb12363ba3af67
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 12 00:01:36 2018 +0100

    [aat] Add StateTableDriver and convert ContextualSubtable to it

 src/hb-aat-layout-common-private.hh | 51 ++++++++++++++++++++
 src/hb-aat-layout-morx-table.hh     | 93
 ++++++++++++++++++-------------------
 2 files changed, 95 insertions(+), 49 deletions(-)

commit 0d39ac224c680b1f0134b58e78391497fbe47370
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 11 22:47:08 2018 +0100

    [test/text-rendering-tests] Update README

 test/shaping/data/text-rendering-tests/README | 3 +++
 1 file changed, 3 insertions(+)

commit 17a66f133c7e523403b6c90b011fcf0acb6356c6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 11 22:46:19 2018 +0100

    [test] Disable MORX-12

    Ouch. I need a better workflow for this.

 test/shaping/data/text-rendering-tests/Makefile.sources | 1 -
 1 file changed, 1 deletion(-)

commit 1f1c85a54aad8a25a67041cbb9c4277d28c1c761
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 11 22:43:57 2018 +0100

    [aat] Remove 'mort' support

    It's dead, Jim!

 src/hb-aat-layout-common-private.hh |  55 +++++-----------
 src/hb-aat-layout-morx-table.hh     | 122
 ++++++++++--------------------------
 2 files changed, 46 insertions(+), 131 deletions(-)

commit 7e2fed6d73f89986e5777028cdcd24e3baf2f86c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 11 19:25:21 2018 +0100

    [aat] Allow DontAdvance

    Apparently CoreText does allow these.  To be done: detect infinite
    loops.

    Fixes MORX-12 test.

 src/hb-aat-layout-morx-table.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 1387fe8f9c474e88f86828733d4c01bd56f44432
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 11 19:22:37 2018 +0100

    [test/text-rendering-tests] Update from upstream

 test/shaping/data/text-rendering-tests/DISABLED          |   1 +
 test/shaping/data/text-rendering-tests/Makefile.sources  |   2 ++
 .../data/text-rendering-tests/fonts/TestMORXTwelve.ttf   | Bin 0 ->
 2200 bytes
 .../data/text-rendering-tests/tests/MORX-12.tests        |   3 +++
 4 files changed, 6 insertions(+)

commit 17f01aff910b3871d0a6c45fd4305304b7f68ab5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 11 18:54:49 2018 +0100

    [aat] Sanitize ContextualSubtable

 src/hb-aat-layout-common-private.hh | 23 +++++++++++++++++++----
 src/hb-aat-layout-morx-table.hh     | 34
 ++++++++++++++++++++++++----------
 2 files changed, 43 insertions(+), 14 deletions(-)

commit 9b82aa19d812e70b7fade4b7669a9ce27855951e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 11 18:19:42 2018 +0100

    More warning fixes

 src/hb-open-type-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 680cbc2eb325edc6b8562f39485b146aa56b3872
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 11 18:15:53 2018 +0100

    [aat] Sanitize StateTable

 src/hb-aat-layout-common-private.hh | 43
 ++++++++++++++++++++++++++++++++++---
 1 file changed, 40 insertions(+), 3 deletions(-)

commit 0e3b3379a04a67a22e44e17d6bf849359f4fca68
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 11 18:01:10 2018 +0100

    [aat] Actually fix d887f931485b715775e922516a4b0de5bb92c34f

 src/hb-aat-layout-morx-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 1eb98c9916c6cb447f999170840b7f37de4b282d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 11 17:59:03 2018 +0100

    [test/text-rendering-tests] Actually disable MORX-11

 test/shaping/data/text-rendering-tests/Makefile.sources | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 3f291ffd5a9480ac0f528eaedd43c7e9af738ee2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 11 17:57:46 2018 +0100

    [buffer] Fix compiler warnings

    line 323: Warning: info hides hb_buffer_t::info
    ...

 src/hb-buffer-private.hh | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

commit d887f931485b715775e922516a4b0de5bb92c34f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 11 17:41:34 2018 +0100

    [aat] Make bots happy

    Don't know why this is not caught by my compiler.  Looks like clang
    catches it
    while gcc doesn't.

    In file included from ../src/hb-aat-layout-morx-table.hh:31:
    ../src/hb-aat-layout-common-private.hh:523:30: error: no member named
    'static_size' in 'AAT::ContextualSubtable<AAT::MorxTypes>::EntryData'
      DEFINE_SIZE_STATIC (4 + T::static_size);
                                ~~~^

 src/hb-aat-layout-morx-table.hh | 2 ++
 1 file changed, 2 insertions(+)

commit f6be730994434e706cc27d68b796492d876e82b6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 11 15:23:24 2018 +0100

    [aat] In NoncontextualSubtable, handle MarkLast with end-of-line
    transition

    Fixes MORX-11 test.

 src/hb-aat-layout-morx-table.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 1d20d109a07bf9c775ab91dfbbb55f7bd80fd9d6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 11 15:18:22 2018 +0100

    [test/text-rendering-tests] Update from upstream

 test/shaping/data/text-rendering-tests/DISABLED          |   3 ++-
 test/shaping/data/text-rendering-tests/Makefile.sources  |   3 ++-
 .../data/text-rendering-tests/fonts/TestMORXEleven.ttf   | Bin 0 ->
 1624 bytes
 .../data/text-rendering-tests/tests/MORX-11.tests        |   1 +
 4 files changed, 5 insertions(+), 2 deletions(-)

commit f9be673814aeb2c8abab52a672598576c6ed20c2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 11 15:15:07 2018 +0100

    [aat] Implement ContextualSubtable

    Tested with Zapfino and text "2nd". Sascha will create tests later.

 src/hb-aat-layout-morx-table.hh | 70
 ++++++++++++++++++++++++++++++++++++++---
 1 file changed, 66 insertions(+), 4 deletions(-)

commit 335a9c1fe489db53549801b4996dd0f6f5eded62
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 11 14:50:47 2018 +0100

    [aat] Towards implementing ContextualSubtable

 src/hb-aat-layout-common-private.hh | 58 ++++++++++++++++++++++--
 src/hb-aat-layout-morx-table.hh     | 88
 ++++++++++++++++++++++++++-----------
 2 files changed, 117 insertions(+), 29 deletions(-)

commit 62348f647f7b1604e008dbed46a54eff245fc106
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 11 12:00:28 2018 +0100

    [aat] Implement end-of-text in state machine

    Passes MORX-10 test now.

 src/hb-aat-layout-morx-table.hh | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

commit fc405b7ca77088135cb7de11cb32c254b85272fd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 11 11:55:29 2018 +0100

    [test/text-rendering-tests] Update from upstream

 test/shaping/data/text-rendering-tests/DISABLED          |   1 +
 test/shaping/data/text-rendering-tests/Makefile.sources  |  11
 ++++++-----
 .../data/text-rendering-tests/fonts/TestMORXTen.ttf      | Bin 0 ->
 1620 bytes
 .../data/text-rendering-tests/tests/MORX-10.tests        |   1 +
 4 files changed, 8 insertions(+), 5 deletions(-)

commit 9adbd938fafe1de4e279489fc37ae33c900e22f0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 11 11:55:10 2018 +0100

    Minor

 src/hb-aat-layout-morx-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 4177f646aa60180f094e064a53e54c5402fe53c6
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Jan 11 15:43:23 2018 +0330

    [cmake] Update and unbreak (#700)

 test/shaping/CMakeLists.txt | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 94644d7ea4cf217e4d6c6ff57d65e1e20866ea6d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 11 11:49:07 2018 +0100

    [aat] Generate finegrained unsafe-to-break in state-machine!

    Neato.

 src/hb-aat-layout-morx-table.hh | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

commit 994eb7744c530bbaa5d6d8b8e07ca936e81aade8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 11 11:37:12 2018 +0100

    [buffer] Fix crash

 src/hb-buffer-serialize.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit d6076747ac6706b4d8361714d46aced9683c44a8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 11 10:51:46 2018 +0100

    [test/text-rendering-tests] Add DISABLED list

 test/shaping/data/text-rendering-tests/DISABLED | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

commit de02b5093c42a527ae67084b30943369ed59efe6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 11 10:48:42 2018 +0100

    [test/in-house] Add Makefile.sources

 test/shaping/data/in-house/Makefile.am      | 46
 ++---------------------------
 test/shaping/data/in-house/Makefile.sources | 46
 +++++++++++++++++++++++++++++
 2 files changed, 48 insertions(+), 44 deletions(-)

commit 7c32e01d04deaab511d41f5dec0dfd9fc0469f39
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 11 10:47:31 2018 +0100

    Minor

 src/Makefile.am                                  | 1 +
 src/Makefile.sources                             | 2 --
 test/shaping/data/text-rendering-tests/update.sh | 2 --
 util/Makefile.am                                 | 1 +
 util/Makefile.sources                            | 2 --
 5 files changed, 2 insertions(+), 6 deletions(-)

commit a5adc5aa84c03184fd1c8a486be80ff0af1f448c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 11 10:30:22 2018 +0100

    [test/text-rendering-tests] Update from upstream

    Also adds an update.sh script that does this automatically.

 test/shaping/data/text-rendering-tests/Makefile.am |  52
 +++------------------
 .../data/text-rendering-tests/Makefile.sources     |  51
 ++++++++++++++++++++
 .../text-rendering-tests/fonts/TestMORXEight.ttf   | Bin 0 -> 2184 bytes
 .../text-rendering-tests/fonts/TestMORXNine.ttf    | Bin 0 -> 1624 bytes
 .../data/text-rendering-tests/tests/MORX-5.tests   |  25 ++++++++++
 .../data/text-rendering-tests/tests/MORX-6.tests   |   1 +
 .../data/text-rendering-tests/tests/MORX-7.tests   |   1 +
 .../data/text-rendering-tests/tests/MORX-8.tests   |   3 ++
 .../data/text-rendering-tests/tests/MORX-9.tests   |   1 +
 test/shaping/data/text-rendering-tests/update.sh   |  48
 +++++++++++++++++++
 10 files changed, 136 insertions(+), 46 deletions(-)

commit c861daacc4255d41d2358868b917277422949dc9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 11 10:11:01 2018 +0100

    [test/text-rendering-tests] Add README and COPYING

 test/shaping/data/text-rendering-tests/COPYING     | 13 +++++++++++++
 test/shaping/data/text-rendering-tests/Makefile.am |  2 ++
 test/shaping/data/text-rendering-tests/README      |  4 ++++
 3 files changed, 19 insertions(+)

commit 14b4d84eef18bd54287c10ce44eaef4f642f6238
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 11 10:08:25 2018 +0100

    [aat] Fix RearrangementSubtable action

 src/hb-aat-layout-morx-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ea3e86c6401d41cf54d82692eccbf44c87be2fd5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 11 09:58:42 2018 +0100

    Minor

 test/shaping/data/Makefile.am                      | 4 ++++
 test/shaping/data/in-house/Makefile.am             | 4 ++++
 test/shaping/data/text-rendering-tests/Makefile.am | 4 ++++
 3 files changed, 12 insertions(+)

commit 800e4ae80232f022404be155afd497b0421a6a64
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 11 09:57:55 2018 +0100

    [aat] Mark state-machine-based lookup as completely unsafe-to-break

    To be improved later.

 src/hb-aat-layout-morx-table.hh | 2 ++
 1 file changed, 2 insertions(+)

commit ca42d961293a9e4dfd0817c1a02d454008583282
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 11 09:15:34 2018 +0100

    [aat] Implement RearrangementSubtable

 src/hb-aat-layout-common-private.hh |  89 ++++++++++++++++-
 src/hb-aat-layout-morx-table.hh     | 192
 +++++++++++++++++++++++++++++++-----
 src/hb-open-type-private.hh         |   2 -
 src/hb-private.hh                   |   7 +-
 4 files changed, 254 insertions(+), 36 deletions(-)

commit 5dbbd0fdb9a343554112a846b392803f11c13197
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Jan 11 12:33:22 2018 +0330

    Move the #define of _GNU_SOURCE to the top of hb-private.hh (#697)

    This fixes the build on Cygwin.

 src/hb-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 90e3c9e69e93e05d9fb534fd43b5c99cf58a7cb4
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Jan 11 12:31:05 2018 +0330

    [cmake] Fix hb-blob test (#699)

 CMakeLists.txt | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 1461965c2220cd957c26b3fe5835200e426bc715
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Jan 11 08:48:22 2018 +0330

    [test] Better tests output by converting stderr to stdout (#696)

    https://gitlab.kitware.com/cmake/cmake/issues/17630

 test/shaping/run-tests.py | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

commit ebb9b7d6335536804b50002fb83dd30da42a8ad5
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Jan 11 08:15:06 2018 +0330

    [test] Print shaping output on CI fails (#695)

 .circleci/config.yml      | 4 ++--
 test/shaping/run-tests.py | 8 ++++----
 2 files changed, 6 insertions(+), 6 deletions(-)

commit e24bea8e91ba9f447f1f7f252bdefacef1f83593
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Jan 10 23:51:56 2018 +0330

    [cmake] Another try on making sure feature testing is working (#691)

 .circleci/config.yml | 131
 ++++++++++++++++++++++++++++-----------------------
 CMakeLists.txt       |  17 ++++---
 2 files changed, 79 insertions(+), 69 deletions(-)

commit 746a37d5bdd2e965aa316e95ba5a7bad809d76a7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 10 16:47:47 2018 +0100

    [util] Replace setlinebuf

 util/options.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit ff2083c53eecc67c011b96b0b9a58331043e53cf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 10 13:54:36 2018 +0100

    [util] Set stdio files to line buffering

    So we can stream lines to hb-shape and read output.

 util/options.cc | 4 ++++
 1 file changed, 4 insertions(+)

commit 80fd5743200cbe221ae3adf057fe0e5ef54a894c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 10 11:09:53 2018 +0100

    [aat] Add Class subtable thingy

    From old 'mort' table.

 src/hb-aat-layout-common-private.hh | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

commit 71e0ed9cbad8438239dcedf1bcfa8e19b9dfdc89
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Jan 10 15:45:12 2018 +0330

    [cmake] Add header existence tests (#685)

 .circleci/config.yml        |  4 ++--
 CMakeLists.txt              | 53
 ++++++++++++++++++++++++++++++---------------
 test/shaping/CMakeLists.txt |  1 -
 3 files changed, 37 insertions(+), 21 deletions(-)

commit a073621b5dc2865a014821307128a8fdd1d7d992
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Jan 10 12:13:28 2018 +0330

    [cmake] Fix tests against latest changes (#690)

 test/shaping/CMakeLists.txt | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)

commit 0b22da954142ad7a1e949a56448cee4e836fff75
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Wed Jan 10 07:12:07 2018 +0200

    Improve HB_BUFFER_SERIALIZE_FLAG_NO_ADVANCES docs

    Add the note about absolute glyph positions from the commit message.

 src/hb-buffer.h | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 6db0b17c4ce56bd7477941e7a2fc85997c04588e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 10 05:40:43 2018 +0100

    [test] Move test handling to sundirectories

 configure.ac                                       |  3 +
 test/shaping/Makefile.am                           | 98
 +---------------------
 test/shaping/data/Makefile.am                      |  9 ++
 test/shaping/data/in-house/Makefile.am             | 58 +++++++++++++
 test/shaping/data/text-rendering-tests/Makefile.am | 60 +++++++++++++
 5 files changed, 131 insertions(+), 97 deletions(-)

commit 4c982b4867707fcd2259b344b06e5bba8dd0c1e3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 10 05:26:55 2018 +0100

    [test] Whitelist one more passing test

 test/shaping/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 188ee6e5eeef3c63c332cfa30795d37da1bc1682
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 10 05:13:47 2018 +0100

    Calculate anchor positions in float, then round

    Hoping to reduce rounding error, to make tests happier...
    No luck.

 src/hb-font-private.hh         |  6 ++++++
 src/hb-ot-layout-gpos-table.hh | 44
 +++++++++++++++++++++---------------------
 2 files changed, 28 insertions(+), 22 deletions(-)

commit 0b28e1199d62765db4e855756b96022e423dcc17
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 10 05:02:42 2018 +0100

    [test] Whitelist one more passing test

 test/shaping/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 7cdd6ab068500aa18de9a856bfbe730d0aac9a27
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 10 04:33:08 2018 +0100

    Round, instead of floor, when applying variations

    Hoping this would fix remaining text-rendering-tests failures,
    but so far no luck.

 src/hb-font-private.hh         | 2 +-
 src/hb-ot-layout-gpos-table.hh | 2 +-
 src/hb-private.hh              | 1 +
 3 files changed, 3 insertions(+), 2 deletions(-)

commit 6dc6f0c9f844a006b4518ce789e319fcef6e9680
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 10 04:12:35 2018 +0100

    [test] Whitelist one passing test

 test/shaping/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ec939761e4d1b2f825db715290d70e18b1c9dd12
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 10 03:56:43 2018 +0100

    Minor

 test/shaping/Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit c4eac531dfad55f691557a684b3a6bde83c4bcea
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 10 03:51:09 2018 +0100

    Minor

 test/shaping/Makefile.am | 1 -
 1 file changed, 1 deletion(-)

commit 285a0bd799426c544d896f8fbcc27f4613a28e9a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 10 03:49:32 2018 +0100

    [test] Another try

    Making cmake happy this time.

 test/shaping/Makefile.am | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 95b32b00557d6afcfc469f8dcc51d8bfa8243a00
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 10 03:48:09 2018 +0100

    [test] Fix text disabling

    Ouch, make!

 test/shaping/Makefile.am | 27 ++++++++++++++-------------
 1 file changed, 14 insertions(+), 13 deletions(-)

commit a938d105b8d6e2d654079ea7d89e2e3ef5e0aed4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 10 03:41:55 2018 +0100

    [test/text-rendering-tests] Disable failing tests

 test/shaping/Makefile.am | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

commit ed95d5e374a10770eb305dfa43a9f5b39933aac7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 10 03:38:52 2018 +0100

    [test/text-rendering-tests] Disable failing tests

 test/shaping/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 3b1e97f364e5ffdc08b52f889e3fea80a7e83e99
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 10 03:35:20 2018 +0100

    Add HB_BUFFER_FLAG_REMOVE_DEFAULT_IGNORABLES

    New API:
    HB_BUFFER_FLAG_REMOVE_DEFAULT_IGNORABLES
    hb-shape / hb-view --remove-default-ignorables

    One more text-rendering-tests test passing.  Eleven failing.

 src/hb-buffer.h                                    | 17 ++++--
 src/hb-ot-shape.cc                                 |  6 +-
 .../data/text-rendering-tests/extract-tests.py     |  2 +-
 .../data/text-rendering-tests/tests/AVAR-1.tests   | 34 +++++------
 .../data/text-rendering-tests/tests/CFF-1.tests    | 26 ++++-----
 .../data/text-rendering-tests/tests/CFF-2.tests    | 26 ++++-----
 .../data/text-rendering-tests/tests/CFF2-1.tests   | 18 +++---
 .../data/text-rendering-tests/tests/CMAP-1.tests   |  8 +--
 .../data/text-rendering-tests/tests/CMAP-2.tests   |  4 +-
 .../data/text-rendering-tests/tests/CMAP-3.tests   | 40 ++++++-------
 .../data/text-rendering-tests/tests/CVAR-1.tests   |  6 +-
 .../data/text-rendering-tests/tests/CVAR-2.tests   |  6 +-
 .../data/text-rendering-tests/tests/GLYF-1.tests   |  2 +-
 .../data/text-rendering-tests/tests/GPOS-1.tests   | 38 ++++++------
 .../data/text-rendering-tests/tests/GPOS-2.tests   |  6 +-
 .../data/text-rendering-tests/tests/GPOS-3.tests   |  8 +--
 .../data/text-rendering-tests/tests/GPOS-4.tests   |  8 +--
 .../data/text-rendering-tests/tests/GPOS-5.tests   | 10 ++--
 .../data/text-rendering-tests/tests/GSUB-1.tests   |  2 +-
 .../data/text-rendering-tests/tests/GSUB-2.tests   | 22 +++----
 .../data/text-rendering-tests/tests/GVAR-1.tests   | 18 +++---
 .../data/text-rendering-tests/tests/GVAR-2.tests   | 18 +++---
 .../data/text-rendering-tests/tests/GVAR-3.tests   | 18 +++---
 .../data/text-rendering-tests/tests/GVAR-4.tests   | 22 +++----
 .../data/text-rendering-tests/tests/GVAR-5.tests   | 22 +++----
 .../data/text-rendering-tests/tests/GVAR-6.tests   | 22 +++----
 .../data/text-rendering-tests/tests/GVAR-7.tests   | 14 ++---
 .../data/text-rendering-tests/tests/GVAR-8.tests   | 12 ++--
 .../data/text-rendering-tests/tests/GVAR-9.tests   | 20 +++----
 .../data/text-rendering-tests/tests/HVAR-1.tests   | 12 ++--
 .../data/text-rendering-tests/tests/HVAR-2.tests   | 12 ++--
 .../data/text-rendering-tests/tests/KERN-1.tests   |  2 +-
 .../data/text-rendering-tests/tests/KERN-2.tests   |  2 +-
 .../data/text-rendering-tests/tests/MORX-1.tests   |  2 +-
 .../data/text-rendering-tests/tests/MORX-2.tests   | 32 +++++-----
 .../data/text-rendering-tests/tests/MORX-3.tests   | 32 +++++-----
 .../data/text-rendering-tests/tests/MORX-4.tests   | 30 +++++-----
 .../data/text-rendering-tests/tests/SHARAN-1.tests | 12 ++--
 .../data/text-rendering-tests/tests/SHBALI-1.tests | 44 +++++++-------
 .../data/text-rendering-tests/tests/SHBALI-2.tests | 24 ++++----
 .../data/text-rendering-tests/tests/SHBALI-3.tests | 18 +++---
 .../data/text-rendering-tests/tests/SHKNDA-1.tests | 68
 +++++++++++-----------
 .../data/text-rendering-tests/tests/SHKNDA-2.tests | 32 +++++-----
 .../data/text-rendering-tests/tests/SHKNDA-3.tests | 62
 ++++++++++----------
 util/options.cc                                    |  1 +
 util/options.hh                                    | 14 +++--
 46 files changed, 435 insertions(+), 419 deletions(-)

commit 46e4ed552fb1205eb6cbc16450bb231998fc7347
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 10 03:22:08 2018 +0100

    [test/text-rendering-tests] Hook up font variations

    Six more passing. Twelve failing now.

 .../data/text-rendering-tests/extract-tests.py     |  6 +++-
 .../data/text-rendering-tests/tests/AVAR-1.tests   | 34
 +++++++++++-----------
 .../data/text-rendering-tests/tests/CFF2-1.tests   | 18 ++++++------
 .../data/text-rendering-tests/tests/CVAR-1.tests   |  6 ++--
 .../data/text-rendering-tests/tests/CVAR-2.tests   |  6 ++--
 .../data/text-rendering-tests/tests/GPOS-5.tests   | 10 +++----
 .../data/text-rendering-tests/tests/GVAR-1.tests   | 18 ++++++------
 .../data/text-rendering-tests/tests/GVAR-2.tests   | 18 ++++++------
 .../data/text-rendering-tests/tests/GVAR-3.tests   | 18 ++++++------
 .../data/text-rendering-tests/tests/GVAR-4.tests   | 22 +++++++-------
 .../data/text-rendering-tests/tests/GVAR-5.tests   | 22 +++++++-------
 .../data/text-rendering-tests/tests/GVAR-6.tests   | 22 +++++++-------
 .../data/text-rendering-tests/tests/GVAR-7.tests   | 14 ++++-----
 .../data/text-rendering-tests/tests/GVAR-8.tests   | 12 ++++----
 .../data/text-rendering-tests/tests/GVAR-9.tests   | 20 ++++++-------
 .../data/text-rendering-tests/tests/HVAR-1.tests   | 12 ++++----
 .../data/text-rendering-tests/tests/HVAR-2.tests   | 12 ++++----
 17 files changed, 137 insertions(+), 133 deletions(-)

commit 2b3f62fc4de8f10c2168f212b1368478312e6dec
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 10 03:16:56 2018 +0100

    [test] Add tests from text-rendering-tests repo

    https://github.com/unicode-org/text-rendering-tests

 test/shaping/Makefile.am                           |  44 ++++++++++++++-
 .../fonts/AdobeVFPrototype-Subset.otf              | Bin 0 -> 7096 bytes
 .../text-rendering-tests/fonts/FDArrayTest257.otf  | Bin 0 -> 145212
 bytes
 .../fonts/FDArrayTest65535.otf                     | Bin 0 -> 492740
 bytes
 .../fonts/NotoSansBalinese-Regular.ttf             | Bin 0 -> 32304 bytes
 .../fonts/NotoSansKannada-Regular.ttf              | Bin 0 -> 83868 bytes
 .../fonts/NotoSerifKannada-Regular.ttf             | Bin 0 -> 96936 bytes
 .../text-rendering-tests/fonts/Selawik-README.md   |  60
 +++++++++++++++++++++
 .../fonts/Selawik-variable.ttf                     | Bin 0 -> 481504
 bytes
 .../data/text-rendering-tests/fonts/TestAVAR.ttf   | Bin 0 -> 1608 bytes
 .../data/text-rendering-tests/fonts/TestCMAP14.otf | Bin 0 -> 1628 bytes
 .../fonts/TestCMAPMacTurkish.ttf                   | Bin 0 -> 19644 bytes
 .../text-rendering-tests/fonts/TestCVARGVAROne.ttf | Bin 0 -> 12336 bytes
 .../text-rendering-tests/fonts/TestCVARGVARTwo.ttf | Bin 0 -> 12256 bytes
 .../text-rendering-tests/fonts/TestGLYFOne.ttf     | Bin 0 -> 1516 bytes
 .../text-rendering-tests/fonts/TestGPOSFour.ttf    | Bin 0 -> 315020
 bytes
 .../text-rendering-tests/fonts/TestGPOSOne.ttf     | Bin 0 -> 10384 bytes
 .../text-rendering-tests/fonts/TestGPOSThree.ttf   | Bin 0 -> 3500 bytes
 .../text-rendering-tests/fonts/TestGPOSTwo.otf     | Bin 0 -> 1680 bytes
 .../text-rendering-tests/fonts/TestGSUBOne.otf     | Bin 0 -> 1788 bytes
 .../text-rendering-tests/fonts/TestGVAREight.ttf   | Bin 0 -> 4692 bytes
 .../text-rendering-tests/fonts/TestGVARFour.ttf    | Bin 0 -> 3204 bytes
 .../text-rendering-tests/fonts/TestGVARNine.ttf    | Bin 0 -> 2168 bytes
 .../text-rendering-tests/fonts/TestGVAROne.ttf     | Bin 0 -> 14312 bytes
 .../text-rendering-tests/fonts/TestGVARThree.ttf   | Bin 0 -> 14336 bytes
 .../text-rendering-tests/fonts/TestGVARTwo.ttf     | Bin 0 -> 15668 bytes
 .../text-rendering-tests/fonts/TestHVAROne.otf     | Bin 0 -> 3984 bytes
 .../text-rendering-tests/fonts/TestHVARTwo.ttf     | Bin 0 -> 4004 bytes
 .../text-rendering-tests/fonts/TestKERNOne.otf     | Bin 0 -> 1380 bytes
 .../text-rendering-tests/fonts/TestMORXFour.ttf    | Bin 0 -> 4764 bytes
 .../text-rendering-tests/fonts/TestMORXOne.ttf     | Bin 0 -> 2404 bytes
 .../text-rendering-tests/fonts/TestMORXThree.ttf   | Bin 0 -> 4104 bytes
 .../text-rendering-tests/fonts/TestMORXTwo.ttf     | Bin 0 -> 4960 bytes
 .../text-rendering-tests/fonts/TestShapeAran.ttf   | Bin 0 -> 116044
 bytes
 .../text-rendering-tests/fonts/TestShapeEthi.ttf   | Bin 0 -> 5292 bytes
 .../data/text-rendering-tests/fonts/Zycon.ttf      | Bin 0 -> 21036 bytes
 .../data/text-rendering-tests/tests/AVAR-1.tests   |  17 ++++++
 .../data/text-rendering-tests/tests/CFF-1.tests    |  13 +++++
 .../data/text-rendering-tests/tests/CFF-2.tests    |  13 +++++
 .../data/text-rendering-tests/tests/CFF2-1.tests   |   9 ++++
 .../data/text-rendering-tests/tests/CMAP-1.tests   |   4 ++
 .../data/text-rendering-tests/tests/CMAP-2.tests   |   2 +
 .../data/text-rendering-tests/tests/CMAP-3.tests   |  20 +++++++
 .../data/text-rendering-tests/tests/CVAR-1.tests   |   3 ++
 .../data/text-rendering-tests/tests/CVAR-2.tests   |   3 ++
 .../data/text-rendering-tests/tests/GLYF-1.tests   |   1 +
 .../data/text-rendering-tests/tests/GPOS-1.tests   |  19 +++++++
 .../data/text-rendering-tests/tests/GPOS-2.tests   |   3 ++
 .../data/text-rendering-tests/tests/GPOS-3.tests   |   4 ++
 .../data/text-rendering-tests/tests/GPOS-4.tests   |   4 ++
 .../data/text-rendering-tests/tests/GPOS-5.tests   |   5 ++
 .../data/text-rendering-tests/tests/GSUB-1.tests   |   1 +
 .../data/text-rendering-tests/tests/GSUB-2.tests   |  11 ++++
 .../data/text-rendering-tests/tests/GVAR-1.tests   |   9 ++++
 .../data/text-rendering-tests/tests/GVAR-2.tests   |   9 ++++
 .../data/text-rendering-tests/tests/GVAR-3.tests   |   9 ++++
 .../data/text-rendering-tests/tests/GVAR-4.tests   |  11 ++++
 .../data/text-rendering-tests/tests/GVAR-5.tests   |  11 ++++
 .../data/text-rendering-tests/tests/GVAR-6.tests   |  11 ++++
 .../data/text-rendering-tests/tests/GVAR-7.tests   |   7 +++
 .../data/text-rendering-tests/tests/GVAR-8.tests   |   6 +++
 .../data/text-rendering-tests/tests/GVAR-9.tests   |  10 ++++
 .../data/text-rendering-tests/tests/HVAR-1.tests   |   6 +++
 .../data/text-rendering-tests/tests/HVAR-2.tests   |   6 +++
 .../data/text-rendering-tests/tests/KERN-1.tests   |   1 +
 .../data/text-rendering-tests/tests/KERN-2.tests   |   1 +
 .../data/text-rendering-tests/tests/MORX-1.tests   |   1 +
 .../data/text-rendering-tests/tests/MORX-2.tests   |  16 ++++++
 .../data/text-rendering-tests/tests/MORX-3.tests   |  16 ++++++
 .../data/text-rendering-tests/tests/MORX-4.tests   |  15 ++++++
 .../data/text-rendering-tests/tests/SHARAN-1.tests |   6 +++
 .../data/text-rendering-tests/tests/SHBALI-1.tests |  22 ++++++++
 .../data/text-rendering-tests/tests/SHBALI-2.tests |  12 +++++
 .../data/text-rendering-tests/tests/SHBALI-3.tests |   9 ++++
 .../data/text-rendering-tests/tests/SHKNDA-1.tests |  34 ++++++++++++
 .../data/text-rendering-tests/tests/SHKNDA-2.tests |  16 ++++++
 .../data/text-rendering-tests/tests/SHKNDA-3.tests |  31 +++++++++++
 77 files changed, 510 insertions(+), 1 deletion(-)

commit 6b19178ee35fec3b2115d6a06a86db36dc838b38
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 10 03:07:30 2018 +0100

    Prefix int types with HB

    Such a headache that Windows defines UINT8, ...; Just prefix it.

 src/hb-aat-layout-common-private.hh  |  29 +++---
 src/hb-aat-layout-morx-table.hh      |  65 +++++++------
 src/hb-open-file-private.hh          |   6 +-
 src/hb-open-type-private.hh          |  70 +++++++-------
 src/hb-ot-cbdt-table.hh              |  78 ++++++++--------
 src/hb-ot-cmap-table.hh              |  90 +++++++++---------
 src/hb-ot-glyf-table.hh              |  10 +-
 src/hb-ot-head-table.hh              |  28 +++---
 src/hb-ot-hhea-table.hh              |  18 ++--
 src/hb-ot-kern-table.hh              |  36 ++++----
 src/hb-ot-layout-common-private.hh   | 120 ++++++++++++------------
 src/hb-ot-layout-gdef-table.hh       |  22 ++---
 src/hb-ot-layout-gpos-table.hh       |  94 +++++++++----------
 src/hb-ot-layout-gsub-table.hh       |  30 +++---
 src/hb-ot-layout-gsubgpos-private.hh | 172
 +++++++++++++++++------------------
 src/hb-ot-math-table.hh              |  26 +++---
 src/hb-ot-maxp-table.hh              |   2 +-
 src/hb-ot-name-table.hh              |  16 ++--
 src/hb-ot-os2-table.hh               |  70 +++++++-------
 src/hb-ot-post-table.hh              |  16 ++--
 src/hb-ot-var-avar-table.hh          |   4 +-
 src/hb-ot-var-fvar-table.hh          |  20 ++--
 src/hb-ot-var-hvar-table.hh          |   8 +-
 src/hb-ot-var-mvar-table.hh          |  10 +-
 24 files changed, 517 insertions(+), 523 deletions(-)

commit 81e321c802afcc43186737e6900f8d7e2f9d4fd3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 10 02:56:29 2018 +0100

    [aat] Try fixing VC bots

    c:\projects\harfbuzz\src\hb-aat-layout-common-private.hh(51):
    error C2872: 'UINT16': ambiguous symbol
    [C:\projects\harfbuzz\build\harfbuzz.vcxproj]
    C:\Program Files (x86)\Windows
    Kits\10\Include\10.0.14393.0\shared\basetsd.h(80): note: could be
    'unsigned short UINT16'
    c:\projects\harfbuzz\src\hb-open-type-private.hh(648): note: or
    'OT::UINT16'

 src/hb-aat-layout-common-private.hh | 3 +++
 src/hb-aat-layout-morx-table.hh     | 3 +++
 2 files changed, 6 insertions(+)

commit 0ed69c946247feb5bbb5be06d5314c5e0c0fec67
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 10 02:49:36 2018 +0100

    Disable processing of morx table in ot shaper

    So I can merge this to master...

 src/hb-ot-shape.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 3f29ea91441b2e8c86cf379b4803f638a2e8dcfc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 10 02:48:04 2018 +0100

    [util] Add hb-shape --ned

    For not displaying extra data: no clusters, no advance. Just data
    pertaining
    to where glyphs end up on the screen.

 test/shaping/data/text-rendering-tests/extract-tests.py |  2 +-
 util/options.cc                                         | 13
 +++++++++++++
 2 files changed, 14 insertions(+), 1 deletion(-)

commit 7020130665316365c288d0960fc288faa8f5bdf7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 10 02:37:39 2018 +0100

    [test] Minor

 test/shaping/run-tests.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 5f94b4cc39f2f61b38c954ddac1aae6a052845bd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 10 02:35:59 2018 +0100

    [kern] Mark unsafe-to-break

 src/hb-ot-shape-fallback.cc | 2 ++
 1 file changed, 2 insertions(+)

commit 71fd6325b6cba2586709022dd33530c61141bf8f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 10 02:20:14 2018 +0100

    Add option to buffer serialization to not output glyph advances

    When advances are not printed, glyph offsets reflect absolute glyph
    positions.

    New API:
    HB_BUFFER_SERIALIZE_FLAG_NO_ADVANCES
    hb-shape --no-advances

 src/hb-buffer-serialize.cc | 38 ++++++++++++++++++++++++++++----------
 src/hb-buffer.h            |  5 ++++-
 util/hb-shape.cc           |  2 ++
 util/options.cc            |  2 ++
 util/options.hh            |  2 ++
 5 files changed, 38 insertions(+), 11 deletions(-)

commit 316a28f8f8a9c459936ce9f2786d4d64a8f4e2c0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 10 01:54:12 2018 +0100

    [test] Add script for extracting tests from text-rendering-tests

    Work in progress...

    https://github.com/unicode-org/text-rendering-tests

 .../data/text-rendering-tests/extract-tests.py     | 45
 ++++++++++++++++++++++
 1 file changed, 45 insertions(+)

commit 6b4d63f295f419f55983a8fc72f582802f55b09f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 10 01:13:36 2018 +0100

    [test] Minor

 test/shaping/run-tests.py | 9 ---------
 1 file changed, 9 deletions(-)

commit 504f913654d5904604e6abdbf7d0653f40db51fc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 9 23:15:54 2018 +0100

    [test] Simplify test runner

    Always pass hb-shape as first argument to run-tests.py.

    Also require automake 1.13.

 configure.ac              |  3 +--
 test/shaping/Makefile.am  | 18 ++----------------
 test/shaping/run-tests.py | 22 +++++-----------------
 3 files changed, 8 insertions(+), 35 deletions(-)

commit 141db8b7a3abf2adbf0caa0659d9239396f6a2db
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 9 23:11:00 2018 +0100

    [test] Minor

 test/shaping/Makefile.am  | 4 ----
 test/shaping/run-tests.py | 4 ++--
 2 files changed, 2 insertions(+), 6 deletions(-)

commit 44c65eee28e2de5c54028cb0ef144f56da16ef58
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 9 21:58:57 2018 +0100

    [test] Reorganize test suite

    In anticipation of importing more test suites.

 test/fuzzing/run-fuzzer-tests.py                   |   2 +-
 test/shaping/Makefile.am                           |  86
 +++++++++---------
 test/shaping/{fonts => data/in-house}/COPYING      |   7 +-
 .../0509e80afb379d16560e9e47bdd7d888bebdebc6.ttf   | Bin
 .../051d92f8bc6ff724511b296c27623f824de256e9.ttf   | Bin
 .../074a5ae6b19de8f29772fdd5df2d3d833f81f5e6.ttf   | Bin
 .../07f054357ff8638bac3711b422a1e31180bba863.ttf   | Bin
 .../15dfc433a135a658b9f4b1a861b5cdd9658ccbb9.ttf   | Bin
 .../1735326da89f0818cd8c51a0600e9789812c0f94.ttf   | Bin
 .../191826b9643e3f124d865d617ae609db6a2ce203.ttf   | Bin
 .../1a3d8f381387dd29be1e897e4b5100ac8b4829e1.ttf   | Bin
 .../1a6f1687b7a221f9f2c834b0b360d3c8463b6daf.ttf   | Bin
 .../1c04a16f32a39c26c851b7fc014d2e8d298ba2b8.ttf   | Bin
 .../1c2c3fc37b2d4c3cb2ef726c6cdaaabd4b7f3eb9.ttf   | Bin
 .../1c2fb74c1b2aa173262734c1f616148f1648cfd6.ttf   | Bin
 .../205edd09bd3d141cc9580f650109556cc28b22cb.ttf   | Bin
 .../217a934cfe15c548b572c203dceb2befdf026462.ttf   | Bin
 .../21b7fb9c1eeae260473809fbc1fe330f66a507cd.ttf   | Bin
 .../226bc2deab3846f1a682085f70c67d0421014144.ttf   | Bin
 .../243798dd281c1c77c065958e1ff467420faa9bde.ttf   | Bin
 .../24b8d24d00ae86f49791b746da4c9d3f717a51a8.ttf   | Bin
 .../270b89df543a7e48e206a2d830c0e10e5265c630.ttf   | Bin
 .../298c9e1d955f10f6f72c6915c3c6ff9bf9695cec.ttf   | Bin
 .../2de1ab4907ab688c0cfc236b0bf51151db38bf2e.ttf   | Bin
 .../341421e629668b1a1242245d39238ca48432d35d.ttf   | Bin
 .../3493e92eaded2661cadde752a39f9d58b11f0326.ttf   | Bin
 .../3511ff5c1647150595846ac414c595cccac34f18.ttf   | Bin
 .../37033cc5cf37bb223d7355153016b6ccece93b28.ttf   | Bin
 .../373e67bf41ca264e260a9716162b71a23549e885.ttf   | Bin
 .../375d6ae32a3cbe52fbf81a4e5777e3377675d5a3.ttf   | Bin
 .../3cae6bfe5b57c07ba81ddbd54c02fe4f3a1e3bf6.ttf   | Bin
 .../3d0b77a2360aa6faa1385aaa510509ab70dfbeff.ttf   | Bin
 .../43979b90b2dd929723cf4fe1715990bcb9c9a56b.ttf   | Bin
 .../43ef465752be9af900745f72fe29cb853a1401a5.ttf   | Bin
 .../45855bc8d46332b39c4ab9e2ee1a26b1f896da6b.ttf   | Bin
 .../49c9f7485c1392fa09a1b801bc2ffea79275f22e.ttf   | Bin
 .../4cce528e99f600ed9c25a2b69e32eb94a03b4ae8.ttf   | Bin
 .../4fac3929fc3332834e93673780ec0fe94342d193.ttf   | Bin
 .../5028afb650b1bb718ed2131e872fbcce57828fff.ttf   | Bin
 .../53374c7ca3657be37efde7ed02ae34229a56ae1f.ttf   | Bin
 .../54674a3111d209fb6be0ed31745314b7a8d2c244.ttf   | Bin
 .../558661aa659912f4d30ecd27bd09835171a8e2b0.ttf   | Bin
 .../55c88ebbe938680b08f92c3de20713183e0c7481.ttf   | Bin
 .../56cfd0e18d07f41c38e9598545a6d369127fc6f9.ttf   | Bin
 .../57a9d9f83020155cbb1d2be1f43d82388cbecc88.ttf   | Bin
 .../59a585a63b3df608fbeef00956c8c108deec7de6.ttf   | Bin
 .../5a5daf5eb5a4db77a2baa3ad9c7a6ed6e0655fa8.ttf   | Bin
 .../5dfad7735c6a67085f1b90d4d497e32907db4c78.ttf   | Bin
 .../641bd9db850193064d17575053ae2bf8ec149ddc.ttf   | Bin
 .../663aef6b019dbf45ffd74089e2b5f2496ceceb18.ttf   | Bin
 .../6991b13ce889466be6de3f66e891de2bc0f117ee.ttf   | Bin
 .../6ff0fbead4462d9f229167b4e6839eceb8465058.ttf   | Bin
 .../706c5d7b625f207bc0d874c67237aad6f1e9cd6f.ttf   | Bin
 .../757ebd573617a24aa9dfbf0b885c54875c6fe06b.ttf   | Bin
 .../7a37dc4d5bf018456aea291cee06daf004c0221c.ttf   | Bin
 .../7e14e7883ed152baa158b80e207b66114c823a8b.ttf   | Bin
 .../8099955657a54e9ee38a6ba1d6f950ce58e3cc25.ttf   | Bin
 .../813c2f8e5512187fd982417a7fb4286728e6f4a8.ttf   | Bin
 .../81c368a33816fb20e9f647e8f24e2180f4720263.ttf   | Bin
 .../8228d035fcd65d62ec9728fb34f42c63be93a5d3.ttf   | Bin
 .../8240789f6d12d4cfc4b5e8e6f246c3701bcf861f.ttf   | Bin
 .../82f4f3b57bb55344e72e70231380202a52af5805.ttf   | Bin
 .../8454d22037f892e76614e1645d066689a0200e61.ttf   | Bin
 .../85414f2552b654585b7a8d13dcc3e8fd9f7970a3.ttf   | Bin
 .../856ff9562451293cbeff6f396d4e3877c4f0a436.ttf   | Bin
 .../85fe0be440c64ac77699e21c2f1bd933a919167e.ttf   | Bin
 .../87f85d17d26f1fe9ad28d7365101958edaefb967.ttf   | Bin
 .../8a9fea2a7384f2116e5b84a9b31f83be7850ce21.ttf   | Bin
 .../94a5d6fb15a27521fba9ea4aee9cb39b2d03322a.ttf   | Bin
 .../96490dd2ff81233b335a650e7eb660e0e7b2eeea.ttf   | Bin
 .../98b7887cff91f722b92a8ff800120954606354f9.ttf   | Bin
 .../9d8a94a67932a3ab75a596fc8b5c6d0392ca9e49.ttf   | Bin
 .../a014549f766436cf55b2ceb40e462038938ee899.ttf   | Bin
 .../a02a7f0ad42c2922cb37ad1358c9df4eb81f1bca.ttf   | Bin
 .../a34a7b00f22ffb5fd7eef6933b81c7e71bc2cdfb.ttf   | Bin
 .../a34a9191d9376bda419836effeef7e75c1386016.ttf   | Bin
 .../a69118c2c2ada48ff803d9149daa54c9ebdae30e.ttf   | Bin
 .../a6c76d1bafde4a0b1026ebcc932d2e5c6fd02442.ttf   | Bin
 .../a919b33197965846f21074b24e30250d67277bce.ttf   | Bin
 .../a98e908e2ed21b22228ea59ebcc0f05034c86f2e.ttf   | Bin
 .../b151cfcdaa77585d77f17a42158e0873fc8e2633.ttf   | Bin
 .../b6acef662e0beb8d5fcf5b61c6b0ca69537b7402.ttf   | Bin
 .../b9e2aaa0d75fcef6971ec3a96d806ba4a6b31fe2.ttf   | Bin
 .../bb0c53752e85c3d28973ebc913287b8987d3dfe8.ttf   | Bin
 .../bb29ce50df2bdba2d10726427c6b7609bf460e04.ttf   | Bin
 .../bb9473d2403488714043bcfb946c9f78b86ad627.ttf   | Bin
 .../bbf4a308c402f0678c3e82844892a4da2ebe598f.ttf   | Bin
 .../bf39b0e91ef9807f15a9e283a21a14a209fd2cfc.ttf   | Bin
 .../bf962d3202883a820aed019d9b5c1838c2ff69c6.ttf   | Bin
 .../c4e48b0886ef460f532fb49f00047ec92c432ec0.ttf   | Bin
 .../cc5f3d2d717fb6bd4dfae1c16d48a2cb8e12233b.ttf   | Bin
 .../d23d76ea0909c14972796937ba072b5a40c1e257.ttf   | Bin
 .../d629e7fedc0b350222d7987345fe61613fa3929a.ttf   | Bin
 .../d9b8bc10985f24796826c29f7ccba3d0ae11ec02.ttf   | Bin
 .../dd9f0c7c7c36f75a18be0cab1cddf8f3ab0f366b.ttf   | Bin
 .../df768b9c257e0c9c35786c47cae15c46571d56be.ttf   | Bin
 .../e207635780b42f898d58654b65098763e340f5c7.ttf   | Bin
 .../e68a88939e0f06e34d2bc911f09b70890289c8fd.ttf   | Bin
 .../e88c339237f52d21e01c55f01b9c1b4cc14a0467.ttf   | Bin
 .../ee39587d13b2afa5499cc79e45780aa79293bbd4.ttf   | Bin
 .../ef2511f215aa3ca847cbfffbf861793b42170875.ttf   | Bin
 .../ef86fe710cfea877bbe0dbb6946a1f88d0661031.ttf   | Bin
 .../f22416c692720a7d46fadf4af99f4c9e094f00b9.ttf   | Bin
 .../f443753e8ffe8e8aae606cfba158e00334b6efb1.ttf   | Bin
 .../f499fbc23865022234775c43503bba2e63978fe1.ttf   | Bin
 .../f518eb6f6b5eec2946c9fbbbde44e45d46f5e2ac.ttf   | Bin
 .../f9b1dd4dcb515e757789a22cb4241107746fd3d0.ttf   | Bin
 .../fab39d60d758cb586db5a504f218442cd1395725.ttf   | Bin
 .../fbb6c84c9e1fe0c39e152fbe845e51fd81f6748e.ttf   | Bin
 .../fcdcffbdf1c4c97c05308d7600e4c283eb47dbca.ttf   | Bin
 .../ffa0f5d2d9025486d8469d8b1fdd983e7632499b.ttf   | Bin
 .../in-house/tests/arabic-fallback-shaping.tests   |   1 +
 .../data/in-house/tests/arabic-feature-order.tests |   4 +
 .../data/in-house/tests/arabic-like-joining.tests  |   1 +
 .../data/in-house/tests/arabic-mark-order.tests    |   6 ++
 test/shaping/data/in-house/tests/arabic-stch.tests |   1 +
 .../data/in-house/tests/automatic-fractions.tests  |   3 +
 test/shaping/data/in-house/tests/cluster.tests     |   2 +
 test/shaping/data/in-house/tests/color-fonts.tests |   1 +
 .../data/in-house/tests/context-matching.tests     |   3 +
 .../data/in-house/tests/cursive-positioning.tests  |   4 +
 .../data/in-house/tests/default-ignorables.tests   |   2 +
 .../data/in-house/tests/emoji-flag-tags.tests      |   2 +
 .../data/in-house/tests/fallback-positioning.tests |   2 +
 test/shaping/data/in-house/tests/fuzzed.tests      |  22 +++++
 test/shaping/data/in-house/tests/hangul-jamo.tests |   2 +
 test/shaping/data/in-house/tests/hyphens.tests     |   2 +
 .../tests/indic-consonant-with-stacker.tests       |   4 +
 test/shaping/data/in-house/tests/indic-init.tests  |   1 +
 .../in-house/tests/indic-joiner-candrabindu.tests  |   2 +
 .../data/in-house/tests/indic-joiners.tests        |   2 +
 .../data/in-house/tests/indic-old-spec.tests       |   2 +
 .../data/in-house/tests/indic-pref-blocking.tests  |   2 +
 .../in-house/tests/indic-script-extensions.tests   |   2 +
 .../data/in-house/tests/indic-special-cases.tests  |   3 +
 .../data/in-house/tests/indic-syllable.tests       |   8 ++
 .../data/in-house/tests/language-tags.tests        |  12 +++
 test/shaping/data/in-house/tests/ligature-id.tests |  36 ++++++++
 .../data/in-house/tests/mark-attachment.tests      |   1 +
 .../data/in-house/tests/mark-filtering-sets.tests  |   5 ++
 .../tests/mongolian-variation-selector.tests       |   4 +
 test/shaping/data/in-house/tests/simple.tests      |   2 +
 test/shaping/data/in-house/tests/spaces.tests      |  17 ++++
 .../in-house/tests/tibetan-contractions-1.tests    |  60 +++++++++++++
 .../in-house/tests/tibetan-contractions-2.tests    |  53 +++++++++++
 .../data/in-house/tests/tibetan-vowels.tests       |  11 +++
 test/shaping/data/in-house/tests/use-marchen.tests |  35 ++++++++
 .../shaping/data/in-house/tests/use-syllable.tests |   7 ++
 test/shaping/data/in-house/tests/use.tests         |   4 +
 .../data/in-house/tests/variations-rvrn.tests      | 100
 +++++++++++++++++++++
 test/shaping/data/in-house/tests/vertical.tests    |   3 +
 .../data/in-house/tests/zero-width-marks.tests     |  11 +++
 test/shaping/run-tests.py                          |  48 ++++------
 .../tests/misc/arabic-fallback-shaping.tests       |   1 -
 test/shaping/tests/misc/arabic-feature-order.tests |   4 -
 test/shaping/tests/misc/arabic-like-joining.tests  |   1 -
 test/shaping/tests/misc/arabic-mark-order.tests    |   6 --
 test/shaping/tests/misc/arabic-stch.tests          |   1 -
 test/shaping/tests/misc/automatic-fractions.tests  |   3 -
 test/shaping/tests/misc/cluster.tests              |   2 -
 test/shaping/tests/misc/color-fonts.tests          |   1 -
 test/shaping/tests/misc/context-matching.tests     |   3 -
 test/shaping/tests/misc/cursive-positioning.tests  |   4 -
 test/shaping/tests/misc/default-ignorables.tests   |   2 -
 test/shaping/tests/misc/emoji-flag-tags.tests      |   2 -
 test/shaping/tests/misc/fallback-positioning.tests |   2 -
 test/shaping/tests/misc/fuzzed.tests               |  22 -----
 test/shaping/tests/misc/hangul-jamo.tests          |   2 -
 test/shaping/tests/misc/hyphens.tests              |   2 -
 .../tests/misc/indic-consonant-with-stacker.tests  |   4 -
 test/shaping/tests/misc/indic-init.tests           |   1 -
 .../tests/misc/indic-joiner-candrabindu.tests      |   2 -
 test/shaping/tests/misc/indic-joiners.tests        |   2 -
 test/shaping/tests/misc/indic-old-spec.tests       |   2 -
 test/shaping/tests/misc/indic-pref-blocking.tests  |   2 -
 .../tests/misc/indic-script-extensions.tests       |   2 -
 test/shaping/tests/misc/indic-special-cases.tests  |   3 -
 test/shaping/tests/misc/indic-syllable.tests       |   8 --
 test/shaping/tests/misc/language-tags.tests        |  12 ---
 test/shaping/tests/misc/ligature-id.tests          |  36 --------
 test/shaping/tests/misc/mark-attachment.tests      |   1 -
 test/shaping/tests/misc/mark-filtering-sets.tests  |   5 --
 .../tests/misc/mongolian-variation-selector.tests  |   4 -
 test/shaping/tests/misc/simple.tests               |   2 -
 test/shaping/tests/misc/spaces.tests               |  17 ----
 .../tests/misc/tibetan-contractions-1.tests        |  60 -------------
 .../tests/misc/tibetan-contractions-2.tests        |  53 -----------
 test/shaping/tests/misc/tibetan-vowels.tests       |  11 ---
 test/shaping/tests/misc/use-marchen.tests          |  35 --------
 test/shaping/tests/misc/use-syllable.tests         |   7 --
 test/shaping/tests/misc/use.tests                  |   4 -
 test/shaping/tests/misc/variations-rvrn.tests      | 100
 ---------------------
 test/shaping/tests/misc/vertical.tests             |   3 -
 test/shaping/tests/misc/zero-width-marks.tests     |  11 ---
 .../script-arabic/language-persian/mehran.txt      |  14 +--
 .../language-urdu/crulp/ligatures/2grams.txt       |   0
 .../language-urdu/crulp/ligatures/3grams.txt       |   0
 .../language-urdu/crulp/ligatures/4grams.txt       |   0
 .../language-urdu/crulp/ligatures/5grams.txt       |   0
 .../language-urdu/crulp/ligatures/6grams.txt       |   0
 .../language-urdu/crulp/ligatures/7grams.txt       |   0
 .../language-urdu/crulp/ligatures/8grams.txt       |   0
 .../language-urdu/crulp/ligatures/LICENSE          |   0
 .../language-urdu/crulp/ligatures/README           |   0
 .../language-urdu/crulp/ligatures/SOURCES          |   0
 .../script-arabic/misc/diacritics/lam-alef.txt     |   0
 .../misc/diacritics/language-arabic.txt            |   0
 .../misc/diacritics/language-persian.txt           |   0
 .../misc/diacritics/language-urdu.txt              |   0
 .../misc/diacritics/ligature-components.txt        |   0
 .../misc/diacritics/ligature-diacritics.txt        |   0
 .../misc/diacritics/mark-skipping.txt              |   0
 .../shaper-arabic/script-mongolian/misc/misc.txt   |   0
 .../script-mongolian/misc/non-joining.txt          |   0
 .../shaper-arabic/script-mongolian/misc/poem.txt   |   0
 .../script-mongolian/misc/variation-selectors.txt  |   0
 .../shaper-arabic/script-nko/misc/misc.txt         |   0
 .../shaper-arabic/script-phags-pa/misc/misc.txt    |   0
 .../script-syriac/misc/abbreviation-mark.txt       |  11 +++
 .../shaper-arabic/script-syriac/misc/alaph.txt     |   0
 .../shaper-default/script-ethiopic/misc/misc.txt   |   0
 .../shaper-default/script-han/misc/cjk-compat.txt  |   0
 .../script-hiragana/misc/kazuraki-liga-lines.txt   |   0
 .../script-hiragana/misc/kazuraki-liga.txt         |   0
 .../shaper-default/script-linear-b/misc/misc.txt   |   0
 .../shaper-default/script-tifinagh/misc/misc.txt   |   1 -
 .../shaper-hangul/script-hangul/misc/misc.txt      |   0
 .../script-hebrew/misc/diacritics.txt              |   0
 .../indic/script-assamese/utrrs/LICENSE            |   0
 .../indic/script-assamese/utrrs/README             |   0
 .../indic/script-assamese/utrrs/SOURCES            |   0
 .../IndicFontFeatureCodepoint-AdditionalVowels.txt |   0
 .../IndicFontFeatureCodepoint-Consonants.txt       |   0
 .../IndicFontFeatureCodepoint-DependentVowels.txt  |   0
 .../codepoint/IndicFontFeatureCodepoint-Digits.txt |   0
 ...IndicFontFeatureCodepoint-IndependentVowels.txt |   0
 .../IndicFontFeatureCodepoint-Reserved.txt         |   0
 .../IndicFontFeatureCodepoint-VariousSigns.txt     |   0
 .../utrrs/gpos/IndicFontFeatureGPOS-AboveBase.txt  |   0
 .../utrrs/gpos/IndicFontFeatureGPOS-BelowBase.txt  |   0
 .../utrrs/gsub/IndicFontFeatureGSUB.txt            |   0
 .../indic/script-bengali/misc/misc.txt             |   0
 .../indic/script-bengali/misc/reph.txt             |   0
 .../indic/script-bengali/utrrs/LICENSE             |   0
 .../shaper-indic/indic/script-bengali/utrrs/README |   0
 .../indic/script-bengali/utrrs/SOURCES             |   0
 .../IndicFontFeatureCodepoint-AdditionalVowels.txt |   0
 .../IndicFontFeatureCodepoint-Consonants.txt       |   0
 .../IndicFontFeatureCodepoint-DependentVowels.txt  |   0
 .../codepoint/IndicFontFeatureCodepoint-Digits.txt |   0
 ...IndicFontFeatureCodepoint-IndependentVowels.txt |   0
 .../IndicFontFeatureCodepoint-Reserved.txt         |   0
 .../IndicFontFeatureCodepoint-VariousSigns.txt     |   0
 .../utrrs/gpos/IndicFontFeatureGPOS-AboveBase.txt  |   0
 .../utrrs/gpos/IndicFontFeatureGPOS-BelowBase.txt  |   0
 .../utrrs/gsub/IndicFontFeatureGSUB.txt            |   0
 .../indic/script-devanagari/misc/dottedcircle.txt  |   0
 .../indic/script-devanagari/misc/eyelash.txt       |   0
 .../indic/script-devanagari/misc/joiners.txt       |   0
 .../indic/script-devanagari/misc/misc.txt          |   0
 .../script-devanagari/misc/spec-deviations.txt     |   0
 .../script-devanagari/misc/tricky-reordering.txt   |   0
 .../indic/script-devanagari/utrrs/LICENSE          |   0
 .../indic/script-devanagari/utrrs/README           |   0
 .../indic/script-devanagari/utrrs/SOURCES          |   0
 ...icFontFeatureCodepoint-AdditionalConsonants.txt |   0
 .../IndicFontFeatureCodepoint-AdditionalVowels.txt |   0
 .../IndicFontFeatureCodepoint-Consonants.txt       |   0
 .../IndicFontFeatureCodepoint-DependentVowels.txt  |   0
 ...tFeatureCodepoint-DevnagariSpecificAddition.txt |   0
 .../codepoint/IndicFontFeatureCodepoint-Digits.txt |   0
 ...ndicFontFeatureCodepoint-GenericPunctuation.txt |   0
 ...IndicFontFeatureCodepoint-IndependentVowels.txt |   0
 .../IndicFontFeatureCodepoint-VariousSigns.txt     |   0
 .../utrrs/gpos/IndicFontFeatureGPOS-AboveBase.txt  |   0
 .../utrrs/gpos/IndicFontFeatureGPOS-BelowBase.txt  |   0
 .../utrrs/gsub/IndicFontFeatureGSUB.txt            |   0
 .../indic/script-gujarati/utrrs/LICENSE            |   0
 .../indic/script-gujarati/utrrs/README             |   0
 .../indic/script-gujarati/utrrs/SOURCES            |   0
 .../IndicFontFeatureCodepoint-AdditionalVowels.txt |   0
 .../IndicFontFeatureCodepoint-Consonants.txt       |   0
 .../IndicFontFeatureCodepoint-DependentVowels.txt  |   0
 .../codepoint/IndicFontFeatureCodepoint-Digits.txt |   0
 ...IndicFontFeatureCodepoint-IndependentVowels.txt |   0
 .../IndicFontFeatureCodepoint-Reserved.txt         |   0
 .../IndicFontFeatureCodepoint-VariousSigns.txt     |   0
 .../utrrs/gpos/IndicFontFeatureGPOS-AboveBase.txt  |   0
 .../utrrs/gpos/IndicFontFeatureGPOS-BelowBase.txt  |   0
 .../utrrs/gsub/IndicFontFeatureGSUB.txt            |   0
 .../indic/script-gurmukhi/misc/misc.txt            |   0
 .../indic/script-gurmukhi/utrrs/LICENSE            |   0
 .../indic/script-gurmukhi/utrrs/README             |   0
 .../indic/script-gurmukhi/utrrs/SOURCES            |   0
 .../IndicFontFeatureCodepoint-Consonants.txt       |   0
 .../IndicFontFeatureCodepoint-DependentVowels.txt  |   0
 .../codepoint/IndicFontFeatureCodepoint-Digits.txt |   0
 .../IndicFontFeatureCodepoint-GurmukhiSpecific.txt |   0
 ...IndicFontFeatureCodepoint-IndependentVowels.txt |   0
 .../IndicFontFeatureCodepoint-Reserved.txt         |   0
 .../IndicFontFeatureCodepoint-VariousSigns.txt     |   0
 .../utrrs/gpos/IndicFontFeatureGPOS-AboveBase.txt  |   0
 .../utrrs/gpos/IndicFontFeatureGPOS-BelowBase.txt  |   0
 .../utrrs/gsub/IndicFontFeatureGSUB.txt            |   0
 .../indic/script-kannada/misc/misc.txt             |   0
 .../indic/script-kannada/misc/right-matras.txt     |   0
 .../indic/script-kannada/utrrs/LICENSE             |   0
 .../shaper-indic/indic/script-kannada/utrrs/README |   0
 .../indic/script-kannada/utrrs/SOURCES             |   0
 ...icFontFeatureCodepoint-AdditionalConsonants.txt |   0
 .../IndicFontFeatureCodepoint-AdditionalVowels.txt |   0
 .../IndicFontFeatureCodepoint-Consonants.txt       |   0
 .../IndicFontFeatureCodepoint-DependentVowels.txt  |   0
 .../codepoint/IndicFontFeatureCodepoint-Digits.txt |   0
 ...IndicFontFeatureCodepoint-IndependentVowels.txt |   0
 .../IndicFontFeatureCodepoint-Reserved.txt         |   0
 .../IndicFontFeatureCodepoint-VariousSigns.txt     |   0
 .../utrrs/gpos/IndicFontFeatureGPOS-AboveBase.txt  |   0
 .../utrrs/gsub/IndicFontFeatureGSUB.txt            |   0
 .../indic/script-malayalam/misc/cibu.txt           |   0
 .../indic/script-malayalam/misc/dot-reph.txt       |   0
 .../indic/script-malayalam/misc/misc.txt           |   0
 .../indic/script-malayalam/utrrs/LICENSE           |   0
 .../indic/script-malayalam/utrrs/README            |   0
 .../indic/script-malayalam/utrrs/SOURCES           |   0
 .../IndicFontFeatureCodepoint-AdditionalVowels.txt |   0
 .../IndicFontFeatureCodepoint-Consonants.txt       |   0
 .../IndicFontFeatureCodepoint-DependentVowels.txt  |   0
 .../codepoint/IndicFontFeatureCodepoint-Digits.txt |   0
 ...IndicFontFeatureCodepoint-IndependentVowels.txt |   0
 .../IndicFontFeatureCodepoint-Reserved.txt         |   0
 .../IndicFontFeatureCodepoint-VariousSigns.txt     |   0
 .../utrrs/gsub/IndicFontFeatureGSUB.txt            |   0
 .../shaper-indic/indic/script-oriya/misc/bindu.txt |   0
 .../shaper-indic/indic/script-oriya/misc/misc.txt  |   0
 .../shaper-indic/indic/script-oriya/utrrs/LICENSE  |   0
 .../shaper-indic/indic/script-oriya/utrrs/README   |   0
 .../shaper-indic/indic/script-oriya/utrrs/SOURCES  |   0
 ...icFontFeatureCodepoint-AdditionalConsonants.txt |   0
 .../IndicFontFeatureCodepoint-AdditionalVowels.txt |   0
 .../IndicFontFeatureCodepoint-Consonants.txt       |   0
 .../IndicFontFeatureCodepoint-DependentVowels.txt  |   0
 .../codepoint/IndicFontFeatureCodepoint-Digits.txt |   0
 ...IndicFontFeatureCodepoint-IndependentVowels.txt |   0
 .../IndicFontFeatureCodepoint-OriyaSpecific.txt    |   0
 .../IndicFontFeatureCodepoint-Reserved.txt         |   0
 .../IndicFontFeatureCodepoint-VariousSigns.txt     |   0
 .../utrrs/gsub/IndicFontFeatureGSUB.txt            |   0
 .../indic/script-sinhala/misc/extensive.txt        |   0
 .../indic/script-sinhala/misc/misc.txt             |   0
 .../indic/script-sinhala/misc/reph.txt             |   0
 .../indic/script-sinhala/misc/split-matras.txt     |   0
 .../indic/script-sinhala/utrrs/LICENSE             |   0
 .../shaper-indic/indic/script-sinhala/utrrs/README |   0
 .../indic/script-sinhala/utrrs/SOURCES             |   0
 .../IndicFontFeatureCodepoint-Consonants.txt       |   0
 .../IndicFontFeatureCodepoint-DependentVowels.txt  |   0
 ...IndicFontFeatureCodepoint-IndependentVowels.txt |   0
 .../IndicFontFeatureCodepoint-Punctuation.txt      |   0
 .../IndicFontFeatureCodepoint-VariousSigns.txt     |   0
 .../utrrs/gpos/IndicFontFeatureGPOS.txt            |   0
 .../utrrs/gsub/IndicFontFeatureGSUB-Conjunct.txt   |   0
 .../gsub/IndicFontFeatureGSUB-Rakaaraansaya.txt    |   0
 .../utrrs/gsub/IndicFontFeatureGSUB-Repaya.txt     |   0
 .../gsub/IndicFontFeatureGSUB-Special-Cases.txt    |   0
 .../gsub/IndicFontFeatureGSUB-TouchingLetters.txt  |   0
 .../utrrs/gsub/IndicFontFeatureGSUB-Yansaya.txt    |   0
 .../utrrs/gsub/IndicFontFeatureGSUB.txt            |   0
 .../shaper-indic/indic/script-tamil/misc/misc.txt  |   0
 .../shaper-indic/indic/script-tamil/utrrs/LICENSE  |   0
 .../shaper-indic/indic/script-tamil/utrrs/README   |   0
 .../shaper-indic/indic/script-tamil/utrrs/SOURCES  |   0
 .../IndicFontFeatureCodepoint-Consonants.txt       |   0
 .../IndicFontFeatureCodepoint-CurrencySymbols.txt  |   0
 .../IndicFontFeatureCodepoint-DependentVowels.txt  |   0
 .../codepoint/IndicFontFeatureCodepoint-Digits.txt |   0
 ...IndicFontFeatureCodepoint-IndependentVowels.txt |   0
 .../IndicFontFeatureCodepoint-Numerics.txt         |   0
 .../IndicFontFeatureCodepoint-Reserved.txt         |   0
 .../IndicFontFeatureCodepoint-Symbols.txt          |   0
 .../IndicFontFeatureCodepoint-TamilSymbol.txt      |   0
 .../IndicFontFeatureCodepoint-VariousSigns.txt     |   0
 .../utrrs/gpos/IndicFontFeatureGPOS-AboveBase.txt  |   0
 .../utrrs/gpos/IndicFontFeatureGPOS-BelowBase.txt  |   0
 .../utrrs/gsub/IndicFontFeatureGSUB.txt            |   0
 .../shaper-indic/indic/script-telugu/misc/misc.txt |   0
 .../shaper-indic/indic/script-telugu/utrrs/LICENSE |   0
 .../shaper-indic/indic/script-telugu/utrrs/README  |   0
 .../shaper-indic/indic/script-telugu/utrrs/SOURCES |   0
 .../IndicFontFeatureCodepoint-AdditionalVowels.txt |   0
 .../IndicFontFeatureCodepoint-Consonants.txt       |   0
 .../IndicFontFeatureCodepoint-DependentVowels.txt  |   0
 .../codepoint/IndicFontFeatureCodepoint-Digits.txt |   0
 ...IndicFontFeatureCodepoint-IndependentVowels.txt |   0
 .../IndicFontFeatureCodepoint-Reserved.txt         |   0
 .../IndicFontFeatureCodepoint-VariousSigns.txt     |   0
 .../utrrs/gpos/IndicFontFeatureGPOS-AboveBase.txt  |   0
 .../utrrs/gsub/IndicFontFeatureGSUB.txt            |   0
 .../south-east-asian/script-javanese/misc.txt      |   0
 .../south-east-asian/script-khmer/misc/misc.txt    |   0
 .../script-khmer/misc/other-marks-invalid.txt      |   0
 .../script-khmer/misc/other-marks.txt              |   0
 .../shaper-myanmar/script-myanmar/misc/misc.txt    |   0
 .../shaper-myanmar/script-myanmar/misc/otspec.txt  |   1 -
 .../shaper-myanmar/script-myanmar/misc/utn11.txt   |   0
 .../shaper-thai/script-lao/misc/sara-am.txt        |   0
 .../shaper-thai/script-thai/misc/misc.txt          |   0
 .../shaper-thai/script-thai/misc/phinthu.txt       |   0
 .../shaper-thai/script-thai/misc/pua-shaping.txt   |   0
 .../shaper-thai/script-thai/misc/sara-am.txt       |   0
 .../script-tibetan/misc/contractions.txt           |   0
 .../shaper-tibetan/script-tibetan/misc/misc.txt    |   0
 .../shaper-use/script-batak/misc.txt               |   0
 .../shaper-use/script-buginese/misc.txt            |  92
 +++++++++----------
 .../shaper-use/script-cham/misc.txt                |   0
 .../shaper-use/script-kaithi/misc.txt              |   0
 .../shaper-use/script-kharoshti/misc.txt           |   0
 .../shaper-use/script-tai-tham/misc.txt            |   0
 .../shaper-use/script-tai-tham/torture.txt         |   0
 .../script-syriac/misc/abbreviation-mark.txt       |  11 ---
 420 files changed, 573 insertions(+), 590 deletions(-)

commit 9a3ad307ea91794712531dfc688700c11a1ff263
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 9 21:35:21 2018 +0100

    [test] Remove unused hb-diff-ngrams

 test/shaping/Makefile.am      |  1 -
 test/shaping/hb-diff-ngrams   |  5 -----
 test/shaping/hb_test_tools.py | 26 --------------------------
 3 files changed, 32 deletions(-)

commit b6b460024d29362914c72cc5f8fbaec215db5b16
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 9 21:33:38 2018 +0100

    [test] Remove unused manifest stuff

 test/shaping/Makefile.am        | 7 -------
 test/shaping/hb-manifest-read   | 5 -----
 test/shaping/hb-manifest-update | 5 -----
 3 files changed, 17 deletions(-)

commit ebbee7c2475db789b622250addbf549695da2890
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 9 18:23:19 2018 +0100

    [test] Move test files around

 test/fuzzing/run-fuzzer-tests.py                   |  2 +-
 test/shaping/Makefile.am                           | 82
 +++++++++++-----------
 .../tests/{ => misc}/arabic-fallback-shaping.tests |  0
 .../tests/{ => misc}/arabic-feature-order.tests    |  0
 .../tests/{ => misc}/arabic-like-joining.tests     |  0
 .../tests/{ => misc}/arabic-mark-order.tests       |  0
 test/shaping/tests/{ => misc}/arabic-stch.tests    |  0
 .../tests/{ => misc}/automatic-fractions.tests     |  0
 test/shaping/tests/{ => misc}/cluster.tests        |  0
 test/shaping/tests/{ => misc}/color-fonts.tests    |  0
 .../tests/{ => misc}/context-matching.tests        |  0
 .../tests/{ => misc}/cursive-positioning.tests     |  0
 .../tests/{ => misc}/default-ignorables.tests      |  0
 .../shaping/tests/{ => misc}/emoji-flag-tags.tests |  0
 .../tests/{ => misc}/fallback-positioning.tests    |  0
 test/shaping/tests/{ => misc}/fuzzed.tests         |  0
 test/shaping/tests/{ => misc}/hangul-jamo.tests    |  0
 test/shaping/tests/{ => misc}/hyphens.tests        |  0
 .../{ => misc}/indic-consonant-with-stacker.tests  |  0
 test/shaping/tests/{ => misc}/indic-init.tests     |  0
 .../{ => misc}/indic-joiner-candrabindu.tests      |  0
 test/shaping/tests/{ => misc}/indic-joiners.tests  |  0
 test/shaping/tests/{ => misc}/indic-old-spec.tests |  0
 .../tests/{ => misc}/indic-pref-blocking.tests     |  0
 .../tests/{ => misc}/indic-script-extensions.tests |  0
 .../tests/{ => misc}/indic-special-cases.tests     |  0
 test/shaping/tests/{ => misc}/indic-syllable.tests |  0
 test/shaping/tests/{ => misc}/language-tags.tests  |  0
 test/shaping/tests/{ => misc}/ligature-id.tests    |  0
 .../shaping/tests/{ => misc}/mark-attachment.tests |  0
 .../tests/{ => misc}/mark-filtering-sets.tests     |  0
 .../{ => misc}/mongolian-variation-selector.tests  |  0
 test/shaping/tests/{ => misc}/simple.tests         |  0
 test/shaping/tests/{ => misc}/spaces.tests         |  0
 .../tests/{ => misc}/tibetan-contractions-1.tests  |  0
 .../tests/{ => misc}/tibetan-contractions-2.tests  |  0
 test/shaping/tests/{ => misc}/tibetan-vowels.tests |  0
 test/shaping/tests/{ => misc}/use-marchen.tests    |  0
 test/shaping/tests/{ => misc}/use-syllable.tests   |  0
 test/shaping/tests/{ => misc}/use.tests            |  0
 .../shaping/tests/{ => misc}/variations-rvrn.tests |  0
 test/shaping/tests/{ => misc}/vertical.tests       |  0
 .../tests/{ => misc}/zero-width-marks.tests        |  0
 43 files changed, 42 insertions(+), 42 deletions(-)

commit 748b989a1fa931b011d6a4e3db39dfdc632946b2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 9 17:55:17 2018 +0100

    [aat/morx] Implement NoncontextualSubtables

    Also makes hb-ot-shape call morx for now instead of GSUB... Just
    for testing.

 src/hb-aat-layout-common-private.hh | 34 +++++++--------
 src/hb-aat-layout-morx-table.hh     | 82
 ++++++++++++++++++++++++++++++++++---
 src/hb-aat-layout-private.hh        |  3 ++
 src/hb-aat-layout.cc                | 13 +++++-
 src/hb-ot-shape.cc                  |  6 +++
 5 files changed, 111 insertions(+), 27 deletions(-)

commit 4cf3ab1d8192862f8d3c52fdcaec567735916116
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 9 16:32:58 2018 +0100

    Minor

 src/hb-ot-shape.cc | 2 --
 1 file changed, 2 deletions(-)

commit 470fe5b603b409bef136fdd4e9b33d2704dc77b7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 9 15:48:51 2018 +0100

    [aat] Implement Lookup table

    Untested, but compiles.

 src/hb-aat-layout-common-private.hh | 308
 +++++++++++++++++++++++++++++++++++-
 src/hb-aat-layout-morx-table.hh     |   9 +-
 src/hb-aat-layout.cc                |  14 ++
 src/hb-face.cc                      |   6 +-
 src/hb-open-type-private.hh         |  16 +-
 src/hb-ot-cbdt-table.hh             |   4 +-
 src/hb-ot-cmap-table.hh             |   2 +-
 src/hb-ot-glyf-table.hh             |   6 +-
 src/hb-ot-hmtx-table.hh             |   8 +-
 src/hb-ot-kern-table.hh             |   2 +-
 src/hb-ot-layout.cc                 |   6 +-
 src/hb-ot-post-table.hh             |   2 +-
 src/hb-uniscribe.cc                 |   2 +-
 13 files changed, 355 insertions(+), 30 deletions(-)

commit 4646a80a873fa164b9cf09128bc6b6fe2fc5cce2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 9 12:06:38 2018 +0100

    Minor

 src/hb-ot-layout-common-private.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 7c7cb42d8125d7e598bfa70f93053cafe38b325a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 8 14:32:55 2018 +0000

    [aat] Update previous commits for rebase on master

 src/hb-aat-layout-common-private.hh | 14 +++++++-------
 src/hb-aat-layout-morx-table.hh     | 28 ++++++++++++++--------------
 src/hb-open-type-private.hh         |  5 -----
 3 files changed, 21 insertions(+), 26 deletions(-)

commit a0175e75bc40b5496d7fd37afd434cb2000e5b9b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 17 16:55:54 2017 -0700

    [aat] Start implementing common table formats

 src/Makefile.sources                |   2 +
 src/hb-aat-layout-common-private.hh | 134
 ++++++++++++++++++++++++++++++++++++
 src/hb-aat-layout-morx-table.hh     |   1 +
 src/hb-aat-layout-private.hh        |  37 ++++++++++
 src/hb-aat-layout.cc                |   1 +
 5 files changed, 175 insertions(+)

commit c71b55a223d14f8bb7fa355efc586e824b7d4d8f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 14 17:24:36 2017 -0700

    [aat] Start implementing Apple AAT morx table

 src/Makefile.sources            |   2 +
 src/hb-aat-layout-morx-table.hh | 275
 ++++++++++++++++++++++++++++++++++++++++
 src/hb-aat-layout.cc            |  42 ++++++
 src/hb-open-type-private.hh     |   5 +
 src/hb-ot-layout-private.hh     |   5 +
 src/hb-ot-layout.cc             |   2 +
 6 files changed, 331 insertions(+)

commit 3c7aeb5c6437b26ad638ab993b724e28376d3ff8
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Jan 9 01:39:42 2018 +0330

    [cmake] Add autotools like feature testing (#683)

 CMakeLists.txt | 22 ++++++++++++++++------
 1 file changed, 16 insertions(+), 6 deletions(-)

commit 0473d95e276ae5df722bc7d371733d8202bdbc3c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 8 10:07:46 2018 +0000

    [ft] Use FT_Done_MM_Var() if available

 configure.ac | 1 +
 src/hb-ft.cc | 4 ++++
 2 files changed, 5 insertions(+)

commit 66d7beff96d622599e1ee8895f2aa84fe2299f1a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 18:09:29 2018 +0000

    [khmer] Relax!

    Apparently we don't use OT_A either.

 src/hb-ot-shape-complex-khmer-machine.rl | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit db0207baff358b20fbe9c3498275ba33f69caf87
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 18:06:00 2018 +0000

    [khmer] Drop another joiner

 src/hb-ot-shape-complex-khmer-machine.rl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 90affe831f08fabcb2dd5ac837c7b0cfbd14e554
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 18:04:56 2018 +0000

    [khmer] Shuffle

 src/hb-ot-shape-complex-khmer-machine.rl | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

commit 65795e3ca246bf65b3cb53e3fe65eca312774e3e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 18:03:00 2018 +0000

    [khmer] Simplify grammar some more

    Numbers down (from 38):

    KHMER: 299090 out of 299124 tests passed. 34 failed (0.0113665%)

 src/hb-ot-shape-complex-khmer-machine.rl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e13ee937310a7aadd83fd266dae382da40dce4f8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 18:01:01 2018 +0000

    [khmer] Clean

 src/hb-ot-shape-complex-khmer-machine.rl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a71c7eb2ca9f8ba90117e1a0c4ce890f0a1640f4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 17:59:43 2018 +0000

    [khmer] Limit number of joiners

 src/hb-ot-shape-complex-khmer-machine.rl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 574e42e1cf6679c8df065d6bb3e8d21bc82395c1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 17:57:39 2018 +0000

    [khmer] Relax number of consonants / matras allowed

    New numbers (down from 39):

    KHMER: 299086 out of 299124 tests passed. 38 failed (0.0127038%)

 src/hb-ot-shape-complex-khmer-machine.rl | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 80c870bcda2f421e80f5579e71fe17fe8db991b8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 17:52:24 2018 +0000

    [khmer] Allow Independent Vowels where stacked consonants are allowed

    New numbers (down from 44):

    KHMER: 299085 out of 299124 tests passed. 39 failed (0.0130381%)

 src/hb-ot-shape-complex-khmer-machine.rl | 4 ++--
 src/hb-ot-shape-complex-khmer.cc         | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

commit 9bd486c480b8fd3125ef6b6cc0442a566f669cb8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 17:47:35 2018 +0000

    [khmer] Drop some more joiners

 src/hb-ot-shape-complex-khmer-machine.rl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 5278265853c36400ffc284fd517cc7b7c42ed0e7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 17:46:49 2018 +0000

    [khmer] Drop some more

 src/hb-ot-shape-complex-khmer-machine.rl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit efefd87f3354d0ae6f599ea30672cb0b74dfcd80
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 17:45:48 2018 +0000

    [khmer] Drop some more grammar

 src/hb-ot-shape-complex-khmer-machine.rl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 82e6bf8e0c27d2fd16a908eed0c73e95b1a2c0f5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 17:44:18 2018 +0000

    [khmer] Drop some more from grammar

 src/hb-ot-shape-complex-khmer-machine.rl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 957e8ea8a9f981775ecde7dd1e2bf4023cf79dba
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 17:43:31 2018 +0000

    [khmer] Drop final_halant_group

 src/hb-ot-shape-complex-khmer-machine.rl | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit bbfdbbdc5eca96e8c527147e5a78cd185b9f243d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 17:34:26 2018 +0000

    Minor

 src/hb-ot-shape-complex-indic-machine.rl | 1 -
 src/hb-ot-shape-complex-khmer-machine.rl | 1 -
 2 files changed, 2 deletions(-)

commit f6df2515210e9d828fc40173696b185efa5083e3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 17:27:48 2018 +0000

    [indic] Remove unused OT_VD category

 src/hb-ot-shape-complex-indic-machine.rl | 3 +--
 src/hb-ot-shape-complex-indic-private.hh | 2 +-
 src/hb-ot-shape-complex-indic.cc         | 2 +-
 3 files changed, 3 insertions(+), 4 deletions(-)

commit e6618f3bdf79a51f6fb270b468b653dc9cea5b57
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 17:21:55 2018 +0000

    [khmer] Shave off some more from the grammar

 src/hb-ot-shape-complex-khmer-machine.rl |  9 ++-------
 src/hb-ot-shape-complex-khmer.cc         | 34
 ++------------------------------
 2 files changed, 4 insertions(+), 39 deletions(-)

commit 014494d5c0469fe6b3112db3fdb3f2f262673ba1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 17:17:02 2018 +0000

    [khmer] Remove unused symbol clusters

 src/hb-ot-shape-complex-khmer-machine.rl | 4 ----
 1 file changed, 4 deletions(-)

commit bbac984b9390a66c6ae5ee931b278b607f2f2a50
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 17:15:31 2018 +0000

    Minor

 src/hb-ot-shape-complex-indic-machine.rl | 1 -
 src/hb-ot-shape-complex-khmer-machine.rl | 1 -
 2 files changed, 2 deletions(-)

commit 185b68946ad67443e8725e77d724128802de5572
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 17:14:27 2018 +0000

    [khmer] Remove medials from grammar

 src/hb-ot-shape-complex-khmer-machine.rl | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)

commit c265dffdf6c4930e271292226d38a8e515b6b0f8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 17:06:29 2018 +0000

    [khmer] Better fix for dangling final Coeng

    This is how 1471cfee3bb2734dc44c58471362851ad27e8bd8 should have
    been done.

 src/hb-ot-shape-complex-khmer-machine.rl | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit e3fdf1fc2f399e6b79ea022501526a422d372e64
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 17:05:53 2018 +0000

    [khmer] Remove reph/repha support from grammar

 src/hb-ot-shape-complex-khmer-machine.rl | 12 ++++--------
 1 file changed, 4 insertions(+), 8 deletions(-)

commit 0d3a274de1ff8e6a21c7c9857730e2eda402e310
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 17:01:37 2018 +0000

    [khmer] Remove forced_rakar from grammar

    Used by Sinhala only.

 src/hb-ot-shape-complex-khmer-machine.rl | 3 +--
 src/hb-ot-shape-complex-khmer.cc         | 2 +-
 2 files changed, 2 insertions(+), 3 deletions(-)

commit 1471cfee3bb2734dc44c58471362851ad27e8bd8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 16:34:20 2018 +0000

    [khmer] Allow a dangling final Coeng after matras

    Uniscribe seems to allow that.  New numbers:

    KHMER: 299080 out of 299124 tests passed. 44 failed (0.0147096%)

 src/hb-ot-shape-complex-khmer-machine.rl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9eaf077ded0306d492de96b223133431f1a6d42b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 16:28:00 2018 +0000

    [khmer] Remove some more unused code

 src/hb-ot-shape-complex-khmer.cc | 49
 ++--------------------------------------
 1 file changed, 2 insertions(+), 47 deletions(-)

commit bfad6ab897a38aedc82de694ee1a17132f90b25e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 16:13:09 2018 +0000

    [khmer] Remove features not used by Khmer

 src/hb-ot-shape-complex-khmer.cc | 60
 ++++------------------------------------
 1 file changed, 5 insertions(+), 55 deletions(-)

commit 92a99ce084b19dff32d434de446144f0c4796803
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 16:08:44 2018 +0000

    [khmer] Remove rphf feature

 src/hb-ot-shape-complex-khmer.cc | 2 --
 1 file changed, 2 deletions(-)

commit 238b90e77c12674edfd2e03160b8ba2a0298b79d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 16:06:53 2018 +0000

    [khmer] Remove non-Khmer matra positioning code

 src/hb-ot-shape-complex-khmer.cc | 76
 +++++++---------------------------------
 1 file changed, 12 insertions(+), 64 deletions(-)

commit f8553c898a414298403c335f8d2ed6c588a1189f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 16:04:02 2018 +0000

    [khmer] Remove indic_config_t

 src/hb-ot-shape-complex-khmer.cc | 28 ----------------------------
 1 file changed, 28 deletions(-)

commit a119a8bce57abc440ae4c8b9a1342d428a7c9b6a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 16:02:27 2018 +0000

    [khmer] Remove indic_config->reph_mode

 src/hb-ot-shape-complex-khmer.cc | 9 +--------
 1 file changed, 1 insertion(+), 8 deletions(-)

commit c135324af107d3e33420cd0dca4d5bb12fd3f4a1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 16:01:17 2018 +0000

    [khmer] Remove indic_config->reph_pos

 src/hb-ot-shape-complex-khmer.cc | 333
 ++-------------------------------------
 1 file changed, 10 insertions(+), 323 deletions(-)

commit ffcd6c7efd21bf89b41ddbf148b05672a42ecadd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 15:50:05 2018 +0000

    [khmer] Remove indic_config->base_pos

 src/hb-ot-shape-complex-khmer.cc | 229
 ++-------------------------------------
 1 file changed, 7 insertions(+), 222 deletions(-)

commit 0c91638d48d6fb86d1e30fb94c15785707395b42
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 15:45:30 2018 +0000

    [khmer] Remove other scripts

 src/hb-ot-shape-complex-khmer.cc | 131
 ++++++++++-----------------------------
 1 file changed, 34 insertions(+), 97 deletions(-)

commit 4c0199c573f79be5f40e7d4f8433ef6a1c9c24b2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 15:43:48 2018 +0000

    [khmer] Remove indic_config->script

 src/hb-ot-shape-complex-khmer.cc | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 9b135d9524e51cc1e1f35479e015c746ccd8ca5f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 15:43:11 2018 +0000

    [khmer] Remove indic_config->virama

 src/hb-ot-shape-complex-khmer.cc | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

commit 7eb3ac29d388432c311981b20b1aa75f47249bfc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 15:41:31 2018 +0000

    [khmer] Remove indic_config->has_old_spec

 src/hb-ot-shape-complex-khmer.cc | 157
 ++++++---------------------------------
 1 file changed, 21 insertions(+), 136 deletions(-)

commit 961ebf85f1e7d417e056c3927ee73857f6f4cde6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 15:36:53 2018 +0000

    [khmer] Remove Halant from Khmer shaper

 src/hb-ot-shape-complex-indic-private.hh |  1 -
 src/hb-ot-shape-complex-khmer-machine.rl |  7 +++----
 src/hb-ot-shape-complex-khmer.cc         | 32
 ++++++++++++++++----------------
 3 files changed, 19 insertions(+), 21 deletions(-)

commit 9761f9d78214323b9ad58dd0b8ba41851c9e2d54
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 15:33:11 2018 +0000

    [indic] Remove more Khmer-specific stuff from Indic shaper

    No numbers changed.

 src/hb-ot-shape-complex-indic-machine.rl |  8 ++---
 src/hb-ot-shape-complex-indic.cc         | 57
 ++++++++++++--------------------
 2 files changed, 25 insertions(+), 40 deletions(-)

commit 075895364435ee88936696bcb5457283c4bb1a29
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 15:08:28 2018 +0000

    [indic] Remove main Khmer stuff

 src/hb-ot-shape-complex-indic.cc | 73
 ++--------------------------------------
 1 file changed, 2 insertions(+), 71 deletions(-)

commit dcf4d95fea45e19fbb3b39f0211b2aa96a907473
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 14:54:31 2018 +0000

    [khmer] Split off Khmer shaper from Indic

    Towards fixing https://github.com/harfbuzz/harfbuzz/issues/667
    The Khmer spec is different enough from other Indic ones to require
    its own grammar.

    No change in functionality.  Test numbers are:

    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: 60729 out of 60747 tests passed. 18 failed (0.0296311%)
    KANNADA: 951300 out of 951913 tests passed. 613 failed (0.0643966%)
    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%)

 src/Makefile.sources                     |    3 +
 src/hb-ot-shape-complex-khmer-machine.rl |  130 +++
 src/hb-ot-shape-complex-khmer.cc         | 1867
 ++++++++++++++++++++++++++++++
 src/hb-ot-shape-complex-private.hh       |    5 +-
 4 files changed, 2003 insertions(+), 2 deletions(-)

commit 1e05ea79d057fbae5f680589d4ee7d3c6a971689
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 14:01:37 2018 +0000

    [ot] Short-circuit base instance advance variation

 src/hb-ot-hmtx-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 54b2b93722c9f067199cd7145dfd065d5b6b2f0c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 13:20:21 2018 +0000

    [ot] Fix VariationStore evaluation algorithm

    Ouch!  Missing coords should still be evaluated as coord=0, which
    most of the time results in a factor of 0.  We were skipping these,
    which was equivalent to a factor of 1.

    Fixes https://github.com/harfbuzz/harfbuzz/issues/652

 src/hb-ot-layout-common-private.hh | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit a3afdd1e080bb181ddec126b6233d52438882a13
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 13:17:02 2018 +0000

    Minor

 src/hb-ot-layout-common-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit cb43bdbc2f3a16061c33596b15b29eb7f9713871
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 13:06:25 2018 +0000

    [ft] If there's no variations set, don't set them on hb-font

 src/hb-ft.cc | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

commit ed2f458b143327d07e67fdb976ead9d7ff2863f8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 12:55:39 2018 +0000

    Add test font for previous commit

 .../sha1sum/21b7fb9c1eeae260473809fbc1fe330f66a507cd.ttf | Bin 0 ->
 4816 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)

commit 127bcc6ece4da64e807f652dd84a17c6a8c5e300
Merge: 72bec1cd 8c0d1916
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 12:50:22 2018 +0000

    Merge remote-tracking branch 'fdo/master'

commit 8c0d1916a41f0fb32340ce5257de780acf598353
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 5 12:46:12 2018 +0000

    Improve CGJ skipping logic

    Previously we made CGJ unskippable.  Now, if CGJ did NOT prevent
    any reordering, allow skipping over it.  To make this work we
    had to make changes to the Arabic mark reordering algorithm
    implementation to renumber moved MCM marks.  See comments.

    Fixes https://github.com/harfbuzz/harfbuzz/issues/554

 src/hb-buffer-private.hh                   |  1 +
 src/hb-ot-layout-private.hh                | 11 ++++++++-
 src/hb-ot-shape-complex-arabic.cc          | 37
 ++++++++++++++++++++++--------
 src/hb-ot-shape-normalize.cc               | 30 +++++++++++++-----------
 test/shaping/tests/arabic-mark-order.tests |  4 ++++
 5 files changed, 58 insertions(+), 25 deletions(-)

commit 72bec1cd09f919f3826345db4832752ec96ff5c5
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Jan 5 12:42:20 2018 +0330

    Improve tests (#679)

 .circleci/config.yml        |  2 +-
 CMakeLists.txt              | 52
 +++++++++++++++++++++++++++++++++++----------
 autogen.sh                  |  6 ++++--
 src/Makefile.am             |  3 +--
 src/check-defs.sh           |  2 +-
 src/check-header-guards.sh  |  2 +-
 src/check-libstdc++.sh      |  2 +-
 src/check-static-inits.sh   |  2 +-
 src/check-symbols.sh        |  2 +-
 test/fuzzing/CMakeLists.txt | 11 +++++++++-
 10 files changed, 62 insertions(+), 22 deletions(-)

commit 293e443529d0621b9f94ea15d1425104394f6b9e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 4 16:06:25 2018 +0000

    Minor

 src/check-c-linkage-decls.sh | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 8a0952db7e521320cd4d8b67b287f7d33c21b6e0
Author: Bruce Mitchener <bruce.mitchener@gmail.com>
Date:   Thu Jan 4 18:40:10 2018 +0700

    atomics: Favor compiler primitives over macOS APIs. (#676)

    In macOS 10.12, the `OSMemoryBarrier` and related APIs were deprecated
    in favor of using `std::atomic`. On the way to supporting
    `std::atomic`,
    we can favor using the "Intel primitives" which are also available on
    macOS.

 src/hb-atomic-private.hh | 46
 +++++++++++++++++++++++-----------------------
 1 file changed, 23 insertions(+), 23 deletions(-)

commit 4f80078eb035054db0f6e33cf4f7345c6c85cb12
Author: Bruce Mitchener <bruce.mitchener@gmail.com>
Date:   Thu Jan 4 18:37:35 2018 +0700

    [cmake] Colorize output when using cmake + ninja. (#674)

    Due to how ninja runs clang and gcc, it doesn't colorize the output
    like make does. This forces color output in this situation.

 CMakeLists.txt | 10 ++++++++++
 1 file changed, 10 insertions(+)

commit 5ed26fc5bdfdab0ff41a8861b54395c0bbbad248
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Jan 4 10:11:34 2018 +0330

    [cmake] Run src/ tests (#675)

 .circleci/config.yml      |  9 ++++-----
 CMakeLists.txt            | 35 ++++++++++++++++++++++++++++++++---
 src/Makefile.am           |  1 +
 src/check-defs.sh         |  3 ++-
 src/check-libstdc++.sh    |  3 ++-
 src/check-static-inits.sh |  3 ++-
 src/check-symbols.sh      |  3 ++-
 7 files changed, 45 insertions(+), 12 deletions(-)

commit f8daeef4c4451084a781db3a8a04807c0f0051ef
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 3 14:27:34 2018 +0000

    [use] Simplify more

 src/gen-use-table.py                 | 11 +------
 src/hb-ot-shape-complex-use-table.cc | 62
 +++++++++++++++++++++---------------
 2 files changed, 38 insertions(+), 35 deletions(-)

commit 877d15e73c24159b26bb7cc6d2f62045d445d0fc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 3 14:24:44 2018 +0000

    [use] Simplify

    Fixes https://github.com/harfbuzz/harfbuzz/pull/661

 src/gen-use-table.py                 | 2 +-
 src/hb-ot-shape-complex-use-table.cc | 3 +--
 2 files changed, 2 insertions(+), 3 deletions(-)

commit 308f419215716460479fbde482d66d1687176102
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 3 14:22:07 2018 +0000

    [use] Fix Brahmi Number Joiner 1107F

    Fixes https://github.com/harfbuzz/harfbuzz/pull/660

 src/gen-indic-table.py                 | 6 +++---
 src/gen-use-table.py                   | 6 +++---
 src/hb-ot-shape-complex-indic-table.cc | 4 ++--
 src/hb-ot-shape-complex-use-table.cc   | 6 +++---
 4 files changed, 11 insertions(+), 11 deletions(-)

commit 7b837e20d2b4b6cd7be0b181ac5cdfeb467bd146
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 3 12:46:29 2018 +0000

    [util] Add TODO item

 util/options.cc | 1 +
 1 file changed, 1 insertion(+)

commit 70807ad274be39d58a5b43e12d4585325cb314c4
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Jan 2 23:52:12 2018 +0330

    Fix make check issue on out-of-tree builds and test it (#672)

 .circleci/config.yml             |  8 ++++----
 test/fuzzing/Makefile.am         | 18 +-----------------
 test/fuzzing/run-fuzzer-tests.py |  8 +++++---
 test/shaping/run-tests.py        |  5 +++++
 4 files changed, 15 insertions(+), 24 deletions(-)

commit 85ec6d34439194a88c7dfdd8303369311e08e031
Author: Bruce Mitchener <bruce.mitchener@gmail.com>
Date:   Wed Jan 3 01:23:23 2018 +0700

    Fix typos.

 docs/usermanual-clusters.xml         | 4 ++--
 docs/usermanual-install-harfbuzz.xml | 2 +-
 src/hb-font.h                        | 2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)

commit 4f6754ac0190f04b5f27306b087827b8f2e13046
Author: Bruce Mitchener <bruce.mitchener@gmail.com>
Date:   Wed Jan 3 00:15:18 2018 +0700

    Improve Markdown usage in BUILD.md.

 BUILD.md | 36 +++++++++++++++++++++++-------------
 1 file changed, 23 insertions(+), 13 deletions(-)

commit 3db1d34264d9405c7356668aa3c8ed3ab103da3c
Author: Romain Ouabdelkader <rouabdelkader@gopro.com>
Date:   Thu Dec 21 14:39:34 2017 +0100

    link with CoreFoundation when using CoreText

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 4e3cf91af29ff654eca91e43c0af1c1a7171b9fa
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Jan 1 11:17:51 2018 +0330

    [cmake] Run rest of the tests on Windows (#668)

 appveyor.yml                     |  6 +++---
 test/CMakeLists.txt              |  5 +----
 test/fuzzing/CMakeLists.txt      | 12 ++++++------
 test/fuzzing/Makefile.am         |  5 +----
 test/fuzzing/run-fuzzer-tests.py | 12 +++++++++---
 test/shaping/CMakeLists.txt      |  9 ++++-----
 test/shaping/run-tests.py        | 10 +++++++++-
 7 files changed, 33 insertions(+), 26 deletions(-)

commit 2dbdeb14214487acd0ff011386c49263ce800813
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Dec 29 23:13:29 2017 +0330

    [cmake] Run fuzzing and shaping tests (#666)

 .circleci/config.yml             |  2 +-
 CMakeLists.txt                   | 59
 ++++++++++++++++++++++++----------------
 appveyor.yml                     |  4 +--
 test/CMakeLists.txt              |  5 ++++
 test/api/CMakeLists.txt          | 48 +++++++++++++-------------------
 test/fuzzing/CMakeLists.txt      |  9 ++++++
 test/fuzzing/Makefile.am         | 18 ++++++++++++
 test/fuzzing/run-fuzzer-tests.py | 28 +++++++++++++++++++
 test/shaping/CMakeLists.txt      | 11 ++++++++
 test/shaping/Makefile.am         |  3 +-
 test/shaping/run-tests.py        |  3 +-
 11 files changed, 132 insertions(+), 58 deletions(-)

commit 24b30faa2a285c6e4e46a18c346def2183fc2793
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Dec 25 22:01:28 2017 +0330

    [cmake] Use GNUInstallDirs values (#665)

 CMakeLists.txt | 170
 ++++++++++++++++++++++++++++-----------------------------
 1 file changed, 85 insertions(+), 85 deletions(-)

commit 7d397c5d5ca684fae824a61dabf5bc422d0a516b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 24 17:53:32 2017 -0500

    Add Coverity badge

 README | 1 +
 1 file changed, 1 insertion(+)

commit 50163976d2a5fb34e0b4c011408d581b33aaa255
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Dec 25 01:55:48 2017 +0330

    [cmake] Enable cmake tests on distribution and test it (#664)

 .circleci/config.yml | 3 ++-
 test/Makefile.am     | 6 ++++++
 test/api/Makefile.am | 1 +
 3 files changed, 9 insertions(+), 1 deletion(-)

commit 7bfdf1a94192dd83ab55202d259703f36ed060e5
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Wed Nov 22 16:32:52 2017 -0500

    Forbid Batak killers after vowel signs

 src/gen-use-table.py                                     |   3 +++
 src/hb-ot-shape-complex-use-table.cc                     |   2 +-
 .../sha1sum/59a585a63b3df608fbeef00956c8c108deec7de6.ttf | Bin 0 ->
 1164 bytes
 test/shaping/tests/use-syllable.tests                    |   1 +
 4 files changed, 5 insertions(+), 1 deletion(-)

commit 9890782736b9ce708c1fedd1cbb3db45cfef4c69
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Dec 25 01:32:46 2017 +0330

    [ci] Add -Wno-attributes to djgpp, add alpine, format (#663)

 .circleci/config.yml | 40 ++++++++++++++++++++++++++++++----------
 1 file changed, 30 insertions(+), 10 deletions(-)

commit 72ecaae0ad4c9f1685f7d524990e92a26fcd5611
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 24 16:05:07 2017 -0500

    [use] Allow ZWJ before/after Halant

    https://github.com/harfbuzz/harfbuzz/issues/542#issuecomment-353169729

 src/hb-ot-shape-complex-use-machine.rl | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit bc92245b681098f0bfa712217851a5ba3dabeaf3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 20 13:19:33 2017 -0500

    Minor

 src/main.cc | 1 -
 1 file changed, 1 deletion(-)

commit 81dfc29d2dbc755301e702ea5427829d02abc693
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Dec 21 20:15:37 2017 +0330

    [ci] Add a DOS/djgpp compiler (#659)

 .circleci/config.yml | 9 +++++++++
 1 file changed, 9 insertions(+)

commit 007a2a4317227b8fb4c764c590203c85fc3da5fd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 20 12:09:00 2017 -0500

    1.7.4

 NEWS         | 7 +++++++
 configure.ac | 2 +-
 2 files changed, 8 insertions(+), 1 deletion(-)

commit a9432bde7e61894056a42ea24d56fd7fd908a1ce
Author: Volker H. Simonis <volker.simonis@gmail.com>
Date:   Tue Dec 19 11:33:25 2017 +0100

    HarfBuzz 1.7.1 and later don't compile on AIX with xlC (#655)

 src/hb-ot-shape-complex-arabic-fallback.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 2fe5f885b6f66f2665292b93e07baaae0aa46da8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 19 14:48:26 2017 -0500

    [set] Handle nil set in add_range() / add_sorted_array()

    Fixes https://github.com/harfbuzz/harfbuzz/issues/657

 src/hb-set-private.hh | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit b5bbb791d32467b91caf6f1bf7ccee7cb2ca8c52
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 18 09:18:51 2017 -0500

    1.7.3

 NEWS         | 10 ++++++++++
 configure.ac |  2 +-
 2 files changed, 11 insertions(+), 1 deletion(-)

commit 1245395a60ab6b04fc4653c448a97bb6ffee672c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 17 12:32:33 2017 -0500

    [coretext] In hb_coretext_font_create() set ptem

    Otherwise setting the CTFont was ineffective as it would have been
    recreated anyway unless font size was set to 18 CSS points.

 src/hb-coretext.cc | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)

commit 493a005d9527b6075f3c1ca4b41c22d7805f975c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Dec 16 11:49:39 2017 -0500

    [set] In add_sorted_array(), bail if data is not sorted

 src/hb-set-private.hh | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

commit a7bd6d7a4c53ff61d7d8286a594aaa0a0e15b1a1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Dec 16 11:11:18 2017 -0500

    [collect_glyphs] Bail if input data looks like garbage

    Specificaly, when a range or sorted array has unexpected order,
    we take that as
    font data being garbage and bail out.  This fixes significant slowdown
    on a bad
    version of Chandas font which has a 600KB GPOS with garbage inside.

    Later on, I like to add a maximum-work counter for collect_glyphs
    to protect
    against malicious fonts as well.

    Fixes https://bugs.chromium.org/p/chromium/issues/detail?id=794896

 src/hb-ot-layout-common-private.hh | 14 +++++++-------
 src/hb-set-private.hh              |  4 ++--
 2 files changed, 9 insertions(+), 9 deletions(-)

commit 1ce7d6e215ef9d5386010bcdbbca79ef01811596
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Dec 16 11:36:16 2017 -0500

    [set] Optimize add_array() / add_sorted_array()

    Does page lookup as needed.

 src/hb-set-private.hh | 54
 ++++++++++++++++++++++++++++++++++++---------------
 1 file changed, 38 insertions(+), 16 deletions(-)

commit 71e6adf1e2d65eb905a0ba247672fe36169955ef
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Dec 16 11:07:37 2017 -0500

    [collect_glyphs] handle ClassDef better

 src/hb-ot-layout-common-private.hh   | 63
 ++++++++++++++++++++++++++++++------
 src/hb-ot-layout-gdef-table.hh       |  2 +-
 src/hb-ot-layout-gpos-table.hh       |  5 +--
 src/hb-ot-layout-gsubgpos-private.hh |  2 +-
 4 files changed, 56 insertions(+), 16 deletions(-)

commit 87cc5a65cb4b98a3a857b5846085ef0814b392a8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Dec 16 06:18:07 2017 -0800

    [collect_glyphs] In PairPosFornat2 do not collect classDef1

    The coverage already covered that.

 src/hb-ot-layout-gpos-table.hh | 8 ++------
 1 file changed, 2 insertions(+), 6 deletions(-)

commit 81f27df4d9db1bfc1dd04593cbd121397b86e9a6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Dec 16 06:12:06 2017 -0800

    More work towards improving collect_glyphs() against bad input

    The three "XXXXX"'s should be switched to false.  Doing that
    separately for ease
    of bisecting...

 src/hb-ot-layout-common-private.hh |  7 +++----
 src/hb-ot-layout-gpos-table.hh     | 25 ++++++++++---------------
 src/hb-ot-layout-gsub-table.hh     | 35
 +++++++++++++----------------------
 src/hb-set-digest-private.hh       |  6 ++++--
 src/hb-set-private.hh              | 36
 ++++++++++++++++++------------------
 5 files changed, 48 insertions(+), 61 deletions(-)

commit 5d02572034e3dafbe87000fd0aa34b858bd95075
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 14 19:33:55 2017 -0800

    [set] Add add_sorted_array()

    Not optimized to use sortedness yet.  Also start putting in place
    infra
    to faster reject bad data.

    A version of Chandas.ttf found on some Chrome bots has 660kb of GPOS,
    mostly junk.  That is causing 48 million of set->add() calls in
    collect_glyphs(), which is insane.

    In the upcoming commits, I'll be speeding that up by optimizing
    add_sorted_array(), while also reducing work by rejecting out-of-sort
    arrays quickly and propagate the rejection.

    Part of https://bugs.chromium.org/p/chromium/issues/detail?id=794896

 src/hb-ot-layout-common-private.hh   | 51
 +++++++++++++++++++++++-------------
 src/hb-ot-layout-gdef-table.hh       |  2 +-
 src/hb-ot-layout-gpos-table.hh       | 10 +++----
 src/hb-ot-layout-gsubgpos-private.hh |  2 +-
 src/hb-set-digest-private.hh         | 31 ++++++++++++++++++----
 src/hb-set-private.hh                | 21 +++++++++++++--
 6 files changed, 84 insertions(+), 33 deletions(-)

commit 9d6511a7343ba150e8072e5fe91732db54a92309
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 14 19:04:55 2017 -0800

    [set] Reduce number of preallocated pages from 8 to 1

    Now that pagesize is 8192, this feels better.

 src/hb-set-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ae2e2b068e1ab68d1f814165cb86fa38deef1f5b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 14 18:15:14 2017 -0800

    Fix partial tracing debug builds

 src/hb-debug.hh | 16 +++++++++++++---
 1 file changed, 13 insertions(+), 3 deletions(-)

commit 9daa88cd790b80a8bc7eaae2e7eec6f2f9fc60cf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 14 13:37:48 2017 -0800

    Minor

 src/hb-set-private.hh | 11 +++++++++++
 src/hb-set.cc         |  6 ++----
 2 files changed, 13 insertions(+), 4 deletions(-)

commit f424a342233ae32bbfabbdeadf59c82420b0880b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 14 13:30:38 2017 -0800

    [set] Change pagesize from 512 bits to 8192 bits

    Fixes perf regression on some heavy fonts in Chrome's FT+HB
    interaction.

    See:
    https://bugs.chromium.org/p/chromium/issues/detail?id=782220

    More work to be done:
    https://bugs.chromium.org/p/chromium/issues/detail?id=794896

 src/hb-set-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0fe62c1f333200523e10663f47a58b82e3f22154
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 13 13:12:20 2017 -0800

    [set] Add add_array()

    To be used to optimize adding a whole bunch of (sorted) items at
    the same time,
    as in CoverageFormat1.

 src/hb-ot-layout-common-private.hh |  4 +---
 src/hb-set-digest-private.hh       | 12 ++++++++++++
 src/hb-set-private.hh              |  6 ++++++
 3 files changed, 19 insertions(+), 3 deletions(-)

commit 20e69c950d431391f92335f8845e5d4291aca8f3
Author: ebraminio <ebrahim@gnu.org>
Date:   Thu Dec 7 12:24:12 2017 +0330

    [test] print commented line, like the original script (#649)

 test/shaping/run-tests.py | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 71ad2777c52aeb0842038881899499a49cb895f2
Author: ebraminio <ebrahim@gnu.org>
Date:   Thu Dec 7 11:35:36 2017 +0330

    [ci] Add an after distribution test runner (#648)

 .circleci/config.yml | 10 ++++++++++
 1 file changed, 10 insertions(+)

commit 5f061d27d5289c7608a6579dca668b1f5be7f4e8
Author: ebraminio <ebrahim@gnu.org>
Date:   Thu Dec 7 11:22:55 2017 +0330

    Rewrite run-tests in python (#647)

 test/shaping/Makefile.am  |   4 +-
 test/shaping/run-tests.py | 115
 ++++++++++++++++++++++++++++++++++++++++++++++
 test/shaping/run-tests.sh |  65 --------------------------
 3 files changed, 117 insertions(+), 67 deletions(-)

commit 3ce6c7bd96296a44950110e84ade76c7c1df06e4
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Wed Dec 6 21:08:20 2017 +0200

    [ci] Sort out Travis configuration

    Use a matrix to avoid a gazillion if's.

 .ci/deploy-docs.sh   |  2 ++
 .ci/run-coveralls.sh | 14 +++++++++++
 .travis.yml          | 69
 ++++++++++++++++++++++++++++++++--------------------
 3 files changed, 58 insertions(+), 27 deletions(-)

commit 5a6d2b986a02fc47fa9dcbb330e6949af8e375ff
Author: ebraminio <ebrahim@gnu.org>
Date:   Wed Dec 6 18:27:27 2017 +0330

    [ci] minor improvements (#644)

 .circleci/config.yml | 3 +++
 appveyor.yml         | 2 +-
 2 files changed, 4 insertions(+), 1 deletion(-)

commit 840a32e3f3ed0a85bfa84e69efaeb504d92d1aa7
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Wed Dec 6 00:49:25 2017 +0200

    Run cmake tests on CI builds

 .circleci/config.yml | 6 ++++--
 appveyor.yml         | 2 +-
 2 files changed, 5 insertions(+), 3 deletions(-)

commit c8609551485cfca6f9629c565b9dd5f02aa14f3e
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Wed Dec 6 00:43:28 2017 +0200

    Add API tests to cmake build

 CMakeLists.txt          |  5 +++++
 test/CMakeLists.txt     |  1 +
 test/api/CMakeLists.txt | 39 +++++++++++++++++++++++++++++++++++++++
 test/api/hb-test.h      |  2 ++
 test/api/test-c.c       |  2 ++
 5 files changed, 49 insertions(+)

commit f19126dd35b03f6e05a67cbc406b3ce4a3e35022
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Tue Dec 5 22:52:54 2017 +0200

    We are already inside “if HAVE_GLIB” check

 test/api/Makefile.am | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit 7af48a3f37abac0aa1a1ad79c98399a9a71bd903
Author: ebraminio <ebrahim@gnu.org>
Date:   Wed Dec 6 14:22:19 2017 +0330

    [ci] Don't cache msys2 folder

 appveyor.yml | 1 -
 1 file changed, 1 deletion(-)

commit b6f505c7164e302d2990cf056b73e918a641e976
Author: ebraminio <ebrahim@gnu.org>
Date:   Wed Dec 6 13:51:04 2017 +0330

    [ci] Enable glib and freetype on appveyor cmake (#643)

 appveyor.yml | 29 +++++++++++++++++++++--------
 1 file changed, 21 insertions(+), 8 deletions(-)

commit 03b7a221f701a9b003890878e730ad175c3fdd86
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 5 13:12:11 2017 -0800

    [debug] Use %p to print pointers

    Fixes https://github.com/harfbuzz/harfbuzz/issues/640

 src/hb-debug.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 353cc6fbf09d16aad18b48a3a46ec7dd348aedc6
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Dec 6 00:04:30 2017 +0330

    [ci] Fix appveyor badge

 README | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0dc03ef75724376927a7d63b991508c2901fcdf9
Author: Nathan Willis <nwillis@glyphography.com>
Date:   Tue Dec 5 17:43:09 2017 +0000

    Indic: always hyphenate pre-base-reordering, for clarity.

 src/hb-ot-shape-complex-indic.cc | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

commit be59f3cbf4e3269ea05d5a707cdae04a32e097ce
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 5 09:01:28 2017 -0800

    Silence unused-variables warning on MSVC

    Fixes https://github.com/harfbuzz/harfbuzz/issues/635

 src/hb-private.hh | 2 ++
 1 file changed, 2 insertions(+)

commit 80c1b01f054c5d65ca96a568aaf1c28ffe97215b
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Tue Dec 5 08:28:42 2017 -0500

    Allow digits in language system tags

 src/hb-ot-tag.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 85bb89a88bdfae02fb7c27c7b994f4f22723442a
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Mon Dec 4 15:15:27 2017 -0500

    Fix string matching in parse_bool

 src/hb-common.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 0fd89dc61c6a26253aa9bb85e8dfd9faded11440
Author: Olivier Blin <olivier.blin@softathome.com>
Date:   Mon Dec 4 18:58:41 2017 +0100

    [hb-ft] Fix build when Multiple Master font support is disabled
    in freetype

    FT_Set_Var_Blend_Coordinates() is not available when "Multiple Master
    font interface" is disabled in freetype's modules.cfg

 configure.ac         | 1 +
 src/hb-ft.cc         | 2 ++
 util/helper-cairo.cc | 2 ++
 3 files changed, 5 insertions(+)

commit 843f7f70355f62511a5d8be3b905c853bf362629
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 4 08:52:39 2017 -0800

    1.7.2

 NEWS         | 10 ++++++++++
 configure.ac |  2 +-
 2 files changed, 11 insertions(+), 1 deletion(-)

commit eeb26d21d493183f54704487754d53a127b017ae
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Dec 2 15:22:04 2017 -0800

    [set] Actually commit fixes mentioned in previous commit!

 src/hb-set-private.hh | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

commit 20b4672754baf9751642bb37344a6ff4e224dc37
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Dec 2 15:14:26 2017 -0800

    [set] Fix recent changes

    Ouch!

    Add tests.

 test/api/test-set.c | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

commit 0744149cdabd85d632822ff810d3994787bca4b7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Dec 2 15:06:15 2017 -0800

    [set] Protect against bad input in hb_set_add_range()

 src/hb-set-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit d5e29303db47a1868fa9b044ca61e146f882179c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 28 23:11:34 2017 -0800

    [coretext] Add hb_coretext_font_create()

    Fixes https://github.com/harfbuzz/harfbuzz/issues/628

    New API:
    hb_coretext_font_create()

 src/hb-coretext.cc | 55
 ++++++++++++++++++++++++++++++++++--------------------
 src/hb-coretext.h  |  3 +++
 2 files changed, 38 insertions(+), 20 deletions(-)

commit 9d0194b3a8e0c562249337fa0cf4d72e89334263
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 1 13:56:06 2017 -0800

    [set] Optimize add_range() some more

    It's as good as it gets, and seems to be on par with previous set
    implementation
    in my benchmark.

    Would be great if someone can double-check my bitops.

 src/hb-set-private.hh | 16 +++++++++++++---
 1 file changed, 13 insertions(+), 3 deletions(-)

commit 438c325a256f040c6be840924ed42dcbcd8a049a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 1 13:34:14 2017 -0800

    [set] Optimize add_range()

    With new set implementation, this became really costy.  Optimize it.
    There's more to be done, but this shaves off most of the fat.

    Part of fixing
    https://bugs.chromium.org/p/chromium/issues/detail?id=782220

 src/hb-set-private.hh | 56
 +++++++++++++++++++++++++++++++++++++--------------
 1 file changed, 41 insertions(+), 15 deletions(-)

commit be9e307a889e04d198042ad39949d3971232ab26
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 1 12:36:26 2017 -0800

    [ot] Ensure layout in hb_ot_layout_table_get_lookup_count()

 src/hb-ot-layout.cc | 1 +
 1 file changed, 1 insertion(+)

commit d9066afd6bc260d2f2ad5cd5b3e8b196e944d3d8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 29 16:18:18 2017 -0800

    Add another test for previous commit

    From https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=4273

 .../sha1sum/bbf4a308c402f0678c3e82844892a4da2ebe598f.ttf  | Bin 0 ->
 204 bytes
 test/shaping/tests/fuzzed.tests                           |   1 +
 2 files changed, 1 insertion(+)

commit 16fba5b2158a0e093e6df32637eba5058942e299
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 29 16:08:11 2017 -0800

    [ot] Fix Extension type recurse to disallow recursing to another
    Extension

    Particularly hazardous if the second layer mixes forward and backward
    lookups.

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

 src/hb-ot-layout-gsub-table.hh                           |   6 ++++--
 .../sha1sum/9d8a94a67932a3ab75a596fc8b5c6d0392ca9e49.ttf | Bin 0 ->
 4545 bytes
 .../sha1sum/ef2511f215aa3ca847cbfffbf861793b42170875.ttf | Bin 0 ->
 1152 bytes
 test/shaping/tests/fuzzed.tests                          |   2 ++
 4 files changed, 6 insertions(+), 2 deletions(-)

commit 7ab49de987b856312d7ad1d02639f7306aa0ad2f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 29 14:20:09 2017 -0800

    Try fixing Mac build with 10.12

    Related
    https://github.com/harfbuzz/harfbuzz/issues/345
    https://github.com/harfbuzz/harfbuzz/pull/629

 .travis.yml | 1 +
 1 file changed, 1 insertion(+)

commit d672bcf9d72bb473f5f53089c8af595c4047bc99
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 28 22:20:57 2017 -0800

    Minor

 docs/Makefile.am | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 23ade70783a17ed6822d13e7a910544de2ef181f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 21 16:36:07 2017 -0800

    [doc] Optimize HarfBuzz.png; add HarfBuzz.svg

    SVG is unused. Just keeping it here.

 docs/HarfBuzz.png | Bin 14203 -> 8814 bytes
 docs/HarfBuzz.svg | 277
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 277 insertions(+)

commit 77efdecadddbd68bbbc0ff85ac84e24976ad4d4f
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Wed Nov 22 00:14:29 2017 +0200

    Improve the docs commit message a bit

 .ci/deploy-docs.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a13c0748c59a92812469ada762d57bce3b02fe34
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Nov 21 09:52:18 2017 +0330

    Move gh-pages docs to harfbuzz.github.io

 .ci/deploy-docs.sh |  10 +++++-----
 README             |   2 ++
 docs/HarfBuzz.png  | Bin 12710 -> 14203 bytes
 docs/circle.yml    |   3 ---
 4 files changed, 7 insertions(+), 8 deletions(-)

commit 9f259769a61f17b47701bbad79e1865571338417
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Tue Nov 21 14:16:10 2017 -0500

    Categorize U+A8B4 as Consonant_Medial

 src/gen-use-table.py                                     |   3 +++
 src/hb-ot-shape-complex-use-table.cc                     |   2 +-
 .../sha1sum/373e67bf41ca264e260a9716162b71a23549e885.ttf | Bin 0 ->
 1164 bytes
 test/shaping/tests/use-syllable.tests                    |   1 +
 4 files changed, 5 insertions(+), 1 deletion(-)

commit cd8c62fd41ca824c5db3c55fd1faa20318ca0bf9
Author: ebraminio <ebrahim@gnu.org>
Date:   Tue Nov 21 01:07:26 2017 -0500

    [ci] Add Oracle Developer Studio (former Sun Studio) based compiler
    (#621)

 .circleci/config.yml | 11 +++++++++++
 1 file changed, 11 insertions(+)

commit 8d55340593ce32e55cfbd86a17c0be8750e8fb72
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 20 19:43:22 2017 -0800

    Fix fallback positioning of double diacritic marks

    Fixes https://bugzilla.gnome.org/show_bug.cgi?id=787284

 src/hb-ot-shape-fallback.cc                               |   4 ++--
 .../sha1sum/856ff9562451293cbeff6f396d4e3877c4f0a436.ttf  | Bin 0 ->
 892 bytes
 test/shaping/tests/fallback-positioning.tests             |   1 +
 3 files changed, 3 insertions(+), 2 deletions(-)

commit bb7cc4eada06839a3892cea5919f0c310cbaf7c3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 20 19:39:47 2017 -0800

    Minor

 util/options.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a0ad0d5bb8260cb297ff114adca7c8d05b6128bb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 20 15:07:48 2017 -0800

    [docs] s/Harfbuzz/HarfBuzz/g

 docs/harfbuzz-docs.xml                             |  2 +-
 ...anual-buffers-language-script-and-direction.xml | 10 +++----
 docs/usermanual-fonts-and-faces.xml                |  2 +-
 docs/usermanual-hello-harfbuzz.xml                 | 34
 +++++++++++-----------
 docs/usermanual-install-harfbuzz.xml               |  2 +-
 docs/usermanual-what-is-harfbuzz.xml               | 20 ++++++-------
 6 files changed, 35 insertions(+), 35 deletions(-)

commit 87d74605f5f9db685bef7329f498437b4d868e6f
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Mon Nov 20 13:19:34 2017 -0500

    Categorize U+0C80 as Consonant_Placeholder

 src/hb-ot-shape-complex-indic.cc                         |   1 +
 .../sha1sum/81c368a33816fb20e9f647e8f24e2180f4720263.ttf | Bin 0 ->
 1152 bytes
 test/shaping/tests/indic-syllable.tests                  |   1 +
 3 files changed, 2 insertions(+)

commit 7c6937e7c7b62602fef10ac4b2e164d0c67c932b
Author: ebraminio <ebrahim@gnu.org>
Date:   Mon Nov 20 14:49:22 2017 -0500

    Move all references of old url to the new address (#622)

 .travis.yml                              |   2 +-
 BUILD.md                                 |   2 +-
 CMakeLists.txt                           |   2 +-
 NEWS                                     |  20 ++++++++++----------
 README                                   |   8 ++++----
 RELEASING.md                             |   2 +-
 configure.ac                             |   2 +-
 docs/HarfBuzz.png                        | Bin 3419 -> 12710 bytes
 docs/harfbuzz-docs.xml                   |   2 +-
 docs/usermanual-install-harfbuzz.xml     |   2 +-
 harfbuzz.doap                            |   2 +-
 src/gen-use-table.py                     |   4 ++--
 src/hb-coretext.cc                       |   2 +-
 src/hb-debug.hh                          |   2 +-
 src/hb-ot-layout-gsub-table.hh           |  22 +++++++++++-----------
 src/hb-ot-layout-gsubgpos-private.hh     |   2 +-
 src/hb-ot-layout-private.hh              |   8 ++++----
 src/hb-ot-shape-complex-arabic.cc        |   4 ++--
 src/hb-ot-shape-complex-hebrew.cc        |   2 +-
 src/hb-ot-shape-complex-indic-private.hh |   2 +-
 src/hb-ot-shape-complex-indic.cc         |   8 ++++----
 src/hb-ot-shape-complex-use-machine.rl   |   2 +-
 src/hb-ot-shape.cc                       |   2 +-
 src/hb-private.hh                        |   2 +-
 src/hb-unicode-private.hh                |   2 +-
 src/sample.py                            |   2 +-
 test/api/test-set.c                      |   2 +-
 test/fuzzing/README                      |   2 +-
 28 files changed, 57 insertions(+), 57 deletions(-)

commit baf7779d2d6e4810168a8f036bbf8f9e6493dd1a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 14 21:53:48 2017 -0800

    Limit how much recursion GSUB/GPOS does

    This only counts recursions right now.  Good start.

    Hopefully...
    Fixes https://github.com/behdad/harfbuzz/issues/429

 src/Makefile.am                      |  5 ++++-
 src/hb-buffer-private.hh             | 15 +++++++++++++--
 src/hb-buffer.cc                     |  2 ++
 src/hb-ot-layout-gsubgpos-private.hh |  5 ++++-
 src/hb-ot-shape.cc                   | 10 ++++++++--
 test/shaping/tests/fuzzed.tests      |  2 +-
 6 files changed, 32 insertions(+), 7 deletions(-)

commit 173dab6300d9b492f2d1c68f9e8f7817211a3462
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 14 21:27:24 2017 -0800

    Minor move

 src/hb-buffer-private.hh | 26 ++++++++++++++------------
 1 file changed, 14 insertions(+), 12 deletions(-)

commit c6173a392cfaa3d339c768836e8cddf3ae4adc53
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 14 21:09:03 2017 -0800

    Add Offset16 and Offset32

 src/hb-open-type-private.hh        | 5 ++++-
 src/hb-ot-layout-common-private.hh | 4 ++--
 src/hb-ot-name-table.hh            | 2 +-
 src/hb-ot-var-fvar-table.hh        | 2 +-
 4 files changed, 8 insertions(+), 5 deletions(-)

commit 6f335ed1e52c6161fa0b0295776856fc07f7f46f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 14 21:06:07 2017 -0800

    Replace USHORT/SHORT/ULONG/etc with UINT16/INT16/UINT32/etc

 src/hb-open-file-private.hh               |   6 +-
 src/hb-open-type-private.hh               |  67 ++++++------
 src/hb-ot-cbdt-table.hh                   |  78 +++++++-------
 src/hb-ot-cmap-table.hh                   |  90 ++++++++--------
 src/hb-ot-glyf-table.hh                   |  10 +-
 src/hb-ot-head-table.hh                   |  28 ++---
 src/hb-ot-hhea-table.hh                   |  18 ++--
 src/hb-ot-kern-table.hh                   |  36 +++----
 src/hb-ot-layout-common-private.hh        | 118 ++++++++++----------
 src/hb-ot-layout-gdef-table.hh            |  22 ++--
 src/hb-ot-layout-gpos-table.hh            |  94 ++++++++--------
 src/hb-ot-layout-gsub-table.hh            |  30 +++---
 src/hb-ot-layout-gsubgpos-private.hh      | 172
 +++++++++++++++---------------
 src/hb-ot-math-table.hh                   |  26 ++---
 src/hb-ot-maxp-table.hh                   |   2 +-
 src/hb-ot-name-table.hh                   |  16 +--
 src/hb-ot-os2-table.hh                    |  70 ++++++------
 src/hb-ot-post-table.hh                   |  16 +--
 src/hb-ot-shape-complex-arabic-win1256.hh |  32 +++---
 src/hb-ot-var-avar-table.hh               |   4 +-
 src/hb-ot-var-fvar-table.hh               |  20 ++--
 src/hb-ot-var-hvar-table.hh               |   8 +-
 src/hb-ot-var-mvar-table.hh               |  10 +-
 23 files changed, 486 insertions(+), 487 deletions(-)

commit a130ee6df50a50f541d0e8018deea9cee8c6738a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 14 20:30:03 2017 -0800

    Remove a couple of unused consts

 src/hb-ot-hhea-table.hh              | 5 -----
 src/hb-ot-layout-gsubgpos-private.hh | 3 ---
 src/main.cc                          | 4 ++--
 3 files changed, 2 insertions(+), 10 deletions(-)

commit e20e47eaa1b7dd33ac63ab0eaa8f5ea1bf7775c2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 14 20:25:29 2017 -0800

    [glyf] Try fixing undefined-behavior

    Might fix https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1463

 src/hb-ot-glyf-table.hh | 17 ++++++++---------
 1 file changed, 8 insertions(+), 9 deletions(-)

commit 7b40876a58d331200e1d7cda1dec72578139ff9c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 14 20:22:05 2017 -0800

    [ot] Remove unneeded TODO item

    Looks like hb-ot-font is complete after all!

    CFF font names and CFF glyph metrics don't work though...

 src/hb-ot-font.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit eab4feb5e221b8219c071ea882de79405aca4e84
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 14 20:16:45 2017 -0800

    [hmtx] Use curiously recurring template pattern

    https://en.wikipedia.org/wiki/Curiously_recurring_template_pattern

 src/hb-ot-font.cc       | 11 ++++-------
 src/hb-ot-hmtx-table.hh | 29 +++++++++++++++--------------
 2 files changed, 19 insertions(+), 21 deletions(-)

commit 977ddff1f1e0f0f71a46c60ba713d160b96f5a3c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 14 20:06:19 2017 -0800

    [ot] Move hb_ot_face_cmap_accelerator_t

 src/hb-ot-cmap-table.hh | 149
 +++++++++++++++++++++++++++++++++++++++++++++---
 src/hb-ot-font.cc       | 130 +-----------------------------------------
 2 files changed, 142 insertions(+), 137 deletions(-)

commit a7f15959b5e6e14e5241a3155c413ff70e7d1eb3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 14 20:02:24 2017 -0800

    Shuffle

 src/hb-ot-hmtx-table.hh | 76
 ++++++++++++++++++++++++-------------------------
 1 file changed, 38 insertions(+), 38 deletions(-)

commit a85d7ead04aff81d2f9df9110316892dbbefe1c2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 14 20:00:34 2017 -0800

    [ot] Move hb_ot_face_metrics_accelerator_t

 src/hb-ot-font.cc       | 108
 +-----------------------------------------------
 src/hb-ot-hmtx-table.hh | 108
 +++++++++++++++++++++++++++++++++++++++++++++++-
 2 files changed, 109 insertions(+), 107 deletions(-)

commit f00a94e1ec73c08d4bde1f50bff57d2dc9583ca8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 14 19:54:48 2017 -0800

    Adjust privacy for recent changes

 src/hb-ot-cbdt-table.hh | 6 ++++--
 src/hb-ot-glyf-table.hh | 6 ++++--
 2 files changed, 8 insertions(+), 4 deletions(-)

commit 7e2839c438beea216c7c8a3881e88961940e67be
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 14 19:52:09 2017 -0800

    [ot] Move hb_ot_face_glyf_accelerator_t

 src/hb-ot-font.cc       |  75 +----------------------------------
 src/hb-ot-glyf-table.hh | 103
 +++++++++++++++++++++++++++++++++++++++++-------
 2 files changed, 90 insertions(+), 88 deletions(-)

commit c4e18e54dc5ffecac7b327bde9f52dd0927d6a08
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 14 19:47:31 2017 -0800

    [ot] Move hb_ot_face_cbdt_accelerator_t

 src/hb-ot-cbdt-table.hh | 85
 +++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-font.cc       | 87
 +------------------------------------------------
 src/hb-ot-post-table.hh |  1 +
 3 files changed, 87 insertions(+), 86 deletions(-)

commit 9b04b0384fe746bdb1885c57e1ce73c4c6cae9e5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 14 19:31:50 2017 -0800

    [ot] Fold hb_ot_face_post_accelerator_t

 src/hb-ot-font.cc       | 35 +----------------------------------
 src/hb-ot-post-table.hh |  9 +++++++--
 2 files changed, 8 insertions(+), 36 deletions(-)

commit 702d86ba6b4a2e41cbee46fea18b3f8eb8986dc9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 14 19:25:38 2017 -0800

    [ot] Fold hb_ot_face_kern_accelerator_t

 src/hb-ot-font.cc       | 23 +----------------------
 src/hb-ot-kern-table.hh | 13 +++++++++----
 2 files changed, 10 insertions(+), 26 deletions(-)

commit 909de95a112ffe4d05ddcfed97a235763e8af068
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 14 16:22:52 2017 -0800

    Minor build fix

 src/Makefile.am | 3 +++
 1 file changed, 3 insertions(+)

commit b9c96b5d7cce80ef75cbdf0f0c47d1db62797c55
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 14 15:56:21 2017 -0800

    Add test for previous commit

    At some point we should run tests under valgrind...

 .../sha1sum/dd9f0c7c7c36f75a18be0cab1cddf8f3ab0f366b.ttf | Bin 0 ->
 2786 bytes
 test/shaping/tests/fuzzed.tests                          |   3 ++-
 2 files changed, 2 insertions(+), 1 deletion(-)

commit e5930722d485207ca158612a2b08816337fed7e8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 14 15:47:55 2017 -0800

    Fix invalid buffer access in OOM times

    Hopefully fully fixes
    https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1856

 src/hb-ot-layout-gsubgpos-private.hh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit fcd6c338ff4968a0d7fc297da1c6d8058823aaa1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 14 14:40:21 2017 -0800

    Fix more compiler warnings

 src/hb-debug.hh | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

commit 7fdf16b2ceb709b78654f99e6513fa878cd4d575
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 14 14:40:11 2017 -0800

    Fix compiler warning

 src/hb-string-array.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 87f0ad183c489ef3208cf454d43c448638316092
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Thu Nov 2 10:59:25 2017 -0400

    Allow U+20F0 in USE clusters

 src/gen-use-table.py                               |   4 +++
 src/hb-ot-shape-complex-use-table.cc               |  34
 +++++++++++++--------
 .../074a5ae6b19de8f29772fdd5df2d3d833f81f5e6.ttf   | Bin 0 -> 2296 bytes
 test/shaping/tests/use-syllable.tests              |   1 +
 4 files changed, 26 insertions(+), 13 deletions(-)

commit f93c6f8bfa228e95311d8d6d02dcc64b603c6e36
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 14 11:09:19 2017 -0800

    1.7.1

 NEWS         | 8 ++++++++
 configure.ac | 2 +-
 2 files changed, 9 insertions(+), 1 deletion(-)

commit 93f7c1652a05e806c2e3ac7edf498d2f4a508a3a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 14 10:59:54 2017 -0800

    Revert "[glib/ucdn/icu/ft/ot] Make returned funcs inert"

    This reverts commit 5daf3bd4494cce6b4fb074533be9e99c4d9e0edd.

    If other atexit callbacks try to destruct the objects we destruct
    in atexit callbacks, bad things will happen.

    I'll come up with some other way to catch premature destruction
    of HB-owned objects.

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

 src/hb-ft.cc             |  3 ---
 src/hb-glib.cc           |  3 ---
 src/hb-icu.cc            |  3 ---
 src/hb-object-private.hh | 37 ++++++-------------------------------
 src/hb-ot-font.cc        |  3 ---
 src/hb-ucdn.cc           |  3 ---
 6 files changed, 6 insertions(+), 46 deletions(-)

commit c48475f33ab88be6664d41b039f7be7c3e56a5a7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 13 20:26:29 2017 -0800

    Whitespace

 src/hb-open-type-private.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 83d68027360ff655d3b59371fb606fc9e40df4ac
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 13 20:25:02 2017 -0800

    Clean up GlyphID

    After 4a27c17ea0234dfe33e62f5830d9f92c26d48d30 we do not need
    the special GlyphID.cmp(hb_codepoint_t), so just make GlyphID
    a typedef.

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

 src/hb-open-type-private.hh | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

commit 7f39f576148643b4790fd70361e328b4b4da3149
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 13 15:04:13 2017 -0800

    Implement strtod_l() on MSVC

    Patch from Jean Ghali on mailing list.

 src/hb-common.cc | 21 +++++++++++++++------
 1 file changed, 15 insertions(+), 6 deletions(-)

commit e5d709889200571b62a611e0f44a410591983f8a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 13 09:42:37 2017 -0800

    1.7.0

 NEWS         | 12 ++++++++++++
 configure.ac |  2 +-
 2 files changed, 13 insertions(+), 1 deletion(-)

commit e4da38020021a92afa4062ed676f286945070dc4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 10 17:14:27 2017 -0800

    [coretext/uniscribe/directwrite/graphite/fallback] Update for
    unsafe-to-break

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

    We'll see which bots I broke.

 src/hb-buffer-private.hh | 17 +++++++++++++++--
 src/hb-coretext.cc       |  2 ++
 src/hb-directwrite.cc    |  3 +--
 src/hb-fallback-shape.cc |  2 ++
 src/hb-graphite2.cc      |  2 ++
 src/hb-uniscribe.cc      |  2 ++
 6 files changed, 24 insertions(+), 4 deletions(-)

commit 4de03a1585cf735e3ac09847af761ff85fca5a02
Author: Martin Hosken <martin_hosken@sil.org>
Date:   Fri Nov 10 13:47:38 2017 +0700

    Fix graphite intergration reordered clusters problem

 src/hb-graphite2.cc | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

commit 8eed9cb11e28728a58e265fde5c13f519ccbdb4e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 9 18:09:40 2017 -0800

    [kern] Fix invalid memory access if offset is zero

    If offset is zero, we return Null() object.  Wasn't prepared for that.

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

 src/hb-ot-kern-table.hh                                   |   9 +++++----
 .../sha1sum/243798dd281c1c77c065958e1ff467420faa9bde.ttf  | Bin 0 ->
 225 bytes
 test/shaping/tests/fuzzed.tests                           |   1 +
 3 files changed, 6 insertions(+), 4 deletions(-)

commit b68fba4dc81ce2e7552c5d50a93013281889a65b
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Fri Nov 3 14:27:33 2017 +0200

    [test] Use glyph ids instead of forcing ft funcs

    We were using ft funcs because these are CFF fonts, but we can avoid
    glyph names instead and keep testing both ot and ft.

 test/shaping/tests/indic-consonant-with-stacker.tests | 8 ++++----
 test/shaping/tests/indic-script-extensions.tests      | 2 +-
 2 files changed, 5 insertions(+), 5 deletions(-)

commit 2fcfbcf8052bba0db7590a5f057730075fdbd5e1
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Thu Nov 2 09:45:06 2017 +0200

    [test] Fix another instance of component rounding

    See https://github.com/behdad/harfbuzz/pull/590#issuecomment-341194673

 .../sha1sum/7ef276fc886ea502a03b9b0e5c8b547d5dc2b61c.ttf  | Bin 784 ->
 0 bytes
 .../sha1sum/8228d035fcd65d62ec9728fb34f42c63be93a5d3.ttf  | Bin 0 ->
 784 bytes
 test/shaping/tests/fallback-positioning.tests             |   3 +--
 3 files changed, 1 insertion(+), 2 deletions(-)

commit c4f4c0a2faab0635dd2ab3078243994ad3066287
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 8 17:04:31 2017 -0800

    Fix indexing in unsafe-to-break marking for 'stch' feature

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

 src/hb-ot-shape-complex-arabic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 822035ce73931ccd5d2455584aad603037892498
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 8 17:03:55 2017 -0800

    [tests/arabic-stch.tests] Don't show flags

    We don't need to test the actual flag values.  For unsafe-to-break,
    the --verify in run-tests.sh checks what we are interested in.

 test/shaping/tests/arabic-stch.tests | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 53f0c27ddca92af1af27b6ffa9dcd0949afed664
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 8 17:02:54 2017 -0800

    Minor

 test/shaping/run-tests.sh | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

commit 5a9cba9744876dfc56bdc9aed805f571bd0d4b0a
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Wed Nov 8 13:15:27 2017 -0500

    Mark non-initial left matras as unsafe to break

 src/hb-ot-shape-complex-indic.cc                         |  14
 +++++++++-----
 test/shaping/Makefile.am                                 |   1 +
 .../sha1sum/1a3d8f381387dd29be1e897e4b5100ac8b4829e1.ttf | Bin 0 ->
 1380 bytes
 test/shaping/tests/indic-init.tests                      |   1 +
 4 files changed, 11 insertions(+), 5 deletions(-)

commit a6150306838b168475a9aa661ad569b0405c9f91
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 6 15:40:07 2017 -0500

    [kern] Implement format-2 kern subtable

 src/hb-ot-kern-table.hh | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

commit 82a38d1f7a65537a4ef540af08c489512d6297ac
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 6 15:28:24 2017 -0500

    [kern] Allow subtables longer than 64kb

    Apparently calibri.ttf does this:
    https://github.com/fonttools/fonttools/pull/1094#discussion_r148933791

 src/hb-ot-font.cc       | 23 ++++++++++++++++++++++-
 src/hb-ot-kern-table.hh | 41 +++++++++++++++++++++++++++++------------
 2 files changed, 51 insertions(+), 13 deletions(-)

commit 625ae08fcee747fbdc33a3a6865fb3aa425662ca
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 4 12:01:11 2017 -0400

    [kern] Towards implementing format-2

 src/hb-open-type-private.hh |  4 +--
 src/hb-ot-kern-table.hh     | 69
 +++++++++++++++++++++++++++------------------
 2 files changed, 42 insertions(+), 31 deletions(-)

commit 74e82adaea08ced18493e3341823dbd5b6cd493e
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Mon Nov 6 14:41:55 2017 -0500

    Mark glyphs involved in 'stch' as unsafe to break

 src/hb-ot-shape-complex-arabic.cc                        |   1 +
 test/shaping/Makefile.am                                 |   1 +
 .../sha1sum/d9b8bc10985f24796826c29f7ccba3d0ae11ec02.ttf | Bin 0 ->
 1420 bytes
 test/shaping/tests/arabic-stch.tests                     |   1 +
 4 files changed, 3 insertions(+)

commit 601126ad401d05b9c7fe4a34e870f1d1a1b057c8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 3 20:34:11 2017 -0400

    [configure] Fix gobject default value in help output

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

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 5aad81943329df199501e9473e2cc39f9d4421a1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 3 17:16:26 2017 -0400

    Simplify tracing code when tracing is disabled

    Fixes https://github.com/behdad/harfbuzz/pull/605

 src/hb-debug.hh                      | 58
 +++++++++++++++++++++++++++++-------
 src/hb-ot-layout-gsubgpos-private.hh | 10 +++----
 2 files changed, 52 insertions(+), 16 deletions(-)

commit 40ec3bbb55b8af1668bb3d5f6232a85b15cff136
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 3 16:57:30 2017 -0400

    Consolidate debug stuff into hb-debug.hh

    Part of fixing https://github.com/behdad/harfbuzz/pull/605

 src/Makefile.sources                 |   1 +
 src/hb-blob.cc                       |   7 +-
 src/hb-coretext.cc                   |   8 +-
 src/hb-debug.hh                      | 383
 +++++++++++++++++++++++++++++++++++
 src/hb-directwrite.cc                |   6 +-
 src/hb-ft.cc                         |   7 +-
 src/hb-object-private.hh             |   8 +-
 src/hb-open-type-private.hh          |  21 +-
 src/hb-ot-layout-common-private.hh   |   8 +-
 src/hb-ot-layout-gsubgpos-private.hh |  46 +----
 src/hb-ot-shape-complex-arabic.cc    |   7 +-
 src/hb-private.hh                    | 260 +-----------------------
 src/hb-shape-plan.cc                 |   7 +-
 src/hb-uniscribe.cc                  |   7 +-
 14 files changed, 404 insertions(+), 372 deletions(-)

commit 384862d7ee2e27e6678844feafab69f03f77ac9a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 3 16:31:47 2017 -0400

    Remove NO_COPY()

 src/hb-ot-shape-private.hh | 4 +++-
 src/hb-private.hh          | 8 --------
 2 files changed, 3 insertions(+), 9 deletions(-)

commit 97145df2496f90e1ea4a41784f3224c60e973fd4
Author: Unknown <kunda@scribus.net>
Date:   Fri Nov 3 09:05:00 2017 -0400

    Trivial typos

    Found using `codespell -i 3 -w -I '../harf-whitelist.txt'`
    whereas the whitelist contents were:
    ```
    beng
    iff
    pres
    ot
    te
    teh
    ```

 NEWS                             | 2 +-
 src/hb-ot-shape-complex-indic.cc | 2 +-
 src/hb-ot-shape-fallback.cc      | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

commit 4a591a0e515f5c15c807fe648c073d249820e5ec
Author: ebraminio <ebrahim@gnu.org>
Date:   Thu Nov 2 09:33:12 2017 -0700

    [ci] Add ArchLinux (#604)

 .circleci/config.yml | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

commit d18ee5afe8b1992d234402cd71f809cd904113a5
Author: ebraminio <ebrahim@gnu.org>
Date:   Thu Nov 2 07:56:25 2017 -0700

    Copy dummy docs/circle.yml to gh-pages branch (#603)

 .ci/deploy-docs.sh | 1 +
 1 file changed, 1 insertion(+)

commit 1955cbecc98ee88ba8a62df1d8c77a09ed5d2c75
Author: ebraminio <ebrahim@gnu.org>
Date:   Thu Nov 2 04:55:46 2017 -0700

    Add a dummy CircleCI config to gh-pages branch (#602)

 docs/circle.yml | 3 +++
 1 file changed, 3 insertions(+)

commit 4b3278ef8dc71ad4f744d763068d9a2e02d3d75d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 1 19:41:29 2017 -0600

    [ot] Hook up horizontal kerning to kern table

    Seems to work.  Yay!

    Still to do: run kerning if GPOS doesn't have 'kern' feature.

 src/hb-ot-font.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 77acc1106e6d984ee74ec606e145f455e6e55509
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 1 19:33:09 2017 -0600

    [kern] More...

    Almost there.

 src/hb-ot-font.cc       | 14 +++++++++
 src/hb-ot-kern-table.hh | 75
 ++++++++++++++++++++++++++++++++++++++++++++++++-
 2 files changed, 88 insertions(+), 1 deletion(-)

commit 49c0f35580946c74bc64dae2d2c65c7834e46ab2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 1 18:16:07 2017 -0600

    [kern] See if this helps with making VS bot happy

 src/hb-ot-kern-table.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 2c439210c9734cd21b08beba07d21147a6eb6d8a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 1 18:13:35 2017 -0600

    [uniscribe] Fix a couple of VS warnings

 src/hb-uniscribe.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 4c43a23bf479b42d42192bab56df6075c8ae0090
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 1 18:12:26 2017 -0600

    [kern] Implement Format0

 src/hb-ot-kern-table.hh | 51
 +++++++++++++++++++++++++++++++++++++++++++------
 1 file changed, 45 insertions(+), 6 deletions(-)

commit ac3d937c6cb0e2c7e019aa391b02da25aa6970de
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 1 17:54:56 2017 -0600

    [kern] Implement some more

 src/hb-ot-kern-table.hh | 98
 ++++++++++++++++++++++++++++++++++++++-----------
 1 file changed, 77 insertions(+), 21 deletions(-)

commit 2a16f647ae4c5115a356ba82245c77e0d01fcebf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 1 17:31:29 2017 -0600

    [kern] Start implementing kern table

    Pushing this out early to catch bot errors since I'm using template
    tricks
    we were not using in HarfBuzz before.

 src/Makefile.sources    |   1 +
 src/hb-ot-font.cc       |   1 +
 src/hb-ot-kern-table.hh | 184
 ++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 186 insertions(+)

commit 292ef2675edb2cb579210183e77ac30335318a21
Author: ebraminio <ebrahim@gnu.org>
Date:   Wed Nov 1 16:24:46 2017 -0700

    [ci] minor cleanup (#600)

 .circleci/config.yml | 4 ----
 1 file changed, 4 deletions(-)

commit 260246a279699d313a45583c6a61e4bab717f739
Author: ebraminio <ebrahim@gnu.org>
Date:   Wed Nov 1 14:10:55 2017 -0700

    [ci] Add Fedora builder (#598)

 .circleci/config.yml | 9 +++++++++
 1 file changed, 9 insertions(+)

commit 0e63cbed9cceb1d0238974ddfa9bc68d25d9c616
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Wed Nov 1 20:49:42 2017 +0200

    [test] Fix difference between ft and ot font funcs

    See
    https://github.com/behdad/harfbuzz/pull/590#issuecomment-341194673.

    I simply removed the composite glyph and use the referenced simple
    glyph directly.

 .../sha1sum/4fac3929fc3332834e93673780ec0fe94342d193.ttf  | Bin 0 ->
 804 bytes
 .../sha1sum/6466d38c62e73a39202435a4f73bf5d6acbb73c0.ttf  | Bin 824 ->
 0 bytes
 test/shaping/tests/cluster.tests                          |   2 +-
 3 files changed, 1 insertion(+), 1 deletion(-)

commit 0b8f8dd869212ed2889cbdb79c4c4b639b8eff7a
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Wed Nov 1 20:33:43 2017 +0200

    Revert "[test] We don’t care about glyph positions here"

    This reverts commit 70137e2b4b46918d9608f824a4b4b5cef2819158.

 test/shaping/tests/cluster.tests | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit f1245013bf7e9d490b43d9b8bebd467b2c1d14cc
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Wed Nov 1 12:06:59 2017 +0200

    [test] Run shaping tests with both ot and ft funcs

 test/shaping/run-tests.sh | 21 ++++++++++++++++-----
 1 file changed, 16 insertions(+), 5 deletions(-)

commit 70137e2b4b46918d9608f824a4b4b5cef2819158
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Wed Nov 1 12:03:39 2017 +0200

    [test] We don’t care about glyph positions here

    Freetype and OT font functions give different positions for some
    glyphs
    in this font (OT seems to be correct), but that is not what we are
    interested in in this test.

    See
    https://github.com/behdad/harfbuzz/pull/590#issuecomment-341045223.

 test/shaping/tests/cluster.tests | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 9234b364b178d44a11148d5c613169731667a2ae
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Wed Nov 1 10:34:36 2017 +0200

    [test] Use ft functions for this test

    https://github.com/behdad/harfbuzz/pull/590#issuecomment-340967271

 test/shaping/tests/vertical.tests | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit afbfb9279cbebcd0a85ab2fcc822a3fdbb035272
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Mon Oct 30 22:02:50 2017 +0200

    [test] Always use ft font funcs for these tests

    These are CFF fonts and ot functions don’t support CFF glyph
    names yet.
    The next commit will run all tests with ot functions.

 test/shaping/tests/indic-consonant-with-stacker.tests | 8 ++++----
 test/shaping/tests/indic-script-extensions.tests      | 2 +-
 2 files changed, 5 insertions(+), 5 deletions(-)

commit 33e62636f739680ffbc1875391f05e80039a3259
Author: ebraminio <ebrahim@gnu.org>
Date:   Wed Nov 1 03:05:46 2017 -0700

    [ci] Add FreeBSD9 (gcc4) (#595)

 .circleci/config.yml | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

commit 102f5ead493ad2eac6c11c3fc8f2e793d3d57058
Author: ebraminio <ebrahim@gnu.org>
Date:   Wed Nov 1 02:10:18 2017 -0700

    Enable PSVita (arm-none-eabi) compile again and add it to CI (#594)

 .circleci/config.yml        | 17 ++++++++++++++---
 src/hb-buffer-private.hh    |  2 +-
 src/hb-buffer.cc            |  4 ++--
 src/hb-open-file-private.hh |  2 +-
 4 files changed, 18 insertions(+), 7 deletions(-)

commit 65d4e5bcda543c17e09867418365ba44b441d5d6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 1 01:15:27 2017 -0600

    [CircleCI] Ignore gh-pages branch

    https://github.com/behdad/harfbuzz/pull/592

 .circleci/config.yml | 4 ++++
 1 file changed, 4 insertions(+)

commit 92bb5086424d7454d666732e39117a7d32490646
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 31 22:58:03 2017 -0600

    [indic] Use mutable for virama_glyph

 src/hb-ot-shape-complex-indic.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 6c04dcb28dcafc7d97799c80c0bc714c76d51d1c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 31 20:11:00 2017 -0600

    Use bsearch() for large SFNT table directories

 src/hb-open-file-private.hh | 21 +++++++++------------
 1 file changed, 9 insertions(+), 12 deletions(-)

commit b0e33da02d062200dd41e4503ecc21fb4bd636e6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 31 20:05:37 2017 -0600

    Add BinSearchArrayOf<>

 src/hb-open-file-private.hh | 25 +++++++++++--------------
 src/hb-open-type-private.hh | 33 ++++++++++++++++++++++++++++++++-
 src/hb-ot-font.cc           |  2 +-
 3 files changed, 44 insertions(+), 16 deletions(-)

commit aca378f51ecf682ea1454071f671bbc7eef808bd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 31 18:11:10 2017 -0600

    Sanitize (Headless)ArrayOf()::len to ensure it doesn't use offsets

 src/hb-open-type-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 5f047113142349ecf0dd6d00384f7ef7b3d1a85e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 31 18:10:40 2017 -0600

    Fix HeadlessArrayOf::sanitize_shallow()

 src/hb-open-type-private.hh | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

commit 7ce9f397d1e5fe68c49375ad904d4fce2c7ccc0a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 31 15:34:01 2017 -0600

    Rename hb-sort-r.hh -> hb-dsalgs.hh

 src/Makefile.sources               |  2 +-
 src/{hb-sort-r.hh => hb-dsalgs.hh} | 14 +++++++-------
 src/hb-ot-post-table.hh            |  2 +-
 3 files changed, 9 insertions(+), 9 deletions(-)

commit 8eaff980fc6d15856fa853479454b58668809c7a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 31 15:30:06 2017 -0600

    Remove HB_TAG_CHAR4

 src/hb-common.cc  | 2 +-
 src/hb-ot-tag.cc  | 2 +-
 src/hb-private.hh | 5 -----
 3 files changed, 2 insertions(+), 7 deletions(-)

commit d016c5bdb94704e726b104c318262b47c6a4b7c8
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Fri Oct 27 12:14:00 2017 -0400

    Categorize Grantha candrabindu for use in Tamil

 src/hb-ot-shape-complex-indic.cc                         |   2 +-
 .../sha1sum/b151cfcdaa77585d77f17a42158e0873fc8e2633.ttf | Bin 0 ->
 1120 bytes
 test/shaping/tests/indic-script-extensions.tests         |   1 +
 3 files changed, 2 insertions(+), 1 deletion(-)

commit b902605133ef4a411afdaa8abda194e81facf525
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 31 14:25:46 2017 -0600

    [CircleCI] Fix build

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

 .circleci/config.yml | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 0f78d78aae604cb8e61bd21785adb915da74626e
Merge: b7982c9e 0feff4ba
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 31 14:13:31 2017 -0600

    Merge commit '0feff4ba7b16501341c575e06b4c98a6e1bd2809'

commit 0feff4ba7b16501341c575e06b4c98a6e1bd2809
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 31 14:02:32 2017 -0600

    Simplify hb-sort-r.hh

    See https://github.com/behdad/harfbuzz/pull/592

 src/hb-sort-r.hh | 147
 ++++++-------------------------------------------------
 1 file changed, 14 insertions(+), 133 deletions(-)

commit b7982c9e65e0b58616cc8264dd52cac37753ef79
Author: ebraminio <ebrahim@gnu.org>
Date:   Tue Oct 31 12:42:08 2017 -0700

    [ci] Add CircleCI for cross-compiling (#592)

 .circleci/config.yml | 61
 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 README               |  1 +
 2 files changed, 62 insertions(+)

commit c290ba5b7d4e9e4a5f02340a22e6c9c46564906b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 31 13:18:21 2017 -0600

    Define _GNU_SOURCE

    Might help with https://github.com/behdad/harfbuzz/pull/592
    Ie. bringing in qsort_r() prototype always.

 src/hb-private.hh | 1 +
 1 file changed, 1 insertion(+)

commit 98acdde3c6bd0745c3cbfb510e82fbd87ebd1a33
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 31 11:17:43 2017 -0600

    [coretext/uniscribe] Fix build

    https://travis-ci.org/behdad/harfbuzz/jobs/295039536#L3468
    https://ci.appveyor.com/project/behdad/harfbuzz/build/1.0.697/job/dr1ujlntxafeqbej#L142

 src/hb-coretext.cc  | 8 ++++++--
 src/hb-uniscribe.cc | 8 ++++++--
 2 files changed, 12 insertions(+), 4 deletions(-)

commit ec86cc5e552e9e8d64101feb1f540a9dc94a9025
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 30 14:11:59 2017 -0600

    Fix Windows build

    (And prevent it from happening in the future.)

 src/hb-ot-layout.cc     | 1 +
 src/hb-ot-name-table.hh | 4 +++-
 2 files changed, 4 insertions(+), 1 deletion(-)

commit e35a763c07b60da6e5fbdb6edd9d25f575cd3d8b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 30 13:15:05 2017 -0600

    [post] Implement glyph_from_name()

    This concludes https://github.com/behdad/harfbuzz/pull/568

 src/hb-ot-post-table.hh | 119
 ++++++++++++++++++++++++++++++++++++------------
 src/hb-private.hh       |  10 ++--
 src/hb-sort-r.hh        |   2 +-
 3 files changed, 96 insertions(+), 35 deletions(-)

commit 6c738f353ec4ab5974414fbb8ff1fb9383c4bde6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 30 12:21:44 2017 -0600

    Make string-array return hb_string_t

 src/hb-ot-post-table.hh | 17 ++---------------
 src/hb-string-array.hh  | 11 +++++++++--
 2 files changed, 11 insertions(+), 17 deletions(-)

commit e1a37f3db4f2364e98ff057209a94aa9b23e5c9d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 30 11:42:28 2017 -0600

    Add hb_string_t

 src/hb-ot-post-table.hh | 25 ++++++++-----------------
 src/hb-private.hh       | 27 +++++++++++++++++++++++++++
 2 files changed, 35 insertions(+), 17 deletions(-)

commit 21ac5678583259e673d961a26fadaad2bf33f1f8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 30 09:48:09 2017 -0600

    Fix tests

 src/check-includes.sh |  2 +-
 src/hb-sort-r.hh      | 32 ++++++++++++++++++++++++++++++--
 2 files changed, 31 insertions(+), 3 deletions(-)

commit 0f8b5aa1bc2c831044a35fc8e52df58652cec86b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 30 09:46:36 2017 -0600

    [post] Minor; towards implementing get_glyph_from_name()

 src/hb-ot-post-table.hh | 56
 +++++++++++++++++++++++++++----------------------
 1 file changed, 31 insertions(+), 25 deletions(-)

commit 977679f229a10868dc668294082bd82125e4fe48
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 29 17:33:32 2017 -0600

    Add hb_bsearch_r()

 src/hb-ot-post-table.hh |  1 +
 src/hb-sort-r.hh        | 25 +++++++++++++++++++++++++
 2 files changed, 26 insertions(+)

commit 0712e915b4814e350aa1d833c1dee5010cdbd8f9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 29 17:01:47 2017 -0600

    Remove hb_compare_func_t

 src/hb-ot-map-private.hh    | 18 +++++++++++++-----
 src/hb-ot-name-table.hh     |  2 +-
 src/hb-ot-tag.cc            |  8 +++++---
 src/hb-ot-var-mvar-table.hh | 10 +++++++---
 src/hb-private.hh           |  9 ++-------
 5 files changed, 28 insertions(+), 19 deletions(-)

commit 538da7496d70c86b41070ecf52592e52920d8808
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 29 16:38:58 2017 -0600

    Add hb-sort-r, a portable qsort_r() replacement

 src/Makefile.sources |   1 +
 src/hb-sort-r.hh     | 227
 +++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 228 insertions(+)

commit 923a8f520addba095384b975ba8934e5a18fb696
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 29 15:00:54 2017 -0600

    Fix up 5de83fab947e23cc729d69f8d44a28311298af9d

 src/hb-ot-post-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b98c7c3f1fc8581ce9a0f40ae25aee5e1b2b3106
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 29 14:52:52 2017 -0600

    [post] Minor

 src/hb-ot-post-table.hh | 6 +-----
 1 file changed, 1 insertion(+), 5 deletions(-)

commit 5de83fab947e23cc729d69f8d44a28311298af9d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 28 19:54:04 2017 -0600

    [ot] Speed up get_glyph_name()

    get_glyph_from_name() coming soon.

 src/hb-ot-font.cc            |  13 ++--
 src/hb-ot-post-table.hh      | 160
 +++++++++++++++++++------------------------
 src/test-buffer-serialize.cc |   4 +-
 3 files changed, 81 insertions(+), 96 deletions(-)

commit feadee079e09e43e5f712a66816605e19155594e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 28 16:58:56 2017 -0600

    [post] Refactor a bit, use our data types

 src/hb-ot-post-table.hh | 25 ++++++++++---------------
 1 file changed, 10 insertions(+), 15 deletions(-)

commit 5014c60afaab51a7a4813cf427a3d6053458279b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 28 12:00:49 2017 -0600

    More nullptr fix

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

 src/test.cc | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

commit 5daf3bd4494cce6b4fb074533be9e99c4d9e0edd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 27 16:34:01 2017 -0600

    [glib/ucdn/icu/ft/ot] Make returned funcs inert

    Such that client cannot accidentally destroy them, even though that
    will be a bug in their code...

 src/hb-ft.cc             |  3 +++
 src/hb-glib.cc           |  3 +++
 src/hb-icu.cc            |  3 +++
 src/hb-object-private.hh | 37 +++++++++++++++++++++++++++++++------
 src/hb-ot-font.cc        |  3 +++
 src/hb-ucdn.cc           |  3 +++
 6 files changed, 46 insertions(+), 6 deletions(-)

commit bfa7f37a73508ca185cf2f3e06755db8c8258ddf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 27 16:03:51 2017 -0600

    Fix previous commit

    Oops.

 src/hb-glib.cc | 2 +-
 src/hb-icu.cc  | 2 +-
 src/hb-ucdn.cc | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

commit 8864864b624590d95ae5dca61956695cbff1269a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 27 15:26:45 2017 -0600

    [glib/icu/ucdn] Make the funcs object allocated on demand

 src/hb-glib.cc | 36 +++++++++++++++++++++++++++++-------
 src/hb-icu.cc  | 51 +++++++++++++++++++++++++++++++++++++--------------
 src/hb-ucdn.cc | 37 +++++++++++++++++++++++++++++--------
 3 files changed, 95 insertions(+), 29 deletions(-)

commit af3f72f9eb7d7b80ea827976a3303390b5deae8d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 27 15:13:50 2017 -0600

    Correctly mark NullPool const

    Saves some more code size as well!

 src/hb-open-type-private.hh | 2 +-
 src/hb-ot-layout.cc         | 2 +-
 src/main.cc                 | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

commit 51f4d4d5cd5a0dd1a581bee5b55b3cc0a74cbea3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 27 15:09:22 2017 -0600

    Reduce prealloced number of user-data items from 2 to 1

    Even 1 is too many but putting 0 breaks compile.  Saves 3k in .so

 src/hb-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 3205de7906abab9d12e614e86e2c182a41420698
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 27 15:01:40 2017 -0600

    Make the NullPool HB_INTERNAL shared

    Saves 2k of .bss section.

 src/hb-open-type-private.hh | 10 ++++++----
 src/hb-ot-layout.cc         |  3 +++
 src/main.cc                 |  1 +
 3 files changed, 10 insertions(+), 4 deletions(-)

commit 7036f1d22c4001b79d3205c16aac3fefbfcaae24
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 27 14:42:59 2017 -0600

    [ot] Remove shaper name

    In ten years we never used them...

 src/hb-ot-shape-complex-arabic.cc  | 1 -
 src/hb-ot-shape-complex-default.cc | 1 -
 src/hb-ot-shape-complex-hangul.cc  | 1 -
 src/hb-ot-shape-complex-hebrew.cc  | 1 -
 src/hb-ot-shape-complex-indic.cc   | 1 -
 src/hb-ot-shape-complex-myanmar.cc | 2 --
 src/hb-ot-shape-complex-private.hh | 2 --
 src/hb-ot-shape-complex-thai.cc    | 1 -
 src/hb-ot-shape-complex-tibetan.cc | 1 -
 src/hb-ot-shape-complex-use.cc     | 1 -
 10 files changed, 12 deletions(-)

commit 4a27c17ea0234dfe33e62f5830d9f92c26d48d30
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 27 14:29:12 2017 -0600

    Fix IntType.cmp() to avoid narrowing down integer types

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

 src/hb-open-type-private.hh | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 919b4b76a7b1f9dd7c71310a729982242f9060a5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 27 10:29:25 2017 -0600

    Make c++11 optional

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

 configure.ac                |   4 +-
 m4/ax_cxx_compile_stdcxx.m4 | 982
 ++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 983 insertions(+), 3 deletions(-)

commit 6c4689704071a76c49be819b8034feaf93e26a42
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 27 10:24:58 2017 -0600

    [m4] Update ax_pthread.m4

 m4/ax_pthread.m4 | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 2e025507634e54a64fa5d0cbfefc4b65177c06c5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 27 10:23:01 2017 -0600

    [git.mk] Update

 git.mk | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 55 insertions(+), 2 deletions(-)

commit 62e312ead808cec055049592b0d40aa3a8882bc9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 27 09:29:20 2017 -0600

    Use NULL instead of polyfill, if nullptr is not available

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

 src/hb-private.hh | 22 +++-------------------
 1 file changed, 3 insertions(+), 19 deletions(-)

commit 17f40b7cad240eadeccdf23eb11da7ed52252ca2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 27 09:22:30 2017 -0600

    Include hb-private.hh more consistently

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

 src/test-buffer-serialize.cc |  4 +---
 src/test-size-params.cc      |  4 +---
 src/test-would-substitute.cc |  4 +---
 util/ansi-print.hh           |  1 +
 util/helper-cairo-ansi.hh    |  5 +++--
 util/helper-cairo.hh         |  7 ++++---
 util/main-font-text.hh       |  5 +++--
 util/options.hh              | 11 +----------
 util/shape-consumer.hh       |  5 +++--
 util/view-cairo.hh           |  7 ++++---
 10 files changed, 22 insertions(+), 31 deletions(-)

commit 42d518513c683fd5e932898ceec891c3003d75e1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 27 00:25:11 2017 -0600

    Towards compiling with pre-C++11 compilers and nullptr fallback

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

 src/hb-atomic-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 0e9256984e76f055f1868ecc497724977caba11d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 26 20:34:04 2017 -0600

    [post] Make format1 names array avoid relocations

 src/Makefile.sources       |   1 +
 src/hb-ot-post-macroman.hh | 294
 +++++++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-post-table.hh    |  55 ++-------
 3 files changed, 305 insertions(+), 45 deletions(-)

commit 2a749680441bbe6b4aa8134bb6ce9f21a8b1bc3c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 26 19:48:33 2017 -0600

    Add hb-string-array.hh

    Used to build static string arrays that use no relocation.

 src/Makefile.sources   |  1 +
 src/hb-private.hh      |  6 ++--
 src/hb-string-array.hh | 74
 ++++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 79 insertions(+), 2 deletions(-)

commit 6f08b12bc38166dee2f9740d396d617b32e887a3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 26 18:23:03 2017 -0600

    Minor

 src/hb-private.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 223686d64f5e149ba8aa334a2a54bd5b22017d9e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 26 12:52:02 2017 -0600

    1.6.3

 NEWS         | 9 +++++++++
 configure.ac | 2 +-
 2 files changed, 10 insertions(+), 1 deletion(-)

commit 729c9e13355eefafdc0fdef9aa68bd792ca4dba4
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Thu Oct 26 10:29:28 2017 -0400

    Include all relevant glyphs in the subsetted font

 test/shaping/record-test.sh | 2 ++
 1 file changed, 2 insertions(+)

commit cb6c6b0c425e560f32b297c15dc6775e297d5b1d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 26 11:43:33 2017 -0600

    Fix warning

    https://github.com/behdad/harfbuzz/commit/49a41dc75931cc2d2f7e74b7801f8cc327039e8e#commitcomment-25203194

 test/api/test-set.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit dfd234a97d2e2f9908eaf0598de765f76ba86c82
Author: Jonathan Kew <jfkthame@gmail.com>
Date:   Thu Oct 26 16:59:50 2017 +0100

    [set] Fix page_map[] indexing in backward loop.

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

 src/hb-set-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 7339926525416620aa7922371775ed65eed4eae4
Author: Jonathan Kew <jfkthame@gmail.com>
Date:   Thu Oct 26 12:55:36 2017 +0100

    [test] Extend hb_set test for issue 579 (currently failing)

 test/api/test-set.c | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

commit 3d6f7df42a87ef366197581cb4696c5f30c3bcbb
Author: Jonathan Kew <jfkthame@gmail.com>
Date:   Thu Oct 26 17:54:55 2017 +0100

    [test] Additional coverage in test_set_iter.

    This adds a couple extra entries to the set used, such that iteration
    would fail in 1.6.2 due to the bug in hb_set_t::page_t::next().

 test/api/test-set.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

commit d511cfb5577a58e31d8dd4214750b0ad4efa625a
Author: Jonathan Kew <jfkthame@gmail.com>
Date:   Thu Oct 26 15:08:29 2017 +0100

    [set] Bugfix for hb_set_next

 src/hb-set-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 92bac64bd2d5fffe70229790be27d335aa6c6de3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 25 18:22:47 2017 -0600

    [post] Oops!

    https://ci.appveyor.com/project/behdad/harfbuzz/build/1.0.668/job/ikfj8peowgrp059t

 src/hb-ot-post-table.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 543bd58d7a4fbe285ec9304ff3223a728dbdbb76
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 25 17:40:50 2017 -0600

    [post] Touch up and fixes

    The get_glyph_from_name() is incorrect; needs fixing.

 src/hb-ot-font.cc       |   9 ++--
 src/hb-ot-post-table.hh | 139
 +++++++++++++++++++++++++++---------------------
 2 files changed, 81 insertions(+), 67 deletions(-)

commit d9e166f74c3ba3128c9ef3ccd8d7799e67f14eab
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Wed Oct 18 20:49:16 2017 +0200

    [ot-font] Implement hb_ot_get_glyph_from_name

 src/hb-ot-font.cc       | 22 ++++++++++++++++++-
 src/hb-ot-post-table.hh | 58
 +++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 79 insertions(+), 1 deletion(-)

commit 9d4d2fb9af446d5d41058fbb1da8117b3af048d3
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Mon Oct 16 10:05:42 2017 +0200

    [ot-font] Implement hb_ot_get_glyph_name

    Turns out we already have support for “post” table, it just
    needed to be
    activated and put in use.

 src/hb-ot-font.cc                             | 46 ++++++++++++-
 src/hb-ot-post-table.hh                       | 96
 +++++++++++++++++++++++++++
 test/shaping/tests/fallback-positioning.tests |  2 +-
 test/shaping/tests/indic-syllable.tests       |  2 +-
 test/shaping/tests/use.tests                  |  2 +-
 5 files changed, 143 insertions(+), 5 deletions(-)

commit bf133497e53e8b1dcd22df62080d33e7f3d85b68
Merge: fd786c76 49a41dc7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 25 17:23:20 2017 -0600

    Merge commit '49a41dc75931cc2d2f7e74b7801f8cc327039e8e'

commit 49a41dc75931cc2d2f7e74b7801f8cc327039e8e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 25 16:17:45 2017 -0600

    [test] Add more hb-set tests

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

 test/api/test-set.c | 40 ++++++++++++++++++++++++++++++++++++++++
 1 file changed, 40 insertions(+)

commit fd786c768f838ab61090004dd46b8cefeb270dfd
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Wed Oct 25 14:31:22 2017 -0400

    Use `mktemp -d` instead of `mktemp --directory`

 test/shaping/record-test.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c4944920c0c11d6424d600ebc9130c9055382f80
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Wed Oct 25 16:06:40 2017 -0400

    Fix and run indic-script-extensions.tests

 test/shaping/Makefile.am                         | 1 +
 test/shaping/tests/indic-script-extensions.tests | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

commit d8df714251c61e13d7d12eb3f7393dd3a75a3719
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Wed Oct 25 16:06:01 2017 -0400

    Fix code point iteration in narrow Python

 test/shaping/hb_test_tools.py | 27 ++++++++++++++++++++++++++-
 1 file changed, 26 insertions(+), 1 deletion(-)

commit 33ca3b67bfb5d9ae4e490c796c93793a7e03ef2c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 25 12:09:11 2017 -0400

    Check for headers in builddir first, in check-*.sh

    Fixes https://bugs.freedesktop.org/show_bug.cgi?id=103346

 src/check-c-linkage-decls.sh | 4 ++--
 src/check-externs.sh         | 2 +-
 src/check-header-guards.sh   | 2 +-
 src/check-includes.sh        | 4 ++--
 4 files changed, 6 insertions(+), 6 deletions(-)

commit 9ac2e5c6c01db3ebe419e3aa07f4d1a3777d2bb6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 24 10:06:25 2017 -0400

    check-externs.sh: Make output more verbose

    Trying to figure out why this is failing on some Debian bots:
    https://bugs.freedesktop.org/show_bug.cgi?id=103346

    Maybe I should check for GNU grep specifically now that I'm using
    -n as well.

 src/check-externs.sh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 3b7388aab6889b5d1fc602b5780a7b29da84e100
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 23 14:35:16 2017 -0400

    1.6.2

 NEWS         | 10 ++++++++++
 configure.ac |  2 +-
 2 files changed, 11 insertions(+), 1 deletion(-)

commit 30a591e3cef67818ef1ffec92c6a022b5a5f5e77
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 23 14:28:35 2017 -0400

    [set] Rewrite another way :P

 src/hb-set-private.hh | 25 +++++++++++++------------
 1 file changed, 13 insertions(+), 12 deletions(-)

commit 8170801d78a5bf9480d8c06ade849b30bc4e2956
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 23 14:26:48 2017 -0400

    [set] Fix crash

    Ouch!  That's what happens when one plays with increment/decrement
    operators!

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

 src/hb-set-private.hh | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

commit 61d1c60a1c555c58205964df4e449ee57125a739
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 23 13:10:21 2017 -0400

    [RELEASING] Format

 RELEASING.md | 67
 +++++++++++++++++++++++++++++++++++++++++++-----------------
 1 file changed, 48 insertions(+), 19 deletions(-)

commit 6a2e1649debd992211bf96ef80d075d2d04a49ed
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 23 13:01:34 2017 -0400

    [doap] Switch to github issues

    https://github.com/behdad/harfbuzz/pull/575#issuecomment-338514596

 harfbuzz.doap | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 8a898c1929cf7ffc9b0011461b34281ecc98705c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 23 13:00:36 2017 -0400

    [RELEASING] Minor

    https://github.com/behdad/harfbuzz/pull/575

 RELEASING.md | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 2ee710e02fad1a8a4b94589bb6f0b90e2aeb7121
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 23 08:37:48 2017 -0400

    Minor

 src/hb-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit dd33e4e96b9345a6b1a9051a6aa4b7d114c74f1e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 23 08:36:40 2017 -0400

    [set] Don't use major()

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

 src/hb-set-private.hh | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit d0f0ff85b9fe959ef4b90f8daf58be73fca49dd0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 23 08:34:30 2017 -0400

    [set] Don't use PAGE_SIZE

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

 src/hb-set-private.hh | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit 57cf978fa314bd87405a2b133e58fcb116e574a6
Merge: ce979454 6cc49762
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 22 18:24:59 2017 -0400

    Merge commit '6cc49762c4fdfd0e2770a84d1b1f055acf42376f'

commit ce979454400c3870717ba40b1065a2f3727cfb93
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 22 18:23:38 2017 -0400

    [icu] Fix error check

 src/hb-icu.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 6cc49762c4fdfd0e2770a84d1b1f055acf42376f
Merge: 8b9d9b71 19923279
Author: ebraminio <ebrahim@gnu.org>
Date:   Mon Oct 23 01:48:22 2017 +0330

    Merge pull request #575 from behdad/releasing-edit

    Clarify the last step of release

commit 19923279abd4c7615e8b02e05a02ba18f5c0b298
Author: ebraminio <ebrahim@gnu.org>
Date:   Mon Oct 23 01:47:51 2017 +0330

    Clarify the last step of release

 RELEASING.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 8b9d9b71b04c9d5698ec146658b31381060c700d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 22 17:48:06 2017 -0400

    Fix set initialization issues

 src/hb-ot-layout-gsubgpos-private.hh | 12 ++++++------
 src/hb-ot-shape.cc                   | 17 +++++++++--------
 src/hb-set-private.hh                |  9 ---------
 src/hb-set.cc                        |  6 ++++--
 4 files changed, 19 insertions(+), 25 deletions(-)

commit 0ca915efc3734111a57ff71f05d9cbf0e8af3de9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 22 17:38:33 2017 -0400

    1.6.1

 NEWS         | 13 +++++++++++++
 configure.ac |  2 +-
 2 files changed, 14 insertions(+), 1 deletion(-)

commit d59d5dc7d339deb45cc84cffd084b52752765a08
Merge: ced86da7 3ee15a60
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 22 17:08:29 2017 -0400

    Merge commit '3ee15a60358f4d894bbf2431d7a7df38b7acc4ce'

commit ced86da7ddbbd0d64f8ba1290b8e67600b1db2d4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 22 17:03:36 2017 -0400

    Another try at fixing mingw32 build bot fail

 src/hb-private.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit bc1183aa6ba45a527084d391d6e7f801d6196060
Merge: d45a2138 bfe0faf1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 22 17:06:00 2017 -0400

    Merge commit 'bfe0faf1a2d39302129a7202994456afd96694ca'

commit 3ee15a60358f4d894bbf2431d7a7df38b7acc4ce
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 22 17:03:36 2017 -0400

    Another try at fixing mingw32 build bot fail

 src/hb-private.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit bfe0faf1a2d39302129a7202994456afd96694ca
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 22 15:54:50 2017 -0400

    [docs] Deprecate hb_set_invert()

 docs/harfbuzz-sections.txt | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit d45a2138d9d54eab158046d6503f1bb104efce25
Merge: d8adaa97 41b18251
Author: ebraminio <ebrahim@gnu.org>
Date:   Sat Oct 21 10:19:55 2017 +0330

    Merge pull request #572 from fanc999/master.msvc

    builds: Support HarfBuzz-GObject and introspection in CMake builds

commit d8adaa97fbf33071b8a4b5c05c3f2f15f2fd22ea
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 20 13:57:43 2017 -0400

    Another try at fixing build bots

    hb-ot-shape.cc:287:18: error: comparison of constant 32 with
    expression of type 'hb_unicode_general_category_t' is always true
    [-Werror,-Wtautological-constant-out-of-range-compare]

 src/hb-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 6058f98825e8f134893a1bbfb402e45d85b56ff0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 19 11:39:52 2017 -0700

    Remove FLAG_SAFE()

    No flag is safe, over time... See previous commit.

 src/hb-ot-shape-complex-arabic.cc |  4 ++--
 src/hb-ot-shape-complex-indic.cc  | 12 ++++++------
 src/hb-ot-shape-complex-use.cc    |  2 +-
 src/hb-private.hh                 |  5 ++---
 src/hb-unicode-private.hh         |  4 ++--
 5 files changed, 13 insertions(+), 14 deletions(-)

commit 7c561dacc3c5fb9306db8bda27b7289331bd523f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 19 11:35:51 2017 -0700

    [myanmar] Fix unsafe usage of FLAG_SAFE()

    The commit f559c633073f63b9d87cb2440048b4413cfa1c05 caused
    "undefined-shift" errors in Myanmar shaper as we changed the
    numeric value of type D from 19 to 32 there, making the
    "FLAG_SAFE (info.myanmar_category())" wrong.

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

 src/hb-ot-shape-complex-myanmar.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 41b1825196235d4337c76f97e09f0b7c6d6c56ae
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Thu Oct 19 18:36:32 2017 +0800

    CMake builds: Support introspection builds

    This adds support for introspection builds on Windows that is
    enabled by
    the HB_HAVE_INTROSPECTION option, which will also enable
    HB_HAVE_GOBJECT
    (and so HB_HAVE_GLIB) as they are required for introspection.

    In order for this to work one must ensure that the Python installation
    listed in PYTHON_EXECUTABLE is the same Python release series that was
    used to build _giscanner.pyd (the Python module that is used by
    g-ir-scanner), with the same architecture.  PKG_CONFIG_PATH and PATH
    must be set correctly if $(PREFIX)\bin and/or $(PREFIX)\lib\pkgconfig
    are not in the standard PATH and PKG_CONFIG_PATH, which is actually
    in-line with the *NIX builds.

 CMakeLists.txt | 161
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 file changed, 154 insertions(+), 7 deletions(-)

commit 53db221259b5eea4d2244321b2fe96beb39aef7d
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Wed Oct 18 15:43:57 2017 +0800

    CMake: Support building HarfBuzz-GObject

    This adds support to the CMake build files to support building
    HarfBuzz-GObject, which is actually a little bit complicated,
    as we need to:

    -Run glib-mkenums, which is a Python (for newer GLib/GObject) or PERL
     (for older, pre 2.53.4, GLib/GObject) script.  This matters more for
     Visual Studio builds as shebang lines are not supported, so we
     need to
     test-run it with PERL or Python to determine which is the correct
     interpretor to use.

    -Next, we need to replace strings in the sources that we obtain from
     running glib-mkenums.  So, the solution here is to use a small
     utility
     CMake script for our purposes here, to maintain maximum
     compatibility.

    -Ensure that things do work in the Visual Studio IDE builds.

 CMakeLists.txt             | 128
 +++++++++++++++++++++++++++++++++++++++++++++
 Makefile.am                |   1 +
 replace-enum-strings.cmake |  21 ++++++++
 3 files changed, 150 insertions(+)

commit 162575f2c69f519aae1b18ff1c501e7e4c2cdd4b
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Wed Oct 18 22:27:28 2017 +0800

    CMake builds: Fix builds

    Include the fallback sources in the build, and update
    src/Makefile.sources so that it can be read by the CMake build files.

    Fix a typo in the DirectWrite configure option so that we can properly
    enable DirectWrite builds.

    Also, when building the utility program, install them as well.

 CMakeLists.txt       | 21 ++++++++++++++++++++-
 src/Makefile.sources |  4 +++-
 2 files changed, 23 insertions(+), 2 deletions(-)

commit d6f612fac800c31989c298b5101845baed2297b1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 17 16:32:12 2017 -0700

    [bsearch] Micro-optimization

 src/hb-open-type-private.hh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 41b1984be946cc2f53313dd48eac392cc8a3ad2b
Author: Fredrik Roubert <fredrik@roubert.name>
Date:   Tue Oct 17 15:06:31 2017 -0700

    Switch from ICU deprecated unorm_normalize to unorm2_normalize. (#569)

    The new unorm2_normalize has been public API since ICU 4.4, while
    the old unorm_normalize has been deprecated since ICU 56.

    Now, beginning with ICU 60, unorm_normalize will also be annotated
    U_DEPRECATED and trigger the compiler -Wdeprecated-declarations
    warning.

 src/hb-icu.cc | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit b98adefbb9ee45fc1e800a52f701bf4224e9bb81
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 17 12:00:34 2017 -0700

    Update docs symbols

 docs/harfbuzz-sections.txt | 2 ++
 1 file changed, 2 insertions(+)

commit ba8b56960733b25bbb88fbdb60e7e244127d6e0c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 17 11:16:36 2017 -0700

    Try fixing build on VC

    c:\projects\harfbuzz\src\hb-set-private.hh(151): error C2327:
    'hb_set_t::page_t::v': is not a type name, static, or enumerator
    [C:\projects\harfbuzz\build\harfbuzz.vcxproj]

 src/hb-set-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 80cc0a7e3e05fb7fcfbdc0188cb60b115ad47d04
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 17 11:14:48 2017 -0700

    [coretext] Fix build

    error: static_assert expression is not an integral constant expression

 src/hb-coretext.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a11249ee93439856ea2410524b993ac1f1379961
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 16 01:33:32 2017 -0400

    [set] Fix merge logic

 src/hb-set-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ab8f327eb47184409d9e9208ca46b631d1afd0d4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 15 18:21:35 2017 -0400

    Ouch.

 src/hb-set-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit bb9917913f735855aea54f41f10e0c7be3632e88
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 15 18:20:25 2017 -0400

    [set] Disable vectorization

    Fixes clang "non-const reference cannot bind to vector element" error.

 src/hb-set-private.hh | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 221ce6c18f2a1e878b68eb0a97f235efa4c044d3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 15 17:58:58 2017 -0400

    Fix bots

 src/hb-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0cf7d957b7ffb17c4cec75b631c9829327ab5d52
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 15 17:01:31 2017 -0400

    [set] Remove TODO items not worth pursuing

 src/hb-set-private.hh | 2 --
 1 file changed, 2 deletions(-)

commit 10d43658e7655b36cb86e674dde8af4036b7cc52
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 15 16:56:05 2017 -0400

    [set] Speed up intersects()

 src/hb-set-private.hh | 8 ++------
 1 file changed, 2 insertions(+), 6 deletions(-)

commit 56ef4e0c52d5b474518bf0c1e4adba80f2ae6946
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 15 16:38:29 2017 -0400

    Simplify hb_prealloced_array_t initialization

 src/hb-private.hh | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

commit 7737e87ac4582d57945f3ffbbae1012f62c6b482
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 15 16:21:03 2017 -0400

    Properly detect vector_size attribute and use fallback otherwise

 src/hb-private.hh     | 67
 +++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-set-private.hh | 62
 ++---------------------------------------------
 2 files changed, 69 insertions(+), 60 deletions(-)

commit f8a0ec50e23264fdfe9e3a5a2e0453a87f415b3d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 15 16:10:35 2017 -0400

    [set] Add fallback implementation of int-vector type

 src/hb-set-private.hh | 64
 ++++++++++++++++++++++++++++++++++++---------------
 1 file changed, 45 insertions(+), 19 deletions(-)

commit deed4a48d15d4a475f8695aa3269547adf63867a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 15 16:53:09 2017 +0200

    Faster hb_set_t

    Fixes https://github.com/behdad/harfbuzz/pull/23

 src/hb-private.hh     |  56 ++++---
 src/hb-set-private.hh | 431
 +++++++++++++++++++++++++++++++++++++++++---------
 test/api/test-set.c   |   6 -
 3 files changed, 391 insertions(+), 102 deletions(-)

commit 1d3971200be5b1c949d3eca185654e48584a0868
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 15 16:15:24 2017 +0200

    Deprecate hb_set_invert()

 src/hb-deprecated.h | 4 ++++
 src/hb-set.cc       | 3 ++-
 src/hb-set.h        | 3 ---
 3 files changed, 6 insertions(+), 4 deletions(-)

commit 5e74044b6bd78c495561eb7d2981415d2c3336f4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 15 16:15:06 2017 +0200

    Add bfind() to prealloaced_array_t

 src/hb-private.hh | 31 ++++++++++++++++---------------
 1 file changed, 16 insertions(+), 15 deletions(-)

commit db5f7ef18916abb0907bc8b569a65c9c6bbd4015
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 15 16:00:22 2017 +0200

    Inline another bsearch()

 src/hb-ot-map-private.hh |  4 ++--
 src/hb-private.hh        | 32 ++++++++++++++++++++++++++++----
 2 files changed, 30 insertions(+), 6 deletions(-)

commit 6fb4ac73f94636d19fcac143472b84f9d91985c9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 15 16:00:09 2017 +0200

    Add popcount for 64bit ints

 src/hb-private.hh | 12 ++++++++++++
 1 file changed, 12 insertions(+)

commit 473b17af4d421f4ce7ac18c769731bb2aa4088f8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 15 14:10:34 2017 +0200

    Remove unused hb_cache_t

 src/Makefile.sources    |  1 -
 src/hb-cache-private.hh | 74
 -------------------------------------------------
 src/hb-ft.cc            |  2 --
 3 files changed, 77 deletions(-)

commit a433e60a43c4594c41a82c3741d3f870f6eec247
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 15 14:09:46 2017 +0200

    Remove unused hb_frozen_set_t

 src/hb-set-private.hh | 55
 ---------------------------------------------------
 1 file changed, 55 deletions(-)

commit 826a1daf2f2075459ff25a20ed8abec030d95c52
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 15 14:09:05 2017 +0200

    Move set-digests into their own header file

 src/Makefile.sources         |   1 +
 src/hb-ot-layout-private.hh  |   2 +-
 src/hb-set-digest-private.hh | 144
 +++++++++++++++++++++++++++++++++++++++++++
 src/hb-set-private.hh        | 113 ---------------------------------
 4 files changed, 146 insertions(+), 114 deletions(-)

commit 3c13e153fe89d559d33027c0a5b30a19a6de1bad
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 15 14:02:58 2017 +0200

    Try fixing AppVeyor bots

 src/hb-private.hh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 7e3015a315afe2312134ac33b9cb2d73689a044f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 15 12:13:19 2017 +0200

    Fix warnings

 src/hb-font.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 2075008f3e0b1cfbd7006f1d8c1fa22ac014f4bb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 15 12:12:10 2017 +0200

    Use C++11

 configure.ac | 3 +++
 1 file changed, 3 insertions(+)

commit dbdbfe3d7b36613d893832dcb1884c756c20bfda
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 15 12:11:08 2017 +0200

    Use nullptr instead of NULL

 src/hb-blob.cc                             |  12 ++--
 src/hb-buffer-serialize.cc                 |  16 ++---
 src/hb-buffer.cc                           |  10 +--
 src/hb-common.cc                           |  18 ++---
 src/hb-coretext.cc                         |  66 ++++++++---------
 src/hb-directwrite.cc                      |  28 ++++----
 src/hb-face.cc                             |  10 +--
 src/hb-font.cc                             |  32 ++++-----
 src/hb-ft.cc                               |  56 +++++++--------
 src/hb-glib.cc                             |   2 +-
 src/hb-gobject-structs.cc                  |   2 +-
 src/hb-graphite2.cc                        |  26 +++----
 src/hb-icu.cc                              |   4 +-
 src/hb-mutex-private.hh                    |   2 +-
 src/hb-object-private.hh                   |   2 +-
 src/hb-open-type-private.hh                |  32 ++++-----
 src/hb-ot-cbdt-table.hh                    |   4 +-
 src/hb-ot-cmap-table.hh                    |   2 +-
 src/hb-ot-font.cc                          |  42 +++++------
 src/hb-ot-layout-common-private.hh         |  14 ++--
 src/hb-ot-layout-gsub-table.hh             |   2 +-
 src/hb-ot-layout-gsubgpos-private.hh       |  54 +++++++-------
 src/hb-ot-layout-jstf-table.hh             |   4 +-
 src/hb-ot-layout.cc                        |  30 ++++----
 src/hb-ot-map-private.hh                   |   6 +-
 src/hb-ot-map.cc                           |   4 +-
 src/hb-ot-math-table.hh                    |   8 +--
 src/hb-ot-shape-complex-arabic-fallback.hh |   8 +--
 src/hb-ot-shape-complex-arabic.cc          |  32 ++++-----
 src/hb-ot-shape-complex-default.cc         |  22 +++---
 src/hb-ot-shape-complex-hangul.cc          |  12 ++--
 src/hb-ot-shape-complex-hebrew.cc          |  18 ++---
 src/hb-ot-shape-complex-indic.cc           |  12 ++--
 src/hb-ot-shape-complex-myanmar.cc         |  40 +++++------
 src/hb-ot-shape-complex-private.hh         |  26 +++----
 src/hb-ot-shape-complex-thai.cc            |  22 +++---
 src/hb-ot-shape-complex-tibetan.cc         |  20 +++---
 src/hb-ot-shape-complex-use.cc             |  16 ++---
 src/hb-ot-shape-private.hh                 |   2 +-
 src/hb-ot-shape.cc                         |   8 +--
 src/hb-ot-tag.cc                           |   2 +-
 src/hb-ot-var.cc                           |   2 +-
 src/hb-private.hh                          |  37 +++++-----
 src/hb-set-private.hh                      |   2 +-
 src/hb-shape-plan.cc                       |  24 +++----
 src/hb-shape.cc                            |   8 +--
 src/hb-shaper-private.hh                   |   6 +-
 src/hb-shaper.cc                           |   6 +-
 src/hb-ucdn.cc                             |   2 +-
 src/hb-unicode.cc                          |   4 +-
 src/hb-uniscribe.cc                        |  50 ++++++-------
 src/main.cc                                |   4 +-
 src/test-buffer-serialize.cc               |   8 +--
 src/test-size-params.cc                    |   6 +-
 src/test-would-substitute.cc               |   8 +--
 src/test.cc                                |  12 ++--
 util/ansi-print.cc                         |   2 +-
 util/hb-fc.cc                              |   6 +-
 util/hb-ot-shape-closure.cc                |  10 +--
 util/hb-shape.cc                           |  14 ++--
 util/helper-cairo.cc                       |  12 ++--
 util/main-font-text.hh                     |   4 +-
 util/options.cc                            | 110
 ++++++++++++++---------------
 util/options.hh                            |  56 +++++++--------
 util/shape-consumer.hh                     |  10 +--
 65 files changed, 563 insertions(+), 568 deletions(-)

commit fbb937b6807597c9ae002280c6a6278a97b701f3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 15 12:04:16 2017 +0200

    Don't use NULL in public headers

 src/hb-buffer.h | 4 ++--
 src/hb-common.h | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

commit c3448e8d21963eb7fc357a37a7a426a4bf130ef3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 15 12:02:00 2017 +0200

    Use static_assert instead of custom ASSERT_STATIC

 src/hb-buffer-private.hh                   |  4 ++--
 src/hb-buffer.cc                           |  2 +-
 src/hb-cache-private.hh                    |  4 ++--
 src/hb-coretext.cc                         |  2 +-
 src/hb-open-type-private.hh                |  6 +++---
 src/hb-ot-layout-common-private.hh         |  2 +-
 src/hb-ot-layout-gdef-table.hh             |  6 +++---
 src/hb-ot-layout.cc                        | 14 ++++++------
 src/hb-ot-map.cc                           |  2 +-
 src/hb-ot-math-table.hh                    |  4 ++--
 src/hb-ot-shape-complex-arabic-fallback.hh |  6 +++---
 src/hb-ot-shape-complex-indic.cc           |  2 +-
 src/hb-ot-shape-complex-use.cc             |  2 +-
 src/hb-private.hh                          | 34
 +++++++++++++-----------------
 src/hb-set-private.hh                      |  8 +++----
 src/hb-uniscribe.cc                        |  2 +-
 util/options.cc                            |  3 ++-
 17 files changed, 50 insertions(+), 53 deletions(-)

commit 76dcbf8b23475b25f8f1918f982bfd8f0dd3456e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 15 11:24:35 2017 +0200

    Add polyfill for static_assert and nullptr

    Also fix hb_assert_constant_t.

 src/hb-private.hh | 38 ++++++++++++++++++++++++++++++++++----
 1 file changed, 34 insertions(+), 4 deletions(-)

commit dad431e75bf998dcb09cff795c0f1083b3bd5449
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 15 10:55:32 2017 +0200

    [util] Include hb-private.hh

    Simplifies compatibility issues by centralizing all boilerplate code
    in hb-private.hh.

 util/options.hh | 31 +++++--------------------------
 1 file changed, 5 insertions(+), 26 deletions(-)

commit 81e2b9b8a959cb7d7503f58fca70761238697fc1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 15 10:48:19 2017 +0200

    Never skip over CGJ

    We might want to tweak this some more.  For now, never skipping over
    it is better behavior than always skipping.

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

 src/hb-ot-layout-private.hh                          |  19
 +++++++++++--------
 .../bf962d3202883a820aed019d9b5c1838c2ff69c6.ttf     | Bin 0 ->
 2468 bytes
 test/shaping/tests/default-ignorables.tests          |   1 +
 3 files changed, 12 insertions(+), 8 deletions(-)

commit 25846cc39fb8a9516b8de4333f909851d471156f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 13 16:30:33 2017 +0200

    1.6.0

 NEWS                   | 35 +++++++++++++++++++++++++++++++++++
 configure.ac           |  2 +-
 docs/harfbuzz-docs.xml |  4 ++++
 3 files changed, 40 insertions(+), 1 deletion(-)

commit 74f1b88e3720103562552780af7058131c5492d5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 13 11:01:55 2017 +0200

    [ucdn] Fix compiler warnings

 src/hb-ucdn.cc | 21 +++++++++++++--------
 1 file changed, 13 insertions(+), 8 deletions(-)

commit c2cf68dbdffcbf45297dd161b4b6b2de667b5ae4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 13 10:30:19 2017 +0200

    [coretext] Fix build

 src/hb-coretext.cc | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

commit 95883fc5d486ecd194253bb223802f930de73e28
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 13 10:21:07 2017 +0200

    [coretext] Pass correct font size to CoreText

    CoreText "point"s are not typographic points, but CSS pixels.  Ie.
    they are 96 per inch, not 72 per inch.

 src/hb-coretext.cc | 18 +++++++++++-------
 1 file changed, 11 insertions(+), 7 deletions(-)

commit 4f9a83ec2109b754a75c962e88117d063e6fed43
Merge: fa48ccbe 40b05d7b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 12 14:08:58 2017 +0200

    Merge remote-tracking branch 'origin/master'

commit fa48ccbe127a2e61ab316f3638e4056940964dae
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 12 14:07:37 2017 +0200

    [indic] Special-case Kannada Ra,H,ZWJ sequence

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

 src/hb-ot-shape-complex-indic.cc                         |  15
 +++++++++++++++
 test/shaping/Makefile.am                                 |   1 +
 .../sha1sum/3cae6bfe5b57c07ba81ddbd54c02fe4f3a1e3bf6.ttf | Bin 0 ->
 2984 bytes
 test/shaping/tests/indic-special-cases.tests             |   3 +++
 4 files changed, 19 insertions(+)

commit 40b05d7b770b8045f176f66231c412b32482d874
Author: n8willis <n8willis@users.noreply.github.com>
Date:   Thu Oct 12 12:48:48 2017 +0100

    Replacing 'cluster' with 'syllable' when comments describe certain
    Indic shaping behavior (#563)

    * Clarified wording of syllable/cluster behavior in Uniscribe in
    final_reordering; changed one other probable typo.

    * Additional syllable/cluster swap in comments for final reordering
    and for initial-reordering matra decomposition.

 src/hb-ot-shape-complex-indic.cc | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit 6bac4ac2bebb612debecc8ec10b845e977c0afe1
Author: ebraminio <ebrahim@gnu.org>
Date:   Thu Oct 12 15:15:49 2017 +0330

    Minor BUILD.md fix (#565)

 BUILD.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 8923033eb2dab75e9361e9ea1333deb1213393ce
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 12 12:01:48 2017 +0200

    [coretext] Use fabs() to silence compiler warning

 src/hb-coretext.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit dd4b321b4a429c6e6a28441ea9ae52f8f9dd1dad
Author: Dominik Röttsches <drott@chromium.org>
Date:   Thu Oct 12 11:49:37 2017 +0200

    [coretext] Activate tracking for system fonts

    Another attempt at fully fixing
    https://github.com/behdad/harfbuzz/issues/360

 src/hb-coretext.cc | 28 +++++++++++++++++++++++++++-
 1 file changed, 27 insertions(+), 1 deletion(-)

commit 6760021d6f4beef852c6560607b32090bcfa5acb
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Thu Oct 12 12:05:08 2017 +0300

    CMakelists.txt fix for Freetype builds (#564)

    Instead of searching for freetype using pkg-config, use the
    FindFreetype
    feature of CMake. This allows for better integration with other
    projects
    that make use of CMake.

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

 CMakeLists.txt | 24 +++++++-----------------
 1 file changed, 7 insertions(+), 17 deletions(-)

commit 6a2cbc6ef51680309eb3970ed9c66ff766dc8040
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 12 10:46:09 2017 +0200

    [coretext] Use fabsf() instead of abs()

    Fixes bots.

    Link libharfbuzz.so with -lm.  Surprising that we survived without
    it so far!

 src/Makefile.am    | 2 +-
 src/harfbuzz.pc.in | 2 +-
 src/hb-coretext.cc | 5 +++--
 3 files changed, 5 insertions(+), 4 deletions(-)

commit dfeccd073a5e78f6a2c630355c04121b70d2b4aa
Author: ebraminio <ebrahim@gnu.org>
Date:   Thu Oct 12 12:11:47 2017 +0330

    Remove nmake port of harfbuzz (#562)

 BUILD.md                        |  12 ++-
 Makefile.am                     |   2 +-
 appveyor.yml                    |  30 ------
 configure.ac                    |   2 -
 win32/Makefile.am               |  18 ----
 win32/Makefile.vc               |  67 ------------
 win32/README.txt                |  97 -----------------
 win32/build-rules-msvc.mak      | 130 -----------------------
 win32/config-msvc.mak           | 230
 ----------------------------------------
 win32/config.h.win32.in         | 158 ---------------------------
 win32/create-lists-msvc.mak     | 147 -------------------------
 win32/create-lists.bat          |  42 --------
 win32/detectenv-msvc.mak        | 146 -------------------------
 win32/generate-msvc.mak         |  39 -------
 win32/hb-introspection-msvc.mak |  42 --------
 win32/info-msvc.mak             | 162 ----------------------------
 win32/install.mak               |  25 -----
 win32/introspection-msvc.mak    |  73 -------------
 win32/pc_base.py                | 124 ----------------------
 win32/replace.py                | 115 --------------------
 win32/sed-enums-srcs.py         |  36 -------
 win32/setup.py                  |  62 -----------
 22 files changed, 9 insertions(+), 1750 deletions(-)

commit 4e4781319b36bba154f3e5d4eb678945d8f6b4fc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 12 10:33:16 2017 +0200

    [ft] Add hb_ft_font_changed()

    When the font size or variations settings on underlying FT_Face
    change,
    one can call hb_ft_font_changed() and continue using hb_font
    created using
    hb_ft_font_create().

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

    New API:
    hb_ft_font_changed()

 docs/harfbuzz-sections.txt |  1 +
 src/hb-ft.cc               | 15 +++++++++++++--
 src/hb-ft.h                |  8 +++++++-
 3 files changed, 21 insertions(+), 3 deletions(-)

commit 94b3cafc3a042aea69ee7040227557fe98a21d87
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 11 17:22:44 2017 +0200

    Add hb_face_get_table_tags()

    New API:
    hb_face_get_table_tags()

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

 src/hb-face.cc              | 29 +++++++++++++++++++++++++++++
 src/hb-face.h               |  5 +++++
 src/hb-open-file-private.hh | 18 ++++++++++++++++++
 3 files changed, 52 insertions(+)

commit e1b6d923021f68713784e2fd68f631c053ef3497
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 11 15:51:31 2017 +0200

    Remove cast of functions to (hb_destroy_func_t)

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

 src/hb-blob.cc     |  8 +++++++-
 src/hb-coretext.cc | 10 ++++++++--
 src/hb-face.cc     |  6 ++++--
 src/hb-ft.cc       | 20 +++++++++++---------
 src/hb-glib.cc     |  9 ++++++++-
 src/hb-ot-font.cc  |  6 ++++--
 6 files changed, 42 insertions(+), 17 deletions(-)

commit 717fcb51dd051ca27d8537e5cf3a32d0447f78b5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 11 15:38:21 2017 +0200

    [coretext] Minor

 src/hb-coretext.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 374bb48d902025e8b8d8acbe525ff43540daee36
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 11 15:37:50 2017 +0200

    Change ptem API to make 0 mean unset

 src/hb-font.cc | 5 ++---
 src/hb-font.h  | 2 +-
 2 files changed, 3 insertions(+), 4 deletions(-)

commit 06c14225b20aa43ae88d362be2de577f6cf3f7b9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 11 15:29:53 2017 +0200

    [coretext] Minor

 src/hb-coretext.cc | 1 +
 1 file changed, 1 insertion(+)

commit a4b46212c5e76494cfde5af6f299e08902aff0d5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 11 15:29:22 2017 +0200

    [coretext] Adjust font size check for 0

 src/hb-coretext.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 269cf1ca82c34c6f6ea126e7333743e5c381453b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 11 15:24:22 2017 +0200

    Correctly initialize ptem

 src/hb-font.cc | 1 +
 1 file changed, 1 insertion(+)

commit 84686bf4c75c001e7cfb2eabdf391b2e76cae335
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 11 15:02:48 2017 +0200

    [coretext-aat] Also pass through CoreText if font has kerx table

    SFNSText has kerx table which apparently is applied.

 src/hb-coretext.cc | 20 +++++++++-----------
 src/hb-coretext.h  |  1 +
 2 files changed, 10 insertions(+), 11 deletions(-)

commit 296d0134c9d04c82cc0bffd545b0fd9a308a2530
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 11 14:09:30 2017 +0200

    [coretext] Change default point size to 12

 src/hb-coretext.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 7b23c286a71883ac3e5777a2dee262af48c76854
Merge: 8d450dd1 a5ebe1d4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 11 13:35:32 2017 +0200

    Merge branch 'coretext-optical-sizing'

    Should fix https://github.com/behdad/harfbuzz/issues/360

commit a5ebe1d4aec41bc5e289a7969e5e5f7bb57733b6
Author: Dominik Röttsches <drott@chromium.org>
Date:   Wed Oct 11 13:32:38 2017 +0200

    [coretext] Recreate CTFont if pt size changed

    Attempt at fixing #360

 src/hb-coretext.cc | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit db7a73ce0781d1fec0235e419ac448565dcfc8ca
Author: Dominik Röttsches <drott@chromium.org>
Date:   Wed Oct 11 13:24:39 2017 +0200

    [coretext] Fix build

 src/hb-coretext.cc | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit f33413075655e6383cd16bc31f0bf804dcec1c64
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 11 13:17:46 2017 +0200

    [coretext] Another try

 src/hb-coretext.cc | 32 +++++++++++++-------------------
 1 file changed, 13 insertions(+), 19 deletions(-)

commit a8e466c3c12a3499028cb576721e5f85ff4cbf2d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 11 13:05:59 2017 +0200

    [coretext] Move CT_Font to font data

    Towards implementing optical sizing.  Untested; won't compile.

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

 src/hb-coretext.cc | 85
 ++++++++++++++++++++++++------------------------------
 1 file changed, 37 insertions(+), 48 deletions(-)

commit f9b4c6570a4725eec5393f86e6468a189ac8c6be
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 11 12:51:25 2017 +0200

    [coretext] Move font size to a macro

 src/hb-coretext.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 8d450dd188dea2d63a03f74d903a76741de8a217
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 11 12:43:46 2017 +0200

    Infrastructure for creating CTFont with correct font size

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

 src/hb-shaper-private.hh | 12 ++++++++++++
 1 file changed, 12 insertions(+)

commit 16d02a58cf187dbcecc1c796acdc5d3a70ca288e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 11 12:28:06 2017 +0200

    [coretext] Change default font size from 36 to 18

 src/hb-coretext.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c0c2dbc871667c32ac8eedb11de64078ef24a429
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 11 12:23:35 2017 +0200

    Remove dirty tracking

    Turns out I don't need this to resolve CoreText optical sizing
    issue after all.

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

 src/hb-face-private.hh |  9 ---------
 src/hb-face.cc         | 17 -----------------
 src/hb-font-private.hh | 13 -------------
 src/hb-font.cc         | 39 ---------------------------------------
 4 files changed, 78 deletions(-)

commit b57f18da700837a57df9606290160ea6e96accc8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 11 11:47:47 2017 +0200

    Add hb_font_[sg]et_ptem() to set/get point size on font

    New API:
    hb_font_set_ptem()
    hb_font_get_ptem()

    Needed for hb-coretext optical sizing:
    https://github.com/behdad/harfbuzz/issues/360

 docs/harfbuzz-sections.txt |  2 ++
 src/hb-font-private.hh     |  5 ++++-
 src/hb-font.cc             | 41 +++++++++++++++++++++++++++++++++++++++++
 src/hb-font.h              | 10 ++++++++++
 4 files changed, 57 insertions(+), 1 deletion(-)

commit 3f9370d9e5051b1abf2fc94be2e10a39c8069f75
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 11 11:34:53 2017 +0200

    Fix TODO item

 src/hb-font.cc | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

commit 5f50f8837f918ca1d176355d1538e0e6c9703f41
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 7 13:17:33 2017 +0200

    [arabic] Fix cluster merging

 src/hb-ot-shape-complex-arabic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c2545b921523538e8237ff6a2591f6cb75ee79f1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 7 12:56:53 2017 +0200

    Add check for HB_EXTERNs

    https://github.com/behdad/harfbuzz/pull/555

 src/Makefile.am      |  1 +
 src/check-externs.sh | 21 +++++++++++++++++++++
 2 files changed, 22 insertions(+)

commit 48a9406839f086735a05a2f1a07987b8a6bd6d33
Author: fanc999 <fanc999@yahoo.com.tw>
Date:   Sat Oct 7 18:57:14 2017 +0800

    Fix build of HarfBuzz tools and HarfBuzz-GObject on Visual Studio
    (#555)

    * hb-buffer.h: Mark hb_buffer_diff() for export

    This will fix the tools builds on Visual Studio, as the symbol is used
    by the tools.

    * build: Adapt NMake Makefiles for GLib 2.53.4 or later

    glib-mkenums was ported from a PERL script to a Python script, so we
    need to update how we generate the enum sources for HarfBuzz-GObject
    in
    the NMake builds.  Let this be known in the build documentation
    for MSVC
    builds.

    One of the problems with the underlying cmd.exe that the NMake
    Makefiles
    run on is that shebang lines are not recognized, so we need to to test
    run the script with Python and see whether it succeeded by outputing a
    source file that is larger than 0 in file size (since running the PERL
    version of the script will clearly fail and cause an empty file to be
    created).

    If it succeeds, we then run a small Python utility script that
    makes the
    necessary string replacements, and we are done.  If that fails,
    then we
    run the glib-mkenums script with PERL, and do the replacements
    with the
    PERL one-liners as we did before.

    We need to make replace.py use latin-1 encoding when using Python
    3.x to
    cope with the copyright sign that is in the generated enum sources.

 src/hb-buffer.h         |  2 +-
 win32/Makefile.am       |  4 +++-
 win32/README.txt        |  5 +++--
 win32/generate-msvc.mak | 17 ++++++++++++-----
 win32/info-msvc.mak     |  5 ++++-
 win32/replace.py        |  2 +-
 win32/sed-enums-srcs.py | 36 ++++++++++++++++++++++++++++++++++++
 7 files changed, 60 insertions(+), 11 deletions(-)

commit c9e2cf6f55c7682b8e7020654945ddd074ebfd24
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 4 16:59:22 2017 +0200

    [ot] Remove 'mal' and 'gle' lang tags

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

 src/hb-ot-tag.cc | 2 --
 1 file changed, 2 deletions(-)

commit 621c49cb8657a79ee6897c4d313d0e825b2b228f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 4 15:06:48 2017 +0200

    Improve performance of ligature component matching

    This O(N^2) was introduced in
    8b2c94c43fd335b944d5e5487265706b8e0f9041.
    Make it O(N).

 src/hb-ot-layout-gsubgpos-private.hh | 37
 +++++++++++++++++++++++-------------
 1 file changed, 24 insertions(+), 13 deletions(-)

commit ab8d70ec7023e51ba6fd7267d2b41c5f95ef0787
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 4 14:47:10 2017 +0200

    [arabic] Implement Unicode Arabic Mark Ordering Algorithm UTR#53

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

 src/hb-ot-shape-complex-arabic.cc                  |  75
 +++++++++++++++++++++
 src/hb-ot-shape-complex-default.cc                 |   1 +
 src/hb-ot-shape-complex-hangul.cc                  |   1 +
 src/hb-ot-shape-complex-hebrew.cc                  |   1 +
 src/hb-ot-shape-complex-indic.cc                   |   1 +
 src/hb-ot-shape-complex-myanmar.cc                 |   2 +
 src/hb-ot-shape-complex-private.hh                 |  12 ++++
 src/hb-ot-shape-complex-thai.cc                    |   1 +
 src/hb-ot-shape-complex-tibetan.cc                 |   1 +
 src/hb-ot-shape-complex-use.cc                     |   1 +
 src/hb-ot-shape-normalize.cc                       |   8 ++-
 test/shaping/Makefile.am                           |   1 +
 .../24b8d24d00ae86f49791b746da4c9d3f717a51a8.ttf   | Bin 0 -> 7160 bytes
 .../94a5d6fb15a27521fba9ea4aee9cb39b2d03322a.ttf   | Bin 0 -> 6816 bytes
 test/shaping/record-test.sh                        |   2 +-
 test/shaping/tests/arabic-mark-order.tests         |   2 +
 16 files changed, 106 insertions(+), 3 deletions(-)

commit b6fe0ab636ffac0a246e160b3508cc4841cb1823
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 4 13:37:08 2017 +0200

    Add info_cc() convenience macro

 src/hb-ot-layout-private.hh  | 2 ++
 src/hb-ot-shape-normalize.cc | 6 +++---
 2 files changed, 5 insertions(+), 3 deletions(-)

commit 7f9e7f8689e1d260596f5256947dfbd474afb1ec
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 4 13:20:33 2017 +0200

    Adjust normalizer for out-of-order marks

    We are going to implement Unicode Arabic Mark Ordering Algorithm:

      http://www.unicode.org/reports/tr53/tr53-1.pdf

    which will reorder marks out of their sorted ccc order.  Adjust
    normalizer to stop combining as soon as dangerous ordering is
    detected.

 src/hb-ot-shape-normalize.cc | 62
 ++++++++++++++++++++++++++------------------
 1 file changed, 37 insertions(+), 25 deletions(-)

commit a252ad61f077c3b7bbfd8335e1b105a57beb58ce
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 4 13:07:08 2017 +0200

    Minor

 src/hb-unicode-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 4c05a405acc25c4ef0d70a97c0ae59013abca2df
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 4 13:06:51 2017 +0200

    Revert "Treat HAMZA ABOVE similar to SHADD for sorting purposes"

    This reverts commit 5a330575768f5a213072230b9ec8faabac9c5737.

    Proper fix coming soon.

 src/hb-unicode-private.hh | 4 ----
 1 file changed, 4 deletions(-)

commit d695cacbf4dd5f77b5e7134cf60553775c515ef1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 4 11:33:47 2017 +0200

    Shorthand format controls should not be ignored

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

 src/hb-unicode-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 50e95229d79bd258ad1d3f6392bfffa128f6df2a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 4 11:28:04 2017 +0200

    Add Chinantec language tags

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

 src/hb-ot-tag.cc | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

commit 9786fcd8fdc0adbe8b6269ddd174ee2818d6fa9e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 3 17:22:43 2017 +0200

    Fix GPOS v_origin ordering

    This should affect mark attachment in vertical text.  I have no font
    to test,
    but this sounds the right order.

    Noticed while debugging https://github.com/behdad/harfbuzz/issues/532

 src/hb-ot-shape.cc | 44 ++++++++++++++++++++------------------------
 1 file changed, 20 insertions(+), 24 deletions(-)

commit 63db692fa9efcd760f2e90f93f4e1428d79a3433
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 3 16:00:18 2017 +0200

    [indic] Fix shaping of U+0AFB GUJARATI SIGN SHADDA

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

 src/hb-ot-shape-complex-indic-private.hh | 2 +-
 src/hb-ot-shape-complex-indic.cc         | 2 ++
 2 files changed, 3 insertions(+), 1 deletion(-)

commit f559c633073f63b9d87cb2440048b4413cfa1c05
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 3 15:20:07 2017 +0200

    [indic] Implement Consonent_With_Stacker

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

 src/hb-ot-shape-complex-indic-machine.rl   | 5 +++--
 src/hb-ot-shape-complex-indic-private.hh   | 7 ++++---
 src/hb-ot-shape-complex-myanmar-machine.rl | 5 +++--
 src/hb-ot-shape-complex-myanmar.cc         | 6 +++---
 4 files changed, 13 insertions(+), 10 deletions(-)

commit e07669fc43c0e23d337ad984aa128c3a08c9c1bb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 3 14:57:14 2017 +0200

    [use] Implement Consonant_With_Stacker

    Related to https://github.com/behdad/harfbuzz/issues/528

 src/gen-use-table.py                   | 7 ++++---
 src/hb-ot-shape-complex-use-machine.rl | 5 +++--
 src/hb-ot-shape-complex-use-private.hh | 3 ++-
 src/hb-ot-shape-complex-use-table.cc   | 6 ++++--
 4 files changed, 13 insertions(+), 8 deletions(-)

commit 3ca9c92aa68956889642690e176c9161ff52edfe
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Tue Oct 3 08:07:02 2017 -0400

    Test Consonant_With_Stacker in Kannada (#530)

 test/shaping/Makefile.am                           |   1 +
 test/shaping/fonts/COPYING                         | 100
 +++++++++++++++++++++
 .../341421e629668b1a1242245d39238ca48432d35d.ttf   | Bin 0 -> 1084 bytes
 .../55c88ebbe938680b08f92c3de20713183e0c7481.ttf   | Bin 0 -> 3300 bytes
 .../663aef6b019dbf45ffd74089e2b5f2496ceceb18.ttf   | Bin 0 -> 1204 bytes
 .../a014549f766436cf55b2ceb40e462038938ee899.ttf   | Bin 0 -> 2720 bytes
 .../tests/indic-consonant-with-stacker.tests       |   4 +
 7 files changed, 105 insertions(+)

commit 5d98de1f382254a8a21fd9a04b642268a21be16f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 3 13:46:25 2017 +0200

    Tweak mark-base attachment

    Apparently a base glyph can also become an attached component of a
    ligature if the ligature-forming lookup used IgnoreBase.  This was
    being confused with a non-first component of a MultipleSubst and
    hence not matched for mark-attachment.  Tweak test to fix.

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

 src/hb-ot-layout-gpos-table.hh                           |   4 +++-
 test/shaping/Makefile.am                                 |   1 +
 .../sha1sum/98b7887cff91f722b92a8ff800120954606354f9.ttf | Bin 0 ->
 1168 bytes
 test/shaping/tests/mark-attachment.tests                 |   1 +
 4 files changed, 5 insertions(+), 1 deletion(-)

commit ea772932d2430ebc7ea712a8c46ec2500966225d
Merge: 771970ef c44657a0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 3 13:25:44 2017 +0200

    Merge commit 'c44657a05d565ec5f2c32ac15d4ecfbee00ac5f7'

commit 771970efa15fc0b77841b7f0a3e266cdcf51246e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 3 13:23:31 2017 +0200

    Minor

 .travis.yml  | 2 +-
 appveyor.yml | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 09cbeb2246217dce61ccc0638edb6211facca4b0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 3 13:22:07 2017 +0200

    Make bots happy

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

 test/shaping/tests/indic-syllable.tests | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c44657a05d565ec5f2c32ac15d4ecfbee00ac5f7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 3 13:14:17 2017 +0200

    Tweak input matching some more

    Followup to 8b2c94c43fd335b944d5e5487265706b8e0f9041

    Allow matching sequences of marks attached to different ligatures,
    as supposedly the base of the subsequent marks were already jumped
    over.

 src/hb-ot-layout-gsubgpos-private.hh | 3 ---
 1 file changed, 3 deletions(-)

commit bbe94777c94637da1bcf944124b5079662618a1e
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Mon Oct 2 22:36:14 2017 +0200

    Print test-suite.log when CI builds fail

 .travis.yml  | 2 +-
 appveyor.yml | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 1633513996f902e95642fcaf9205dded55f509ff
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 2 20:28:56 2017 +0200

    Add test for U+0A51

    New Indic numbers are:

    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: 60729 out of 60747 tests passed. 18 failed (0.0296311%)
    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 71c0a1429db7c7e7e32507be248c9457e1cbfc7d GURMUKHI used to be
    at 15,
    because Uniscribe seems to allow this character standalone, but
    that looks
    wrong.

 .../sha1sum/1735326da89f0818cd8c51a0600e9789812c0f94.ttf | Bin 0 ->
 1008 bytes
 test/shaping/tests/indic-syllable.tests                  |   2 ++
 2 files changed, 2 insertions(+)

commit 8b2c94c43fd335b944d5e5487265706b8e0f9041
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 2 20:02:45 2017 +0200

    Tweak ligature component matching for ligature formation

    If two marks want to ligate and they belong to different components
    of the
    same ligature glyph, and said ligature glyph is to be ignored
    according to
    mark-filtering rules, then allow.

    Example Burmese senquence:

      U+1004,U+103A,U+1039,U+101B,U+103D,U+102D

    Test font provided by Norbert Lindenberg.

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

 src/hb-ot-layout-gsubgpos-private.hh               |  59
 +++++++++++++++++----
 .../a6c76d1bafde4a0b1026ebcc932d2e5c6fd02442.ttf   | Bin 0 -> 1384 bytes
 test/shaping/tests/ligature-id.tests               |   1 +
 3 files changed, 51 insertions(+), 9 deletions(-)

commit 71c0a1429db7c7e7e32507be248c9457e1cbfc7d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 2 18:56:10 2017 +0200

    [indic] Fix shaping of U+0A51

    Mark it as matra below to allow the sequence U+0A15, U+0A51, U+0A47.
    Oh well...

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

 src/hb-ot-shape-complex-indic.cc                         |   6 ++++++
 .../sha1sum/85fe0be440c64ac77699e21c2f1bd933a919167e.ttf | Bin 0 ->
 1224 bytes
 test/shaping/tests/indic-syllable.tests                  |   1 +
 3 files changed, 7 insertions(+)

commit 6eb8950e6265b23d88ba35daab1cff4fc3fe8753
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 2 18:30:05 2017 +0200

    [ucdn] Oops!

 src/hb-ucdn/{unicodedata_db.h => ucdn_db.h} | 4324
 ++++++++++++++-------------
 1 file changed, 2175 insertions(+), 2149 deletions(-)

commit cbec0cd65e1787b20ea55dd5583a7444938bd381
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 2 18:26:52 2017 +0200

    Remove some really old cruft

 src/hb-common.h    | 14 --------------
 src/hb-ucdn/ucdn.h | 14 --------------
 2 files changed, 28 deletions(-)

commit b3dff7720c1fac8ca9bdd7087ac368a0af4349e8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 2 18:22:51 2017 +0200

    [ucdn] Update README

 src/hb-ucdn/README | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 57c55ef8341c760145170dedd002c5afb380e6c8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 2 18:21:27 2017 +0200

    [ot] Improve shaper selection heuristic

 src/hb-ot-shape-complex-private.hh | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

commit 5680ef884cf31ab9b42c587ffa260e390c88b8eb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 2 18:20:51 2017 +0200

    [use] Hack to fix shaping of U+1A7F

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

 src/gen-use-table.py                 | 3 +++
 src/hb-ot-shape-complex-use-table.cc | 2 +-
 2 files changed, 4 insertions(+), 1 deletion(-)

commit 0faa16a25349906ee0ab98b73d9a3d96327a0955
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 2 17:15:46 2017 +0200

    [ucdn] Update to Unicode 10

    Update to commit c000ebf79c095a7d58cf90090bde5715592c4834
    plus this bug-fix: https://github.com/grigorig/ucdn/issues/18

 src/hb-ucdn.cc               |  4 +++
 src/hb-ucdn/Makefile.sources |  2 +-
 src/hb-ucdn/ucdn.c           | 69
 ++++++++++++++++++++++----------------------
 src/hb-ucdn/ucdn.h           |  7 +++++
 4 files changed, 47 insertions(+), 35 deletions(-)

commit ea535a1dfa63f82280607273cd282a6134c334da
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 2 17:02:39 2017 +0200

    [use] Update to Unicode 10

 src/gen-use-table.py                 |  5 +--
 src/hb-ot-shape-complex-use-table.cc | 69
 ++++++++++++++++++++++++++----------
 2 files changed, 54 insertions(+), 20 deletions(-)

commit 29c244aff6e3c359796bb033496c14ad5537dbe0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 2 16:36:21 2017 +0200

    Minor

 src/gen-use-table.py | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 1535f8c67216e8559fa48691fe6d9c2726c08973
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 2 16:12:18 2017 +0200

    Add Unicode 10 scripts

 src/hb-common.h                    | 8 ++++++++
 src/hb-ot-shape-complex-private.hh | 5 +++++
 2 files changed, 13 insertions(+)

commit bdbe974f525d33b8c735fb5d7fd76c236c4dd0ea
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 2 10:00:31 2017 -0400

    [indic] Update table to Unicode 10

 src/hb-ot-shape-complex-indic-table.cc | 70
 +++++++++++++++++-----------------
 1 file changed, 36 insertions(+), 34 deletions(-)

commit cc79b666bc4a81a0342ed1e706dd7db109739dc5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 2 09:19:15 2017 -0400

    [indic] Add test for 1a0a356a0f2b2932581e4fd0437c01c058f4f6d1

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

 .../sha1sum/87f85d17d26f1fe9ad28d7365101958edaefb967.ttf | Bin 0 ->
 1000 bytes
 test/shaping/tests/indic-syllable.tests                  |   1 +
 2 files changed, 1 insertion(+)

commit 819cc360499a5f136325b5a1a18098ebc2aee081
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 2 09:03:16 2017 -0400

    [indic] Move manual code out of generated table

 src/hb-ot-shape-complex-indic-table.cc | 7 -------
 src/hb-ot-shape-complex-indic.cc       | 5 +++++
 2 files changed, 5 insertions(+), 7 deletions(-)

commit da4866f7177a4e2836cc70b844e2e64ab671761f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 2 08:57:06 2017 -0400

    [arabic] Update table to Unicode 10 data

 src/hb-ot-shape-complex-arabic-table.hh | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

commit 1a0a356a0f2b2932581e4fd0437c01c058f4f6d1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 2 08:49:23 2017 -0400

    [indic] Categorize U+0980 BENGALI ANJI as placeholder

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

 src/hb-ot-shape-complex-indic.cc | 1 +
 1 file changed, 1 insertion(+)

commit 19e77e01bc13f44138e1d50533327d314dd0a018
Author: jfkthame <jfkthame@gmail.com>
Date:   Mon Oct 2 13:08:49 2017 +0100

    [shape-plan] Don't look for a cached plan if variation coords are
    specified. Fixes #549. (#550)

    This is a temporary hack just to avoid incorrect shaping results,
    pending proper support
    for caching shape-plans with variation coordinates.

 src/hb-shape-plan.cc | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

commit db446cce4ef4cd1a4f1652e3aa3e5e5ed1881d39
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 1 12:06:00 2017 -0400

    Add RELEASING.md to dist

 Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit 933a81d74fee0d5856fc7b15b58a16e0e0168e48
Author: ebraminio <ebrahim@gnu.org>
Date:   Sun Oct 1 19:35:24 2017 +0330

    Add release checklist (#529)

 RELEASING.md | 96
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 96 insertions(+)

commit 66128d3cfb12705530141b5a4bd2706f0cbb9fc5
Author: mhosken <mhosken@users.noreply.github.com>
Date:   Wed Sep 27 01:29:45 2017 +0700

    Fix missing xscale in rtl graphite unpacking (#541)

    * Fix missing xscale in rtl graphite unpacking

    * Oops didn't need to mess with yscale

 src/hb-graphite2.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 3ca69c8c32b8408dd9f8e6e866cd07e58c0d79b7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 14 20:50:35 2017 -0400

    Use strtod_l() to correctly parse decimal numbers in French &
    other locales

    Test with, eg.:
    $ LC_ALL=fr_FR.utf-8 ./hb-view NotoSansArabic-VF.ttf بهداد
    --variations wght=1.2

 configure.ac     |  4 ++--
 src/hb-common.cc | 53
 +++++++++++++++++++++++++++++++++++++++++++++++++++--
 2 files changed, 53 insertions(+), 4 deletions(-)

commit 9355218f582a6c2425cadcb868204f81b17d5767
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Sep 9 11:21:07 2017 -0700

    [util] Add a few shorthand forms for commandline options

    -o, -O, -u, -v, -V

 util/options.cc | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit a984e0c4d921a6dff82cc1b5c686cc957215bc7e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 5 11:18:35 2017 -0700

    1.5.1

 NEWS         | 13 +++++++++++++
 configure.ac |  2 +-
 2 files changed, 14 insertions(+), 1 deletion(-)

commit d03f11f246efec13e48fd68a9ce136db771b22bf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 4 20:14:13 2017 -0700

    Fix buffer_diff for empty buffers

    If buffers are empty, content type should be ignored.

    This fixes last of the failing tests: fuzzed.tests.  Green again!

 src/hb-buffer.cc | 2 +-
 src/hb-buffer.h  | 4 ++--
 util/options.hh  | 2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)

commit 7cc348041d0b026ca6d2c240134e8f9100600e99
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 4 20:04:59 2017 -0700

    [unsafe-to-break] Fix unsafe-to-break for cluster-level=1

    Fixes tests/shaping/tests/cluster.tests

 src/hb-ot-shape.cc | 17 +++++++++++------
 1 file changed, 11 insertions(+), 6 deletions(-)

commit 61a9d7e6d0e6df7b48f58fa1679f0f93407993b2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 4 19:48:52 2017 -0700

    Minor

 test/shaping/run-tests.sh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 03a5a6f873e5a50011f1c2418f5ceab86d9c2931
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 1 19:09:54 2017 -0700

    [util] Add --unicodes to hb-view / hb-shape

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

 test/shaping/hb_test_tools.py |  2 +-
 util/options.cc               | 65
 ++++++++++++++++++++++++++++++++++++++++++-
 2 files changed, 65 insertions(+), 2 deletions(-)

commit 0e5b475d98dd67e927534508fe2cd8dc9765e24e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 1 18:28:47 2017 -0700

    Minor

 test/shaping/run-tests.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 3e1fc6d18ba0019bbeede78b95070a6e7156c314
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 1 10:46:48 2017 -0700

    Minor

 test/shaping/run-tests.sh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 04f009f84891b513087830c7aa1b755addd016d9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 1 10:38:25 2017 -0700

    Add test accidentally removed in previous commit

 test/shaping/tests/indic-syllable.tests | 1 +
 1 file changed, 1 insertion(+)

commit 06cb162cd79cc922b572e5f532ca867223b6dc4c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 1 10:34:21 2017 -0700

    [indic] Treat Consonant_With_Stacker as consonant

    Fixes https://github.com/behdad/harfbuzz/issues/528
    "Kannada JIHVAMULIYA and UPADHMANIYA insert dotted circles"

 src/hb-ot-shape-complex-indic-private.hh                  |   2 +-
 .../sha1sum/3d0b77a2360aa6faa1385aaa510509ab70dfbeff.ttf  | Bin 0 ->
 988 bytes
 test/shaping/tests/indic-syllable.tests                   |   3 ++-
 3 files changed, 3 insertions(+), 2 deletions(-)

commit c449d2d8c9e27502380faa0b568a374c838ac9a7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 30 17:28:22 2017 -0700

    [unsafe-to-break] Mark during fraction-slash formation

    Fixes tests/automatic-fractions.tests

 src/hb-ot-shape.cc | 2 ++
 1 file changed, 2 insertions(+)

commit b262ebcc9c9539076d17751e9bae06a8fd5001ff
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 30 17:25:10 2017 -0700

    [util] Fix cluster sweeping during --verify

    If *I* get this wrong in 2017, I have no idea how others get their
    head around
    cluster math...

    Fixes tests/arabic-fallback-shaping.tests

 util/options.hh | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

commit 69d701b02e5ebc3597b0d0576dbab8e1ece51944
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 30 17:07:29 2017 -0700

    [util] When --verify fails, return reconstructed shape results

 util/options.hh    | 8 +++-----
 util/view-cairo.hh | 2 +-
 2 files changed, 4 insertions(+), 6 deletions(-)

commit 099472e08bf81d6dd8ca1647999592df6b7fdfb9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 30 16:45:06 2017 -0700

    hb_buffer_diff() tweak

    I like to have a mode where CONTAINS_NOTDEF and CONTAINS_DOTTEDCIRCLE
    are not
    returned.  Abused a value of -1 for that.  hb-shape now uses it.
    Fixes two
    of the six tests failing with --verify in test/shaping/run-tests.sh.

 src/hb-buffer.cc          | 16 ++++++++--------
 test/shaping/run-tests.sh |  4 ++--
 util/options.hh           |  2 +-
 3 files changed, 11 insertions(+), 11 deletions(-)

commit e8b364b86023731e0416ab4eb433467c4b7a0ec2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 23 15:00:45 2017 -0700

    1.5.0

 NEWS         | 44 ++++++++++++++++++++++++++++++++++++++++++++
 configure.ac |  2 +-
 2 files changed, 45 insertions(+), 1 deletion(-)

commit 224d20e4e1c62416ff842a81188dfeff069f895b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 23 14:41:48 2017 -0700

    [docs] Minor

 docs/harfbuzz-docs.xml     | 12 ++++++++++++
 docs/harfbuzz-sections.txt | 10 ++++++++++
 src/hb-buffer.cc           |  8 +++++++-
 3 files changed, 29 insertions(+), 1 deletion(-)

commit 4387b059a0603b17024de48d57bee6a3b5e9e56c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 23 14:35:58 2017 -0700

    [test] Add --verify to hb-shape

    Disabled for now.  Will enable and fix failures after next release.

 test/shaping/run-tests.sh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit b2dd0c1c32ba30714355baca1857d64c1608b4c2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 23 13:12:54 2017 -0700

    Add hb_glyph_info_get_glyph_flags()

    New API.

 src/hb-buffer.cc | 17 +++++++++++++++++
 src/hb-buffer.h  |  9 ++++++++-
 2 files changed, 25 insertions(+), 1 deletion(-)

commit 3e8f4f145255a905029c6b5cb8f40e6dcca096f3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 22 17:56:25 2017 -0700

    Rename HB_BUFFER_DIFF_FLAG_MASK_MISMATCH to
    HB_BUFFER_DIFF_FLAG_GLYPH_FLAGS_MISMATCH

 src/hb-buffer.cc | 2 +-
 src/hb-buffer.h  | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit a9e52a1af4c039bc53090a9c1e4c1136fc542605
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 15 17:30:18 2017 -0700

    [util] Prefix trace lines with "trace:", and error lines with "error:"

 util/hb-shape.cc | 12 ++++++------
 util/options.cc  |  4 ++--
 util/options.hh  |  1 +
 3 files changed, 9 insertions(+), 8 deletions(-)

commit 7ea10c35a34c894e87ee6576d6d4ba3e78535a27
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 15 17:12:28 2017 -0700

    [util] Respect eot/bot in safe-to-break test; hook up hb_buffer_diff()

 util/options.hh | 38 ++++++++++++++++++++++++++------------
 1 file changed, 26 insertions(+), 12 deletions(-)

commit 8820ba29dfd2e1302377da62a0527939a0d7d9fb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 15 17:12:21 2017 -0700

    Fix warning about "may be used uninitialized"

 src/hb-ot-layout-common-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 91770e1c567d87fc513e8d39576e51c3853b1f23
Author: Emil A Eklund (eae) <eae@eae.net>
Date:   Tue Aug 15 16:25:18 2017 -0700

    Fix signed/unsigned warning (#522)

    Change hb_buffer_diff to explicitly cast result of abs to unsigned
    when
    comparing with position_fuzz to avoid unsafe signed/unsigned
    comparions
    warnings on windows.

 src/hb-buffer.cc | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 587f15ece316df7c86f386518aba48a6a44c061d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 14 15:23:10 2017 -0700

    Minor

 src/hb-face-private.hh |  8 ++++----
 src/hb-face.cc         |  8 ++++----
 src/hb-font-private.hh | 14 +++++++-------
 src/hb-font.cc         | 14 +++++++-------
 4 files changed, 22 insertions(+), 22 deletions(-)

commit a88e2a73f34067381a81577c3f60bc5c2a6f2eea
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 14 14:49:21 2017 -0700

    [util] Fix leaks

 util/options.hh | 2 ++
 1 file changed, 2 insertions(+)

commit 338e61ad1b40110a70c4fb497b117bcb07548467
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 14 12:36:38 2017 -0700

    Fix typo

 src/hb-buffer.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 331d66c7fe27a7649454486000827f0c36d6eb36
Author: Jonathan Kew <jfkthame@gmail.com>
Date:   Sat Jul 19 23:09:09 2014 +0100

    Add function to compare two buffers

    Based on patch from Jonathan Kew.

    Needs more cleaning up and documentation.

    New API:
    hb_buffer_diff_flags_t
    hb_buffer_diff()

 src/hb-buffer-private.hh   |  1 +
 src/hb-buffer-serialize.cc |  4 +--
 src/hb-buffer.cc           | 82
 ++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-buffer.h            | 39 ++++++++++++++++++++++
 4 files changed, 124 insertions(+), 2 deletions(-)

commit 219af509ef8269e51f1396b18521c75b000d8dda
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 13 15:10:26 2017 -0700

    [graphite2] Fix warning

 src/hb-graphite2.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 239119a631fee7701be4d444adeda808b915863a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 13 15:08:34 2017 -0700

    [unsafe-to-break] Mark all positions as unsafe in alternative shapers

 src/hb-coretext.cc    | 6 ++++++
 src/hb-directwrite.cc | 2 ++
 src/hb-graphite2.cc   | 1 +
 src/hb-uniscribe.cc   | 2 ++
 4 files changed, 11 insertions(+)

commit 05fabbd03eae7b84ebbce7abbdc55c1d67ceacf9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 11 19:51:06 2017 -0700

    [unsafe-to-break] Towards verifying unsafe-to-break in --verify

    We break and shape fragments and reconstruct shape result from them.
    Remains to compare to original buffer.  Going to add some buffer
    comparison API and use here, instead of open-coding.

 src/hb-buffer.cc |   5 ++-
 util/options.hh  | 131
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 2 files changed, 133 insertions(+), 3 deletions(-)

commit 6ce25f57c663f86326262a5ff7a42288f358ed51
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 11 19:31:05 2017 -0700

    Fix hb_buffer_append()

    Ouch!

 src/hb-buffer.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 1c17c2bde5bdf74a652b78d71b64e3aaa75ec43d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 11 19:06:07 2017 -0700

    [unsafe-to-break] Copy flag to all glyphs in a cluster

    Makes consumption easier.

 src/hb-buffer-private.hh    | 46
 +++++++++++++++++++++++++++++++++++++++++++++
 src/hb-buffer.cc            | 28 ++++++---------------------
 src/hb-ot-layout-private.hh |  3 +--
 src/hb-ot-shape.cc          | 27 ++++++++++++++++++++++++++
 4 files changed, 80 insertions(+), 24 deletions(-)

commit ec104e5912417c0fdc8c7cb004c684aea26eb1dc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 11 18:24:27 2017 -0700

    [unsafe-to-break] Mark unsafe is cluster merging is disabled

    We were relying on cluster merges not requiring unsafe flagging
    because
    they get merged.  If cluster level requests no merging, then we flag
    unsafe when merge would have happened.

 src/hb-buffer.cc | 3 +++
 1 file changed, 3 insertions(+)

commit 39a97494304a7e6b8999e59a92ce4d24ba9b881a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 11 15:52:06 2017 -0700

    New API: hb_buffer_append()

 src/hb-buffer.cc | 52
 +++++++++++++++++++++++++++++++++++++++++++++++++++-
 src/hb-buffer.h  |  6 ++++++
 2 files changed, 57 insertions(+), 1 deletion(-)

commit d2052278f24b3279503d5fa215a7834c2d21f91c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 11 15:12:25 2017 -0700

    [util] Add --verify to hb-shape / hb-view that verifies shape results

    Right now it checks for monotone cluster values.  Other checks to
    be added.

 util/hb-shape.cc       |  7 ++-----
 util/options.cc        |  2 ++
 util/options.hh        | 42 +++++++++++++++++++++++++++++++++++++++---
 util/shape-consumer.hh | 12 ++++++++----
 util/view-cairo.hh     |  7 ++-----
 5 files changed, 53 insertions(+), 17 deletions(-)

commit 14a639ea592cba971e5548f0942dd395c602c7a8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 11 11:30:39 2017 -0700

    [unsafe-to-break] Fix Use-of-uninitialized-value in
    unsafe_to_break_set_mask

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

 src/hb-ot-shape-complex-hangul.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e43aad55524cc1d4008ce337c2863a8546706d2e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 10 20:54:15 2017 -0700

    [unsafe-to-break] Flag in Thai PUA shaping

 src/hb-ot-shape-complex-thai.cc | 1 +
 1 file changed, 1 insertion(+)

commit eae009602b5503c53a7f8ab053912563a97bbfa4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 10 20:50:48 2017 -0700

    [unsafe-to-break] Flag in Hangul shaper

 src/hb-ot-shape-complex-hangul.cc | 6 ++++++
 1 file changed, 6 insertions(+)

commit b65aa1cd4778e0103a2a1ed0e1b1012a09cf1f48
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 10 20:32:02 2017 -0700

    [unsafe-to-break] Flag during mark attachment

 src/hb-ot-layout-gpos-table.hh | 1 +
 1 file changed, 1 insertion(+)

commit c4712f8e372ee42749cda56cc7c28dc110a07ea9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 10 20:27:21 2017 -0700

    Fix test

 test/api/test-buffer.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 882ebdadd6b3420ef2d3f296cd7416c76ee9901f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 10 20:23:17 2017 -0700

    [unsafe-to-break] Flag during cursive positioning

 src/hb-ot-layout-gpos-table.hh | 1 +
 1 file changed, 1 insertion(+)

commit 2d158ca37673f2b262f2381854559d6872d8fb45
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 10 20:19:15 2017 -0700

    [unsafe-to-break] Flag during kerning

 src/hb-ot-layout-gpos-table.hh | 2 ++
 1 file changed, 2 insertions(+)

commit a7c4972ccefaaf48dfd6f0f4588df0c785aa33d2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 10 20:16:15 2017 -0700

    [unsafe-to-break] Flag during fallback positioning

 src/hb-ot-shape-fallback.cc | 3 +++
 1 file changed, 3 insertions(+)

commit e2a2b5b229c92f1de3b9c3ea111cd1ffa75b18fc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 10 20:10:12 2017 -0700

    [unsafe-to-break] Be careful with flag propagation when merging
    clusters

 src/hb-buffer-private.hh | 13 +++++++++++++
 src/hb-buffer.cc         | 17 ++++++++++-------
 src/hb-ot-shape.cc       |  3 ++-
 3 files changed, 25 insertions(+), 8 deletions(-)

commit f2868c200896a96a34fc1bba4d43eddc03789da2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 10 19:58:05 2017 -0700

    Set mask to 0, instead of 1, by default

    This shouldn't matter.

 src/hb-buffer.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9e005c5d86cd4c19383093f76a237cc8f5f12fb7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 10 18:45:33 2017 -0700

    [unsafe-to-break] Mark Indic-like clusters as unsafe-to-break

 src/hb-ot-shape-complex-indic.cc   | 2 ++
 src/hb-ot-shape-complex-myanmar.cc | 2 ++
 src/hb-ot-shape-complex-use.cc     | 2 ++
 3 files changed, 6 insertions(+)

commit 5287ccc935c86b6f5e6867592b64bc2461384f45
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 10 14:25:53 2017 -0700

    [unsafe-to-break] Allocate public bits from 0

 src/hb-buffer.h  |  5 +++--
 src/hb-ot-map.cc | 15 +++++++++------
 2 files changed, 12 insertions(+), 8 deletions(-)

commit 91ce0c45d6782057a2736f7b76a3c49cadbea070
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 5 16:13:03 2016 +0100

    [safe-to-break] Fix logic when there is no out-buffer

 src/hb-buffer.cc | 6 ++++++
 1 file changed, 6 insertions(+)

commit a043c99f778ffdde15d212fe23468cb9f51036bc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 4 19:51:22 2016 +0200

    [unsafe-to-break] Simplify logic

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

 src/hb-buffer.cc | 57
 +++++++++++++-------------------------------------------
 1 file changed, 13 insertions(+), 44 deletions(-)

commit 40bd7e9a1cf422b17f15d0f66547bde9098e6ef3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 2 14:47:45 2016 +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

 src/hb-buffer-private.hh             | 26 ++++++++------
 src/hb-buffer-serialize.cc           | 24 +++++++++----
 src/hb-buffer.cc                     | 67
 ++++++++++++++++++++++++++++++++++++
 src/hb-buffer.h                      | 10 ++++--
 src/hb-ot-layout-gsub-table.hh       |  7 ++--
 src/hb-ot-layout-gsubgpos-private.hh | 27 ++++++++++-----
 src/hb-ot-map.cc                     |  2 ++
 src/hb-ot-shape-complex-arabic.cc    |  3 ++
 util/hb-shape.cc                     |  2 ++
 util/options.cc                      |  1 +
 util/options.hh                      |  2 ++
 11 files changed, 142 insertions(+), 29 deletions(-)

commit 3e44748ebe1524aef6feb01c42d342e8a2d77d34
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 9 22:09:01 2017 -0700

    [util] Fix two other Coverity warnings

 util/options.cc | 4 ++++
 1 file changed, 4 insertions(+)

commit 356f93b64b6005f44bcfc329f6f9e150ec32fc26
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 9 22:06:53 2017 -0700

    [util] Fix warning

 util/shape-consumer.hh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit ac8c4e56d8b8c2e7a8f4802f83deb935bd6bbbd3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 9 22:05:08 2017 -0700

    [ft] Fix theoretical leak

 src/hb-ft.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 5a330575768f5a213072230b9ec8faabac9c5737
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 9 17:23:28 2017 -0700

    Treat HAMZA ABOVE similar to SHADD for sorting purposes

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

 src/hb-unicode-private.hh | 4 ++++
 1 file changed, 4 insertions(+)

commit 68af14d5cc666ebf0596766cbed87cc9404fd50f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 9 17:09:21 2017 -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

 src/hb-ft.cc         | 4 ++--
 src/hb-ot-font.cc    | 6 +++---
 src/hb-shape-plan.cc | 4 ++--
 3 files changed, 7 insertions(+), 7 deletions(-)

commit 3b54d0337e6119a4397573f5589b771a68b2ecd9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 8 18:37:03 2017 -0700

    Add tests for 'avar' fix 5dc30451b80f6bb0079424a130875c10486e4d34

 test/shaping/Makefile.am                           |   1 +
 .../d23d76ea0909c14972796937ba072b5a40c1e257.ttf   | Bin 0 -> 1812 bytes
 test/shaping/record-test.sh                        |   1 +
 test/shaping/tests/variations-rvrn.tests           | 100
 +++++++++++++++++++++
 4 files changed, 102 insertions(+)

commit 7917792f01603f91b703d12e12d8baced655a615
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 8 13:17:03 2017 -0700

    1.4.8

 NEWS         | 9 +++++++++
 configure.ac | 2 +-
 2 files changed, 10 insertions(+), 1 deletion(-)

commit 5dc30451b80f6bb0079424a130875c10486e4d34
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 7 21:37:07 2017 -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

 src/hb-ot-var-avar-table.hh | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

commit dc2c418e397bf251faf03d824fc780ac19bb1dee
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 3 12:34:15 2017 +0100

    [check-defs/symbols.sh] Drop empty-symbol lines

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

 src/check-defs.sh    | 2 +-
 src/check-symbols.sh | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 6f38845d9c6852812eb1963a1fd7e5ec771e5ce3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 19 17:20:55 2017 -0700

    [hb-shape] Rename --show-messages to --trace

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

 util/hb-shape.cc | 2 +-
 util/options.cc  | 2 +-
 util/options.hh  | 4 ++--
 3 files changed, 4 insertions(+), 4 deletions(-)

commit e60350551addbd945491f662e98464c9e3e9fec5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 18 19:14:19 2017 -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

 util/hb-ot-shape-closure.cc | 10 +++++++---
 util/hb-shape.cc            | 33 +++++++++++++++++++++++++++++++--
 util/main-font-text.hh      | 27 ++++-----------------------
 util/options.cc             | 10 +++++++---
 util/options.hh             |  2 ++
 util/shape-consumer.hh      | 18 ++++++++++++------
 util/view-cairo.hh          |  4 ++--
 7 files changed, 65 insertions(+), 39 deletions(-)

commit 65f64d14005e4d0808e818b3c97bd3d600628011
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Jul 19 02:42:53 2017 +0430

    Unbreak arm-none-eabi build again (#514)

 src/hb-ot-shape-complex-indic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit fc15e60eadfc89aca5b8815262b8ee888f285169
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 18 11:24:42 2017 -0700

    1.4.7

 NEWS         | 10 ++++++++++
 configure.ac |  2 +-
 2 files changed, 11 insertions(+), 1 deletion(-)

commit c1432bce3cfc1156d19b21892d4083afa8838d94
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 14 17:34:47 2017 +0100

    [arabic] Adjust feature order again

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

 src/hb-ot-shape-complex-arabic.cc                        |   7 ++++++-
 .../sha1sum/bf39b0e91ef9807f15a9e283a21a14a209fd2cfc.ttf | Bin 0 ->
 7312 bytes
 test/shaping/tests/arabic-feature-order.tests            |   1 +
 3 files changed, 7 insertions(+), 1 deletion(-)

commit 9813be3d1212eef5a525d64978e0bb2032cd44d9
Author: Cosimo Lupo <cosimo@anthrotype.com>
Date:   Fri Jul 14 17:11:46 2017 +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

 src/hb-coretext.cc | 41 ++++++++++++++++++++++++++++++++---------
 1 file changed, 32 insertions(+), 9 deletions(-)

commit 9dd29c681e8e856c139f20f405d7c0e04928aa70
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 14 17:01:27 2017 +0100

    [use] Allow up to two medial-below letters

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

 src/hb-ot-shape-complex-use-machine.rl                   |   3 ++-
 .../sha1sum/e68a88939e0f06e34d2bc911f09b70890289c8fd.ttf | Bin 0 ->
 2192 bytes
 test/shaping/tests/use-syllable.tests                    |   3 +++
 3 files changed, 5 insertions(+), 1 deletion(-)

commit 216b003c914d2209a6846b1ce61fe7a3421c789c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 14 16:38:51 2017 +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.

 src/gen-arabic-table.py                                  |   2 +-
 src/gen-indic-table.py                                   |   2 +-
 src/gen-use-table.py                                     |   8 +++++---
 src/hb-ot-shape-complex-use-table.cc                     |   4 ++--
 test/shaping/Makefile.am                                 |   1 +
 .../sha1sum/96490dd2ff81233b335a650e7eb660e0e7b2eeea.ttf | Bin 0 ->
 1368 bytes
 test/shaping/tests/use-syllable.tests                    |   1 +
 7 files changed, 11 insertions(+), 7 deletions(-)

commit f1cd7ca89306ff252816e9747177d8dab00524f6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 14 15:59:40 2017 +0100

    [indic] Add github URL

 src/hb-ot-shape-complex-indic.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 3cc84f45b995b243fca82ce18481f11d69846eb5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 14 15:50:22 2017 +0100

    [indic] Fix https://github.com/behdad/harfbuzz/issues/478

 src/hb-ot-shape-complex-indic-private.hh                 |   2 +-
 src/hb-ot-shape-complex-indic.cc                         |   8 ++++++++
 test/shaping/Makefile.am                                 |   1 +
 .../sha1sum/54674a3111d209fb6be0ed31745314b7a8d2c244.ttf | Bin 0 ->
 1352 bytes
 test/shaping/tests/indic-syllable.tests                  |   1 +
 5 files changed, 11 insertions(+), 1 deletion(-)

commit e359a4b8f57bbc778843f233c4f5d6fb07ff11d9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 14 14:14:35 2017 +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%)

 src/hb-ot-shape-complex-indic.cc                         |   4 ++--
 test/shaping/Makefile.am                                 |   1 +
 .../sha1sum/f443753e8ffe8e8aae606cfba158e00334b6efb1.ttf | Bin 0 ->
 3972 bytes
 test/shaping/tests/indic-joiners.tests                   |   2 ++
 4 files changed, 5 insertions(+), 2 deletions(-)

commit cdf1fd0627c5517c948ca05d2e9427c3e441adf9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 14 12:43:34 2017 +0100

    [indic] Add infrastructure to disable ZWNJ-skipping in
    context-matching

    Not used yet.

 src/hb-ot-layout-gsubgpos-private.hh | 45
 ++++++++++++++++++++----------------
 src/hb-ot-layout.cc                  |  1 +
 src/hb-ot-map-private.hh             | 10 +++++---
 src/hb-ot-map.cc                     |  8 +++++--
 4 files changed, 39 insertions(+), 25 deletions(-)

commit 3a73e0d5e17b87ac7e307d855c2cb43d040bd195
Author: Dominik Schlösser <dominik.schloesser@gmail.com>
Date:   Fri Jul 14 13:14:55 2017 +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)

 test/shaping/Makefile.am                           |   3 ++
 .../2de1ab4907ab688c0cfc236b0bf51151db38bf2e.ttf   | Bin 0 -> 125256
 bytes
 .../82f4f3b57bb55344e72e70231380202a52af5805.ttf   | Bin 0 -> 11116 bytes
 .../a02a7f0ad42c2922cb37ad1358c9df4eb81f1bca.ttf   | Bin 0 -> 106096
 bytes
 test/shaping/tests/tibetan-contractions-1.tests    |  60
 +++++++++++++++++++++
 test/shaping/tests/tibetan-contractions-2.tests    |  53
 ++++++++++++++++++
 test/shaping/tests/tibetan-vowels.tests            |  11 ++++
 7 files changed, 127 insertions(+)

commit 4e21ec546932c2a982aa52fce718c1a0d90a71d6
Author: Dominik Schlösser <dominik.schloesser@gmail.com>
Date:   Fri Jul 14 13:14:23 2017 +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

 src/hb-unicode-private.hh | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

commit ad52e044bcf733bcc6c0373bafcd78a8c0beb400
Author: fanc999 <fanc999@yahoo.com.tw>
Date:   Wed Jun 21 22:19:57 2017 +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.

 win32/README.txt            |  20 ++++++-
 win32/build-rules-msvc.mak  |   5 +-
 win32/config-msvc.mak       |   7 +++
 win32/create-lists-msvc.mak |   9 ++++
 win32/generate-msvc.mak     |   6 +++
 win32/info-msvc.mak         |   8 ++-
 win32/pc_base.py            | 124
 ++++++++++++++++++++++++++++++++++++++++++++
 win32/replace.py            | 115
 ++++++++++++++++++++++++++++++++++++++++
 win32/setup.py              |  62 ++++++++++++++++++++++
 9 files changed, 353 insertions(+), 3 deletions(-)

commit 3b0e47ca006b8fe6a24ace72dd931e3649bb8e6f
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Jun 19 14:47:09 2017 +0430

    Fix arm-none-eabi build (fixes #451) (#496)

 CMakeLists.txt                          |  4 ++--
 src/hb-buffer.cc                        |  4 ++--
 src/hb-common.cc                        | 28 ++++++++++++++++++++--
 src/hb-ot-font.cc                       |  2 +-
 src/hb-ot-layout.cc                     |  2 +-
 src/hb-ot-shape-complex-arabic-table.hh | 14 +++++------
 src/hb-ot-shape-complex-arabic.cc       |  2 +-
 src/hb-ot-shape-complex-hangul.cc       | 16 ++++++-------
 src/hb-ot-shape-complex-indic-table.cc  | 22 ++++++++---------
 src/hb-ot-shape-complex-indic.cc        | 12 +++++-----
 src/hb-ot-shape-complex-myanmar.cc      |  2 +-
 src/hb-ot-shape-complex-thai.cc         | 12 +++++-----
 src/hb-ot-shape-complex-use-table.cc    | 42
 ++++++++++++++++-----------------
 src/hb-unicode-private.hh               | 16 ++++++-------
 src/hb-utf-private.hh                   | 18 +++++++-------
 15 files changed, 110 insertions(+), 86 deletions(-)

commit 76c4873e8cad2871d2d547318d371b9a89d8c806
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Jun 2 21:53:10 2017 +0430

    Support branch prediction helpers on clang compiles (#491)

 src/hb-private.hh | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

commit 7dba30639a6f62803dfc21706bc7c654799f373e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jun 1 11:44:42 2017 -0400

    Handle allocation failure in hb-language code

 src/hb-common.cc | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)

commit 92e2c4baafa0401cb8d7dd2bbd70acfaeaf2aabf
Author: Sebastian Rasmussen <sebras@gmail.com>
Date:   Mon May 29 12:53:30 2017 -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.

 src/hb-common.cc  | 8 +++++++-
 src/hb-private.hh | 4 ----
 2 files changed, 7 insertions(+), 5 deletions(-)

commit 06cfe3f7369684fc05fa16da7f6778350f8bcba5
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Wed May 17 21:32:47 2017 +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

 src/hb-ot-layout-gsubgpos-private.hh                     |   2 +-
 src/hb-ot-layout-private.hh                              |  13
 +++++++++----
 test/shaping/Makefile.am                                 |   1 +
 .../sha1sum/53374c7ca3657be37efde7ed02ae34229a56ae1f.ttf | Bin 0 ->
 5044 bytes
 test/shaping/tests/emoji-flag-tags.tests                 |   2 ++
 5 files changed, 13 insertions(+), 5 deletions(-)

commit 1817221620dce713aae67352568ebcc231ab9512
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 16 14:26:28 2017 -0700

    Minor

 src/hb-atomic-private.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 152736981d5bb9e098c1a8b86fcf8fe577a4a9ec
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat May 13 21:32:56 2017 +0430

    [cmake] Add framework build support (#484)

 CMakeLists.txt | 46 +++++++++++++++++++++++++++++++++++++++-------
 1 file changed, 39 insertions(+), 7 deletions(-)

commit bf50ddaf2b416bd80ae8849593bc745b578193d9
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu May 4 20:31:42 2017 +0430

    [cmake] minor (#482)

 CMakeLists.txt | 30 +++++++++++++++++++-----------
 1 file changed, 19 insertions(+), 11 deletions(-)

commit 141b33de9a141248e2f034d55f48460159536cb9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Apr 23 16:19:13 2017 -0700

    1.4.6

 NEWS         | 9 +++++++++
 configure.ac | 2 +-
 2 files changed, 10 insertions(+), 1 deletion(-)

commit 74b99ef2249107e7cd01bd1ee522a5d9ce61e05f
Author: mhosken <mhosken@users.noreply.github.com>
Date:   Thu Apr 20 19:13:22 2017 +0100

    Fix graphite2 rtl conversion (#475)

 src/hb-graphite2.cc | 32 ++++++++++++++------------------
 1 file changed, 14 insertions(+), 18 deletions(-)

commit 696641314e7eb60a5a2e08c1c4fd1e5e41022148
Author: ebraminio <ebrahim@gnu.org>
Date:   Wed Apr 19 22:59:46 2017 +0430

    [cmake] Final touches (#473)

 CMakeLists.txt | 113
 +++++++++++++++++++++++++++------------------------------
 1 file changed, 54 insertions(+), 59 deletions(-)

commit aacca37590656e235218557ea509eb5624dfbff9
Author: Chris Peterson <cpeterson@mozilla.com>
Date:   Mon Apr 17 23:25:24 2017 -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

 src/hb-common.cc                     | 6 ++++--
 src/hb-ot-layout-gsubgpos-private.hh | 2 +-
 src/hb-shape-plan.cc                 | 7 ++++---
 3 files changed, 9 insertions(+), 6 deletions(-)

commit 4d7c52066b5b205b20ba2679cb57a4e593942102
Author: ebraminio <ebrahim@gnu.org>
Date:   Mon Apr 17 15:53:46 2017 +0430

    [cmake] Remove HB_DISABLE_DEPRECATED as it seems needed for pango
    build (#470)

 CMakeLists.txt | 2 --
 1 file changed, 2 deletions(-)

commit 5ecf96e3a22e896184710a9f146a8bf149af6ca4
Author: William Hua <william@attente.ca>
Date:   Mon Apr 17 01:33:42 2017 -0400

    Use absolute paths of ragel generated headers (#467)

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

 src/Makefile.am | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit c42869eb713f53504e1b77a679cff2f88ebd0c20
Author: Dominik Schlösser <dominik.schloesser@gmail.com>
Date:   Sat Apr 15 21:17:05 2017 +0200

    Small doc fix: `make check` runs the tests (#469)

 test/shaping/README.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 75931427aa4344cd75321c618b8373ffcf1ffc33
Author: ebraminio <ebrahim@gnu.org>
Date:   Fri Apr 14 05:08:11 2017 +0430

    [cmake] Fix try compile link issues (#466)

 CMakeLists.txt | 2 ++
 1 file changed, 2 insertions(+)

commit cb021e14ab345def326fb58ce486515af179b2cf
Author: ebraminio <ebrahim@gnu.org>
Date:   Fri Apr 14 04:31:17 2017 +0430

    [cmake] typo (#465)

 CMakeLists.txt | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit a41d5ea4453995dfd7c523427c6017623164c6ff
Author: ebraminio <ebrahim@gnu.org>
Date:   Fri Apr 14 04:25:50 2017 +0430

    [cmake] Add atomic ops availability detection (#464)

 CMakeLists.txt | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

commit 8568588202dd718b089e43cd6d46f689c706f665
Author: ebraminio <ebrahim@gnu.org>
Date:   Thu Apr 13 02:17:16 2017 +0430

    [cmake] Remove NO_MT flag (#462)

 CMakeLists.txt | 1 -
 1 file changed, 1 deletion(-)

commit c04c1fe86ee4b9b58ad88dad5593239ade4c75b8
Author: jfkthame <jfkthame@gmail.com>
Date:   Tue Apr 11 22:29:13 2017 +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.

 src/hb-ot-layout.cc | 8 ++++++++
 1 file changed, 8 insertions(+)

commit adfd4ae1cf6c4abe66aecf1eb0a05c7183a0f4e2
Author: ebraminio <ebrahim@gnu.org>
Date:   Tue Apr 11 23:18:18 2017 +0430

    [cmake] Improve third party libraries support (#461)

 CMakeLists.txt               | 57
 ++++++++++++++++++++++++++++++++++++--------
 src/hb-ucdn/Makefile.sources |  5 +++-
 2 files changed, 51 insertions(+), 11 deletions(-)

commit 3a8bc572115a28741d5a80f3f1e28e6756b9abfa
Author: ebraminio <ebrahim@gnu.org>
Date:   Tue Apr 11 21:32:14 2017 +0430

    [cmake] Add utils build support (#460)

 CMakeLists.txt | 150
 +++++++++++++++++++++++++++++++++++++++++----------------
 1 file changed, 108 insertions(+), 42 deletions(-)

commit bc1244e2395f844b2b41315cb1eef29570e46b29
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Thu Apr 6 18:44:28 2017 +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).

 win32/config-msvc.mak    | 22 ++++++++++++----------
 win32/detectenv-msvc.mak |  4 +++-
 win32/info-msvc.mak      | 12 ++++++++----
 3 files changed, 23 insertions(+), 15 deletions(-)

commit a4471d0c2cc4baa81e2cea695f9bd15e03d0f15e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 5 15:42:11 2017 +0200

    Move list of ragel sources to Makefile.sources as well

 src/Makefile.am      | 14 ++++----------
 src/Makefile.sources |  9 +++++++++
 2 files changed, 13 insertions(+), 10 deletions(-)

commit d2acaf6d729727f47c5aacf7ee40097580b6f18d
Author: ebraminio <ebrahim@gnu.org>
Date:   Wed Apr 5 02:21:23 2017 -0700

    Split ragel generated files lists and remove hardcoded rl files lists
    (#453)

 CMakeLists.txt        | 126
 +++++++++++++++++++++-----------------------------
 src/Makefile.am       |   2 +
 src/Makefile.sources  |  16 +++++--
 win32/config-msvc.mak |   8 ++--
 4 files changed, 71 insertions(+), 81 deletions(-)

commit 7d64c0ef37dd930e9807bd80d398491aa9c4428c
Author: ebraminio <ebrahim@gnu.org>
Date:   Tue Apr 4 15:03:51 2017 +0430

    Add CMake build support (#444)

 CMakeLists.txt | 254
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 Makefile.am    |   1 +
 appveyor.yml   |  61 +++++++++-----
 3 files changed, 295 insertions(+), 21 deletions(-)

commit 740fdbcd0e6d25c1d6f12537ca2aa559650b9d52
Author: jfkthame <jfkthame@gmail.com>
Date:   Mon Apr 3 12:22:39 2017 +0100

    avoid UBSan warning in get_stage_lookups (#450)

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

 src/hb-ot-map-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 8d256841ca7462fd596329abf6f71bafb56fd621
Author: Dominik Schloesser <dsc@dosc.net>
Date:   Sun Mar 26 09:22:34 2017 +0200

    Current fonttools (3.9.1) generate subset-file called font.subset.ttf
    instead of older font.ttf.subset

 test/shaping/record-test.sh | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit c2a9de15f5d9477c6f1c143ed8265f71fdb04584
Author: Dominik Schloesser <dsc@dosc.net>
Date:   Sun Mar 26 09:21:13 2017 +0200

    Updated samples: record-it.sh is now record-test.sh

 test/shaping/README.md | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit f2e6c7ce51283809033d08692a2dee7cf04aefc5
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Sun Mar 26 10:48:53 2017 +0200

    [tools] Make hb-unicode-code work with Python 3

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

 test/shaping/hb_test_tools.py | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

commit edcf6344bc62af9ea726a633468c9243e127fa13
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Mar 24 10:24:52 2017 -0700

    Blacklist more versions of Padauk

    Patch from Phil Race.

 src/hb-ot-layout.cc | 8 ++++++++
 1 file changed, 8 insertions(+)

commit e693ba77980d5ded65bf773d48b6b58274933fb7
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Thu Mar 23 00:35:36 2017 +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.

 appveyor.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 91570a1eeb1eca425372e203656369f39ede5c61
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Wed Mar 22 23:07:15 2017 +0200

    Just always use strtod here

 src/hb-common.cc | 4 ----
 1 file changed, 4 deletions(-)

commit 539571c1a9cb5d443d029247874af37fed75432f
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Fri Feb 24 17:58:25 2017 +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.

 src/hb-common.cc | 4 ++++
 1 file changed, 4 insertions(+)

commit b90fb83ea6067802e62af9e1ea0c61c7ac79e9a9
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Fri Feb 24 17:47:44 2017 +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.

 win32/Makefile.vc     | 15 +++++++++++++++
 win32/config-msvc.mak |  2 +-
 2 files changed, 16 insertions(+), 1 deletion(-)

commit f0aa167e447e8aa818a63a4a325be57844bf0353
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Thu Feb 23 13:02:49 2017 +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.

 win32/README.txt        |  6 +++---
 win32/config-msvc.mak   | 28 +++++++++++++++-------------
 win32/config.h.win32.in |  2 +-
 win32/info-msvc.mak     | 43 +++++++++++++++++++++++++------------------
 4 files changed, 44 insertions(+), 35 deletions(-)

commit 60e2586f7652aaa0ee908eb8f54b1498e2ad299e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Mar 10 23:02:28 2017 -0800

    1.4.5

 NEWS         | 8 ++++++++
 configure.ac | 2 +-
 2 files changed, 9 insertions(+), 1 deletion(-)

commit 47e7a1800fba9b8bf042a1f4976a15ab012ebfc7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Mar 10 13:23:02 2017 -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.

 src/hb-ot-layout-gsubgpos-private.hh                     |   7 ++++---
 .../sha1sum/5bbf3712e6f79775c66a4407837a90e591efbef2.ttf | Bin 6400 ->
 0 bytes
 test/shaping/tests/context-matching.tests                |   1 -
 3 files changed, 4 insertions(+), 4 deletions(-)

commit 3c080a7a0aefec1e9620e3fb399ad280ea4ee5a2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Mar 7 18:13:28 2017 -0800

    Fix buffer serialize of empty buffer

    Ouch!

 src/hb-buffer-serialize.cc | 2 ++
 1 file changed, 2 insertions(+)

commit 8e42c3cb2bb81351d0a28f213cb4f6d35f4b5e46
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Mar 5 13:54:56 2017 -0800

    1.4.4

 NEWS         | 8 ++++++++
 configure.ac | 2 +-
 2 files changed, 9 insertions(+), 1 deletion(-)

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 3ebcd5a381e2de27a0cfb5af3359331f0b7e7108
Author: Elie Roux <elie.roux@telecom-bretagne.eu>
Date:   Sun Mar 5 16:26:01 2017 +0100

    first working version!

 src/hb-ot-layout.cc | 2 ++
 src/hb-ot.h         | 1 +
 2 files changed, 3 insertions(+)

commit e65aaaa00a3b5ac811b5c73b5186cd7d65731f7b
Author: Elie Roux <elie.roux@telecom-bretagne.eu>
Date:   Sun Mar 5 14:53:39 2017 +0100

    BASE: start api

 src/Makefile.sources           |  2 ++
 src/hb-ot-base.cc              | 58
 ++++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-base.h               | 56
 ++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-layout-base-table.hh | 15 ++---------
 4 files changed, 118 insertions(+), 13 deletions(-)

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 f72726c52b104a71ebf5b39fa1e3eb9febd446fc
Author: Elie Roux <elie.roux@telecom-bretagne.eu>
Date:   Sun Feb 26 15:08:43 2017 +0100

    BASE: add function in main BASE object

 src/hb-ot-layout-base-table.hh | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

commit 3963315f1b2eae2504bc683760245c827cd1ef16
Author: Elie Roux <elie.roux@telecom-bretagne.eu>
Date:   Sun Feb 26 15:07:53 2017 +0100

    BASE: first complete version

 src/hb-ot-layout-base-table.hh | 444
 +++++++++++++++++++++++++++++------------
 1 file changed, 317 insertions(+), 127 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 d34e35b47457e757781b1769a1fbaf107ec6e32f
Author: Elie Roux <elie.roux@telecom-bretagne.eu>
Date:   Sat Feb 25 20:41:05 2017 +0100

    BASE: WIP: more access functions

 src/hb-ot-layout-base-table.hh | 212
 +++++++++++++++++++++++++++++++++++++----
 1 file changed, 191 insertions(+), 21 deletions(-)

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 bd15567ed6a3667e6f8332b7374aece6a6f2361b
Author: Elie Roux <elie.roux@telecom-bretagne.eu>
Date:   Sat Feb 25 17:08:01 2017 +0100

    BASE: align member's names

 src/hb-ot-layout-base-table.hh | 70
 +++++++++++++++++++++---------------------
 1 file changed, 35 insertions(+), 35 deletions(-)

commit 499b4bef2a5b6d49374ab4977509d1fbf7bd6038
Author: Elie Roux <elie.roux@telecom-bretagne.eu>
Date:   Sat Feb 25 16:48:22 2017 +0100

    BASE: more consistent naming (with spec and Harfbuzz code base)

 src/hb-ot-layout-base-table.hh | 44
 +++++++++++++++++++++---------------------
 1 file changed, 22 insertions(+), 22 deletions(-)

commit a0bdd546c584eb7c7ea3ca7e19a178723e6fe77f
Author: Elie Roux <elie.roux@telecom-bretagne.eu>
Date:   Sat Feb 25 16:34:58 2017 +0100

    factorize horiz+vertAxis

 src/hb-ot-layout-base-table.hh | 31 +++++--------------------------
 1 file changed, 5 insertions(+), 26 deletions(-)

commit 1d30c6d935535743c73b2d18abcc6ae86a1cfc5b
Author: Elie Roux <elie.roux@telecom-bretagne.eu>
Date:   Sat Feb 25 16:19:35 2017 +0100

    BASE: sanitize

 src/hb-ot-layout-base-table.hh | 151
 ++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 148 insertions(+), 3 deletions(-)

commit a657f23ca31237d652b5c101ed24194b6aeadaf8
Author: Dominik Röttsches <d-r@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 f131f00b1779b44633223915e17cbce358ad063a
Author: Elie Roux <elie.roux@telecom-bretagne.eu>
Date:   Sun Feb 19 10:12:22 2017 +0100

    compile, move into hb-ot-layout.cc

 src/hb-ot-font.cc              |  1 -
 src/hb-ot-layout-base-table.hh | 57
 +++++++++++++++++++++++++++++++-----------
 src/hb-ot-layout.cc            |  1 +
 3 files changed, 43 insertions(+), 16 deletions(-)

commit d0b97353e930d9b258f42f1cc1ac1a75306b76a8
Author: Elie Roux <elie.roux@telecom-bretagne.eu>
Date:   Sun Feb 19 08:48:22 2017 +0100

    hb-ot-base-table.hh -> hb-ot-layout-base-table.hh

    per
    https://github.com/behdad/harfbuzz/issues/418#issuecomment-280873811

 src/Makefile.sources                                    | 2 +-
 src/hb-ot-font.cc                                       | 2 +-
 src/{hb-ot-base-table.hh => hb-ot-layout-base-table.hh} | 0
 3 files changed, 2 insertions(+), 2 deletions(-)

commit f748e11645a3361f94d6fb10ce59febbaa5ba8ca
Author: Elie Roux <elie.roux@telecom-bretagne.eu>
Date:   Sat Feb 18 19:54:33 2017 +0100

    bootstraping structure

 src/Makefile.sources        |   1 +
 src/hb-ot-base-table.hh     | 238
 ++++++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-font.cc           |   1 +
 src/hb-ot-layout-private.hh |   2 +
 4 files changed, 242 insertions(+)

commit 70202983f57fe85b2d3b56a9c205effeee66222d
Author: ebraminio <ebrahim@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@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@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@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@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@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@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@endlessm.com>

 src/hb-font.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 09594df1aecbb7d37093055147c25cc7d7b7fef6
Author: Behdad Esfahbod <behdad@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@behdad.org>
Date:   Mon Jan 23 17:55:31 2017 -0800

    [var] Hook up advance variations to hb-ot-font

    Yay, works!

 src/hb-ot-font.cc | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit 607434037199ccca422287e4d097487f17f3cfb5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 23 17:55:16 2017 -0800

    [var] Fix bug in HVAR/VVAR impl

 src/hb-ot-var-hvar-table.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit bd3b11d92663343350813ca29606b369f691af03
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 23 17:34:44 2017 -0800

    [var] Prepare for hooking up advance variations to hb-ot-font

 src/hb-ot-font.cc           | 28 +++++++++++++++++-----------
 src/hb-ot-var-hvar-table.hh |  8 ++++----
 2 files changed, 21 insertions(+), 15 deletions(-)

commit a4fca9f0051dbc177390a4e555b2d0fe642f724e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 23 11:56:08 2017 -0800

    [var] Implement DeltaSetIndexMap and advance delta fetching

    Not hooked up to hb-ot-font yet.

 src/hb-ot-layout-common-private.hh |  8 ++++++
 src/hb-ot-var-hvar-table.hh        | 56
 ++++++++++++++++++++++++++++++++++++--
 2 files changed, 61 insertions(+), 3 deletions(-)

commit 7b399f73efa76cd97131fd123a9a1566f8639cfd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 23 11:41:43 2017 -0800

    [var] Start adding HVAR/VVAR

 src/Makefile.sources        |   1 +
 src/hb-ot-font.cc           |   1 +
 src/hb-ot-var-avar-table.hh |   1 -
 src/hb-ot-var-fvar-table.hh |   1 -
 src/hb-ot-var-hvar-table.hh | 115
 ++++++++++++++++++++++++++++++++++++++++++++
 5 files changed, 117 insertions(+), 2 deletions(-)

commit b732c53eb5bd0c2cc86f35a9d9623c92579a0b8c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 22 20:31:53 2017 -0800

    Add LArrayOf<>

 src/hb-open-type-private.hh        | 1 +
 src/hb-ot-cbdt-table.hh            | 4 ++--
 src/hb-ot-layout-common-private.hh | 2 +-
 3 files changed, 4 insertions(+), 3 deletions(-)

commit 5e156fa5ed33cd1a8ff388833563f15930bb12f9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 22 20:28:56 2017 -0800

    Add LOffsetTo<>

 src/hb-open-file-private.hh          |  2 +-
 src/hb-open-type-private.hh          |  1 +
 src/hb-ot-cbdt-table.hh              |  4 ++--
 src/hb-ot-cmap-table.hh              |  6 +++---
 src/hb-ot-layout-common-private.hh   | 10 +++++-----
 src/hb-ot-layout-gdef-table.hh       |  4 ++--
 src/hb-ot-layout-gsubgpos-private.hh |  2 +-
 7 files changed, 15 insertions(+), 14 deletions(-)

commit d6bdbbca307d1a4aed60a78133eea40a1a9d5bf3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 22 20:16:51 2017 -0800

    [var] Remove HB_OT_TAG_fvar/avar

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

 docs/harfbuzz-sections.txt  | 2 --
 src/hb-ot-var-avar-table.hh | 2 ++
 src/hb-ot-var-fvar-table.hh | 2 ++
 src/hb-ot-var.h             | 3 ---
 4 files changed, 4 insertions(+), 5 deletions(-)

commit a11d9a0466e480efebd69a34827675387cd2ca34
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 22 20:09:47 2017 -0800

    Minor

 src/hb-ot-font.cc       | 6 +++---
 src/hb-ot-hmtx-table.hh | 8 +++-----
 2 files changed, 6 insertions(+), 8 deletions(-)

commit 7a860f656e4aec45c45e0f5fb28c49a91dc5eef2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 22 19:52:09 2017 -0800

    [var] Add macros for standard axes

 docs/harfbuzz-sections.txt | 7 +++++++
 src/hb-ot-var.h            | 6 ++++++
 2 files changed, 13 insertions(+)

commit a484e237b11650d00092329855d33dd2f67980e4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 22 19:41:33 2017 -0800

    [var] Implement 'avar' table mapping

    Untested!

 src/hb-ot-math.cc           |  2 --
 src/hb-ot-var-avar-table.hh | 46
 ++++++++++++++++++++++++++++++++++++++++++++-
 src/hb-ot-var.cc            | 23 +++++++++++++++--------
 3 files changed, 60 insertions(+), 11 deletions(-)

commit a42909057207cbed1ef95716170434c05beb0002
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 22 19:01:07 2017 -0800

    [var] Flesh out --variations documentation

 util/options.cc | 53
 ++++++++++++++---------------------------------------
 1 file changed, 14 insertions(+), 39 deletions(-)

commit 5ec96d30cad1592b5e468bd8ad1832dbaf0ad32b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 22 18:52:00 2017 -0800

    [var] Adjust API in prep for 'avar' implementation

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

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

 docs/harfbuzz-sections.txt |  3 ++-
 src/Makefile.sources       |  1 +
 src/hb-font.cc             | 20 +++++---------------
 src/hb-ot-var.cc           | 45
 +++++++++++++++++++++++++++++++++++++++------
 src/hb-ot-var.h            | 16 ++++++++++++----
 5 files changed, 59 insertions(+), 26 deletions(-)

commit 8a577aaa0dd760409bcad1ae3d4f5fb561a62a4b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 22 18:22:40 2017 -0800

    [var] Stub implementation of avar table

 src/hb-ot-var-avar-table.hh | 99
 +++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 99 insertions(+)

commit 7647a05a0b37c53465560952b412db4e590f2716
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 22 17:47:49 2017 -0800

    Minor

 src/hb-font.cc       |  5 ++++-
 src/hb-font.h        |  2 +-
 src/hb-ft.cc         |  2 +-
 util/helper-cairo.cc | 14 +++++++++-----
 4 files changed, 15 insertions(+), 8 deletions(-)

commit d2f249e745a9179943ee39c719b73e1057acbc13
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 22 17:42:33 2017 -0800

    Stub out doc comments for new symbols

 docs/harfbuzz-docs.xml     |  2 +-
 docs/harfbuzz-sections.txt | 35 +++++++++++++++++++++++++++++++++--
 src/hb-common.cc           | 10 ++++++++++
 src/hb-common.h            |  5 +++++
 src/hb-directwrite.cc      |  2 +-
 src/hb-directwrite.h       |  2 +-
 src/hb-font.cc             | 20 ++++++++++++++++++++
 src/hb-ot-var.cc           | 24 ++++++++++++++++++++++--
 src/hb-ot-var.h            | 12 +++++-------
 src/hb-set.cc              |  2 +-
 10 files changed, 99 insertions(+), 15 deletions(-)

commit 5dfd341f51543279039ddafe883c0a1de205fb8a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 22 16:55:40 2017 -0800

    Minor

 src/hb-directwrite.cc | 4 ++--
 src/hb-shape.cc       | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

commit 825e40407da74576f8e83ce0bacad5b0459b83c8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 22 16:41:45 2017 -0800

    [hb-ft] Remove use of variable-length array

    Hopefully also fixes build failure on msvc.

 src/hb-ft.cc | 33 +++++++++++++++++++++------------
 1 file changed, 21 insertions(+), 12 deletions(-)

commit 47ee34e84745756a9aaeb964772377b6c1417ed1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 21 18:10:08 2017 -0800

    [var] Hook up variations to FreeType face

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

 src/hb-ft.cc         | 10 ++++++++++
 util/helper-cairo.cc | 16 +++++++++++++++-
 2 files changed, 25 insertions(+), 1 deletion(-)

commit 111f3e55178f7cd5a8ae4e8ae111cb48aea4acb5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 21 17:51:41 2017 -0800

    [util] Add --variations

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

    Documentation needs to be done.

 util/options.cc | 91
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 util/options.hh |  8 ++++-
 2 files changed, 98 insertions(+), 1 deletion(-)

commit bb1e19268f02d4aad2240c52852e72afcf0f79ad
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 21 17:41:37 2017 -0800

    [var] Rename var_coord to variation

    Looks much better.

 src/hb-common.cc | 36 ++++++++++++++++++------------------
 src/hb-common.h  | 10 +++++-----
 src/hb-font.cc   | 20 ++++++++++----------
 src/hb-font.h    |  6 +++---
 4 files changed, 36 insertions(+), 36 deletions(-)

commit 64fe92bf2d43a0ea31743d774e073f202021dbd1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 21 15:36:35 2017 -0800

    [var] Remove use of variable-length arrays

 src/hb-font.cc | 30 +++++++++++++++++++++---------
 1 file changed, 21 insertions(+), 9 deletions(-)

commit 2491134b386507f611a47e43e3f7c2766d0d288b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 21 15:21:50 2017 -0800

    [var] Add hb_font_set_var_coords()

 src/hb-font.cc | 38 ++++++++++++++++++++++++++++++++++++--
 src/hb-font.h  |  8 ++++++--
 2 files changed, 42 insertions(+), 4 deletions(-)

commit 113393efec5e0c4c10c141a6d4b801d50fcd8ab8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 21 15:12:03 2017 -0800

    Remove a few unused includes

 src/hb-face.cc      | 6 +-----
 src/hb-font.cc      | 7 -------
 src/hb-ot-layout.cc | 5 +----
 src/hb-ot-tag.cc    | 3 ---
 4 files changed, 2 insertions(+), 19 deletions(-)

commit 2d40923ca914c90304d07d6e7b9b1040c79c76fe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 21 15:06:15 2017 -0800

    Minor

 src/hb-ot-math.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 8b2a58047095604dcdc576ecbe3e8c2ebb8f48f0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 21 15:05:00 2017 -0800

    [var] Add hb_font_set_var_coords_design()

 src/hb-font.cc | 21 +++++++++++++++++++--
 src/hb-font.h  |  7 ++++++-
 2 files changed, 25 insertions(+), 3 deletions(-)

commit 0dcc7b49a830e2680d3e6d86d953efab85cef6ff
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 21 14:50:22 2017 -0800

    [var] Minor lifecycle adjustment

 src/hb-font.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit bf0d3a665baac9e33c0f774b22197c321b864c80
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 21 14:48:46 2017 -0800

    [var] Add hb_font_get_var_coords_normalized()

 src/hb-font.cc | 10 ++++++++++
 src/hb-font.h  |  4 ++++
 2 files changed, 14 insertions(+)

commit b3c0714b4bbb726b2b3e5e0416ac84cb5c6eb34e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 20 20:30:03 2017 -0800

    [var] Add hb_var_coord_t and parsing routines

 src/hb-common.cc | 94
 +++++++++++++++++++++++++++++++++++++++++++++++++++++---
 src/hb-common.h  | 15 ++++++++-
 2 files changed, 103 insertions(+), 6 deletions(-)

commit 72364103bc9d910d19f23a3764d045af79d076d5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 20 20:16:53 2017 -0800

    Move code around

 src/hb-common.cc | 250
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-common.h  |  18 ++++
 src/hb-shape.cc  | 248
 ------------------------------------------------------
 src/hb-shape.h   |  16 ----
 4 files changed, 268 insertions(+), 264 deletions(-)

commit 785982bf830723552270db5649abcb9f9f0b46b1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 20 19:57:27 2017 -0800

    [var] Flesh out some more

 src/Makefile.am             |  2 ++
 src/hb-ot-var-fvar-table.hh | 69
 ++++++++++++++++++++++++++++++++-------------
 src/hb-ot-var.cc            | 39 ++++++++++++++++++++++++-
 src/hb-ot-var.h             | 21 +++++++++-----
 4 files changed, 104 insertions(+), 27 deletions(-)

commit 422c0c36c80145a2d993f80d5c7d3265e3d8357a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 20 19:14:54 2017 -0800

    [var] Flesh out a bit

 src/hb-ot-var-fvar-table.hh | 72
 ++++++++++++++++++++++++++++++++++++---------
 src/hb-ot-var.h             | 10 ++++++-
 2 files changed, 67 insertions(+), 15 deletions(-)

commit b8376b10904e1772b8d34d852d1100ca7e2185e2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 20 18:19:28 2017 -0800

    Minor

 src/hb-ft.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f2e73d37e77ccea8b948d1ecf5f11e7a699386dc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 20 17:42:18 2017 -0800

    [var] Remove over-optimization

 src/hb-font.cc | 4 ----
 1 file changed, 4 deletions(-)

commit 469926cc45760cb681d44e5757b18b9bdd736189
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 20 17:40:46 2017 -0800

    [var] Change double to float in API

 src/hb-ot-var.h | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 55d42fd667b9c34a1109bb850bf2ea7322c01040
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 19 19:35:48 2017 -0800

    Start adding hb-ot-var.h and implementation

    Supports enumerating variation axes, normalizing values, etc.

 src/Makefile.sources        |   3 +
 src/hb-ot-layout-private.hh |   6 ++
 src/hb-ot-layout.cc         |   4 ++
 src/hb-ot-var-fvar-table.hh | 133
 ++++++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-var.cc            |  63 +++++++++++++++++++++
 src/hb-ot-var.h             |  81 +++++++++++++++++++++++++++
 src/hb-ot.h                 |   1 +
 7 files changed, 291 insertions(+)

commit 272b5115325b785e92ff5500d4bfc3a67490b6f8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 19 19:33:07 2017 -0800

    Minor

 src/hb-ot-math.cc | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

commit a8a5e81a52f56f5f8bf975dc4d9f79bede5d895b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 19 16:55:04 2017 -0800

    [test-ot-math] Add test with nil face/font

 test/api/test-ot-math.c | 8 ++++++++
 1 file changed, 8 insertions(+)

commit 331d07bd40a3d9ff30db5cdf85fdc4f10f0fcb99
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 19 16:51:36 2017 -0800

    Minor

 test/api/test-ot-math.c | 3 +++
 1 file changed, 3 insertions(+)

commit b5ecf1bfa459a755e36bc4c7f545c7f803b7d016
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 19 16:50:29 2017 -0800

    Fix warnings

 test/api/test-ot-math.c | 18 ++++++++++--------
 1 file changed, 10 insertions(+), 8 deletions(-)

commit 2f2ceee1853649d1b2ad4315a38cd9c07659932a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 19 16:48:01 2017 -0800

    Minor

 test/api/test-ot-math.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 2452543fdd383e62b8c4bc44b11bfd6796fc9963
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Wed Jan 18 22:48:13 2017 +0200

    [ot] Fix automatic fraction for RTL scripts (#405)

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

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

 src/hb-ot-shape.cc                                      |  16
 ++++++++++++++--
 test/shaping/Makefile.am                                |   1 +
 .../15dfc433a135a658b9f4b1a861b5cdd9658ccbb9.ttf        | Bin 0 ->
 4936 bytes
 test/shaping/tests/automatic-fractions.tests            |   3 +++
 4 files changed, 18 insertions(+), 2 deletions(-)

commit 1337428e4f8a2a4c78312c581bf4e96cd49d783f
Author: Sascha Brawer <sascha@brawer.ch>
Date:   Wed Jan 18 13:51:02 2017 +0100

    Update language tags to OpenType 1.8.1 (#403)

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

 src/hb-ot-tag.cc       | 77
 ++++++++++++++++++++++++++++++++++++++++++++------
 test/api/test-ot-tag.c | 58 +++++++++++++++++++++++++++++++++++++
 2 files changed, 126 insertions(+), 9 deletions(-)

commit 784d1180de19fbf4948f08ee2124277cc06066dd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 11 11:58:13 2017 -0800

    Fix build with clang

 src/hb-open-type-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 1f810daf1640f279c2f7aad8c312664cf2293987
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 9 23:50:56 2017 -0800

    Port math table to hb_lazy_table_loader_t

 src/hb-open-type-private.hh | 22 +++++++++++++++++-----
 src/hb-ot-layout-private.hh |  4 ++--
 src/hb-ot-layout.cc         |  7 +++----
 src/hb-ot-math.cc           | 17 +----------------
 4 files changed, 23 insertions(+), 27 deletions(-)

commit ebbcc1112229cde9ed469efdfeac7ef79dfcd834
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 9 22:45:25 2017 -0800

    Add hb_lazy_table_loader_t

 src/hb-open-type-private.hh | 40 ++++++++++++++++++++++++++++++++++++++++
 1 file changed, 40 insertions(+)

commit 1af9d924a474f210fda10b5e8ab6b388241aa0b5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 9 22:22:37 2017 -0800

    Move lazy-loader to more generic place

 src/hb-open-type-private.hh | 47
 ++++++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-font.cc           | 48
 ++-------------------------------------------
 2 files changed, 49 insertions(+), 46 deletions(-)

commit ac274331c285e1b42632870e150e1d66a9e21933
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 9 22:20:38 2017 -0800

    In lazy-loading, remember allocation failure

 src/hb-ot-font.cc | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

commit 29fb0cb727555ea60460d794a3c6f30179546af9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 9 21:18:55 2017 -0800

    Minor

 src/hb-face-private.hh | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

commit 93ef684b9bc411b7642df3adeb2248ad6010ee66
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 9 21:11:00 2017 -0800

    Rename hb-ot-layout-math-table.hh to hb-ot-math-table.hh

 src/Makefile.sources                                    | 2 +-
 src/{hb-ot-layout-math-table.hh => hb-ot-math-table.hh} | 6 +++---
 src/hb-ot-math.cc                                       | 2 +-
 3 files changed, 5 insertions(+), 5 deletions(-)

commit 3b5263b0e9e23e56e14ce6a8498c21c5ce95cc35
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 9 15:49:08 2017 -0800

    Typo

 src/hb-ot-layout-math-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ebf927d3d4394159e480fec2042a0456df8dd0f4
Author: ebraminio <ebrahim@gnu.org>
Date:   Mon Jan 9 13:12:09 2017 +0330

    Make UCDN default enabled (fixes #389) (#391)

 win32/config-msvc.mak | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit 00adf9c8a4573a2b3ef61991197821af03bca310
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 9 00:00:49 2017 -0800

    Minor

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

    No one else should care!

 src/hb-ot-shape-complex-hangul.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 7cf9952e7fc015d0b08d3de6c95357662d57ad8d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 8 23:55:54 2017 -0800

    [USE] Remove non-canonical decompositions

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

    Fixup for f6ba63b2e8eb577385f70758efdd3b8408c8a9cb

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

 src/hb-ot-shape-complex-use.cc | 22 ----------------------
 1 file changed, 22 deletions(-)

commit b435c7c46a46350771e837e87fee448fd9dc06d3
Author: Khaled Hosny <khaledhosny@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@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@behdad.org>
Date:   Thu Jan 5 20:24:41 2017 -0800

    1.4.1

 NEWS         | 10 ++++++++++
 configure.ac |  2 +-
 2 files changed, 11 insertions(+), 1 deletion(-)

commit 31f7b1bb94c2cef7ce58df52ddd1b09b42e8f596
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 5 20:20:06 2017 -0800

    Add tests for USE using Marchen font and text

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

 test/shaping/Makefile.am                           |   1 +
 .../85414f2552b654585b7a8d13dcc3e8fd9f7970a3.ttf   | Bin 0 -> 66936 bytes
 test/shaping/tests/use-marchen.tests               |  35
 +++++++++++++++++++++
 3 files changed, 36 insertions(+)

commit 53543f8b3e19456279c86f711feba42ce976668c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 5 20:12:32 2017 -0800

    Ship UCDN and use it by default

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

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

 configure.ac      | 12 ++++++++----
 src/hb-unicode.cc |  6 +++---
 2 files changed, 11 insertions(+), 7 deletions(-)

commit f3397069479cae34e6bdc658e2875fb178b03e43
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 5 01:27:49 2017 -0800

    1.4.0

 NEWS         | 34 ++++++++++++++++++++++++++++++++++
 configure.ac |  2 +-
 2 files changed, 35 insertions(+), 1 deletion(-)

commit ae00af4a47587308969dfaf7baa93164d7842710
Author: Frédéric Wang <fred.wang@free.fr>
Date:   Tue Jan 3 05:55:09 2017 +0100

    Move math-specific code from hb-ot-layout to hb-ot-math #235 (#384)

 src/Makefile.sources |   1 +
 src/hb-ot-layout.cc  | 244 ---------------------------------------------
 src/hb-ot-math.cc    | 272
 +++++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 273 insertions(+), 244 deletions(-)

commit e053ccc5bb7268fe5900dd364d906638c58b2908
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 28 15:51:57 2016 -0500

    Remove Android.mk

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

 Android.mk  | 107
 ------------------------------------------------------------
 Makefile.am |   1 -
 2 files changed, 108 deletions(-)

commit 6cff75394192a1ab0dda82981752ade532838333
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 28 13:46:21 2016 -0500

    Remove Tibetan decomposition rules from Indic shaper

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

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

 src/hb-ot-shape-complex-indic.cc | 4 ----
 1 file changed, 4 deletions(-)

commit f6ba63b2e8eb577385f70758efdd3b8408c8a9cb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 28 13:45:32 2016 -0500

    Port decompositions from Indic to USE shaper

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

 src/hb-ot-shape-complex-indic.cc | 16 ----------------
 src/hb-ot-shape-complex-use.cc   | 22 ++++++++++++++++++++++
 2 files changed, 22 insertions(+), 16 deletions(-)

commit e678b537f77954615721abd65fef28854f95dc5d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 26 14:11:59 2016 -0500

    [indic] Remove Chakma decomposition rule from Indic shaper

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

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

 src/hb-ot-shape-complex-indic.cc | 4 ----
 1 file changed, 4 deletions(-)

commit 49ba698124399373cea000d08e0e9fe5fc2396e8
Author: jfkthame <jfkthame@gmail.com>
Date:   Wed Dec 28 18:00:51 2016 +0000

    [use] Special-case Chakma split-vowel decomp in the USE shaper. (#383)

 src/hb-ot-shape-complex-use.cc | 21 ++++++++++++++++++++-
 1 file changed, 20 insertions(+), 1 deletion(-)

commit c4ca49d55b49c65e04f0b2acecacd6a5c70978f4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 26 14:52:08 2016 -0500

    Revert "[indic] Remove redundant Chakma decomposition rule"

    This reverts commit 805f76fc002d703acfcc4c5727f0b4d1baecefaa.

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

 src/hb-ot-shape-complex-indic.cc | 4 ++++
 1 file changed, 4 insertions(+)

commit 805f76fc002d703acfcc4c5727f0b4d1baecefaa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 26 14:11:59 2016 -0500

    [indic] Remove redundant Chakma decomposition rule

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

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

 src/hb-ot-shape-complex-indic.cc | 4 ----
 1 file changed, 4 deletions(-)

commit 3cc48a46b56be06e6734aaabf37a4b521606380c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 26 13:10:31 2016 -0500

    [indix] Comment

 src/hb-ot-shape-complex-indic.cc | 25 ++++++++++++++++++++++---
 1 file changed, 22 insertions(+), 3 deletions(-)

commit 7d1c5d8281b05a5c178ea3ae048b0062145968aa
Author: nvelinov <nikola.velinov@rwth-aachen.de>
Date:   Sat Dec 24 02:46:37 2016 +0100

    Compilation Error for ASSERT_STATIC on Some Compilers (#380)

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

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

 src/hb-open-type-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e2b878055bb1c0b84e1f7cfbf3d3f80bfc6811ea
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 22 14:40:19 2016 -0600

    Disable OTL processing for Hebrew if GPOS doesn't have Hebrew subtable

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

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

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

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

 src/hb-ot-shape-complex-arabic.cc  |  1 +
 src/hb-ot-shape-complex-default.cc |  1 +
 src/hb-ot-shape-complex-hangul.cc  |  1 +
 src/hb-ot-shape-complex-hebrew.cc  | 13 +++++++++++++
 src/hb-ot-shape-complex-indic.cc   |  1 +
 src/hb-ot-shape-complex-myanmar.cc |  2 ++
 src/hb-ot-shape-complex-private.hh |  8 ++++++++
 src/hb-ot-shape-complex-thai.cc    |  1 +
 src/hb-ot-shape-complex-tibetan.cc |  1 +
 src/hb-ot-shape-complex-use.cc     |  1 +
 src/hb-ot-shape.cc                 | 29 ++++++++++++++++-------------
 11 files changed, 46 insertions(+), 13 deletions(-)

commit 1a0f4aa6dfee69236b422f7c8825eff940f45c19
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 22 13:33:54 2016 -0600

    Revert "Synthesize GDEF glyph class for any glyph that does not have
    one in GDEF"

    This reverts commit 69f9fbc4200442a35484d3c790ae8f4979be5d60.

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

 src/hb-ot-layout-gsub-table.hh | 22 ++--------------------
 src/hb-ot-shape.cc             | 29 +++++++++++++++++++++++++++++
 2 files changed, 31 insertions(+), 20 deletions(-)

commit 4b4a1b9f235598b04ce9ae1f9670fc978ab7620d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 21 23:10:43 2016 -0600

    Fix assert fail with contextual matching

    As discovered by libFuzzer / Chromium fuzzing.

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

 src/hb-ot-layout-gsubgpos-private.hh                     |   6 +++++-
 .../sha1sum/217a934cfe15c548b572c203dceb2befdf026462.ttf | Bin 0 ->
 1384 bytes
 test/shaping/tests/fuzzed.tests                          |   1 +
 3 files changed, 6 insertions(+), 1 deletion(-)

commit df98ce5fc8cf1dafd58c329975f07aafbeee3263
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 21 19:27:30 2016 -0600

    Improve debug output with really deep nesting

 src/hb-private.hh | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

commit eab418c5e6fa34b90133862cc8ce11e617ce08bf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 21 15:51:28 2016 -0600

    Avoid infinite loop in CoverageFormat2 iteration with bad fonts

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

 src/hb-ot-layout-common-private.hh | 29 ++++++++++++++++++-----------
 1 file changed, 18 insertions(+), 11 deletions(-)

commit a0688e8e7b58c156f5809c272b5884bfe75f68ae
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 20 20:52:50 2016 -0600

    Ouch, finish previous change

 test/fuzzing/Makefile.am  |  3 ++-
 test/fuzzing/hb-fuzzer.cc | 30 ++++--------------------------
 2 files changed, 6 insertions(+), 27 deletions(-)

commit de14c19d14be90367a1231de56dd347e3f54931c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 20 20:50:38 2016 -0600

    [fuzzer] Separate main() into a new file

 test/fuzzing/hb-fuzzer.hh |  4 ++++
 test/fuzzing/main.cc      | 21 +++++++++++++++++++++
 2 files changed, 25 insertions(+)

commit 7ed71eb347c894c5b4b012bcca0816922c3052c2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 20 15:01:16 2016 -0600

    Protect collect_glyphs() and closure() against malicious DDOS fonts

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

 src/hb-ot-layout-gsub-table.hh | 58
 ++++++++++++++++++++++++++++++++++--------
 1 file changed, 48 insertions(+), 10 deletions(-)

commit 1c98ff87c76536553e53c131e75aba33033ee3a0
Author: Mike Hommey <mh@glandium.org>
Date:   Fri Sep 30 18:15:37 2016 +0900

    Support building with older glib versions

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

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

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

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

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

 configure.ac            | 2 +-
 src/hb-glib.cc          | 2 ++
 src/hb-glib.h           | 3 ++-
 test/api/test-ot-math.c | 4 ++++
 4 files changed, 9 insertions(+), 2 deletions(-)

commit ad273881c597a95929ce3b84f63865f9d7dcdb7e
Author: Volker H. Simonis <volker.simonis@gmail.com>
Date:   Wed Dec 14 18:56:17 2016 +0100

    Minor fixes to pacify Coverity code scan

    Fixes https://github.com/behdad/harfbuzz/pull/377

 src/hb-ot-font.cc              |  6 +++++-
 src/hb-ot-layout-gpos-table.hh | 14 +++++++-------
 2 files changed, 12 insertions(+), 8 deletions(-)

commit 1e1825bf47aa29968f75a78305d4541ce2c9d40c
Author: ebraminio <ebrahim@gnu.org>
Date:   Sat Dec 17 10:30:40 2016 +0330

    [dwrite] Provide an experimental API for justification (#279)

 src/hb-directwrite.cc | 48
 ++++++++++++++++++++++++++++++++++++++++--------
 src/hb-directwrite.h  |  4 ++++
 2 files changed, 44 insertions(+), 8 deletions(-)

commit 4cd0cd67914db1da10906e40335faea7dbec1d0a
Author: elmarb <elmar.braun@web.de>
Date:   Wed Dec 7 11:50:27 2016 +0100

    NMake ICU option builds with builtin ICU (#375)

 win32/build-rules-msvc.mak  | 13 -------------
 win32/config-msvc.mak       | 37 ++++++++++++++++++++-----------------
 win32/create-lists-msvc.mak | 13 -------------
 win32/detectenv-msvc.mak    |  4 +++-
 win32/generate-msvc.mak     |  2 +-
 win32/info-msvc.mak         | 12 +++++-------
 win32/install.mak           |  4 ----
 7 files changed, 29 insertions(+), 56 deletions(-)

commit 75fa884f925c203a839b5874f30bf9ebf025b6e4
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Mon Dec 5 23:20:47 2016 +0200

    [win32] Fix wrong description of the ICU option (#372)

 win32/README.txt | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

commit 219cb29c5d230ecc6ee154b447fabd7b59fbe089
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 28 17:16:06 2016 +0200

    Fix build after rebasing opentype-gx branch on top of MATH table

 src/hb-ot-layout-common-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 0aedfd59be54972e61a952753ffc0d12631771fe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 28 17:05:43 2016 +0200

    [GX] Apply 'rvrn' feature before any other feature

 src/hb-ot-shape.cc | 3 +++
 1 file changed, 3 insertions(+)

commit 42c81425316190f6424ecb9b19d5a886aa1e4136
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 13 23:49:46 2016 +0200

    [GX] Fix build with older FreeType

 configure.ac |  4 ++++
 src/hb-ft.cc | 12 ++++++++----
 2 files changed, 12 insertions(+), 4 deletions(-)

commit 72873cf522a6e3bec1b6508d8d20d3d2ce233cd6
Author: Sascha Brawer <sascha@brawer.ch>
Date:   Tue Sep 13 18:40:07 2016 +0200

    Call hb_font_set_var_coords_normalized() from FT_Face coords

 src/hb-ft.cc | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

commit 4ebbeb7c50e5c1e934d230ceacf792602c6eb9b9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Sep 10 04:52:34 2016 -0700

    [GX] Make FeatureVariations actually work

    Yay!!!!

 src/hb-ot-layout-common-private.hh   | 19 +++++++------------
 src/hb-ot-layout-gsubgpos-private.hh |  3 ++-
 2 files changed, 9 insertions(+), 13 deletions(-)

commit 72ada4f0c6998fc2a282efc2a573733e37db8be5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Sep 10 03:57:24 2016 -0700

    [GX] Hook up feature variations

    Shape-plan caching is not implemented.

 src/hb-coretext.cc           |   8 +++-
 src/hb-directwrite.cc        |   6 ++-
 src/hb-fallback-shape.cc     |   4 +-
 src/hb-font.cc               |   6 +--
 src/hb-graphite2.cc          |   4 +-
 src/hb-ot-map-private.hh     |  17 +++++---
 src/hb-ot-map.cc             |  25 ++++++++---
 src/hb-ot-shape-private.hh   |   6 ++-
 src/hb-ot-shape.cc           |   9 ++--
 src/hb-shape-plan-private.hh |   9 +++-
 src/hb-shape-plan.cc         | 102
 +++++++++++++++++++++++++++++++++++++++----
 src/hb-shape-plan.h          |  19 ++++++++
 src/hb-shape.cc              |   5 ++-
 src/hb-uniscribe.cc          |   4 +-
 14 files changed, 183 insertions(+), 41 deletions(-)

commit ec87ba9ba32a374d49dd3e40137f75f4f4232aee
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Sep 10 03:53:11 2016 -0700

    [GX] Add hb_ot_layout_feature_with_variations_get_lookups()

 src/hb-ot-layout-common-private.hh   | 30 +++++++++++++++++++++++++++++-
 src/hb-ot-layout-gsubgpos-private.hh | 12 ++++++++++++
 src/hb-ot-layout.cc                  | 28 ++++++++++++++++++++++++----
 src/hb-ot-layout.h                   |  9 +++++++++
 4 files changed, 74 insertions(+), 5 deletions(-)

commit 30c42b644eb33551aa0986287182a46f2d8c32ed
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Sep 10 03:32:39 2016 -0700

    [GX] Add hb_ot_layout_table_find_feature_variations()

 src/hb-ot-layout-common-private.hh   | 18 +++++++++++-------
 src/hb-ot-layout-gsubgpos-private.hh |  6 +++---
 src/hb-ot-layout.cc                  | 15 +++++++++++++++
 src/hb-ot-layout.h                   | 10 ++++++++++
 4 files changed, 39 insertions(+), 10 deletions(-)

commit 7ceadbe981aa50481163bb365f0fe3f994266165
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Sep 10 02:44:20 2016 -0700

    Shuffle code around

 src/hb-ot-map.cc | 81
 ++++++++++++++++++++++++++++----------------------------
 1 file changed, 41 insertions(+), 40 deletions(-)

commit bde5e3959c0ffdb92db87668035b01aaee9b2352
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Sep 10 02:43:20 2016 -0700

    Move add_lookups from map to map-builder

    In prep for more changes.

 src/hb-ot-map-private.hh | 15 ++++++++-------
 src/hb-ot-map.cc         | 29 +++++++++++++++--------------
 2 files changed, 23 insertions(+), 21 deletions(-)

commit 26648cebcd14bd26142ccfe5ac8c0be08a213671
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Sep 10 02:11:05 2016 -0700

    [GX] Remove (partial) support for anisotropic variations

    It doesn't always work, not part of FreeType, and we were not going
    to expose it in the API anyway.  Can always be added later.

 src/hb-font-private.hh             |  3 +--
 src/hb-font.cc                     | 17 ++++++-----------
 src/hb-ot-layout-common-private.hh |  9 ++++-----
 3 files changed, 11 insertions(+), 18 deletions(-)

commit c22176d4bac720b4c9121b3d6629595831f19fb0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Sep 10 01:58:27 2016 -0700

    [GX] Handle setting var coords to NULL

 src/hb-font.cc | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

commit 59055b5494f802013ca3613a15e565ae1ca0c589
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Sep 10 01:24:28 2016 -0700

    [GX] Implement Feature Variations

    Not hooked up to shaper yet.

 src/hb-ot-layout-common-private.hh   | 168
 ++++++++++++++++++++++++++++++++++-
 src/hb-ot-layout-gdef-table.hh       |   1 -
 src/hb-ot-layout-gpos-table.hh       |   2 -
 src/hb-ot-layout-gsub-table.hh       |   2 -
 src/hb-ot-layout-gsubgpos-private.hh |  15 +++-
 5 files changed, 180 insertions(+), 8 deletions(-)

commit 85ec4944346a1ac111217698e1424669a9732280
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Sep 10 00:25:16 2016 -0700

    [GX] Fix another x/y thinko

    Thanks Werner!

 src/hb-ot-layout-common-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit cf3de4d8f79fc6e8413957cdef034e975343ce30
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Sep 10 00:22:24 2016 -0700

    [GX] Rename VarStore to VariationStore

 src/hb-ot-layout-common-private.hh   | 12 ++++++------
 src/hb-ot-layout-gdef-table.hh       | 14 +++++++-------
 src/hb-ot-layout-gpos-table.hh       |  2 +-
 src/hb-ot-layout-gsubgpos-private.hh |  2 +-
 4 files changed, 15 insertions(+), 15 deletions(-)

commit 1f6ed356e0a849b61ce98b6a2f38d04d98c2191e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Sep 10 00:01:10 2016 -0700

    [GX] Fix build with some compilers

    Eg.
    https://ci.appveyor.com/project/behdad/harfbuzz/build/1.0.48/job/o9mnd33kcdeeg30r

    hb-open-type-private.hh:103:29: error: static data member
    'OT::Device::<anonymous union>::<anonymous struct>::static_size'
    in unnamed class [-fpermissive]

 src/hb-ot-layout-common-private.hh | 19 ++++++++++++-------
 1 file changed, 12 insertions(+), 7 deletions(-)

commit 250bcd6fb691d6f15fa9ca71b475ce419d0b5e37
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 9 23:12:14 2016 -0700

    [GX] Skip tail zero entries when setting variation coordinates

 src/hb-font.cc | 4 ++++
 1 file changed, 4 insertions(+)

commit 1124d2ece55e323ed934357b30e68df75829cfaa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 9 22:48:27 2016 -0700

    [GX] Fix thinko

 src/hb-ot-layout-common-private.hh | 1 -
 src/hb-ot-layout-gpos-table.hh     | 2 +-
 2 files changed, 1 insertion(+), 2 deletions(-)

commit ad69e8f07c6e3e47fe7e7103c2ff7c053d272b1a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 9 22:23:34 2016 -0700

    [GX] Add new API hb_font_set_var_coords_normalized()

    Will probably change.

 src/hb-font.cc | 23 +++++++++++++++++++++++
 src/hb-font.h  |  5 +++++
 2 files changed, 28 insertions(+)

commit 151d93de8a595924a8dcb00fcba648b4b3df0bf5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 9 17:03:11 2016 -0700

    [GX] Hook up GPOS to Variation Store stored in GDEF

    Untested.

 src/hb-ot-layout-common-private.hh   | 22 ++++++++++----------
 src/hb-ot-layout-gdef-table.hh       | 27 +++++++++++++++---------
 src/hb-ot-layout-gpos-table.hh       | 40
 ++++++++++++++++--------------------
 src/hb-ot-layout-gsubgpos-private.hh |  2 ++
 4 files changed, 48 insertions(+), 43 deletions(-)

commit dcfd309533ac83e44369dea7204d668623b08207
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 9 16:51:07 2016 -0700

    [GX] Change GDEF API to return varStore

 src/hb-ot-layout-gdef-table.hh | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

commit 49cb87850c2692be45b201168c8ce10b263168cc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 9 16:27:03 2016 -0700

    [GX] Pass apply-context down to get_anchor()

    Needed to access GDEF for varStore.

 src/hb-ot-layout-gpos-table.hh | 57
 ++++++++++++++++++++++--------------------
 1 file changed, 30 insertions(+), 27 deletions(-)

commit f0c3fd8c9ab402be923fe0845fb51d99841829b6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 9 16:22:45 2016 -0700

    [GX] Add varStore member to GDEF

    Still not hooked up from GPOS.

 src/hb-ot-layout-gdef-table.hh | 17 ++++++++++++++---
 1 file changed, 14 insertions(+), 3 deletions(-)

commit 5c971f8dbc823dbad4a2869cf9e835095ab6ddb2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 9 16:05:17 2016 -0700

    Minor change to GDEF, in prep for new version

 src/hb-ot-layout-gdef-table.hh | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit dc9f2297998b4cbc4f9e4c2591fc2bb5f92986d1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 9 15:40:15 2016 -0700

    [GX] Port variation stuff to Variation Store design

    Not hooked up to GDEF yet.

 src/hb-ot-layout-common-private.hh | 294
 +++++++++++++++++++++++--------------
 src/hb-ot-layout-gpos-table.hh     |   2 +-
 2 files changed, 184 insertions(+), 112 deletions(-)

commit a7edeb6f02cbc4418285fdfc58ef8a8740a380e9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 9 15:39:52 2016 -0700

    Make OffsetArrayOf take OffsetType template argument

 src/hb-open-type-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 8dddc231cf9d934eb93a39f2657717cbdad43a64
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 9 13:17:33 2016 -0700

    [GX] Revert "[GX] Add VariationAlternates, to allow conditional
    lookups in GSUB/GPOS"

    This reverts commit 2859f1c7174d6f7ae5dcf0db5411bc0182b21594.
    We are going in a different direction.

 src/hb-open-type-private.hh        |  1 -
 src/hb-ot-layout-common-private.hh | 99
 +-------------------------------------
 2 files changed, 2 insertions(+), 98 deletions(-)

commit bb4d2e6ed562c248fff15313a013d49e38a18789
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 9 13:08:52 2016 -0700

    [GX] Free GX coordinates

 src/hb-font.cc | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit baa329c6a12c7ffd56feed32351d9405b7d1651b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Mar 18 15:52:24 2016 -0700

    [GX] Add compact VariationDevice implementation

    Add compact format that uses signed bytes instead of shorts.

 src/hb-open-type-private.hh        |  1 +
 src/hb-ot-layout-common-private.hh | 35
 ++++++++++++++++++++++++-----------
 2 files changed, 25 insertions(+), 11 deletions(-)

commit 71b06fd392680b6fcfece60d8a83ba6c56eada09
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Mar 12 23:49:09 2016 -0800

    [GX] Add VariationAlternates, to allow conditional lookups in
    GSUB/GPOS

    Not hooked up to runtime yet.

 src/hb-open-type-private.hh        |  1 +
 src/hb-ot-layout-common-private.hh | 99
 +++++++++++++++++++++++++++++++++++++-
 2 files changed, 98 insertions(+), 2 deletions(-)

commit 976eeb8e025e2b7601a91e661d6e9a88bf8afbd2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Mar 12 23:28:12 2016 -0800

    [GX] Minor

 src/hb-ot-layout-common-private.hh | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit ed8a9067ca0fe51ac4b80dab55db596763df72bb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 2 12:54:35 2016 -0800

    [GX] Minor

 src/hb-ot-layout-common-private.hh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 15c5ee67473a17859a919104c5e6fed1f813aa65
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 2 12:41:49 2016 +0900

    [GX] Minor rename

 src/hb-ot-layout-common-private.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 4c535a822f16b23a4e41e14d1b17fe179b83eabc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 2 12:21:36 2016 +0900

    [GX] Hookup VariationDevice to Device table implementation

 src/hb-ot-layout-common-private.hh | 65
 +++++++++++++++++++++++++++++++++++++-
 1 file changed, 64 insertions(+), 1 deletion(-)

commit a0c2366075fcb894212b9bf137e4dd34bb65537c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Mar 1 19:42:24 2016 +0900

    [GX] Break out early if factor is zero

    Also disable sanity-checking of variation records.

 src/hb-ot-layout-common-private.hh | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

commit ca286703164caf1eda665f6f27ef83bf04e2f8ba
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Mar 1 19:29:36 2016 +0900

    [GX] Towards anisotropic interpolation

    Also hookup to ValueRecord and Anchors.

 src/hb-font-private.hh             |  5 +++--
 src/hb-font.cc                     |  9 +++++++--
 src/hb-ot-layout-common-private.hh |  4 ++--
 src/hb-ot-layout-gpos-table.hh     | 20 ++++++++++----------
 4 files changed, 22 insertions(+), 16 deletions(-)

commit 6d9d3c55bbd4209ba339ccd2b925bb4a6c97f622
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Mar 1 19:12:08 2016 +0900

    [GX] Add data types for encoding numerical variations

 src/hb-font-private.hh             |  10 ++++
 src/hb-font.cc                     |   3 +
 src/hb-ot-layout-common-private.hh | 113
 +++++++++++++++++++++++++++++++++++++
 3 files changed, 126 insertions(+)

commit b843c6d8b66c2833cd35407ee494546465e6d775
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 5 13:42:28 2016 -0800

    1.3.4

 NEWS         | 8 ++++++++
 configure.ac | 2 +-
 2 files changed, 9 insertions(+), 1 deletion(-)

commit 8c842e4a44908cce0f416481c73dc0866a0a9c95
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 4 20:28:38 2016 -0800

    [hb-fuzzer] Get glyph extents for output glyphs

    To exercise glyph-extents codepaths (glyf / CBLC+CBDT).

 test/fuzzing/hb-fuzzer.cc | 13 +++++++++++++
 1 file changed, 13 insertions(+)

commit 9f6144cdb9dd2bc8cd147306e678d76ae82663d8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 4 19:55:17 2016 -0800

    [CBDT] Add test for fetching glyph extents

 test/shaping/Makefile.am                                 |   1 +
 .../sha1sum/ee39587d13b2afa5499cc79e45780aa79293bbd4.ttf | Bin 0 ->
 3724 bytes
 test/shaping/tests/color-fonts.tests                     |   1 +
 3 files changed, 2 insertions(+)

commit e4bfccfb2a0f425ff69b0a50ca8a4731c4001069
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 4 19:43:33 2016 -0800

    [CBDT] Minor

 src/hb-ot-cbdt-table.hh | 21 ++++++++++++++-------
 src/hb-ot-font.cc       | 38 ++++++++++++++++++++------------------
 2 files changed, 34 insertions(+), 25 deletions(-)

commit b7068af423dba30fd831041aabf4b805d26fe349
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 4 19:36:30 2016 -0800

    [CBDT] Fix thinko!

 src/hb-ot-cbdt-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a141d1da9bb0f91521a9a7749f9533c75cfe6a2f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 4 19:26:54 2016 -0800

    [CBDT] Implement IndexSubtableFormat3

 src/hb-ot-cbdt-table.hh | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

commit 9eda74c92c9024ffb8ec6e9344c99d51dd763f0c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 4 19:12:52 2016 -0800

    [cbdt] Move some more code around

 src/hb-ot-cbdt-table.hh | 61
 ++++++++++++++++++++++++++++++++++---------------
 src/hb-ot-font.cc       | 18 ++++++---------
 2 files changed, 49 insertions(+), 30 deletions(-)

commit 654f9ab0d8d5ee032b5da763e34e7b1f454416b9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 4 18:56:24 2016 -0800

    [cbdt] Fix sign bug

    Was introduced in d495fc5e38038f4cfb20425b1109324fa70bf2f9

 src/hb-ot-cbdt-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c27d6fcf8db6f02e075dd1868ae67d878fff39d4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 2 22:43:05 2016 -0800

    [cbdt] Last of sanitization fixes

    Should be all good now..

 src/hb-ot-font.cc | 23 ++++++++++++++++-------
 1 file changed, 16 insertions(+), 7 deletions(-)

commit d495fc5e38038f4cfb20425b1109324fa70bf2f9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 2 21:36:42 2016 -0800

    [cbdt] Clean up some more

    Almost there..

 src/hb-ot-cbdt-table.hh | 134
 +++++++++++++++++++++++++++++++++++++++++++-----
 src/hb-ot-font.cc       |  38 ++++----------
 2 files changed, 131 insertions(+), 41 deletions(-)

commit ce09e90e1502d5f944bafd64e51c29e365a963ae
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 2 20:12:57 2016 -0800

    [cbdt] More sanitize work

 src/hb-ot-cbdt-table.hh | 65
 +++++++++++++++++++++++++++++--------------------
 src/hb-ot-font.cc       | 46 ++++++++++++++++++----------------
 2 files changed, 63 insertions(+), 48 deletions(-)

commit 70eb2ff682344688635cebb716fee0b73557c925
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 2 19:51:23 2016 -0800

    Check for offset overflows during sanitize

 src/hb-open-type-private.hh | 2 ++
 1 file changed, 2 insertions(+)

commit 4b58c9e326acde09d389c699014e4e7f6259f50a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 2 19:25:54 2016 -0800

    [cbdt] Start fixing sanitization (or lack thereof)

 src/hb-ot-cbdt-table.hh | 77
 ++++++++++++++++++++++++++++++++++++-------------
 src/hb-ot-font.cc       | 22 +++++++-------
 2 files changed, 68 insertions(+), 31 deletions(-)

commit b92ba7bafcd9545a401fb871eb342e6284032c47
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 2 15:21:43 2016 -0800

    [CBDT] Use CHAR instead of int8_t

 src/hb-open-type-private.hh |  1 +
 src/hb-ot-cbdt-table.hh     | 28 ++++++++++++++--------------
 2 files changed, 15 insertions(+), 14 deletions(-)

commit efca7bf97f9967af4fa399a6665b723af643cecd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 2 15:11:37 2016 -0800

    Rename 'ebdt' to 'cbdt' since we only support the PNG format

 src/Makefile.sources                             |  2 +-
 src/{hb-ot-ebdt-table.hh => hb-ot-cbdt-table.hh} |  6 +++---
 src/hb-ot-font.cc                                | 12 ++++++------
 3 files changed, 10 insertions(+), 10 deletions(-)

commit 831852594b777f250efedb76d19bee1cfc8eeaa4
Author: Seigo Nonaka <nona@google.com>
Date:   Fri Dec 2 15:03:50 2016 -0800

    Introduce get_extent support for color bitmap font. (#351)

    hb_font_get_glyph_extents now works for color bitmap fonts.
    Currently only font having index format 1 and image format 17
    is supported.

 src/Makefile.sources    |   1 +
 src/hb-ot-ebdt-table.hh | 193
 ++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-font.cc       |  96 ++++++++++++++++++++++++
 3 files changed, 290 insertions(+)

commit 261837e7202ec584f653f379851e1c6457396b07
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Oct 28 21:49:11 2016 +0330

    Fix "nmake install" when ADDITIONAL_LIB_DIR is provided and test it
    on CI (#356)

 appveyor.yml             | 1 +
 win32/detectenv-msvc.mak | 4 ++--
 win32/generate-msvc.mak  | 2 +-
 3 files changed, 4 insertions(+), 3 deletions(-)

commit d163cd956246449e3e48b54ce6eb5cdb14e3a0a6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 26 18:27:48 2016 +0200

    [tests] Add tests for vertical origin with ft and ot font-funcs

 .../sha1sum/f9b1dd4dcb515e757789a22cb4241107746fd3d0.ttf | Bin 0 ->
 1004 bytes
 test/shaping/tests/vertical.tests                        |   2 ++
 2 files changed, 2 insertions(+)

commit 2b117720c03869c7714304fd7fbfb2b01199bb3a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 26 18:12:50 2016 +0200

    Use horizontal ascent as fallback vertical origin

 src/hb-font-private.hh | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit a7b32f2057098012b3ab43121397766ae45b3559
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 26 18:08:41 2016 +0200

    Move code around

 src/hb-font-private.hh | 38 +++++++++++++++++++++++---------------
 1 file changed, 23 insertions(+), 15 deletions(-)

commit 63635c763dd9393df236f49d491510cca18a1ccc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 26 17:54:04 2016 +0200

    [hb-ot-font] Use ascent+descent as fallback vertical advance

 src/hb-ot-font.cc | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

commit 9ee23c49a7a7b2479ae0d36a64720e92eb8a36e7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 26 17:44:16 2016 +0200

    Fix vertical glyph origin with hb-ot-font

 src/hb-font-private.hh | 51
 ++++++++++++++++++++++++++++----------------------
 1 file changed, 29 insertions(+), 22 deletions(-)

commit b3b0816d5fc00298621f738cf400de60f8a42c5d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 26 17:19:07 2016 +0200

    Fix vertical font metrics

    Ouch!

 src/hb-font-private.hh | 4 ++--
 src/hb-ot-font.cc      | 8 ++++++--
 2 files changed, 8 insertions(+), 4 deletions(-)

commit 966ac7ecd3d0128a3adacdd26aacef2bd8afa4d4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 26 16:17:15 2016 +0200

    1.3.3

 NEWS         | 24 ++++++++++++++++++++++++
 configure.ac |  2 +-
 2 files changed, 25 insertions(+), 1 deletion(-)

commit 118164293cc7eb18ba03896f602aff816400134b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 26 16:04:30 2016 +0200

    Fix "make distcheck"

 configure.ac | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit b6c765871b752c9436ec993e47b48f9d4fecaed5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 26 10:33:33 2016 +0200

    [ci] Fix appveyor.yml syntax error

 appveyor.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0e79ebb3ca9b7b6d238a0007e5ca022845ee9afc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 23 14:39:43 2016 +0200

    [gobject] Update for new MATH structs

 src/hb-gobject-structs.cc | 3 +++
 1 file changed, 3 insertions(+)

commit 8c854dc023b1f9e081a3bbd16416b88a4671c267
Merge: bb9805f5 c3fa5d0e
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Tue Oct 25 00:31:36 2016 +0300

    Merge pull request #352 from fred-wang/makefile-am

    Remove inexistent file ttx file from test/api/Makefile.am

commit c3fa5d0e03b57be131c66ea8720806c946d0e10f
Author: Frédéric Wang <fred.wang@free.fr>
Date:   Mon Oct 24 21:42:04 2016 +0200

    Remove inexistent file ttx file from test/api/Makefile.am

 test/api/Makefile.am | 1 -
 1 file changed, 1 deletion(-)

commit bb9805f5419f18c7f5cab32d660fd4109c30f7cc
Merge: 702d9f52 755a0c20
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Oct 22 12:23:05 2016 +0330

    Merge pull request #349 from ebraminio/mergebackvcpkgpatches

    [ci] Enable hb-freetype on Windows build tests

commit 755a0c20798e3c3e6bb933a28e38f9667fccdadc
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Oct 21 11:48:58 2016 +0330

    [ci] Enable freetype on msvc using vcpkg

 appveyor.yml | 15 +++++++++++++--
 1 file changed, 13 insertions(+), 2 deletions(-)

commit 4631d84c2bb51395efe3156f9c9f1a6b0e277947
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Oct 18 14:30:00 2016 +0330

    Merge back @vlj's local patches of vcpkg

 win32/config-msvc.mak    | 7 +++++++
 win32/detectenv-msvc.mak | 3 +++
 2 files changed, 10 insertions(+)

commit 702d9f522d1ac4797700f0ea056f69169b8d1a78
Merge: 331c46c7 d8e2eb9e
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Oct 14 13:54:55 2016 +0330

    Merge pull request #340 from ebraminio/nouniscribe

    Make Uniscribe optional on nmake win32 builds

commit d8e2eb9ee0f47af7e90056d8db5949d10a88786a
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sun Oct 9 09:06:05 2016 +0330

    Make Uniscribe optional on nmake win32 builds

    Most of harfbuzz clients don't need Uniscribe and DirectWrite support
    at all
    as harfbuzz is a replacement for Uniscribe so Chromium and Firefox
    are using
    harfbuzz without them on Windows.

    This removal also helps win32 nmake clients to have reduced binary
    size and
    libs count.

 appveyor.yml            |  2 +-
 win32/README.txt        | 13 +++++++------
 win32/config-msvc.mak   | 18 +++++++++++++-----
 win32/config.h.win32.in |  2 +-
 win32/info-msvc.mak     | 11 +++++++++--
 5 files changed, 31 insertions(+), 15 deletions(-)

commit 331c46c79b4d18cb4948be12c78ebb71a143e7ac
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 11 13:45:22 2016 -0700

    Fix configure on iOS

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

 configure.ac | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit f6e194e77a2c34cd118b47c0d73a22afde85dfda
Merge: 7201fdd0 bef240b3
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Oct 11 17:23:41 2016 +0330

    Merge pull request #344 from ebraminio/fixmacci

    [ci] Whitelist more symbols and unbreak mac CI

commit bef240b36ee9086b0d92e351e4c5118c0bbb5df6
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Oct 10 17:27:52 2016 +0330

    [ci] Whitelist more symbols and unbreak mac CI

    Thanks to @khaledhosny, actually this is his work :)

 src/check-symbols.sh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 7201fdd0a8e26d49b13e289b53de375d5b1c9fcb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 4 14:53:17 2016 -0700

    LFS (large file system?) support in hb-*shap*, hb-view

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

 configure.ac | 3 +++
 1 file changed, 3 insertions(+)

commit 34fc4a2cfa61089b7ec2d9510d99cdc4c13bceb4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 28 19:17:27 2016 +0200

    Fix dist

 test/api/Makefile.am | 10 ++++++++++
 1 file changed, 10 insertions(+)

commit d1c62370a0c2bdb365a1468dc8d782b9a7245946
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 28 19:11:22 2016 +0200

    Aim math API for 1.3.3 instead of 1.4.0

 docs/harfbuzz-docs.xml     |  6 +++---
 docs/harfbuzz-sections.txt | 12 ++++++------
 src/hb-ot-layout.cc        | 18 +++++++++---------
 src/hb-ot-math.h           | 10 +++++-----
 4 files changed, 23 insertions(+), 23 deletions(-)

commit 7adbc5dd62ca03a65d1886e0f32e7026964dc5e5
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Fri Sep 30 04:01:24 2016 -0700

    Fix building math docs (#335)

 src/hb-ot-layout.cc | 9 ---------
 1 file changed, 9 deletions(-)

commit fd7a245d3525905ffbce57472b52900fcb0e330b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 27 17:56:35 2016 +0200

    Require glib >= 2.38.0 for G_TEST_DIST

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6d3e6abf0c6ad55dabae96c76b4da9ab14bf16ef
Merge: f73a87d9 c3e21a66
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 27 17:15:59 2016 +0200

    Merge branch 'math'

    Supercedes https://github.com/behdad/harfbuzz/pull/326
    Fixes https://github.com/behdad/harfbuzz/pull/331

commit c3e21a6620c35500afa350d11620f69802920df3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 27 16:51:38 2016 +0200

    [MATH] Fix more docs

 src/hb-ot-layout.cc | 18 +++++++++---------
 src/hb-ot-math.h    | 25 +++++++++++++++++++++++++
 2 files changed, 34 insertions(+), 9 deletions(-)

commit 46cc4a3a2a529c80677babe38ca1542f9c773ac0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 27 16:44:22 2016 +0200

    [MATH] Rename hb_math_*_t types to hb_ot_math_*_t

    With this, I believe MATH table API is not ready to be merged.

 docs/harfbuzz-sections.txt     |  6 +++---
 src/hb-ot-layout-math-table.hh | 12 ++++++------
 src/hb-ot-layout.cc            |  8 ++++----
 src/hb-ot-math.h               | 16 ++++++++--------
 test/api/test-ot-math.c        |  4 ++--
 5 files changed, 23 insertions(+), 23 deletions(-)

commit db5ebcf10f8595d1f4a9df27befd6cb5e76ca94d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 27 16:42:25 2016 +0200

    Update docs

 docs/harfbuzz-docs.xml     |  9 +++++++++
 docs/harfbuzz-sections.txt | 30 ++++++++++++++++++++++++++++--
 2 files changed, 37 insertions(+), 2 deletions(-)

commit 0762b35474c47171e5661904e93851eb73a44e5c
Author: Frédéric Wang <fred.wang@free.fr>
Date:   Tue Sep 27 15:28:35 2016 +0200

    Document API for MathVariants (#330)

 src/hb-ot-layout.cc | 56
 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 56 insertions(+)

commit 8d622f1114d6a0eca1786b94c7fc1a0bcd87f74b
Author: Frédéric Wang <fred.wang@free.fr>
Date:   Tue Sep 27 13:53:34 2016 +0200

    Add tests for get_mathvariant (#329)

 test/api/test-ot-math.c | 160
 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 160 insertions(+)

commit f73a87d9a8c76a181794b74b527ea268048f78e3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 27 13:50:54 2016 +0200

    1.3.2

 NEWS         | 7 +++++++
 configure.ac | 2 +-
 2 files changed, 8 insertions(+), 1 deletion(-)

commit 485e4873fb7cacfa9d853272c2275bbc5826023e
Author: Frédéric Wang <fred.wang@free.fr>
Date:   Tue Sep 27 13:18:00 2016 +0200

    Add tests for hb_ot_math_get_glyph_variants (#328)

 test/api/test-ot-math.c | 126
 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 126 insertions(+)

commit f16bf6c2dacf5b9c82b2d1ffacc092cc396189a7
Author: Phil Krylov <phil.krylov@gmail.com>
Date:   Tue Sep 27 12:38:49 2016 +0200

    Allow building with graphite2 without pkg-config (#318)

 configure.ac | 10 ++++++++++
 1 file changed, 10 insertions(+)

commit a5629a2ed9c2e69f2b4ebb74d85fbe0b5ba2be67
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 27 11:30:44 2016 +0200

    [MATH] Simplify test

 test/api/test-ot-math.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit edcfa789bf92c18f5badad31c0ad04a6a77d7226
Author: Frédéric Wang <fred.wang@free.fr>
Date:   Tue Sep 27 11:02:08 2016 +0200

    test-ot-math: Use different scales for vertical
    and horizontal directions and add test for
    hb_ot_math_get_min_connector_overlap. (#327)

 test/api/test-ot-math.c | 81
 ++++++++++++++++++++++++++++++-------------------
 1 file changed, 49 insertions(+), 32 deletions(-)

commit bc19f7fe20e89823dba07a46c3d48c7406b781b6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 27 10:58:08 2016 +0200

    [MATH] Add HB_OT_MATH_SCRIPT

 src/hb-ot-math.h | 3 +++
 1 file changed, 3 insertions(+)

commit cdc9eef7da934ae71578694f29665e439686c3bd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 26 22:18:41 2016 +0200

    [MATH] Enable tests for glyph-assembly italics-correction

 test/api/test-ot-math.c | 49
 ++++++++++++++++++++++++++++++-------------------
 1 file changed, 30 insertions(+), 19 deletions(-)

commit 86106c7528d9bff8de6bc3e1487be780c31ea4fd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 26 22:12:48 2016 +0200

    [MATH] Rename all API to hb_ot_math_*

 src/hb-ot-layout-private.hh    |  10 --
 src/hb-ot-layout.cc            |  69 ++++----
 src/hb-ot-math.h               |  56 +++---
 test/api/Makefile.am           |   6 +-
 test/api/test-ot-layout-math.c | 382
 -----------------------------------------
 test/api/test-ot-math.c        | 381
 ++++++++++++++++++++++++++++++++++++++++
 6 files changed, 447 insertions(+), 457 deletions(-)

commit 1ba767cd4e3606beb9dc59806b83b1e61f5958d4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 26 21:57:14 2016 +0200

    [MATH] Move API from hb-ot-layout.h to hb-ot-math.h

 src/hb-ot-layout.h | 52
 --------------------------------------------------
 src/hb-ot-math.h   | 56
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-ot.h        |  1 +
 3 files changed, 57 insertions(+), 52 deletions(-)

commit 97b72da6006d8d6355ee90d514f627e6604a4936
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 26 21:53:25 2016 +0200

    Whitespace

 src/hb-ot-layout-math-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 559eb564472575ae4d87a241314b8a3ca24418c4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 26 21:46:05 2016 +0200

    [MATH] Wire up get_glyph_assembly()

 src/hb-ot-layout-math-table.hh | 64
 ++++++++++++++++++++++++++++++++++++++----
 src/hb-ot-layout.cc            | 26 +++++++++--------
 src/hb-ot-layout.h             | 14 ++++-----
 3 files changed, 81 insertions(+), 23 deletions(-)

commit 353f455af7ccbc1af8338dcb0c8ab87aef866c79
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 26 21:22:48 2016 +0200

    [MATH] Wire up get_glyph_variants()

 src/hb-font-private.hh         |  11 ++-
 src/hb-ot-layout-math-table.hh | 178
 +++++++++++++++++++----------------------
 src/hb-ot-layout.cc            |   7 +-
 src/hb-ot-layout.h             |   2 +-
 4 files changed, 95 insertions(+), 103 deletions(-)

commit 7fe0e28c22331a353d396f8bc1e3a60f1580a96d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 26 17:51:47 2016 +0100

    [MATH] Start fleshing out glyph variant API

 src/hb-font-private.hh         |  4 +++
 src/hb-ot-layout-math-table.hh | 10 ++----
 src/hb-ot-layout.cc            | 73
 +++++++++++++++---------------------------
 src/hb-ot-layout.h             | 20 ++++++++++++
 src/hb-ot-math.h               | 18 +++++++++++
 5 files changed, 71 insertions(+), 54 deletions(-)

commit 1f3327f21045df8a050a21a949b44b9ce186ceaa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 26 16:10:08 2016 +0100

    [MATH] Clean up math variants

 src/hb-ot-layout-math-table.hh | 35 +++++++++--------------------------
 1 file changed, 9 insertions(+), 26 deletions(-)

commit 51da7a1cd672aada84bdbb3a2a8dd77ab1134249
Author: Frédéric Wang <fred.wang@free.fr>
Date:   Thu Aug 25 11:17:50 2016 +0200

    MATH table: Add API to access math variants.

 src/hb-ot-layout-math-table.hh          | 253
 +++++++++++++++++++++++++++++++-
 src/hb-ot-layout-private.hh             |  10 ++
 src/hb-ot-layout.cc                     |  54 +++++++
 test/api/fonts/MathTestFontPartial4.otf | Bin 0 -> 14360 bytes
 test/api/test-ot-layout-math.c          |  51 +++++++
 5 files changed, 364 insertions(+), 4 deletions(-)

commit 722e620f20fa2225cf874f4aeb115a064142fcf1
Author: Frédéric Wang <fred.wang@free.fr>
Date:   Mon Sep 26 11:51:36 2016 +0200

    Use G_TEST_DIST to build the path of math test fonts

 test/api/Makefile.am           | 2 ++
 test/api/test-ot-layout-math.c | 8 ++++++--
 2 files changed, 8 insertions(+), 2 deletions(-)

commit 8d58e3433e242bd9dd18aa08f55ab0a406583fb0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 26 13:39:58 2016 +0100

    [MATH] Fix get_kerning() with negative y-scale

 src/hb-ot-layout-math-table.hh | 36 +++++++++++++++++++++---------------
 1 file changed, 21 insertions(+), 15 deletions(-)

commit 94f5df5626b223ad92d0c167f560c1f2e2f19042
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 26 13:31:47 2016 +0100

    [MATH] Clean up get_kerning()

 src/hb-ot-layout-math-table.hh | 29 +++++++++++++++++------------
 src/hb-ot-layout.cc            |  5 +----
 2 files changed, 18 insertions(+), 16 deletions(-)

commit 17ff30e9afde79e41c17786223293e867b49ebba
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 26 12:18:32 2016 +0100

    [MATH] Clean up get_top_accent_attachment()

    Note, the function now returns "half of horizontal advance width"
    if top accent attachment for glyph is not explicitly defined.
    This is what the spec requires.  Updated tests.

 src/hb-ot-layout-math-table.hh | 31 +++++++++++--------------------
 src/hb-ot-layout.cc            |  7 +------
 test/api/test-ot-layout-math.c |  8 ++++----
 3 files changed, 16 insertions(+), 30 deletions(-)

commit 8bcf517fe59608d2247a8974445b3ff0f4b4b4ac
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 26 12:12:41 2016 +0100

    [MATH] Clean up get_italics_correction()

 src/hb-ot-layout-math-table.hh | 16 ++++++++--------
 src/hb-ot-layout.cc            | 17 ++++++-----------
 src/hb-ot-layout.h             |  4 ++--
 test/api/test-ot-layout-math.c | 18 +++++++++---------
 4 files changed, 25 insertions(+), 30 deletions(-)

commit 06003f71ba0d0327fb1a17098a9d7faa8fb336f0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 26 12:07:29 2016 +0100

    [MATH] Clean up a bit more

 src/hb-ot-layout-math-table.hh | 12 +--------
 src/hb-ot-layout.cc            | 57
 ++++++++++++++++--------------------------
 2 files changed, 22 insertions(+), 47 deletions(-)

commit 54c0cc38fba24fa4370231408ba121589b190a28
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 26 11:56:40 2016 +0100

    [MATH] Clean up get_math_constant implementation

 src/hb-ot-layout-math-table.hh | 10 +++++-----
 src/hb-ot-layout.cc            |  5 ++---
 2 files changed, 7 insertions(+), 8 deletions(-)

commit 8a8cfad9a0834fe278a747c1d755144bd78f564b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 26 11:47:05 2016 +0100

    [MATH] Cleanup previous commit a bit

 src/hb-ot-layout-math-table.hh | 186
 ++++++++++++++++++++---------------------
 src/hb-ot-layout.cc            |  30 +++----
 src/hb-ot-layout.h             |  14 ++--
 3 files changed, 113 insertions(+), 117 deletions(-)

commit d7182d129612c619b9026ee9b15f2dcfada132db
Author: Frédéric Wang <fred.wang@free.fr>
Date:   Thu Aug 25 11:15:31 2016 +0200

    MATH Table: Add API to access glyph info.

 src/hb-ot-layout-math-table.hh          | 271
 +++++++++++++++++++++++++++++++-
 src/hb-ot-layout.cc                     | 114 ++++++++++++++
 src/hb-ot-layout.h                      |  18 +++
 src/hb-ot-math.h                        |   7 +
 test/api/fonts/MathTestFontPartial1.otf | Bin 0 -> 14348 bytes
 test/api/fonts/MathTestFontPartial2.otf | Bin 0 -> 14356 bytes
 test/api/fonts/MathTestFontPartial3.otf | Bin 0 -> 14380 bytes
 test/api/test-ot-layout-math.c          | 155 ++++++++++++++++++
 8 files changed, 563 insertions(+), 2 deletions(-)

commit 6fd2fe418dc838743f0d4a8a2222cdcaf587500c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 26 11:24:39 2016 +0100

    [MATH] Fixup math constants commit a bit more

 src/hb-ot-layout-math-table.hh | 24 +++++++++++-------------
 1 file changed, 11 insertions(+), 13 deletions(-)

commit 1a381153a2e6a15bded1f8e31f6b0e0cadb078af
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 26 11:15:59 2016 +0100

    [MATH] Fixups for math constants commit

 src/hb-ot-layout-math-table.hh | 19 +++++++++----------
 1 file changed, 9 insertions(+), 10 deletions(-)

commit 319ff59161e6b027391f8b9fdce0db6dd44cc20d
Author: Frédéric Wang <fred.wang@free.fr>
Date:   Thu Aug 25 11:06:41 2016 +0200

    MATH Table: Add API to access math contants.

 src/Makefile.sources                |   1 +
 src/hb-ot-layout-math-table.hh      | 146
 +++++++++++++++++++++++++++++++++++-
 src/hb-ot-layout.cc                 |  25 ++++++
 src/hb-ot-layout.h                  |   5 ++
 src/hb-ot-math.h                    | 100 ++++++++++++++++++++++++
 test/api/fonts/MathTestFontFull.otf | Bin 0 -> 25412 bytes
 test/api/test-ot-layout-math.c      |  72 ++++++++++++++++++
 7 files changed, 345 insertions(+), 4 deletions(-)

commit 4d3892e9b05a4df67b2f5cfd6dd3a1e0f5b38fc7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 26 10:45:58 2016 +0100

    [MATH] Fixups for previous commit

 src/hb-ot-layout-math-table.hh |  8 ++++----
 src/hb-ot-layout.cc            | 29 +++++++++++++++++++----------
 src/hb-ot-layout.h             |  2 ++
 test/api/Makefile.am           |  6 ++----
 test/api/test-ot-layout-math.c | 16 +++++++++-------
 5 files changed, 36 insertions(+), 25 deletions(-)

commit 5fbcb992bd7887f95b1cf2ca045c9226de8148fc
Author: Frédéric Wang <fred.wang@free.fr>
Date:   Thu Aug 25 10:47:15 2016 +0200

    MATH Table: Add API to check availability of math data.

 src/Makefile.sources                 |   1 +
 src/hb-ot-layout-math-table.hh       |  60 +++++++++++++++++++++
 src/hb-ot-layout-private.hh          |   3 ++
 src/hb-ot-layout.cc                  |  45 ++++++++++++++++
 src/hb-ot-layout.h                   |   7 +++
 test/api/Makefile.am                 |  14 ++++-
 test/api/fonts/MathTestFontEmpty.otf | Bin 0 -> 14320 bytes
 test/api/fonts/MathTestFontNone.otf  | Bin 0 -> 14284 bytes
 test/api/test-ot-layout-math.c       |  98
 +++++++++++++++++++++++++++++++++++
 9 files changed, 227 insertions(+), 1 deletion(-)

commit 02bfd965af588640250c47f344ad3096c8a373e0
Author: Gregory Morse <gregory.morse@live.com>
Date:   Mon Sep 12 10:22:15 2016 +0200

    Update detectenv-msvc.mak (#316)

    Windows x86 ARM capability

 win32/detectenv-msvc.mak | 3 +++
 1 file changed, 3 insertions(+)

commit fc4e671f311241e21c1cc3ed941b1fc651875a2e
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Sep 9 23:28:28 2016 +0430

    [coretext] Use intended coretext version check logic (#315)

 src/hb-coretext.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 48677345281a93d8829dd37d0480a6062945416a
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Thu Sep 8 04:44:37 2016 +0300

    Try to unbreak building on older macOS again (#314)

 src/hb-coretext.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit d22ab6cf040467e7f17476ccdfe9cab4dce16639
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 7 14:28:47 2016 -0700

    1.3.1

 NEWS         | 9 +++++++++
 configure.ac | 2 +-
 2 files changed, 10 insertions(+), 1 deletion(-)

commit b717cd7be506217e466e32a456df9af4d2720c0c
Author: Dominik Röttsches <d-r@roettsches.de>
Date:   Wed Sep 7 23:56:57 2016 +0300

    Do reconfigure the cascade list for Emoji font on OS X 10.9.5 (#313)

    This seems to fix crash issues on 10.9.5 reported on Chrome, compare
    crbug.com/549610

 src/hb-coretext.cc | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

commit 67e9fdf427e8536f0a134f84ad3bf1740245fe12
Author: Dominik Röttsches <d-r@roettsches.de>
Date:   Mon Sep 5 11:27:25 2016 +0300

    Blacklist Padauk 2.80 and 3.00 (#311)

    According to comments in issue #305 broken GDEF tables lead
    to incorrect rendering of Latin characters. Blacklisting
    this font.

 src/hb-ot-layout.cc | 8 ++++++++
 1 file changed, 8 insertions(+)

commit 17f0dd2dfb9a15aed9d1a229115940cc23bdbc97
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Sep 2 01:21:48 2016 +0430

    [ci] Add msys2 build to CI and run its testsuite on Windows (#310)

 appveyor.yml | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

commit 5362ce6a6455c539d615e7fb221a904ac744b74c
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Sep 1 20:05:45 2016 +0430

    [dwrite] Minor, don't include unnecessary headers (#309)

 src/hb-directwrite.cc | 4 ----
 1 file changed, 4 deletions(-)

commit c4f36b04e32ae5111ef11d225e5d6e82c8216185
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Sep 1 17:31:16 2016 +0430

    [ci] Add Windows CI support, provided by AppVeyor (#308)

 README                  |  1 +
 appveyor.yml            | 28 ++++++++++++++++++++++++++++
 win32/generate-msvc.mak |  2 +-
 3 files changed, 30 insertions(+), 1 deletion(-)

commit 3d976d20f1b97c771e64a9cfed2760ebec64037a
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Sat Aug 27 16:38:42 2016 +0300

    Show the shaper name in the debug message (#306)

 src/hb-shape-plan.cc | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 547ddb0721365dca985aef5b759d08718f7c5f82
Merge: bd1aac9c e7ecbba2
Author: Sascha Brawer <sascha@brawer.ch>
Date:   Thu Aug 18 22:33:14 2016 +0200

    Merge pull request #303 from behdad/fonnapa

    Support Americanist Phonetic Notation

commit e7ecbba2cc3c9369c5e7dc7296cb210018aca3bb
Author: Sascha Brawer <sascha@brawer.ch>
Date:   Thu Aug 18 12:48:38 2016 +0200

    Support Americanist Phonetic Notation

    OpenType language system tag: `APPH`
    https://www.microsoft.com/typography/otspec/languagetags.htm

    IETF BCP47 variant tag: `fonnapa`
    http://www.iana.org/assignments/language-subtag-registry/language-subtag-registry

 src/hb-ot-tag.cc       | 14 ++++++++++++--
 test/api/test-ot-tag.c |  6 ++++++
 2 files changed, 18 insertions(+), 2 deletions(-)

commit bd1aac9c0021a936058637424a478abf792533dd
Merge: 18c19dd3 a0f1b44b
Author: Sascha Brawer <sascha@brawer.ch>
Date:   Thu Aug 18 13:59:38 2016 +0200

    Merge pull request #302 from khaledhosny/master

    [travis] Fix MacOS libtool issue

commit a0f1b44b6c0e3b1e6a1ba63dde2be22e0425353f
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Tue Aug 16 03:09:04 2016 +0200

    [coretext] Blind fix for build on MacOS 10.9

 src/hb-coretext.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0634d5600e559a69a92d49173ffb8e715fe7576c
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Tue Aug 16 02:49:48 2016 +0200

    [travis] Fix MacOS libtool issue

    Reveals another MacOS build breakage in the Core Text shaper.

 .travis.yml | 1 +
 1 file changed, 1 insertion(+)

commit 18c19dd34dcdcaab0a6d47768339f8fb70c0d3f0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 9 13:03:14 2016 -0700

    Fix build

 test/api/test-ot-tag.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 91f2585411aaf5565fcf0c991b9055b0b397f1cd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 8 18:08:08 2016 -0700

    Actually add test

 test/shaping/Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit f1b76275da716a4174092e6389979e03c0e3be59
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 8 18:06:09 2016 -0700

    Add tests for Chinese language tags

    Using font from https://github.com/behdad/harfbuzz/issues/300

 .../sha1sum/6991b13ce889466be6de3f66e891de2bc0f117ee.ttf | Bin 0 ->
 5596 bytes
 test/shaping/tests/language-tags.tests                   |  12
 ++++++++++++
 2 files changed, 12 insertions(+)

commit 37f21bdbb75c98d741e749b7f1e0f367941aef4e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 8 17:57:06 2016 -0700

    Map Macao to ZHH lang tag

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

 src/hb-ot-tag.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 09c7a2d6bf00dc902343e999f92cac0e8146f949
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 8 17:28:54 2016 -0700

    Limit bits-per-feature to eight

    Limits number of alternatives per glyph per feature to 255, so be it.
    That's better than possibly breaking shaping because of one bad
    feature
    value.

 src/hb-ot-map.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 333173103bb618f721bd25d0c565a3c3c9ea224e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 8 17:24:04 2016 -0700

    Fix sign of shift operators

    This one:

      map->mask = (1 << (next_bit + bits_needed)) - (1 << next_bit);

    before the fix, the shift was done as an int, causing overflow
    if it ever got to 1 << 31.  Sprinkle 'u's around.

    Fixes https://bugs.chromium.org/p/chromium/issues/detail?id=634805

 src/hb-buffer-private.hh | 6 +++---
 src/hb-cache-private.hh  | 8 ++++----
 src/hb-coretext.cc       | 2 +-
 src/hb-directwrite.cc    | 2 +-
 src/hb-face.cc           | 2 --
 src/hb-font.cc           | 2 --
 src/hb-ft.cc             | 6 ++++--
 src/hb-ot-map.cc         | 4 ++--
 src/hb-set-private.hh    | 4 ++--
 src/hb-uniscribe.cc      | 4 ++--
 10 files changed, 19 insertions(+), 21 deletions(-)

commit 10a0d4aa2254f783758bb908175047df3a0b41fe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 8 16:51:08 2016 -0700

    Map zh-Hant-HK to ZHH

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

 src/hb-ot-tag.cc | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit dd31fc9f7e6d23b414b22874de96eb3c002c80ba
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Fri Jul 22 02:26:54 2016 +0300

    Don’t build UCDN support when building with GLib (#296)

    Regression from: b424b6c372dfe4c0ed75a49761eb34a416819446.

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 489acf6c3180d3726158864fa0e1adeea3c23fae
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 22 17:41:43 2016 -0700

    [coretext] "Fix" crashes on CoreText < 10.10

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

 src/hb-coretext.cc | 8 ++++++++
 1 file changed, 8 insertions(+)

commit a732e00ea4fffebaa85a89420f09df4c11d650e0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 21 01:58:00 2016 -0700

    1.3.0

 NEWS         | 15 +++++++++++++++
 configure.ac |  2 +-
 2 files changed, 16 insertions(+), 1 deletion(-)

commit 08c08af2f9ed683ad20322c3ef1ba0f87ce15426
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 21 01:23:33 2016 -0700

    [ucdn] Update to Unicode 9.0.0

    Fixes https://github.com/grigorig/ucdn/issues/12

 src/hb-ucdn.cc               |    6 +
 src/hb-ucdn/README           |    1 -
 src/hb-ucdn/ucdn.c           |   80 +-
 src/hb-ucdn/ucdn.h           |   98 +-
 src/hb-ucdn/unicodedata_db.h | 4750
 +++++++++++++++++++++++-------------------
 5 files changed, 2783 insertions(+), 2152 deletions(-)

commit f3f6c1ccbf89e15cda03e0c3a2df4297e98adf60
Author: jfkthame <jfkthame@gmail.com>
Date:   Thu Jun 16 00:10:42 2016 +0100

    Blacklist GDEF tables of more fonts

    This is based on bug reports that have been filed against Firefox
    since it
    updated to a version of harfbuzz that uses zeroing by GDEF rather
    than by
    Unicode. I'm sure there are a bunch more font versions that should
    also be
    included; these are just the ones I have on hand and have confirmed
    as having
    bad GDEF data.

    Given how the list here is growing, I think we should reconsider
    the approach,
    and perhaps revert to zeroing by Unicode instead.

    Fixes https://github.com/behdad/harfbuzz/issues/264
    Fixes https://github.com/behdad/harfbuzz/pull/266

 src/hb-ot-layout.cc | 39 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 39 insertions(+)

commit 34f9aa582c3a03b578c7eae3d2e8860a0bd5cb00
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 20 02:35:54 2016 -0700

    Implement symbol cmap in ft and ot fonts

    Fixes https://github.com/behdad/harfbuzz/issues/236
    Fixes https://bugs.chromium.org/p/chromium/issues/detail?id=627953

 src/hb-ft.cc      | 27 +++++++++++++++++++++++----
 src/hb-ot-font.cc | 50 ++++++++++++++++++++++++++++++++++++++------------
 2 files changed, 61 insertions(+), 16 deletions(-)

commit 6363d7df28dc4307ef1abb9857d14c35e656b85a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 20 01:43:56 2016 -0700

    Clean up buffer area when rewinding

    Fixes https://bugs.chromium.org/p/chromium/issues/detail?id=614647
    If allocation fails, we might be leaving junk behind.  At least
    clear it up.

 src/hb-buffer.cc | 8 ++++++++
 1 file changed, 8 insertions(+)

commit f80c34eb556d12c45c961d6742c289baef58899d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 12 11:18:26 2016 -0700

    Whitespace

 src/hb-unicode-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 874421203e0161db2cbfb27be6c039cba57f7c63
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Jul 12 03:49:21 2016 +0430

    [coretext] Speculative fix for CoreText nullptr access (#288)

 src/hb-coretext.cc | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

commit 6bf9db4f1e1d51f9acb5e37b89caa8f4d275e7ce
Author: Birunthan Mohanathas <birunthan@mohanathas.com>
Date:   Mon Jul 11 13:38:23 2016 -0700

    [ft] Fix unsafe cast of FT_Done_Face in
    hb_ft_{face,font}_create_referenced (#289)

    Prior to this change the function `FT_Error FT_Done_Face(FT_Face
    *)` was
    called through a pointer with the signature `void (void *)`
    resulting in
    undefined behaviour.

 src/hb-ft.cc | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

commit 0b8f3ab0220ca4731516313828515f26bb480645
Author: Steve Lhomme <slhomme@matroska.org>
Date:   Mon Jul 11 21:57:26 2016 +0200

    clang in MSVC mode doesn't like when we redefine __attribute__ (#283)

 src/hb-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2f522fd485c2e946c9bce9e3828b6ff6247c59e4
Merge: d3e2a06b e4d451ee
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 1 17:09:28 2016 -0700

    Merge pull request #286 from khaledhosny/gi-tag_from_string

    [introspection] Fix hb_tag_from_string annotation

commit e4d451ee55a57e1231b4076fcd1e87994f6b9528
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Sat Jul 2 00:04:57 2016 +0200

    [introspection] Fix hb_tag_from_string annotation

 src/hb-common.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit d3e2a06b0f2587e913a9c3ff1a20c187f260db80
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jun 30 11:01:22 2016 -0700

    [python] Use utf-32 / utf-16 based on build of Python

    Fixes https://github.com/behdad/harfbuzz/pull/271

 src/sample.py | 22 +++++++++++++++++++++-
 1 file changed, 21 insertions(+), 1 deletion(-)

commit fc9de44a03a97f6e93bd98d804596cb1f9f4b5fd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jun 30 09:46:52 2016 -0700

    Comments

 src/hb-coretext.cc | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

commit 46809dee30232d493539519b1bb527fa816c37db
Merge: 70e72e5f 1bea49eb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jun 30 09:41:03 2016 -0700

    Merge pull request #268 from drott/conflictingFontFix

    Discard reconfigured CTFont if URL changes

commit 1bea49eb4b7a94ab6222f9c3c40320cbdb247b2d
Merge: 7aa3631d 70e72e5f
Author: Dominik Röttsches <d-r@roettsches.de>
Date:   Wed Jun 29 12:10:41 2016 +0200

    Merge branch 'master' into conflictingFontFix

commit 70e72e5f61d73c33d3c8f3bf07f5a9afd0db046a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 28 21:00:37 2016 -0700

    [gobject] Fix a few warnings

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

 src/hb-buffer.cc         |  2 +-
 src/hb-gobject-structs.h | 12 ++++++++++++
 src/hb-shape.cc          |  2 --
 src/hb-unicode.h         | 15 ---------------
 4 files changed, 13 insertions(+), 18 deletions(-)

commit d8273aac19771033c5064a2f079c29d09a86e7c0
Merge: abae93fa ae9054c7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 28 21:15:28 2016 -0700

    Merge pull request #280 from behdad/revert-271-patch-2

    Revert "use utf32"

commit ae9054c740631e36b7582b44c5afb42ff4509461
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 28 21:14:38 2016 -0700

    Revert "use utf32"

 src/sample.py | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 7aa3631dd06af74a1fa9f0bfaa5f721876be817f
Merge: f7da0486 abae93fa
Author: Dominik Röttsches <d-r@roettsches.de>
Date:   Tue Jun 28 09:52:18 2016 +0200

    Merge branch 'master' into conflictingFontFix

commit abae93faef32562f34a72981d252c848cc4f7565
Merge: 07461d06 8179ff5d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jun 27 14:33:27 2016 -0400

    Merge pull request #273 from ebraminio/master

            [dwrite] Use stream font loader instead GDI interop

commit 8179ff5d7ba4a140cf6743729a22072800e98a79
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Jun 27 03:54:15 2016 +0430

    [dwrite] Don't allocate more than needed

    Addressing Nikolay Sivov reviews on harfbuzz mailing list

 src/hb-directwrite.cc | 15 ++++++---------
 1 file changed, 6 insertions(+), 9 deletions(-)

commit 5967eaba728ca3e4f5026142c25d455fa3a59764
Author: Sascha Brawer <sascha@brawer.ch>
Date:   Fri Jun 24 16:42:27 2016 +0200

    [CPAL] Return 0xFFFF as name id for unnamed palettes

    The name id 0 is used as Copyright notice. It's quite unlikely that a
    font supplies a color palette with the exact same name as the font's
    copyright notice, but the API should not prevent this.

    Also, try to fix a problem with GObject introspection, where the
    auto-generated Python bindings could not return palette colors.

 src/hb-ot-color.cc       | 13 ++++++-------
 test/api/test-ot-color.c | 14 +++++++-------
 2 files changed, 13 insertions(+), 14 deletions(-)

commit 07b724f3419a28c479cd8a75ae0eecb841a6d2f3
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Jun 24 12:23:25 2016 +0430

    [dwrite] Delete remained objects

    No longer noticeable memory increase on create/destroy iterations,
    highly better than current state of uniscribe backend

 src/hb-directwrite.cc | 33 ++++++++++++++++++++++++---------
 1 file changed, 24 insertions(+), 9 deletions(-)

commit be565d17141818e006aa1e4582f3ae14c726fa85
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Jun 24 11:42:01 2016 +0430

    [dwrite] Release allocated blob on face destroy

    This reduces memory consumption of my iterated font create/destroy
    cycle test
    significantly and makes it much better than uniscribe backend even

 src/hb-directwrite.cc | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit f3f0ea980a359343ac0e3d359a95855c2cf7be25
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Jun 23 16:41:37 2016 +0430

    [dwrite] Remove ifdefs without breaking execution on old Windows
    versions

 src/hb-directwrite.cc | 205
 +++++++++++++++++++++++++-------------------------
 1 file changed, 103 insertions(+), 102 deletions(-)

commit 6b861dbd8b3662d0fa0e51fad1736d72192da868
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Jun 21 13:57:26 2016 +0430

    [dwrite] Use stream font loader instead GDI interop

    With help of
    https://dxr.mozilla.org/mozilla-central/source/gfx/2d/NativeFontResourceDWrite.cpp

 src/hb-directwrite.cc | 350
 +++++++++++++++++++-------------------------------
 src/hb-directwrite.h  |   2 +-
 2 files changed, 135 insertions(+), 217 deletions(-)

commit f7da0486ed8884481d477ce08fcf928c4da9a0a3
Merge: a0223274 07461d06
Author: Dominik Röttsches <d-r@roettsches.de>
Date:   Mon Jun 20 10:25:43 2016 +0300

    Merge branch 'master' into conflictingFontFix

commit d34d3ac985a6c8c848ae49635b648a72e0c8f30d
Author: Sascha Brawer <sascha@brawer.ch>
Date:   Mon Apr 25 18:20:57 2016 +0200

    Support CPAL table

 NEWS                                               |   6 +-
 src/Makefile.am                                    |   3 +
 src/Makefile.sources                               |   3 +
 src/hb-ot-color.cc                                 | 213 ++++++++++++++
 src/hb-ot-color.h                                  |  99 +++++++
 src/hb-ot-cpal-table.hh                            | 121 ++++++++
 src/hb-ot-layout-private.hh                        |   3 +
 src/hb-ot-layout.cc                                |   7 +
 src/hb-ot.h                                        |   1 +
 test/api/Makefile.am                               |   1 +
 test/api/hb-test.h                                 |  30 ++
 test/api/test-ot-color.c                           | 318
 +++++++++++++++++++++
 .../319f5d7ebffbefc5c5e6569f8cea73444d7a7268.ttf   | Bin 0 -> 2128 bytes
 .../e90374e5e439e00725b4fe7a8d73db57c5a97f82.ttf   | Bin 0 -> 1948 bytes
 14 files changed, 804 insertions(+), 1 deletion(-)

commit 07461d06d242cd5cfda7ccb891189f074a89b460
Author: Kelvin <kelvinsthirteen@gmail.com>
Date:   Sat Jun 18 22:46:38 2016 +0000

    Use UTF-32  in Python sample

 src/sample.py | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit fca0c61d67aa309fc824fb18f247493c2b7701ef
Merge: 4b8de1ea 98835058
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Sun Jun 19 00:08:51 2016 +0300

    Merge pull request #270 from khaledhosny/travis-failure

    Fix make check on Travis

commit 988350586f607c7a46bbb658a2abecfd004f41fb
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Sat Jun 18 21:12:19 2016 +0200

    [tests] Workaround Python 2 “narrow” builds

    The so-called Python 2 “narrow” builds support UCS2 only, this
    is a
    workaround to allow unichr to work with any Unicode character in such
    builds. This fixes Travis-CI failure as it has narrow Python 2 builds.

    Copied from:
    https://github.com/behdad/fonttools/blob/master/Lib/fontTools/misc/py23.py

 test/shaping/hb_test_tools.py | 38 +++++++++++++++++++++++++++++++++++++-
 1 file changed, 37 insertions(+), 1 deletion(-)

commit a0223274b97e82fe02730fd45729172511fec459
Author: Dominik Röttsches <drott@chromium.org>
Date:   Thu Jun 16 14:19:39 2016 +0200

    Discard reconfigured CTFont if URL changes

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

 src/hb-coretext.cc | 24 +++++++++++++++++++++---
 1 file changed, 21 insertions(+), 3 deletions(-)

commit 4b8de1ea804b225e8357422d0686aad76b05ccf3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jun 6 23:08:54 2016 -0700

    Round, not truncate, when scaling values

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

 src/hb-font-private.hh | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

commit a93078a0ece6dcdea8c5b46cabd30854dd7cf593
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jun 6 15:58:41 2016 -0700

    Change bugreport URL to github

    That's where everything is happening these days.

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit bed201d2b839c1b1e727e17efc2e0c8f705b86c5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jun 6 14:14:24 2016 -0700

    Update for latest Unicode 9 data files

 src/hb-ot-shape-complex-indic-table.cc | 10 +++++-----
 src/hb-ot-shape-complex-indic.cc       |  5 -----
 src/hb-ot-shape-complex-use-table.cc   |  4 ++--
 3 files changed, 7 insertions(+), 12 deletions(-)

commit aba4b0ca52f490adfc2f3c6ec0accddd6596fdf6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 1 16:57:29 2016 -0700

    Add TODO

 src/hb-font.cc | 1 +
 1 file changed, 1 insertion(+)

commit a2b03de5b30b7e83f7fbf3457e9ba9c00eb88d00
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 6 17:56:07 2016 +0100

    [myanmar] Handle U+AA74..U+AA76

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

 src/hb-ot-shape-complex-myanmar.cc | 5 +++++
 1 file changed, 5 insertions(+)

commit 6c0aa9e92bbd22011c85d98c6db021012f7b4101
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 6 17:50:06 2016 +0100

    Fix build on droid.io

 test/shaping/tests/use.tests | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9b6312f9451db790db00dc2c2e27a5a1db852e72
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 6 17:41:49 2016 +0100

    [use] Update to draft spec from Andrew Glass from August 2015

 src/gen-use-table.py                               |  29 +++--
 src/hb-ot-shape-complex-use-machine.rl             |  15 +--
 src/hb-ot-shape-complex-use-private.hh             |   1 -
 src/hb-ot-shape-complex-use-table.cc               | 142
 ++++++++++-----------
 src/hb-ot-shape-complex-use.cc                     |  11 +-
 .../6ff0fbead4462d9f229167b4e6839eceb8465058.ttf   | Bin 0 -> 1148 bytes
 test/shaping/tests/use.tests                       |   1 +
 7 files changed, 93 insertions(+), 106 deletions(-)

commit 3e4e7616a8ca80a50a438601b84428b4ba4c8694
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 6 17:28:25 2016 +0100

    [use] Add a catch-all clause to the machine

 src/hb-ot-shape-complex-use-machine.rl | 2 ++
 src/hb-ot-shape-complex-use.cc         | 2 ++
 2 files changed, 4 insertions(+)

commit d04e461fe3310ccaf8633efcb79b8eb6ca2201c3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 6 17:17:00 2016 +0100

    [use] Fix 'Number-joiner terminated cluster' to use HN instead of H

    From draft update to USE.

 src/hb-ot-shape-complex-use-machine.rl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 359dead960c825edeb4587915a511d323f1c1f2a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 6 16:19:19 2016 +0100

    Allow MultipleSubst to delete glyph

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

    Hopefully we got the logic right.

 src/hb-ot-layout-gsub-table.hh       | 17 +++++++----------
 src/hb-ot-layout-gsubgpos-private.hh | 11 +++++++----
 2 files changed, 14 insertions(+), 14 deletions(-)

commit 3c1666cfb589275de96d54eecb95a13a98e3819e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 6 16:05:07 2016 +0100

    [indic] Remove more unused logic after Javanese is gone

 src/hb-ot-shape-complex-indic.cc | 50
 +++++++++++++++-------------------------
 1 file changed, 18 insertions(+), 32 deletions(-)

commit 8b5d6e755b271d0d22b31a7726d5bfbf2aae8b2f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 6 15:59:27 2016 +0100

    [indic] Remove unused Javanese bits

 src/hb-ot-shape-complex-indic-machine.rl | 3 +--
 src/hb-ot-shape-complex-indic-private.hh | 5 ++---
 src/hb-ot-shape-complex-indic.cc         | 4 ----
 3 files changed, 3 insertions(+), 9 deletions(-)

commit 30e6e29f0f0f77eb65bfd1c4576b38c2da555017
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 6 15:52:27 2016 +0100

    [indic/use] Move Javanese from Indic shaper to USE

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

    With javatext.ttf, the reodering medial Ra gets its advance width
    zero'ed in Uniscribe implementation, and the font adds the advance
    back.  Our Indic shaper does not do that, but USE does.  So, route
    Javanese through USE.  That's what Microsoft does anyway.  Test:

      U+A9A5,U+A9BA

    This also seems to fix the following sequence, and variations thereof:

      U+A99F,U+A9C0,U+A9A2,U+A9BF

 src/gen-indic-table.py                             |  1 -
 src/hb-ot-shape-complex-indic-table.cc             | 23
 ++++------------------
 src/hb-ot-shape-complex-private.hh                 |  5 +----
 .../south-east-asian/script-javanese/misc.txt      |  1 +
 4 files changed, 6 insertions(+), 24 deletions(-)

commit c6ee5f5f06a27a6f147f63aaf51186622821f20b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 6 15:39:02 2016 +0100

    Add Javanese sample text

 .../south-east-asian/script-javanese/misc.txt      | 53
 ++++++++++++++++++++++
 1 file changed, 53 insertions(+)

commit e21921a68a959b7e929f71a4260a6cbe055ab4e6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 6 15:24:39 2016 +0100

    Minor

 BUILD.md | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

commit 01a30a6aa9a5827c93245961e3392a1f361745fe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 6 11:50:02 2016 +0100

    [indic] Remove data for scripts that don't go thorough this shaper

 src/gen-indic-table.py                 |  29 +-
 src/hb-ot-shape-complex-indic-table.cc | 604
 +--------------------------------
 2 files changed, 43 insertions(+), 590 deletions(-)

commit 7cd9269f4eba7b85cd72301a3fc39fab42a4e439
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 6 11:34:46 2016 +0100

    Update tables to Unicode 9.0.0 beta

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

 src/hb-ot-shape-complex-arabic-table.hh |  56 ++++++++-----
 src/hb-ot-shape-complex-indic-table.cc  | 137
 +++++++++++++++++++++++---------
 src/hb-ot-shape-complex-use-table.cc    |  86 ++++++++++++++------
 3 files changed, 196 insertions(+), 83 deletions(-)

commit f718fe370ea89e8aeb407addaa6cc926d52a4cdb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 6 11:21:12 2016 +0100

    Minor

 src/gen-indic-table.py | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 691086f131cb6c9d97e98730c27673484bf93f87
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 6 12:08:18 2016 +0100

    Add Unicode 9 beta scripts

    These are frozen, so good time to add.

 src/hb-common.cc                   | 3 +++
 src/hb-common.h                    | 9 +++++++++
 src/hb-ot-shape-complex-private.hh | 9 +++++++++
 src/hb-ot-shape-complex-use.cc     | 3 +++
 4 files changed, 24 insertions(+)

commit bc5198fe1277d662926a4f616913c085cd4fc8ee
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 6 11:59:05 2016 +0100

    Whitespace

 src/hb-common.h | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

commit a5b7b0dd4508d8a1e7573b75c4cb8832c9e34e3f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 2 10:44:13 2016 +0200

    1.2.7

 NEWS         | 12 ++++++++++++
 configure.ac |  2 +-
 2 files changed, 13 insertions(+), 1 deletion(-)

commit 9879fc1db3cad684f412c2f3d6b49e0435697d0e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 2 10:29:12 2016 +0200

    [ot-font] Remove unused 'post' table include for now

    To make a release...

 src/hb-ot-font.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f8061ae7972462ad800c23be7cd7b3d7ab94b93b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 2 10:28:24 2016 +0200

    [tests] Fix test

 test/shaping/Makefile.am                                                |
 2 +-
 .../tests/{fallback-positioning.test => fallback-positioning.tests}
 | 0
 2 files changed, 1 insertion(+), 1 deletion(-)

commit f00ab2a33ab34ba64f38cbbe65830c770a3e071e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 2 10:24:00 2016 +0200

    [hb-ot-font] Make 'glyf' table loading lazy

    Apparently some clients have reference-table callbacks that copy
    the table.
    As such, avoid loading 'glyf' table which is only needed if fallback
    positioning
    happens.

 src/hb-ot-font.cc                                  |  45
 ++++++++++++++++++++-
 test/shaping/Makefile.am                           |   1 +
 .../7ef276fc886ea502a03b9b0e5c8b547d5dc2b61c.ttf   | Bin 0 -> 784 bytes
 test/shaping/tests/fallback-positioning.test       |   2 +
 4 files changed, 46 insertions(+), 2 deletions(-)

commit 587d46227a56940a7f5bb053cbeda6144394acf7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Apr 30 19:20:56 2016 +0200

    [ot-font] Start implementing 'post' table, for accessing glyph names

 src/Makefile.sources        |   1 +
 src/hb-open-type-private.hh |  12 ++++-
 src/hb-ot-font.cc           |   1 +
 src/hb-ot-post-table.hh     | 119
 ++++++++++++++++++++++++++++++++++++++++++++
 4 files changed, 132 insertions(+), 1 deletion(-)

commit 9abaaac409b8e3a0a9182b67dc384133013f7878
Merge: 2f560ee4 264b7a72
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 27 03:38:24 2016 -0700

    Merge commit '264b7a728a41becfbf23ce258fc2a3af19d0cbbe' into HEAD

commit 2f560ee44b7b08683e8e6955fe3b95187e8bda32
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 27 03:11:41 2016 -0700

    [tibetan] Reorder marks to better match Uniscribe

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

    Note that Uniscribe enforces a certain syllable order.  We don't.
    But with this change, I get all of the tibetan contractions pass
    with Microsoft Himalaya font.

 src/hb-unicode-private.hh | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

commit f68390f196216718c22c434e1d8921118e646824
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 27 02:44:35 2016 -0700

    [test] Add text for Tibetan shorthand contractions

    From http://www.babelstone.co.uk/Tibetan/Contractions.html

 .../script-tibetan/misc/contractions.txt           | 612
 +++++++++++++++++++++
 1 file changed, 612 insertions(+)

commit 264b7a728a41becfbf23ce258fc2a3af19d0cbbe
Merge: 7e2da035 adafdcdd
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Wed Apr 27 03:48:23 2016 +0300

    Merge pull request #247 from khaledhosny/update-opentype-language-tags

    Update opentype language tags

commit adafdcddced076da4bfa3114a00e15a387aaf1f7
Author: Arthur Reutenauer <arthur.reutenauer@normalesup.org>
Date:   Sat Nov 7 23:37:21 2015 +0000

    Mass-added “difficult” tags – to be curated.

 src/hb-ot-tag.cc | 69
 +++++++++++++++++++++++++++++---------------------------
 1 file changed, 36 insertions(+), 33 deletions(-)

commit 3d6a2c0d7d9f6c5b3097f78c1123f9e59dcc76e2
Author: Arthur Reutenauer <arthur.reutenauer@normalesup.org>
Date:   Sat Nov 7 22:59:13 2015 +0000

    Initial import of missing OpenType 1.7 language tags.

 src/hb-ot-tag.cc | 67
 +++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 file changed, 61 insertions(+), 6 deletions(-)

commit 7e2da035f68e46ce8f4759b67b4ed3a1b211d793
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 26 16:42:25 2016 -0700

    Undo accidental change

 src/hb-ot-shape-complex-arabic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b20305022a8235b19e6b640bc62651854e1336f1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 26 16:41:17 2016 -0700

    Do NOT ignore Mongolian Free Variation Selectors during matching

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

 src/hb-ot-layout-gsubgpos-private.hh               |   2 +-
 src/hb-ot-layout-private.hh                        |  23
 +++++++++++++++++++--
 src/hb-ot-shape-complex-arabic.cc                  |   2 +-
 .../a34a7b00f22ffb5fd7eef6933b81c7e71bc2cdfb.ttf   | Bin 0 -> 3700 bytes
 .../tests/mongolian-variation-selector.tests       |   1 +
 5 files changed, 24 insertions(+), 4 deletions(-)

commit 21ab5501f5f5267d20cf23256866dd9d82a667ef
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 26 16:02:04 2016 -0700

    Move ZWJ/ZWNJ bits to top byte of unicode_props()

    To make room to remember Mongolian Free Variation Selectors.
    Part of fixing https://github.com/behdad/harfbuzz/issues/234

 src/hb-ot-layout-private.hh | 40 ++++++++++++++++++++++------------------
 1 file changed, 22 insertions(+), 18 deletions(-)

commit de508516cb06ddb064d75bd7be8e843a5ebcf70d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 26 11:28:37 2016 -0700

    [util] Print out --debug buffer to stderr

 util/main-font-text.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 29393884b9f045460fb65d6ad10a94461ba93430
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 26 10:35:23 2016 -0700

    Annotate blacklisted fonts with their sha1sum

 src/hb-ot-layout.cc | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

commit 14bb4a56971fd45063cd6c1288d911627088abb2
Merge: 1c625dff 5069062d
Author: Sascha Brawer <sascha@brawer.ch>
Date:   Tue Apr 26 11:38:16 2016 +0200

    Merge pull request #245 from KonstantinRitt/fixes/ce

    Unbreak build on Windows CE

commit 5069062d0a9342bb716eebf3ddc1efad91924caa
Author: Konstantin Ritt <ritt.ks@gmail.com>
Date:   Tue Apr 26 12:02:26 2016 +0400

    Unbreak build on Windows CE

    0475ef2f97e3035a2eea9a0f96031331e07e8e29 broke the build by using
    vsnprintf(), which is not defined on Windows CE

 src/hb-private.hh | 1 +
 1 file changed, 1 insertion(+)

commit 1c625dff2269c54ff429ca45be88893ff1fa6c34
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Apr 9 12:53:23 2016 -0700

    Minor

 src/hb-ot-layout.cc | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 851b0db36d1b724fc1e0db506445119c78186285
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 8 23:46:55 2016 -0700

    Minor.  We should never get to this branch, but fix it anyway.

 src/hb-ot-layout-common-private.hh | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit 00ea66f35754a1e6e4d3b7b139d611a9a623a9d1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 8 13:51:01 2016 -0700

    1.2.6

 NEWS         | 10 ++++++++++
 configure.ac |  2 +-
 2 files changed, 11 insertions(+), 1 deletion(-)

commit 4f3d59a1877dcb94d09da48e9694a6c1b05a86fe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 8 13:41:20 2016 -0700

    Blacklist another set of timesi.ttf and timesbi.ttf

 src/hb-ot-layout.cc | 2 ++
 1 file changed, 2 insertions(+)

commit ef476be80d773332e0c768a3465d99381d76edd9
Merge: a0331b55 d3134a66
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 8 13:16:33 2016 -0700

    Merge pull request #239 from ebraminio/dwfix

    Improve DirectWrite backend

commit d3134a66ad551ded726db9528d3c25459088f105
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue Apr 5 21:01:05 2016 +0000

    Fix when no feature is given

 src/hb-directwrite.cc | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

commit a0331b55f7b45437980e1fc323251f4091bf2c4e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 4 16:25:32 2016 -0700

    1.2.5

 NEWS         | 7 +++++++
 configure.ac | 2 +-
 2 files changed, 8 insertions(+), 1 deletion(-)

commit 6e55199b5f097ac93bad38f32e9813e2da14c5a7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 4 16:24:27 2016 -0700

    Add test for 6dd80faf0dcb3e8a8915c3a25da44e2a67cb0cd8

 test/shaping/Makefile.am                                |   1 +
 .../f22416c692720a7d46fadf4af99f4c9e094f00b9.ttf        | Bin 0 ->
 16736 bytes
 test/shaping/tests/mark-filtering-sets.tests            |   5 +++++
 3 files changed, 6 insertions(+)

commit 59089622dbb8dda783b1639c932123f125c3592d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 4 14:54:32 2016 -0700

    [coretext] Clarify comment

 src/hb-coretext.cc | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

commit 6dd80faf0dcb3e8a8915c3a25da44e2a67cb0cd8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 4 14:34:25 2016 -0700

    Fix FixedVersion::to_int()

    Ouch.  Had broken it in 9a13ed453ef96822a47d6e6f58332b87f38d5c59

    Fixes https://github.com/behdad/harfbuzz/issues/238
    Will add test soon.

 src/hb-open-type-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 4a104021697439fd21390a1f4cdc9310348882fa
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat Apr 2 13:47:59 2016 +0000

    Hide justification behind HB_DIRECTWRITE_EXPERIMENTAL_JUSTIFICATION

 src/hb-directwrite.cc | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 63ee9ca5d81b53eb035972754ed95572821c393c
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Apr 1 15:47:07 2016 +0000

    Use standard types instead Windows favourites ones

 src/hb-directwrite.cc | 100
 +++++++++++++++++++++++++-------------------------
 1 file changed, 50 insertions(+), 50 deletions(-)

commit adf20ba0d18d1506e633dcd9b4827a6c93abcadd
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Apr 1 15:36:40 2016 +0000

    Limit GetJustifiedGlyphs only to scripts with custom justification
    character

 src/hb-directwrite.cc | 98
 +++++++++++++++++++++++++++++++--------------------
 1 file changed, 60 insertions(+), 38 deletions(-)

commit 32ae9d1b3ffbe7e26e654437a56a26a95fe9f5a6
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Apr 1 06:39:57 2016 +0000

    Add justification support

 src/hb-directwrite.cc | 321
 ++++++++++++++++++++++++++++++++------------------
 1 file changed, 205 insertions(+), 116 deletions(-)

commit 10c3d9e41520595c88dd2a8321590e03ce8fcf47
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Mar 31 18:19:44 2016 +0000

    Basic opentype features support

 src/hb-directwrite.cc | 62
 ++++++++++++++++++++++++++++++++++-----------------
 1 file changed, 42 insertions(+), 20 deletions(-)

commit d129897120d3ad414220d603557c15a60aa69fa6
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Mar 31 13:45:37 2016 +0000

    Refactor and remove dupe getglyphs call

 src/hb-directwrite.cc | 106
 ++++++++++++++++++++++++--------------------------
 1 file changed, 51 insertions(+), 55 deletions(-)

commit 5f1a8961008b93f72acc47336109af3a64e248d0
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu Mar 31 12:26:16 2016 +0000

    Better glyph offset support

 src/hb-directwrite.cc | 44 ++++++++++++++++++++++++--------------------
 1 file changed, 24 insertions(+), 20 deletions(-)

commit d691ba3f405738c6857450752b8cc0911dfcdb01
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Mar 30 20:21:40 2016 +0000

    Don't fail when language is not set

 src/hb-directwrite.cc | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

commit 1c00a46c7a608ebc0b03c5abfcfe7f2b9881d0df
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed Mar 30 20:15:09 2016 +0000

    Make DirectWrite backend to work with different font sizes

    Actually copyedited same logic from Uniscribe to make it just work

 src/hb-directwrite.cc | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

commit 0251b0cc5c39272d2299d4b2ab802faaafe96837
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Mar 17 14:37:11 2016 -0700

    1.2.4

 NEWS         | 15 +++++++++++++++
 configure.ac |  2 +-
 2 files changed, 16 insertions(+), 1 deletion(-)

commit 69f9fbc4200442a35484d3c790ae8f4979be5d60
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Mar 17 11:59:43 2016 -0700

    Synthesize GDEF glyph class for any glyph that does not have one
    in GDEF

    Previously we only synthesized GDEF glyph classes if the glyphClassDef
    array in GDEF was null.  This worked well enough, and is indeed what
    OpenType requires: "If the font does not include a GlyphClassDef
    table,
    the client must define and maintain this information when using the
    GSUB and GPOS tables."  That sentence does not quite make sense since
    one needs Unicode properties as well, but is close enough.

    However, looks like Arial Unicode as shipped on WinXP, does have GDEF
    glyph class array, but defines no classes for Hebrew.  This results
    in Hebrew marks not getting their widths zeroed.  So, with this
    change,
    we synthesize glyph class for any glyph that is not specified in the
    GDEF glyph class table.  Since, from our point of view, a glyph not
    being listed in that table is a font bug, any unwanted consequence of
    this change is a font bug :).

    Note that we still don't get the same rendering as Uniscribe, since
    Uniscribe seems to do fallback positioning as well, even though the
    font does have a GPOS table (which does NOT cover Hebrew!).  We are
    not going to try to match that though.

    Test string for Arial Unicode:

            U+05E9,U+05B8,U+05C1,U+05DC

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

    Note that our new output matches what we were generating until July
    2014, because the Hebrew shaper used to zero mark advances based on
    Unicode, NOT GDEF.  That's 9e834e29e0b657f0555df1ab9cea79ff7abcf08d.

    Reported by Greg Douglas.

 src/hb-ot-layout-gsub-table.hh | 22 ++++++++++++++++++++--
 src/hb-ot-shape.cc             | 29 -----------------------------
 2 files changed, 20 insertions(+), 31 deletions(-)

commit fef5dd9a72f326c160a7194f558749d24bac7283
Merge: 01ea9eaa 5f995db1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Mar 12 19:15:15 2016 -0800

    Merge pull request #232 from c0nk/wip-icu

    Add --with-icu=builtin option; fix compile error

commit 01ea9eaac373d9f3de6e56c1ca26cdcd259ecc8e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Mar 11 18:50:02 2016 -0800

    [build] Use tar-ustar instead of tar-pax

    The default tar-v7 is not good enough for us (99 char filename
    limit), so I have had bumped to tar-pax.  We got one complaint
    that someone's tar couldn't handle tar-pax.  Set to tar-ustar
    which is ~13 years earlier than tar-pax and is good enough for us.

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 3e10460a1dd41de32752e308771aa30d23565cc0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Mar 11 18:45:19 2016 -0800

    Minor comment

 src/hb-unicode-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit d14fea4bdcc1423fe9a585af3abdefa9605d17e6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Mar 8 12:16:41 2016 -0800

    Remove default clause in minor switch statements

    Bending to clang warnings...
    https://bugs.chromium.org/p/chromium/issues/detail?id=593057

 src/hb-ot-shape-complex-indic.cc | 4 ----
 src/hb-ot-shape-complex-thai.cc  | 1 -
 2 files changed, 5 deletions(-)

commit ce8ae9970102f83b67bb1e8e8b2bf894a0e26c07
Merge: 731a430c 71248a84
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Mar 4 17:20:35 2016 -0800

    Merge pull request #231 from KonstantinRitt/post123buildfix

    Fix build with HB_DISABLE_DEPRECATED

commit 731a430cd36caabcef04e099b21ebc6daedd536f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 2 13:32:42 2016 -0800

    Fix requiredFeature stage handling logic

    Originally the way Jonathan had written this was correct in
    "continue"ing:

    https://github.com/jfkthame/harfbuzz/commit/35e28c7a733eaffcd9f062b18d7db9fbb3d990fc#diff-ead86a33a5cc9ad7f6e6381031a0baddR199

    When I rewrote his patch, I messed it up:

    https://github.com/behdad/harfbuzz/commit/da132937989acb4d8ca9bd41c79f98750e7dda30#diff-ead86a33a5cc9ad7f6e6381031a0baddR209

    the intended behavior was NOT to set found=TRUE and NOT to continue.
    This was resulting in feature_index[table_index] being left unset.
    Oops!

 src/hb-ot-map.cc | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

commit 68b6296d3333fd38bd5442d2ba087ced481603bc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Mar 1 16:41:53 2016 +0900

    Add F2DOT14 type

 src/hb-open-type-private.hh | 9 +++++++++
 1 file changed, 9 insertions(+)

commit 082b79fe9f06607998178dcdcbe817af28b017de
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Mar 1 16:41:26 2016 +0900

    Use FWORD and UFWORD when it makes sense

    I had forgotten about those types.

 src/hb-ot-glyf-table.hh | 8 ++++----
 src/hb-ot-hmtx-table.hh | 6 +++---
 2 files changed, 7 insertions(+), 7 deletions(-)

commit 5f995db10381172ec63fd7ffbb0acf2c6b3dae5e
Author: Kal Conley <kcconley@gmail.com>
Date:   Fri Feb 26 00:36:17 2016 +0100

    Fix missing ICU #include

    Fix compile error in hb-icu.cc when ICU configured with
    U_NO_DEFAULT_INCLUDE_UTF_HEADERS=1

 src/hb-icu.cc | 1 +
 1 file changed, 1 insertion(+)

commit b424b6c372dfe4c0ed75a49761eb34a416819446
Author: Kal Conley <kcconley@gmail.com>
Date:   Fri Feb 26 00:35:15 2016 +0100

    Add --with-icu=builtin configure option

 configure.ac    | 33 +++++++++++++++++++--------------
 src/Makefile.am |  7 +++++++
 2 files changed, 26 insertions(+), 14 deletions(-)

commit 71248a843f976c86022eb5bb8c6e8880b2499937
Author: Konstantin Ritt <ritt.ks@gmail.com>
Date:   Thu Feb 25 18:55:28 2016 +0400

    Fix build with HB_DISABLE_DEPRECATED

    When HB_DISABLE_DEPRECATED is defined, no code from hb-deprecated.h
    should be used, even from within HB itself.

 src/hb-font.cc | 4 ++++
 1 file changed, 4 insertions(+)

commit 0c7fb7419c20d04b803412945565562c32b42929
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 25 14:40:09 2016 +0900

    Speed up buffer variable allocation sanity check

    This makes defining HB_NDEBUG much less relevant, to the
    point of irrelevance.  Sorry about all the fuss in previous
    release!

 src/hb-buffer-private.hh | 67
 ++++++++++++++++++++++++++++-----------------
 src/hb-buffer.cc         | 70
 ------------------------------------------------
 2 files changed, 43 insertions(+), 94 deletions(-)

commit 91dd11565221bdb108c138662ea013aac14bb968
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 25 13:56:47 2016 +0900

    Add HB_NDEBUG

    API changes:
    - If NDEBUG is defined, define HB_NDEBUG
    - Disable costlier sanity checks if HB_NDEBUG is defined.

    In 1.2.3 introduced some code to disable costly sanity checks if
    NDEBUG is defined.  NDEBUG, however, disables all assert()s as
    well.  With HB_NDEBUG, one can disable costlier checks but keep
    assert()s.

    I'll probably add a way to define HB_NDEBUG automatically in
    release tarballs.  But for now, production systems that do NOT
    define NDEBUG, are encouraged to define HB_NDEBUG for our build.

 src/Makefile.am          | 2 +-
 src/hb-buffer-private.hh | 4 ++--
 src/hb-buffer.cc         | 4 ++--
 src/hb-private.hh        | 9 +++++++++
 4 files changed, 14 insertions(+), 5 deletions(-)

commit 75568b0a7f811ea18e23037735ec8541a7431f88
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 25 12:26:26 2016 +0900

    1.2.3

 NEWS         | 42 ++++++++++++++++++++++++++++++++++++++++++
 configure.ac |  2 +-
 2 files changed, 43 insertions(+), 1 deletion(-)

commit 988165021f8d48dc7120b071d056491256569f4f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 25 12:23:02 2016 +0900

    Disable internal buffer variable bookkeeping in NDEBUG builds

    Saves some sweet time and binary size!

 src/Makefile.am          |  1 +
 src/hb-buffer-private.hh | 30 ++++++++++++++++++++----------
 src/hb-buffer.cc         |  6 ++++--
 3 files changed, 25 insertions(+), 12 deletions(-)

commit 94dd0bb7e78125994cb7c833a5b03110f1ffc822
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 25 11:31:03 2016 +0900

    Add blacklist signature for Times New Roman (Bold) Italic on OS X

 src/hb-ot-layout.cc | 2 ++
 1 file changed, 2 insertions(+)

commit dd8598c1c7f29fc92253b0cd4e856c1941b1d0c0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 25 11:20:05 2016 +0900

    [test] Pass closure to hb_font_set_glyph_func()

    Exercises fix in c335fd7986fe360ab8e1c032c9b988d0d30511eb

 test/api/test-shape.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e23cf902e91142a10229e3514be4ceee69efde04
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 25 11:11:15 2016 +0900

    Blacklist GDEF table of timesi.ttf and timesbi.ttf on Win 7

    See discussion:
    https://lists.freedesktop.org/archives/harfbuzz/2016-February/005489.html

 src/hb-ot-layout.cc | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

commit c335fd7986fe360ab8e1c032c9b988d0d30511eb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 25 09:16:05 2016 +0900

    In trampoline implementation of get_glyph(), don't destroy user
    data twice!

 src/hb-font.cc | 41 +++++++++++++++++++++++++++--------------
 1 file changed, 27 insertions(+), 14 deletions(-)

commit 23335deaad9d4d9824ff41343264514d3f9f7e37
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 24 20:27:13 2016 +0900

    [ot-font] Accelerate cmap format4 get_glyph

 src/hb-ot-cmap-table.hh | 111
 ++++++++++++++++++++++++++++--------------------
 src/hb-ot-font.cc       |  14 +++++-
 2 files changed, 77 insertions(+), 48 deletions(-)

commit e0f16a715bc3e621ff21a8be88102e9672630574
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 24 19:52:36 2016 +0900

    [ot-font] Towards accelerating get_glyph()

 src/hb-ot-font.cc | 23 ++++++++++++++++++++---
 1 file changed, 20 insertions(+), 3 deletions(-)

commit 5473ebfb84c7b6059ac16e04676b363acc51aa00
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 24 19:32:43 2016 +0900

    [ot-font] Remove level of indirection in get_glyph_variant

 src/hb-ot-cmap-table.hh | 14 ++------------
 src/hb-ot-font.cc       | 13 +++++++++----
 2 files changed, 11 insertions(+), 16 deletions(-)

commit 49fe6ecf19522413e79a11a29aa0ffc5bdfcd2f8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 24 19:10:06 2016 +0900

    [TODO] Update

    This file is rather obsolete.  Still, give it a refresh.

 TODO | 16 ++--------------
 1 file changed, 2 insertions(+), 14 deletions(-)

commit 8b5bc141cd3a6bfcea3c91a882a630426876ceb3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 24 19:05:23 2016 +0900

    Add get_nominal_glyph() and get_variation_glyph() instead of
    get_glyph()

    New API:
    - hb_font_get_nominal_glyph_func_t
    - hb_font_get_variation_glyph_func_t
    - hb_font_funcs_set_nominal_glyph_func()
    - hb_font_funcs_set_variation_glyph_func()
    - hb_font_get_nominal_glyph()
    - hb_font_get_variation_glyph()

    Deprecated API:
    - hb_font_get_glyph_func_t
    - hb_font_funcs_set_glyph_func()

    Clients that implement their own font-funcs are encouraged to replace
    their get_glyph() implementation with a get_nominal_glyph() and
    get_variation_glyph() pair.  The variation version can assume that
    variation_selector argument is not zero.

 src/hb-deprecated.h                |  10 ++
 src/hb-fallback-shape.cc           |   4 +-
 src/hb-font-private.hh             |  26 +++--
 src/hb-font.cc                     | 203
 ++++++++++++++++++++++++++++++++++---
 src/hb-font.h                      |  55 +++++++---
 src/hb-ft.cc                       |  38 ++++---
 src/hb-ot-font.cc                  |  57 +++++++----
 src/hb-ot-shape-complex-indic.cc   |   8 +-
 src/hb-ot-shape-complex-myanmar.cc |   2 +-
 src/hb-ot-shape-complex-use.cc     |   2 +-
 src/hb-ot-shape-fallback.cc        |   6 +-
 src/hb-ot-shape-normalize.cc       |  18 ++--
 src/hb-ot-shape.cc                 |   6 +-
 13 files changed, 344 insertions(+), 91 deletions(-)

commit b30a971bf792b9c683c345e1be25c5a5869a113c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 24 17:32:22 2016 +0900

    1.2.2

 NEWS         | 14 +++++++++++++-
 configure.ac |  2 +-
 2 files changed, 14 insertions(+), 2 deletions(-)

commit af48e3d27c01c538f46f1dc376d994a0c24a8170
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 24 16:06:40 2016 +0900

    Fix recent test

    Not sure why the FT functions were returning advance 1024.  This
    caused failure on drone.io.  Switch to hb-ot-font and disable
    glyph names.

 test/shaping/tests/cursive-positioning.tests | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 17c831701756bb46300c412fd64b19d67f299c18
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 24 16:06:23 2016 +0900

    [tests] Fix for multiple options in test runner scripts

 test/shaping/run-tests.sh | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit ebd7431f824c718db6ce5b85e94f2b3911127af4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 24 15:53:40 2016 +0900

    Partially revert 86c68c7a2c971efe8e35b1f1bd99401dc8b688d2

    That commit moved the advance adjustment for mark positioning to
    be applied immediately, instead of doing late before.  This breaks
    if mark advances are zeroed late, like in Arabic.  Also, easier to
    hit it in RTL scripts since a single mark with non-zero advance is
    enough to hit the bug, whereas in LTR, at least two marks are needed.

    This reopens https://github.com/behdad/harfbuzz/issues/211
    The cursive+mark interaction is broken again.  To be fixed in a
    different way.

 src/hb-ot-layout-gpos-table.hh               | 28
 ++++++++++++----------------
 test/shaping/tests/cursive-positioning.tests |  2 +-
 2 files changed, 13 insertions(+), 17 deletions(-)

commit 284481b3120963353f5f34ed094f07ffc13480ef
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 24 15:52:37 2016 +0900

    Add test for mark positioning in rtl with non-zero mark advance

    Apparently I broke this 86c68c7a2c971efe8e35b1f1bd99401dc8b688d2.
    Fix coming.

 .../sha1sum/07f054357ff8638bac3711b422a1e31180bba863.ttf  | Bin 0 ->
 848 bytes
 test/shaping/tests/cursive-positioning.tests              |   1 +
 2 files changed, 1 insertion(+)

commit 56a84e8dd18c63782b8db3a86e94651dae5bb01b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 24 15:50:33 2016 +0900

    [tests] Allow commenting out tests to be skipped

 test/shaping/run-tests.sh | 4 ++++
 1 file changed, 4 insertions(+)

commit 7cfd6cc486f2751d7f78c5008a636d677af4e12f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 24 12:30:57 2016 +0900

    [Android.mk] Update with warning flags

 Android.mk | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit dabf32a5ad706726412ba5c64e1ea614a707b928
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 23 15:38:43 2016 +0900

    1.2.1

 NEWS         | 13 +++++++++++++
 configure.ac |  2 +-
 2 files changed, 14 insertions(+), 1 deletion(-)

commit 525cc7d28cbe4e8149ddba677224f134dc0a3274
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 23 15:19:27 2016 +0900

    Add note re only adding tests with Free Software fonts

 test/shaping/README.md | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 6a09d7e34b949f9929f616ee53278b2edfd9b7ea
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 23 13:47:16 2016 +0900

    [test] Add README about how to add shaping tests

 test/shaping/Makefile.am |  1 +
 test/shaping/README.md   | 37 +++++++++++++++++++++++++++++++++++++
 2 files changed, 38 insertions(+)

commit f8ee7906d0454d950081c621f2b04a6d08e1b92f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 23 13:45:38 2016 +0900

    Remove MANIFEST files

    They are unused currently.  We can add later if we hook them up
    to anything useful.

 test/shaping/fonts/sha1sum/MANIFEST                | 52
 ----------------------
 test/shaping/tests/MANIFEST                        | 19 --------
 test/shaping/texts/MANIFEST                        |  1 -
 test/shaping/texts/in-tree/MANIFEST                |  9 ----
 test/shaping/texts/in-tree/shaper-arabic/MANIFEST  |  6 ---
 .../in-tree/shaper-arabic/script-arabic/MANIFEST   |  3 --
 .../script-arabic/language-persian/MANIFEST        |  1 -
 .../script-arabic/language-urdu/MANIFEST           |  1 -
 .../script-arabic/language-urdu/crulp/MANIFEST     |  1 -
 .../language-urdu/crulp/ligatures/MANIFEST         |  7 ---
 .../shaper-arabic/script-arabic/misc/MANIFEST      |  1 -
 .../script-arabic/misc/diacritics/MANIFEST         |  7 ---
 .../in-tree/shaper-arabic/script-mandaic/MANIFEST  |  1 -
 .../shaper-arabic/script-mandaic/misc/MANIFEST     |  0
 .../shaper-arabic/script-mongolian/MANIFEST        |  1 -
 .../shaper-arabic/script-mongolian/misc/MANIFEST   |  4 --
 .../in-tree/shaper-arabic/script-nko/MANIFEST      |  1 -
 .../in-tree/shaper-arabic/script-nko/misc/MANIFEST |  1 -
 .../in-tree/shaper-arabic/script-phags-pa/MANIFEST |  1 -
 .../shaper-arabic/script-phags-pa/misc/MANIFEST    |  1 -
 .../in-tree/shaper-arabic/script-syriac/MANIFEST   |  1 -
 .../shaper-arabic/script-syriac/misc/MANIFEST      |  2 -
 test/shaping/texts/in-tree/shaper-default/MANIFEST |  5 ---
 .../shaper-default/script-ethiopic/MANIFEST        |  1 -
 .../shaper-default/script-ethiopic/misc/MANIFEST   |  1 -
 .../in-tree/shaper-default/script-han/MANIFEST     |  1 -
 .../shaper-default/script-han/misc/MANIFEST        |  1 -
 .../shaper-default/script-hiragana/MANIFEST        |  1 -
 .../shaper-default/script-hiragana/misc/MANIFEST   |  2 -
 .../shaper-default/script-linear-b/MANIFEST        |  1 -
 .../shaper-default/script-linear-b/misc/MANIFEST   |  1 -
 .../shaper-default/script-tifinagh/MANIFEST        |  1 -
 .../shaper-default/script-tifinagh/misc/MANIFEST   |  1 -
 test/shaping/texts/in-tree/shaper-hangul/MANIFEST  |  1 -
 .../in-tree/shaper-hangul/script-hangul/MANIFEST   |  1 -
 .../shaper-hangul/script-hangul/misc/MANIFEST      |  1 -
 test/shaping/texts/in-tree/shaper-hebrew/MANIFEST  |  1 -
 .../in-tree/shaper-hebrew/script-hebrew/MANIFEST   |  1 -
 .../shaper-hebrew/script-hebrew/misc/MANIFEST      |  1 -
 test/shaping/texts/in-tree/shaper-indic/MANIFEST   |  2 -
 .../texts/in-tree/shaper-indic/indic/MANIFEST      | 11 -----
 .../shaper-indic/indic/script-assamese/MANIFEST    |  2 -
 .../indic/script-assamese/misc/MANIFEST            |  0
 .../indic/script-assamese/utrrs/MANIFEST           |  3 --
 .../indic/script-assamese/utrrs/codepoint/MANIFEST |  7 ---
 .../indic/script-assamese/utrrs/gpos/MANIFEST      |  2 -
 .../indic/script-assamese/utrrs/gsub/MANIFEST      |  1 -
 .../shaper-indic/indic/script-bengali/MANIFEST     |  2 -
 .../indic/script-bengali/misc/MANIFEST             |  2 -
 .../indic/script-bengali/utrrs/MANIFEST            |  3 --
 .../indic/script-bengali/utrrs/codepoint/MANIFEST  |  7 ---
 .../indic/script-bengali/utrrs/gpos/MANIFEST       |  2 -
 .../indic/script-bengali/utrrs/gsub/MANIFEST       |  1 -
 .../shaper-indic/indic/script-devanagari/MANIFEST  |  2 -
 .../indic/script-devanagari/misc/MANIFEST          |  6 ---
 .../indic/script-devanagari/utrrs/MANIFEST         |  3 --
 .../script-devanagari/utrrs/codepoint/MANIFEST     |  9 ----
 .../indic/script-devanagari/utrrs/gpos/MANIFEST    |  2 -
 .../indic/script-devanagari/utrrs/gsub/MANIFEST    |  1 -
 .../shaper-indic/indic/script-gujarati/MANIFEST    |  2 -
 .../indic/script-gujarati/misc/MANIFEST            |  0
 .../indic/script-gujarati/utrrs/MANIFEST           |  3 --
 .../indic/script-gujarati/utrrs/codepoint/MANIFEST |  7 ---
 .../indic/script-gujarati/utrrs/gpos/MANIFEST      |  2 -
 .../indic/script-gujarati/utrrs/gsub/MANIFEST      |  1 -
 .../shaper-indic/indic/script-gurmukhi/MANIFEST    |  2 -
 .../indic/script-gurmukhi/misc/MANIFEST            |  1 -
 .../indic/script-gurmukhi/utrrs/MANIFEST           |  3 --
 .../indic/script-gurmukhi/utrrs/codepoint/MANIFEST |  7 ---
 .../indic/script-gurmukhi/utrrs/gpos/MANIFEST      |  2 -
 .../indic/script-gurmukhi/utrrs/gsub/MANIFEST      |  1 -
 .../shaper-indic/indic/script-kannada/MANIFEST     |  2 -
 .../indic/script-kannada/misc/MANIFEST             |  2 -
 .../indic/script-kannada/utrrs/MANIFEST            |  3 --
 .../indic/script-kannada/utrrs/codepoint/MANIFEST  |  8 ----
 .../indic/script-kannada/utrrs/gpos/MANIFEST       |  1 -
 .../indic/script-kannada/utrrs/gsub/MANIFEST       |  1 -
 .../shaper-indic/indic/script-malayalam/MANIFEST   |  2 -
 .../indic/script-malayalam/misc/MANIFEST           |  3 --
 .../indic/script-malayalam/utrrs/MANIFEST          |  2 -
 .../script-malayalam/utrrs/codepoint/MANIFEST      |  7 ---
 .../indic/script-malayalam/utrrs/gsub/MANIFEST     |  1 -
 .../shaper-indic/indic/script-oriya/MANIFEST       |  2 -
 .../shaper-indic/indic/script-oriya/misc/MANIFEST  |  2 -
 .../shaper-indic/indic/script-oriya/utrrs/MANIFEST |  2 -
 .../indic/script-oriya/utrrs/codepoint/MANIFEST    |  9 ----
 .../indic/script-oriya/utrrs/gsub/MANIFEST         |  1 -
 .../shaper-indic/indic/script-sinhala/MANIFEST     |  2 -
 .../indic/script-sinhala/misc/MANIFEST             |  4 --
 .../indic/script-sinhala/utrrs/MANIFEST            |  3 --
 .../indic/script-sinhala/utrrs/codepoint/MANIFEST  |  5 ---
 .../indic/script-sinhala/utrrs/gpos/MANIFEST       |  1 -
 .../indic/script-sinhala/utrrs/gsub/MANIFEST       |  7 ---
 .../shaper-indic/indic/script-tamil/MANIFEST       |  2 -
 .../shaper-indic/indic/script-tamil/misc/MANIFEST  |  1 -
 .../shaper-indic/indic/script-tamil/utrrs/MANIFEST |  3 --
 .../indic/script-tamil/utrrs/codepoint/MANIFEST    | 10 -----
 .../indic/script-tamil/utrrs/gpos/MANIFEST         |  2 -
 .../indic/script-tamil/utrrs/gsub/MANIFEST         |  1 -
 .../shaper-indic/indic/script-telugu/MANIFEST      |  2 -
 .../shaper-indic/indic/script-telugu/misc/MANIFEST |  1 -
 .../indic/script-telugu/utrrs/MANIFEST             |  3 --
 .../indic/script-telugu/utrrs/codepoint/MANIFEST   |  7 ---
 .../indic/script-telugu/utrrs/gpos/MANIFEST        |  1 -
 .../indic/script-telugu/utrrs/gsub/MANIFEST        |  1 -
 .../in-tree/shaper-indic/south-east-asian/MANIFEST |  1 -
 .../south-east-asian/script-khmer/MANIFEST         |  1 -
 .../south-east-asian/script-khmer/misc/MANIFEST    |  3 --
 test/shaping/texts/in-tree/shaper-myanmar/MANIFEST |  1 -
 .../in-tree/shaper-myanmar/script-myanmar/MANIFEST |  1 -
 .../shaper-myanmar/script-myanmar/misc/MANIFEST    |  3 --
 test/shaping/texts/in-tree/shaper-thai/MANIFEST    |  2 -
 .../texts/in-tree/shaper-thai/script-lao/MANIFEST  |  1 -
 .../in-tree/shaper-thai/script-lao/misc/MANIFEST   |  1 -
 .../texts/in-tree/shaper-thai/script-thai/MANIFEST |  1 -
 .../in-tree/shaper-thai/script-thai/misc/MANIFEST  |  4 --
 test/shaping/texts/in-tree/shaper-tibetan/MANIFEST |  1 -
 .../in-tree/shaper-tibetan/script-tibetan/MANIFEST |  1 -
 .../shaper-tibetan/script-tibetan/misc/MANIFEST    |  1 -
 test/shaping/texts/in-tree/shaper-use/MANIFEST     |  6 ---
 .../texts/in-tree/shaper-use/script-batak/MANIFEST |  1 -
 .../in-tree/shaper-use/script-buginese/MANIFEST    |  1 -
 .../texts/in-tree/shaper-use/script-cham/MANIFEST  |  1 -
 .../in-tree/shaper-use/script-kaithi/MANIFEST      |  1 -
 .../in-tree/shaper-use/script-kharoshti/MANIFEST   |  1 -
 .../in-tree/shaper-use/script-tai-tham/MANIFEST    |  2 -
 126 files changed, 381 deletions(-)

commit 815bdd7700155efcffa9a4c3ca5bfc31833d0586
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 22 18:22:44 2016 +0900

    In cluster-level=0, group ZWJ/ZWNJ with previous cluster

    This better emulates Unicode grapheme clusters.

    Note that Uniscribe does NOT do this, but should be harmless with
    most clients,
    and improve fallback with clients that use HarfBuzz cluster as unit
    of fallback.

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

 src/hb-ot-layout-private.hh                           | 6 ++++++
 src/hb-ot-shape.cc                                    | 3 ++-
 test/shaping/tests/indic-joiner-candrabindu.tests     | 2 +-
 test/shaping/tests/mongolian-variation-selector.tests | 2 +-
 4 files changed, 10 insertions(+), 3 deletions(-)

commit 89137e325a19d62fb00979e1e8ab2ca59a2c1147
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 22 16:00:59 2016 +0900

    Minor

 src/hb-coretext.cc | 2 +-
 src/hb-ot-shape.cc | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 15063b12f7619d4f44981248e28f38c172d12e1f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 22 15:56:29 2016 +0900

    [coretext] Move CTFont construction to face_data

 src/hb-coretext.cc | 66
 +++++++++++++++++++++++++-----------------------------
 1 file changed, 30 insertions(+), 36 deletions(-)

commit ba3d49d9a56932d341bf1916a30f322be665e3a6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 22 15:50:12 2016 +0900

    [coretext] Move code around

 src/hb-coretext.cc | 70
 +++++++++++++++++++++++++++++++-----------------------
 1 file changed, 40 insertions(+), 30 deletions(-)

commit 90194efb8480d58c55b7a19962624c7aadbdca63
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 22 15:42:53 2016 +0900

    [coretext] Move code around

 src/hb-coretext.cc | 46 ++++++++++++++++++++++++++--------------------
 1 file changed, 26 insertions(+), 20 deletions(-)

commit ca539e37a4b71e585a267a288db1a3975cbb99fc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 22 15:37:18 2016 +0900

    [build] git.mk fix for m4/gtk-doc.m4

 Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit 54788cb1ecc5a5ffd63d07cd1f0b07b2afa9a8ca
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 22 15:32:52 2016 +0900

    [win32] Install git.mk

 win32/Makefile.am | 2 ++
 1 file changed, 2 insertions(+)

commit 9a13ed453ef96822a47d6e6f58332b87f38d5c59
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 22 11:44:45 2016 +0900

    Make FixedVersion a template

 src/hb-open-file-private.hh          | 4 ++--
 src/hb-open-type-private.hh          | 9 +++++----
 src/hb-ot-head-table.hh              | 4 ++--
 src/hb-ot-hhea-table.hh              | 2 +-
 src/hb-ot-layout-gdef-table.hh       | 2 +-
 src/hb-ot-layout-gsubgpos-private.hh | 2 +-
 src/hb-ot-layout-jstf-table.hh       | 2 +-
 src/hb-ot-maxp-table.hh              | 2 +-
 8 files changed, 14 insertions(+), 13 deletions(-)

commit 238b943e850ea1ab0093e12c74d2cd7c686f318e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 22 15:31:22 2016 +0900

    [coretext] Fix leak!

 src/hb-coretext.cc | 1 +
 1 file changed, 1 insertion(+)

commit e561122856a50ed405d71cb1629317e7ae63f316
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 22 15:28:37 2016 +0900

    [coretext] Move code around

 src/hb-coretext.cc | 109
 ++++++++++++++++++++++++++++++-----------------------
 1 file changed, 62 insertions(+), 47 deletions(-)

commit 04c64431530a4a6d9ebd33674c4665a8e6d25bdd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 22 15:12:27 2016 +0900

    [coretext] Ignore PPEM in font size selection

 src/hb-coretext.cc | 14 ++++----------
 1 file changed, 4 insertions(+), 10 deletions(-)

commit 62c2711121fe78f373c15c0f53090b62b52d11c1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 22 15:07:20 2016 +0900

    [coretext] Limit grapheme-cluster forming to cluster-level=0

 src/hb-coretext.cc | 1 +
 src/hb-ot-shape.cc | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

commit 061105ec443eb7350ffe217305f9d8902c179e2f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 22 14:59:39 2016 +0900

    [coretext] Fix shaping with varying font size

    Fixes https://github.com/libass/libass/issues/212

 src/hb-coretext.cc | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 27847cab1264b4ce8342603f4626b4e0645979e4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 19 15:56:50 2016 +0700

    1.2.0

 NEWS         | 20 ++++++++++++++++++++
 configure.ac |  2 +-
 2 files changed, 21 insertions(+), 1 deletion(-)

commit c3731559042e1730e85d19574321ad850010f7de
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 19 15:13:07 2016 +0700

    [fuzzing] Add test for recent fix

    Test from https://github.com/behdad/harfbuzz/issues/223

    I forgot that we do run hb-fuzzer on tests in
    shaping/tests/fuzzed.tests.

 .../sha1sum/205edd09bd3d141cc9580f650109556cc28b22cb.ttf | Bin 0 ->
 1966 bytes
 test/shaping/fonts/sha1sum/MANIFEST                      |   1 +
 test/shaping/tests/fuzzed.tests                          |   1 +
 3 files changed, 2 insertions(+)

commit aa33cb72ab29c31e87f0cca9a0e72fe3a68247b7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 19 15:12:24 2016 +0700

    [fuzzing] Make test runner actually work

 test/fuzzing/Makefile.am | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit 2735555c6b0c95db7dfc2b391f92a1a5c06084c4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 19 15:12:16 2016 +0700

    [fuzzing] Add TODO item

 test/fuzzing/hb-fuzzer.cc | 1 +
 1 file changed, 1 insertion(+)

commit b87e36f6f119fac80b8fd55f3abae563c2c5b798
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 19 14:52:31 2016 +0700

    Avoid buffer->move_to() in case of buffer error

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

    Right now we cannot test this because it has to be tested using
    hb-fuzzer.
    We should move all fuzzing tests from test/shaping/tests/fuzzed.tests
    to
    test/fuzzing/ and have its own test runner.  At that point, should add
    test from this issue as well.

 src/hb-buffer.cc                     | 2 ++
 src/hb-ot-layout-gsubgpos-private.hh | 2 +-
 2 files changed, 3 insertions(+), 1 deletion(-)

commit 7e76bbabbaa56af314abff8ddba8866c634919cd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 19 14:43:39 2016 +0700

    [fuzzing] Make "make hb-fuzzer" build lib dependency

    Not going to do with util/, but is convenient here.

 test/fuzzing/Makefile.am | 3 +++
 1 file changed, 3 insertions(+)

commit 568a0c60e8695a6ad8a93ec60d55b137c48890cb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 18 19:31:51 2016 +0700

    Remove pointless overflow check in pointer math

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

 src/hb-blob.cc | 1 -
 1 file changed, 1 deletion(-)

commit aae2847099cbf05bf0668fbe526fc58736837c1b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 18 17:06:25 2016 +0700

    Emoji skin tone modifiers need to be treated as combining marks

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

 src/hb-ot-layout-private.hh | 15 ++++++++++++++-
 src/hb-unicode-private.hh   |  5 +++--
 2 files changed, 17 insertions(+), 3 deletions(-)

commit da41e48f0a1a6af6d44ef25185d2421a29bd4166
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 16 17:16:33 2016 +0700

    [USE] Zero mark advances by GDEF early

    This is what Microsoft's implementation does.  Marks that need advance
    need to add it back using 'dist' or other feature in GPOS.
    Update tests to
    match.

 src/hb-ot-shape-complex-use.cc                           |   2 +-
 test/shaping/fonts/sha1sum/MANIFEST                      |   1 +
 .../sha1sum/f518eb6f6b5eec2946c9fbbbde44e45d46f5e2ac.ttf | Bin 0 ->
 1356 bytes
 test/shaping/tests/context-matching.tests                |   2 +-
 test/shaping/tests/use.tests                             |   2 ++
 5 files changed, 5 insertions(+), 2 deletions(-)

commit 86c68c7a2c971efe8e35b1f1bd99401dc8b688d2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 16 16:07:20 2016 +0700

    [GPOS] Fix interaction of mark attachments and cursive chaining

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

    What happens in that bug is that a mark is attached to base first,
    then a second mark is cursive-chained to the first mark.  This only
    "works" because it's in the Indic shaper where mark advances are
    not zeroed.

    Before, we didn't allow cursive to run on marks at all.  Fix that.
    We also where updating mark major offsets at the end of GPOS, such
    that changes in advance of base will not change the mark attachment
    position.  That was superior to the alternative (which is what
    Uniscribe
    does BTW), but made it hard to apply cursive to the mark after it
    was positioned.  We could track major-direction offset changes and
    apply that to cursive in the post process, but that's a much trickier
    thing to do than the fix here, which is to immediately apply the
    major-direction advance-width offsets...  Ie.:

    https://github.com/behdad/harfbuzz/issues/211#issuecomment-183194739

    If this breaks any fonts, the font should be fixed to do mark
    attachment
    after all the advances are set up first (kerning, etc).

    Finally, this, still doesn't make us match Uniscribe, for I explained
    in that bug.  Looks like Uniscribe applies minor-direction cursive
    adjustment immediate as well.  We don't, and we like it our way, at
    least for now.  Eg. the sequence in the test case does this:

    - The first subscript attaches with mark-to-base, moving in x only,
    - The second subscript attaches with cursive attachment to first
    subscript
      moving in x only,
    - A final context rule moves the first subscript up by 104 units.

    The way we do, the final shift-up, also shifts up the second subscript
    mark because it's cursively-attached.  Uniscribe doesn't.  We get:

    [ttaorya=0+1307|casubscriptorya=0@-242,104+-231|casubscriptnarroworya=0@20,104+507]

    while Uniscribe gets:

    [ttaorya=0+1307|casubscriptorya=0@-242,104+-211|casubscriptnarroworya=0+487]

    note the different y-offset of the last glyph.  In our view,
    after cursive,
    things move together, period.

 src/hb-ot-layout-gpos-table.hh                     |  31
 +++++++++++----------
 .../706c5d7b625f207bc0d874c67237aad6f1e9cd6f.ttf   | Bin 0 -> 3868 bytes
 test/shaping/fonts/sha1sum/MANIFEST                |   1 +
 test/shaping/tests/cursive-positioning.tests       |   1 +
 4 files changed, 18 insertions(+), 15 deletions(-)

commit 80c8855cfeffa028d74a25df884d0e5577c95c6c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 12 12:50:17 2016 +0700

    Minor

 src/hb-common.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6ab920224c32e38072a0bec5e84d4b0d58b74167
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 11 16:57:52 2016 +0700

    [GPOS] Minor

    No effect.

 src/hb-ot-layout-gpos-table.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit cbc3a76c5a38ab24f72e80357377711bd3f54d56
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 11 16:48:13 2016 +0700

    [GPOS] Merge fixing of offsets for cursive and mark attachments

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

 src/hb-buffer-private.hh       |  3 +-
 src/hb-ot-layout-gpos-table.hh | 73
 ++++++++++++++++++------------------------
 2 files changed, 33 insertions(+), 43 deletions(-)

commit 7d8d58ac81fe267e29ea68cdc6f4a4fa8c22d40f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 11 16:34:28 2016 +0700

    [GPOS] Divide position_finish() into two phases, for advances
    and offsets

    Right now the position_finish_advances() is empty.  To be used for
    spacing attachments proposal later.

 src/hb-ot-layout-gpos-table.hh | 11 +++++++++--
 src/hb-ot-layout-gsub-table.hh |  6 ------
 src/hb-ot-layout-private.hh    | 19 +++++++++----------
 src/hb-ot-layout.cc            | 16 ++++++++--------
 src/hb-ot-shape.cc             |  7 +++----
 5 files changed, 29 insertions(+), 30 deletions(-)

commit 8474231567a08873cc5e0aa08fea60316a04c27e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 11 16:27:41 2016 +0700

    [ot] Minor shuffling code around

 src/hb-ot-layout-gpos-table.hh |  2 --
 src/hb-ot-shape.cc             | 13 ++++++++-----
 2 files changed, 8 insertions(+), 7 deletions(-)

commit b0b11614e9fb9ecd1faae28b0ed71ac6bf5c1266
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 11 15:28:55 2016 +0700

    [GPOS] Add harmless recursion in fix_mark_attachment()

    Will do nothing.  Just useful for merging two functions.

 src/hb-ot-layout-gpos-table.hh | 2 ++
 1 file changed, 2 insertions(+)

commit 686567baab5a32ffea843538643e01de2885fa4f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 11 15:25:28 2016 +0700

    [GPOS] Merge attach_chain() and cursive_chain()

    Differentiate, using new attach_type().

 src/hb-ot-layout-gpos-table.hh | 50
 +++++++++++++++++++++++++++---------------
 1 file changed, 32 insertions(+), 18 deletions(-)

commit 806ad8dc65931ab7893bff7d5592a67a9bd237ca
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 11 14:53:11 2016 +0700

    [GPOS] Minor shuffling

 src/hb-ot-layout-gpos-table.hh | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit 0f6278d1fbb75856132f1fa2d29648979f033316
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 11 14:49:10 2016 +0700

    [GPOS] Negate sign of attach_lookback(), and rename it to
    attach_chain()

    No behavior change.  Preparing to unify how cursive and mark
    attachments
    work.

 src/hb-ot-layout-gpos-table.hh | 17 +++++++++--------
 1 file changed, 9 insertions(+), 8 deletions(-)

commit 5b5dc2c0406d8180e72d97a54334c722fda325b1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 11 12:15:38 2016 +0700

    [tests] Add test for advance zeroing of an ASCII letter marked as
    mark in GDEF

 test/shaping/fonts/sha1sum/MANIFEST                      |   1 +
 .../sha1sum/a98e908e2ed21b22228ea59ebcc0f05034c86f2e.ttf | Bin 0 ->
 1016 bytes
 test/shaping/tests/zero-width-marks.tests                |   1 +
 3 files changed, 2 insertions(+)

commit 660c9d3fc21172e8dc340b017122c084dac6334c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 11 12:14:27 2016 +0700

    Remove font-dependent ASCII-only perf hack

    Is confusing.  I already hit it myself.  Remove.  We can optimize
    ASCII based on Unicode properties.  But should not do based on
    assumptions on the font.

 src/hb-ot-shape.cc | 4 ----
 1 file changed, 4 deletions(-)

commit 3fe0cf10401875f1e9b8b5fbaf59826e64ea61d2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 10 18:43:43 2016 +0700

    Fix previous commit!

 test/shaping/fonts/sha1sum/MANIFEST       | 6 +++---
 test/shaping/tests/zero-width-marks.tests | 6 +++---
 2 files changed, 6 insertions(+), 6 deletions(-)

commit 293a210eee0a53b59f4b33298f42ec6e59d785e0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 10 18:39:59 2016 +0700

    [tests] Fix fonts in cc4a78bf22c4a735b84c89b04be3bb531f42135e

    They had an invalid LookupFlag (32).

 .../sha1sum/0dd3a51c3ea50997cb1f72515d1060408f8b4b59.ttf | Bin 1412 ->
 0 bytes
 .../sha1sum/56cfd0e18d07f41c38e9598545a6d369127fc6f9.ttf | Bin 0 ->
 1412 bytes
 .../sha1sum/828114d00931885bc25abf7cdb878b2914a2e743.ttf | Bin 1448 ->
 0 bytes
 .../sha1sum/894e96a367f00c196d82e6243673a1d4414f4f6a.ttf | Bin 1448 ->
 0 bytes
 .../sha1sum/cc5f3d2d717fb6bd4dfae1c16d48a2cb8e12233b.ttf | Bin 0 ->
 1448 bytes
 .../sha1sum/ffa0f5d2d9025486d8469d8b1fdd983e7632499b.ttf | Bin 0 ->
 1448 bytes
 6 files changed, 0 insertions(+), 0 deletions(-)

commit eaadcbbc53e02838c847e53ef214a55d6915d677
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 10 18:29:54 2016 +0700

    Remove now-unused mark zeroing BY_UNICODE

 src/hb-ot-shape-complex-private.hh |  2 --
 src/hb-ot-shape.cc                 | 29 -----------------------------
 2 files changed, 31 deletions(-)

commit cc4a78bf22c4a735b84c89b04be3bb531f42135e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 10 18:24:08 2016 +0700

    [tests] Add tests for Latin mark zeroing

 .../sha1sum/0dd3a51c3ea50997cb1f72515d1060408f8b4b59.ttf | Bin 0 ->
 1412 bytes
 .../sha1sum/828114d00931885bc25abf7cdb878b2914a2e743.ttf | Bin 0 ->
 1448 bytes
 .../sha1sum/894e96a367f00c196d82e6243673a1d4414f4f6a.ttf | Bin 0 ->
 1448 bytes
 test/shaping/fonts/sha1sum/MANIFEST                      |   4 ++++
 .../sha1sum/fcdcffbdf1c4c97c05308d7600e4c283eb47dbca.ttf | Bin 0 ->
 1344 bytes
 test/shaping/tests/zero-width-marks.tests                |   4 ++++
 6 files changed, 8 insertions(+)

commit 55ff34b9c157a839d026465af8f30424ce7f891b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 10 18:20:02 2016 +0700

    [tests] Add tests for Thai mark zeroing

 .../sha1sum/45855bc8d46332b39c4ab9e2ee1a26b1f896da6b.ttf | Bin 0 ->
 1088 bytes
 .../sha1sum/7a37dc4d5bf018456aea291cee06daf004c0221c.ttf | Bin 0 ->
 1080 bytes
 .../sha1sum/8099955657a54e9ee38a6ba1d6f950ce58e3cc25.ttf | Bin 0 ->
 1024 bytes
 test/shaping/fonts/sha1sum/MANIFEST                      |   4 ++++
 .../sha1sum/bb0c53752e85c3d28973ebc913287b8987d3dfe8.ttf | Bin 0 ->
 976 bytes
 test/shaping/tests/zero-width-marks.tests                |   4 ++++
 6 files changed, 8 insertions(+)

commit b3582a8ee82942a931130a83b2867b239f8ca71a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 10 18:10:15 2016 +0700

    Change default mark advance zeroing behavior from Unicode to GDEF

    See thread at:
    https://lists.freedesktop.org/archives/harfbuzz/2016-February/005462.html

 src/hb-ot-shape-complex-default.cc | 2 +-
 src/hb-ot-shape-complex-thai.cc    | 2 +-
 src/hb-ot-shape-complex-tibetan.cc | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

commit 43bb2b8fb00705c3334730a58ade7984181018b2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 10 14:11:43 2016 +0700

    Minor

 test/shaping/hb_test_tools.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit bdaa784bb610ec65626d63cc068a0958ff5005fc
Merge: a168db47 f6ffba63
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 10 11:11:36 2016 +0700

    Merge pull request #164 from fanc999/msvc.build

    Enable Build of HarfBuzz under Visual Studio using NMake Makefiles

commit a168db4739148459bc33c7dae88e73efa0153d72
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 10 11:10:08 2016 +0700

    [README] Add ABI Tracker link

 README | 1 +
 1 file changed, 1 insertion(+)

commit f6ffba634bb33d6d4b051abce9c23fcae280c3fe
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Wed Dec 9 14:57:15 2015 +0800

    MSVC builds: Add support to build DirectWrite shaping backend

    Add into the NMake Makefiles to build the DirectWrite shaping backend,
    but as PR #134 mentions, this is considered to be in an experimental
    state,
    so don't include this in the build by default for now.  This is
    most probably
    going to replace the Uniscribe backend eventually, since DirectWrite
    is meant
    to be Uniscribe's replacement, and is needed for Windows Store apps
    if a
    system shaping API is to be used.

 win32/README.txt        |  4 ++++
 win32/config-msvc.mak   | 10 ++++++++++
 win32/config.h.win32.in |  3 +++
 win32/info-msvc.mak     |  7 +++++++
 4 files changed, 24 insertions(+)

commit c6792854557ca104948e8f0b142c9384105b0d05
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Wed Feb 3 18:31:23 2016 +0800

    build: Build the DirectWrite sources if requested

    This adds to the autotools build system so that the (experimental)
    DirectWrite support for HarfBuzz is built (and dist'ed).

 configure.ac         | 25 +++++++++++++++++++++++++
 src/Makefile.am      |  7 +++++++
 src/Makefile.sources |  3 +++
 3 files changed, 35 insertions(+)

commit d7b6636e5ebf1ddf7d7a04007ffbc411cf7e462e
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Tue Nov 3 19:00:42 2015 +0800

    build: Support Visual Studio builds using NMake

    This adds a set of NMake Makefiles that can be used to build
    HarfBuzz, from
    the standard basic build building the minimal HarfBuzz DLL (consisting
    of OpenType, fallback and Uniscribe support only), to a full
    fledged build
    consisting of GLib and FreeType support, as well as building the
    utilities,
    the test programs in src/ and test/api, and HarfBuzz-ICU and
    HarfBuzz-GObject, and up to building the introspection files.
    This means a
    flexible build mechanism is supported here, so anything that is
    supported
    for a Windows build (code-wise), should all be supported by this build
    system.

    As in an earlier commit, the source listings are shared with the
    autotools
    builds with the various Makefile.sources in src/, src/hb-ucdn and
    util/, and
    this set of NMake Makefiles will transform these lists into the
    form they
    want.

    In the current form, all the test programs in test/api pass, and
    this has
    been checked successfully with 'make -j8 distcheck'.

 BUILD.md                        |   4 +-
 Makefile.am                     |   2 +-
 configure.ac                    |   2 +
 win32/Makefile.am               |  14 +++
 win32/Makefile.vc               |  52 +++++++++++
 win32/README.txt                |  75 ++++++++++++++++
 win32/build-rules-msvc.mak      | 140 ++++++++++++++++++++++++++++++
 win32/config-msvc.mak           | 188
 ++++++++++++++++++++++++++++++++++++++++
 win32/create-lists-msvc.mak     | 151 ++++++++++++++++++++++++++++++++
 win32/create-lists.bat          |  42 +++++++++
 win32/detectenv-msvc.mak        | 136 +++++++++++++++++++++++++++++
 win32/generate-msvc.mak         |  26 ++++++
 win32/hb-introspection-msvc.mak |  42 +++++++++
 win32/info-msvc.mak             | 130 +++++++++++++++++++++++++++
 win32/install.mak               |  29 +++++++
 win32/introspection-msvc.mak    |  73 ++++++++++++++++
 16 files changed, 1104 insertions(+), 2 deletions(-)

commit 5c3e7260bcb4999b8b7cb9afb26e6eaff867634b
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Tue Nov 3 18:52:46 2015 +0800

    MSVC builds: Add a pre-configured config.h(.win32) template

    This adds a pre-configured config.h template that can be used
    for Visual
    Studio builds, where autotools is not normally available.  This has
    the
    configs that are suitable for Visual Studio builds, as well as all the
    features used for Windows builds enabled (HAVE_OT, HAVE_FALLBACK and
    HAVE_UNISCRIBE).

    Note that the optional features are not enabled here, they are
    enabled by
    /D's (or -D's) in the NMake Makefiles as requested.

 win32/config.h.win32.in | 155
 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 155 insertions(+)

commit 35ded3af74a5bc4b038a07308354d5f7501ae3c7
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Tue Nov 3 16:56:27 2015 +0800

    build: Move source listings into separate Makefile snippets

    This moves all the source listings in src/Makefile.am,
    src/hb-ucdn/Makefile.am and util/Makefile.am into separate Makefile
    snippets, so that they may be shared between different Makefile-based
    build systems, such as NMake for Visual Studio.

 src/Makefile.am              | 165
 +++++++++----------------------------------
 src/Makefile.sources         | 147 ++++++++++++++++++++++++++++++++++++++
 src/hb-ucdn/Makefile.am      |   6 +-
 src/hb-ucdn/Makefile.sources |   4 ++
 util/Makefile.am             |  34 ++-------
 util/Makefile.sources        |  32 +++++++++
 6 files changed, 223 insertions(+), 165 deletions(-)

commit b894a85ad1e7c3ecfb6d3732a7c9779f5462fe70
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 2 16:39:19 2016 +0800

    Fix more hangs in case of buffer allocation errors

    Hopefully
    fixes https://github.com/behdad/harfbuzz/issues/214

 src/hb-ot-shape-complex-indic.cc   | 2 +-
 src/hb-ot-shape-complex-myanmar.cc | 2 +-
 src/hb-ot-shape-complex-use.cc     | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

commit b693992ea160b66541f678dc9be29b513c77a30b
Merge: 9a6a33cc 498574e6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 2 12:33:32 2016 +0800

    Merge pull request #222 from n8willis/master

    Add usermanual chapter on cluster levels

commit 498574e6c1a83bbd2768925af6e39806fe1ea8bb
Author: n8willis <nwillis@glyphography.com>
Date:   Thu Jan 28 12:21:32 2016 -0600

    Update Makefile.am

 docs/Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit e12fc666994573dbabb6928a8b2e8698667088ce
Author: n8willis <nwillis@glyphography.com>
Date:   Thu Jan 28 12:14:12 2016 -0600

    Added initial usermanual chapter on cluster levels.

 docs/harfbuzz-docs.xml       |   1 +
 docs/usermanual-clusters.xml | 304
 +++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 305 insertions(+)

commit 9a6a33ccbea8a2e23e779bd955958fa41974c1c7
Merge: d05b7833 146fe252
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 18 12:47:18 2016 +0100

    Merge pull request #216 from mhosken/master

    Refactor graphite2 to make ovleraps into negative width spaces

commit 146fe252c3ebd0253344ce20981554e40926497b
Author: Martin Hosken <martin_hosken@sil.org>
Date:   Sat Jan 16 17:24:00 2016 -0600

    Refactor graphite2 to make ovleraps into negative width spaces

 src/hb-graphite2.cc | 71
 ++++++++++++++++++++++++++++++++---------------------
 1 file changed, 43 insertions(+), 28 deletions(-)

commit d05b783322d90208b2ddf06a5ebffc7c301be3d7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 12 16:17:21 2016 +0000

    Fix compiler warning

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

 src/hb-ot-tag.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit d163dc18e66c9e2f404d09310482464245cae704
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 12 13:05:01 2016 +0000

    Minor

 src/hb-ot-layout-common-private.hh | 30 +++++++++++++++---------------
 1 file changed, 15 insertions(+), 15 deletions(-)

commit 505b7d4732c6a8c423f43c0de46e05dc583e82c0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 11 18:31:04 2016 +0000

    [fuzzing] Fuzz input text

    Very rudimentary right now, but will get kcc's bot going.

    From
    https://github.com/behdad/harfbuzz/issues/139#issuecomment-163580783

 test/fuzzing/hb-fuzzer.cc | 25 +++++++++++++++++++------
 1 file changed, 19 insertions(+), 6 deletions(-)

commit 3e704521f67e021fb51cda7319925fd39eba4f97
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 11 17:38:41 2016 +0000

    [OT] Get list of lookup subtables once and loop through them

    This speeds up shaping the Amiri font by over 15%.

    This was primarily needed for my work on OpenType GX, since
    we will be collecting only sublookups that are "active" for
    current font instance; but it's a nice boost in general as
    well.

    We might, in the future, collect subtables in the lookup_accel.
    That would also allow us to do a per-subtbale set-digest, which
    should speed things up some more, specially for ContextChainFormat3
    lookups...  Amiri, for example, contains one lookup with 53
    subtables!

 src/hb-ot-layout.cc | 120
 +++++++++++++++++++++++++++++++++++-----------------
 1 file changed, 81 insertions(+), 39 deletions(-)

commit 11441291bbf4326dca9b14ec3e9cad3d4d229303
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 11 13:16:35 2016 +0000

    1.1.3

 NEWS         | 29 +++++++++++++++++++++++++++++
 configure.ac |  2 +-
 2 files changed, 30 insertions(+), 1 deletion(-)

commit 97624d9244de0fdb9c03f60e03fe242028efa8a1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 11 12:58:45 2016 +0000

    [docs] Minor fixes.

 src/hb-buffer.h | 26 +++++++++++++-------------
 1 file changed, 13 insertions(+), 13 deletions(-)

commit a39ff95fce39226e80850ff251cb34a7aad12bd7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 11 12:28:37 2016 +0000

    [coretext] Speed up CoreText font fallback

    Fixes https://code.google.com/p/chromium/issues/detail?id=547912

 src/hb-coretext.cc | 45 ++++++++++++++++++++++++++++++++++++++++-----
 1 file changed, 40 insertions(+), 5 deletions(-)

commit 5afebbdcb2dab0e9a42d580df629d8e60b50d2f9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 7 22:53:59 2016 +0000

    Add Homebrew build instructions

 BUILD.md | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

commit e8a27d79476a5d7a83cf2287d92ca291257546f4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 7 22:52:16 2016 +0000

    Don't build hb-fuzzer in "make", only "make check"

 test/fuzzing/Makefile.am | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 25671466d245449187f8ab17e1a233f1d087d5ed
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 7 19:11:41 2016 +0000

    Add 9 reserved entries to hb_font_extents_t

    Might add italic-angle, underline/strikethrough-position/thickness
    in the future.  Do this before new struct goes into a release.

 src/hb-font.h | 10 ++++++++++
 1 file changed, 10 insertions(+)

commit e6d5e4c3106180cb22253c2c278b40f7c4c98f2f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 6 12:29:50 2016 +0000

    [uniscribe] Fix negative advance

    This happens with at least one test font I have.

 src/hb-uniscribe.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 99d34955762d0fff4b66a30e6fbe65fd1cf9976b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 6 12:20:47 2016 +0000

    [test] Add test text for Kaithi

 test/shaping/texts/in-tree/shaper-hangul/MANIFEST            | 1 +
 test/shaping/texts/in-tree/shaper-hebrew/MANIFEST            | 1 +
 test/shaping/texts/in-tree/shaper-tibetan/MANIFEST           | 1 +
 test/shaping/texts/in-tree/shaper-use/MANIFEST               | 1 +
 test/shaping/texts/in-tree/shaper-use/script-kaithi/MANIFEST | 1 +
 test/shaping/texts/in-tree/shaper-use/script-kaithi/misc.txt | 6 ++++++
 6 files changed, 11 insertions(+)

commit 53c47c85827a7e3ca82000e3baa9aa87c5770ce9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 5 13:26:20 2016 +0000

    Increase sanitize edit count from 8 to 32

    See previous commit.

 src/hb-open-type-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit da2fcfdc51a2cc0d0a782efa6c91b733f7aa84ba
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 5 13:23:45 2016 +0000

    Don't count fixing-up FeatureParams offset as error

    The font Garamond Premier Pro Caption (and possibly many other
    Adobe fonts), have many FeatureParamsSize tables with the old
    wrong offset.  We handle fixing those up, but they were still
    contributing to edit_count, and when I reduced HB_SANITIZE_MAX_EDIT
    from 100 to 8 in 14c2de321826c36037adde859ccca3e2011325a9, these
    fonts were now getting GPOS dropped and hence kerning disabled.

    Fix, by not counting edits made towareds offset fix-up.  I'll
    also increase edit count again, in the next commit.

 src/hb-ot-layout-common-private.hh | 3 +++
 1 file changed, 3 insertions(+)

commit d0adc80965506810820f9ec165b8df80cc8907e3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 2 13:25:18 2016 +0000

    Check magicNumber in head table during sanitize

 src/hb-ot-head-table.hh | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 3a48c776701a919e11b067129586e40372d90d54
Merge: 9230911f 4b4948d3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 2 00:59:14 2016 +0000

    Merge pull request #208 from khaledhosny/travis-trusty

    [travis] Try building on Trusty

commit 4b4948d360a2141e0ffda2994aa308645dc32f59
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Sat Jan 2 00:36:19 2016 +0400

    [travis] Try building on Trusty

    Trusty has gtk-doc 1.20 which has better markdown support which should
    fix some of the brokenness in the newly added documentation. The build
    seems to be as fast as the current container-based build on Precise.

 .travis.yml | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 9230911facf90c06626e54023ca4d99f5e05f1a4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 1 19:06:43 2016 +0000

    [travis] Only run coveralls if testing behdad/harfbuzz

    Fixes failures in others' forks, like:
    https://travis-ci.org/khaledhosny/harfbuzz/jobs/99719710#L3912

 .travis.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6f66f05757d3d5738571b3d4ee40afffb8f26ff9
Merge: bfdf684f 9ab9f974
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 1 16:44:01 2016 +0000

    Merge pull request #207 from khaledhosny/docs-4

    [docs] More buffers documentation

commit 9ab9f974d42e0001966e243a23a64e6aefbd4764
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Fri Jan 1 20:38:21 2016 +0400

    [docs] More buffers documentation

 docs/harfbuzz-sections.txt |  4 +-
 src/hb-buffer-serialize.cc | 85
 ++++++++++++++++++++++++++++++-------------
 src/hb-buffer.cc           | 91
 +++++++++++++++++++++++++++++++++++-----------
 src/hb-buffer.h            | 78 +++++++++++++++++++++++++--------------
 src/hb-shape.cc            | 10 +++--
 5 files changed, 187 insertions(+), 81 deletions(-)

commit bfdf684f7957645dd016fbf76700c5911c4bee2d
Merge: d7ed6f50 85c2443b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 30 22:20:14 2015 +0100

    Merge pull request #205 from khaledhosny/more-docs

    More docs

commit d7ed6f50b4ff13a94701131913d931f13a4d1266
Merge: b758e5ea a7f0e25d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 30 22:20:00 2015 +0100

    Merge pull request #206 from nico/patch-3

    Remove unused HB_SHAPER_DATA_ENSURE_DECLARE lines.

commit a7f0e25dafa90bd21b01c38cb0782ade54b75cdc
Author: Nico Weber <nicolasweber@gmx.de>
Date:   Wed Dec 30 16:05:52 2015 -0500

    Remove unused HB_SHAPER_DATA_ENSURE_DECLARE lines.

    The coretext_aat shaper delegates to the regular coretext_..._ensure()
    functions, so coretext_aat_..._ensure() functions defined by these
    macros are unused. The compiler warns about them, which in turn can
    confuse people to think that the coretext_aat_..._ensure() functions
    weren't called by accident.

 src/hb-coretext.cc | 4 ----
 1 file changed, 4 deletions(-)

commit 85c2443b737335b77c7e9bb6fd6741912f70fcef
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Wed Dec 30 22:57:04 2015 +0400

    [docs] Reduce gtkdoc-check errors

    Now it is just reporting one error about “503 undocumented or
    incomplete
    symbols”, that will be the easy part I guess.

 docs/harfbuzz-docs.xml     | 74
 ++++++++++++++++++++++++++++++++++++++++++++++
 docs/harfbuzz-sections.txt | 40 +++++++++++++++++++++++++
 2 files changed, 114 insertions(+)

commit 9cffe329f15b3a74a3af4e68c1884f1dbda49666
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Wed Dec 30 22:50:08 2015 +0400

    [docs] Typo

 src/hb-buffer.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b758e5ea223eced0fde9a3e62d0fdf04c04914a1
Merge: 266bfa37 8b1224f0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 30 16:44:19 2015 +0100

    Merge pull request #203 from nico/patch-1

    Remove unused `retry:` label.

commit 266bfa3772e75fedcd93db22bf8672a13ad7a7d9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 30 16:25:48 2015 +0100

    [docs] Minor

 .ci/deploy-docs.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit d08035f8f15b7ddd89a318ea34bc386a9e33a8ea
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 30 16:15:36 2015 +0100

    [docs] Fix up build, really

 .ci/deploy-docs.sh | 9 ++++-----
 .travis.yml        | 2 +-
 2 files changed, 5 insertions(+), 6 deletions(-)

commit 0d45c3cf63692151166ca7071f755dfaa8922a67
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 30 16:09:39 2015 +0100

    [docs] Turn bash tracing on

 .ci/deploy-docs.sh | 4 ++++
 1 file changed, 4 insertions(+)

commit 33b2d981a0b12ea165ef9282204a73f4a1ce0477
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 30 15:56:56 2015 +0100

    [docs] Another try, not sure why the bot isn't building

 .ci/deploy-docs.sh | 13 ++++---------
 1 file changed, 4 insertions(+), 9 deletions(-)

commit f3a051149b3b565b5ad4e489bf730c5203c3549e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 30 15:45:43 2015 +0100

    [docs] Shuffling code around in deploy-docs.sh

    Temporarily makes it rebuild docs on every change again.

 .ci/deploy-docs.sh | 46 +++++++++++++++++++++++++++-------------------
 1 file changed, 27 insertions(+), 19 deletions(-)

commit 8f31d0a94b27bb658aabe600472fc10bc47885f6
Merge: 9d280cf4 fb192c26
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 30 15:13:37 2015 +0100

    Merge pull request #202 from khaledhosny/doc-fixes

    Doc fixes

commit fb192c263e17081c87f4cc971274d9be42f19513
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Wed Dec 30 15:05:50 2015 +0400

    [docs] A bit more buffers documentation

 docs/harfbuzz-sections.txt |  2 ++
 src/hb-buffer.cc           |  7 +++---
 src/hb-buffer.h            | 56
 ++++++++++++++++++++++++++++++++++++++++++++--
 3 files changed, 60 insertions(+), 5 deletions(-)

commit 8ab797c5b86c33eab6ee024471fd3c147325d26a
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Tue Dec 29 17:42:16 2015 +0400

    [docs] A bit more buffers documentation

 docs/harfbuzz-sections.txt | 60 +++++++++++++++---------------
 src/hb-buffer.cc           | 93
 +++++++++++++++++++++++++++++++---------------
 src/hb-buffer.h            |  7 +++-
 src/hb-common.cc           | 43 +++++++++++++--------
 src/hb-common.h            | 15 +++++---
 5 files changed, 135 insertions(+), 83 deletions(-)

commit f18d2226b62f20d29e6299c01ae8467c725ea971
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Tue Dec 29 15:21:20 2015 +0400

    [docs] Some documentation on buffers

    Some of it (create, reference, destroy) are adapted from Cairo docs.

 docs/harfbuzz-sections.txt |  55 +++++++-------
 src/hb-buffer.cc           | 174
 +++++++++++++++++++++++++++------------------
 2 files changed, 132 insertions(+), 97 deletions(-)

commit d7bf9d05c519a369a7b3a02e9ed5ecc05a20cd3e
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Tue Dec 29 02:23:24 2015 +0400

    [docs] Fix comment syntax

    To lower the number of gtk-doc warnings.

 .travis.yml           |  2 +-
 src/hb-directwrite.cc |  4 ++--
 src/hb-ot-layout.cc   | 14 ++++++++++++++
 src/hb-unicode.h      | 16 ++++++++++++++++
 4 files changed, 33 insertions(+), 3 deletions(-)

commit 8b1224f0eece7a5b6846e206333e57ac4653a705
Author: Nico Weber <nicolasweber@gmx.de>
Date:   Mon Dec 28 21:31:28 2015 -0500

    Remove unused `retry:` label.

    Fixes a -Wunused-label warning when building harfbuzz with clang
    -Wall.

 src/hb-coretext.cc | 1 -
 1 file changed, 1 deletion(-)

commit 1f5559293f9bb1b4e911f4bdecf276ff1f6ae01c
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Tue Dec 29 02:15:21 2015 +0400

    [docs] Ignore the new HB_EXTERN decoration

    Otherwise, almost all API functions are not extracted.

 docs/Makefile.am | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 9d280cf49f25181f64c978752f926b79e7c3746a
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Sat Dec 26 06:45:51 2015 +0400

    Fix previous commit

 .ci/deploy-docs.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b789199f107912cfce5e4a95d6152f9a1a7993f2
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Sat Dec 26 06:35:08 2015 +0400

    [travis] Build docs only on tagged revisions

    Lets see if it works…

 .ci/deploy-docs.sh | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit e5b90c08a4c1f475560209a5e47628f695606d89
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 25 18:41:41 2015 +0100

    [travis] Remove secure var

    I've set up a secure var for behdad/harfbuzz through Travis web
    interface, no need
    to set the var here.

 .ci/deploy-docs.sh | 2 +-
 .travis.yml        | 1 -
 2 files changed, 1 insertion(+), 2 deletions(-)

commit e75c1ffdf548185ce1f1df7937f0d028e5e40efe
Merge: 6173c2a6 d25317f6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 25 18:21:08 2015 +0100

    Merge pull request #199 from behdad/travis-docs

    Deploy docs to gh-pages branch from Travis builds

commit 6173c2a6fc6ea0bf812f7f398770b5342974f9bf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 25 18:18:23 2015 +0100

    Fix flaky test

    This test font had a upem of 769, which results in rounding-related
    errors with
    the FreeType font funcs.  Change the upem to 1024 to fix that.

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

 ...> 1c2fb74c1b2aa173262734c1f616148f1648cfd6.ttf} | Bin 4064 ->
 4064 bytes
 test/shaping/fonts/sha1sum/MANIFEST                |   2 +-
 test/shaping/tests/ligature-id.tests               |  70
 ++++++++++-----------
 3 files changed, 36 insertions(+), 36 deletions(-)

commit 3fcae6d82da389c9944386a8ab41eb1c13b99330
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 25 18:18:02 2015 +0100

    [tests] Add --reference, for re-recording tests

 test/shaping/run-tests.sh | 18 ++++++++++++++----
 1 file changed, 14 insertions(+), 4 deletions(-)

commit d25317f67f3c5c77f9059961935b0f35cbaa9ac4
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Wed Dec 23 01:29:48 2015 +0400

    Move more docs from FreeDesktop page

 docs/Makefile.am                     |  1 +
 docs/harfbuzz-docs.xml               | 15 ++++----
 docs/usermanual-install-harfbuzz.xml | 70
 ++++++++++++++++++++++++++++++++++++
 3 files changed, 80 insertions(+), 6 deletions(-)

commit 493a92220844c8996be67c8a7a2c5447942fe2c1
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Wed Dec 23 00:33:41 2015 +0400

    Rename user manual files

    Use chapter ids instead of numbers, so that we can reorder them,
    introduce new ones etc. without the numbers becoming out of date.

 docs/Makefile.am                                             | 12
 ++++++------
 docs/harfbuzz-docs.xml                                       | 12
 ++++++------
 ... => usermanual-buffers-language-script-and-direction.xml} |  0
 docs/{usermanual-ch04.xml => usermanual-fonts-and-faces.xml} |  0
 ...{usermanual-ch06.xml => usermanual-glyph-information.xml} |  0
 docs/{usermanual-ch02.xml => usermanual-hello-harfbuzz.xml}  |  0
 ...{usermanual-ch05.xml => usermanual-opentype-features.xml} |  0
 .../{usermanual-ch01.xml => usermanual-what-is-harfbuzz.xml} |  0
 8 files changed, 12 insertions(+), 12 deletions(-)

commit 4dc2265918089ee08c6d82eed0cfd41e02d7d231
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Wed Dec 23 00:26:20 2015 +0400

    Intro from freedesktop.org/wiki/Software/HarfBuzz/

 docs/HarfBuzz.png      | Bin 0 -> 3419 bytes
 docs/Makefile.am       |   3 ++-
 docs/harfbuzz-docs.xml |  31 ++++++++++++++++++++++++++++++-
 3 files changed, 32 insertions(+), 2 deletions(-)

commit 22b07782ced6503a0bf33f2fe157b70540238f6d
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Mon Dec 14 23:33:51 2015 +0400

    Deploy docs to gh-pages branch from Travis builds

    Build docs in Travis and push them to the gh-pages branch, which makes
    them available at http://behdad.github.io/harfbuzz/

 .ci/deploy-docs.sh | 25 +++++++++++++++++++++++++
 .travis.yml        |  4 ++++
 2 files changed, 29 insertions(+)

commit fc38e6034c76d5450f5398d667184bc3696efcc4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 23 14:50:53 2015 +0100

    [layout] Collect coverage glyphs in PairPos

    Apparently class=0 is used for ClassDef1.  See:
    https://github.com/adobe-type-tools/afdko/issues/90

 src/hb-ot-layout-gpos-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 8718dae818b22c3933c33bdfc8a7413ef4c3110a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 18 19:53:40 2015 +0000

    [python] Hook up sample debugger

 src/sample.py | 6 ++++++
 1 file changed, 6 insertions(+)

commit 0475ef2f97e3035a2eea9a0f96031331e07e8e29
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 18 18:17:07 2015 +0000

    [buffer] Add debugging, aka, message, API

    Currently just announces lookup applications.  Message-API *will*
    change.
    hb-shape / hb-view are updated to print-out messages to stder
    if --debug
    is specified.

 src/hb-buffer-private.hh | 18 ++++++++++++++++++
 src/hb-buffer.cc         | 44
 ++++++++++++++++++++++++++++++++++++++++++++
 src/hb-buffer.h          | 15 +++++++++++++++
 src/hb-ot-layout.cc      | 12 ++----------
 util/main-font-text.hh   | 18 ++++++++++++++++++
 5 files changed, 97 insertions(+), 10 deletions(-)

commit 9ea0aa43ac5cf243b698aae0ec80241b5efd7488
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 18 17:30:18 2015 +0000

    Don't deserialize positions if buffer has no positions

 src/hb-buffer-serialize.cc | 3 +++
 src/hb-ot-layout.cc        | 2 --
 2 files changed, 3 insertions(+), 2 deletions(-)

commit 862b1644e9469a7e70555141f53729409d50d0d2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 18 13:54:06 2015 +0000

    [use] Only set syllable-based topographical features if not
    Arabic-joining

 src/hb-ot-shape-complex-use.cc | 3 +++
 1 file changed, 3 insertions(+)

commit 45b7ec365225109eb0854e6c417f48860b5f24af
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 18 13:47:16 2015 +0000

    [indic] Followup fix for Malayalam context matching

    We regeressed Malayalam in 508cc3d3cfcfb0383df0fe795cc28db4e0fd5729
    This brings down the failures to 198 (from 750).

    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%)
    MYANMAR: 1123865 out of 1123883 tests passed. 18 failed (0.00160159%)

 src/hb-ot-shape-complex-indic.cc | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

commit 2813e3049a69d64e5395f68c52c4690e1d256d55
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 18 11:05:11 2015 +0000

    [indic] Update data tables to Unicode 8.0

    Test stats remain unchanged, except for Malayalam, which we
    investigate:

    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: 1047584 out of 1048334 tests passed. 750 failed
    (0.0715421%)
    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%)

    Myanmar, compared to Windows 10 mmrtext.ttf:

    MYANMAR: 1123865 out of 1123883 tests passed. 18 failed (0.00160159%)

 src/gen-indic-table.py                   |   1 +
 src/hb-ot-shape-complex-indic-private.hh |  40 ++--
 src/hb-ot-shape-complex-indic-table.cc   | 372
 ++++++++++++++++++-------------
 src/hb-ot-shape-complex-indic.cc         |  23 +-
 src/hb-ot-shape-complex-myanmar.cc       |   4 +
 5 files changed, 244 insertions(+), 196 deletions(-)

commit fc06cff40f136440f6402d0a5e735e2a4a3c062a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 17 17:47:35 2015 +0000

    Remove HB_OT_SHAPE_ZERO_WIDTH_MARKS_DEFAULT

    The DEFAULT naming wasn't helpful, so just remove it.

 src/hb-ot-shape-complex-default.cc | 2 +-
 src/hb-ot-shape-complex-private.hh | 4 +---
 src/hb-ot-shape-complex-thai.cc    | 2 +-
 src/hb-ot-shape-complex-tibetan.cc | 2 +-
 4 files changed, 4 insertions(+), 6 deletions(-)

commit 508cc3d3cfcfb0383df0fe795cc28db4e0fd5729
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 17 17:31:17 2015 +0000

    [indic] Allow context when matching for Malayalam new-spec

    Test sequence:
            U+0995,U+09CD,U+09B0

    With Nirmala shipped on Windows 10, this failed to form the below
    form.
    Works now.

    Reported by Sairus.

 src/hb-ot-shape-complex-indic.cc | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

commit eaf1e93ef1ee19a3e72d781e8abbd7f1165c1618
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 17 16:57:47 2015 +0000

    [uniscribe] Handle E_NOT_SUFFICIENT_BUFFER as well as E_OUTOFMEMORY

    On Windows 10 we are seeing that other error message...

    Test sequence: U+0995,U+-9CD,U+09B0
    With Nirmala shipped on Windows 10, this failed to form the below
    form.
    Works now.

    Reported by Sairus.

 src/hb-uniscribe.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 21e5d7edc4f28157254ef29a8ac247f3a572f6a6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 17 16:28:38 2015 +0000

    [util] Use O_BINARY instead of _O_BINARY

    The latter doesn't seem to be available in Cygwin.  I'm surprised it
    compiled before...

 util/options.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 100fbeaf196515774c985ee839d0fa0695f9a6fa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 17 15:23:09 2015 +0000

    Fix ligature component of a mark happening after a ligature within
    a ligature!

    Say, if we are ligating "A B_C m D", then previously 'm' was being
    attached to 'B' in the combined A_B_C_D ligature.  Now we attach it
    to 'C'.  No test for this though :(.

 src/hb-ot-layout-gsubgpos-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2f02fc79a5018e3348fccf366c470803554e1e58
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 17 15:21:14 2015 +0000

    Improve ligature-component handling

    We use three bits for lig_id these days, so we finally got a report of
    two separate ligatures with the same lig_id happening adjacent to each
    other, and then the component-handling code was breaking things.
    Protect against that by ignoring same-lig-id but lig-comp=0 glyphs
    after
    a new ligature.

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

 src/hb-ot-layout-gsubgpos-private.hh               |  12 +++++--
 test/shaping/Makefile.am                           |   1 +
 test/shaping/fonts/sha1sum/MANIFEST                |   1 +
 .../c78d1f25ea1df1210414f2fe2e0e1e53082bba76.ttf   | Bin 0 -> 4064 bytes
 test/shaping/tests/MANIFEST                        |   1 +
 test/shaping/tests/ligature-id.tests               |  35
 +++++++++++++++++++++
 6 files changed, 47 insertions(+), 3 deletions(-)

commit 2ab0de9fbd03231b647345b01e31b136e2e00978
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 17 11:59:15 2015 +0000

    [use] Fix halant detection

    Before, we were just checking the use_category().  This detects as
    halant a ligature that had the halant as first glyph (as seen in
    NotoSansBalinese.)  Change that to use the is_ligated() glyph prop
    bit.  The font is forming this ligature in ccmp, which is before
    the rphf / pref tests.  So we need to make sure the "ligated" bit
    survives those tests.  Since those only check the "substituted" bit,
    we now only clear that bit for them and "ligated" survives.

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

 src/hb-ot-layout-private.hh                          |   6 ++----
 src/hb-ot-shape-complex-use.cc                       |  19
 ++++++++++++-------
 test/shaping/Makefile.am                             |   1 +
 test/shaping/fonts/sha1sum/MANIFEST                  |   1 +
 .../fbb6c84c9e1fe0c39e152fbe845e51fd81f6748e.ttf     | Bin 0 ->
 2616 bytes
 test/shaping/tests/MANIFEST                          |   1 +
 test/shaping/tests/use.tests                         |   1 +
 7 files changed, 18 insertions(+), 11 deletions(-)

commit 86bcbd65b0d98357fb3d67a2f4f2a704ace55e10
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 17 11:04:33 2015 +0000

    [arabic] Use glyph advance width in apply_stch() instead of extents

    That seems to be what Windows is doing, and makes more sense.

 src/hb-ot-shape-complex-arabic.cc | 24 +++++++-----------------
 1 file changed, 7 insertions(+), 17 deletions(-)

commit f11c11a1f123ef245e59ba892230db14170a8e5a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 16 17:08:36 2015 +0100

    Fix Since: tags for new API

    https://github.com/behdad/harfbuzz/commit/e1d4d0f1dbd8518b5672245c05d73f22a9ed03ea#commitcomment-15006653

 src/hb-font.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 15f2c055c17c54b0a6ae6eef50dcda13c58cda75
Merge: 49e72634 a13b023d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 14 14:19:03 2015 +0100

    Merge pull request #196 from srl295/aix

    AIX fixes

commit a13b023dbfd0532e8cd74c356fbbd4453d0ffaa0
Author: Steven R. Loomis <srloomis@us.ibm.com>
Date:   Fri Dec 11 10:21:27 2015 -0800

    AIX fixes

    - use '-w' instead of '\<...\>' for check-header-guards
      grep manpage says these are the same

    - put '-q' first in the grep options

    - move VAR into hb-private.hh

    - hb-font-private.hh - use [VAR] instead of [] for variable array

 src/check-header-guards.sh  | 5 ++---
 src/hb-font-private.hh      | 2 +-
 src/hb-open-type-private.hh | 3 ---
 src/hb-private.hh           | 2 ++
 4 files changed, 5 insertions(+), 7 deletions(-)

commit 49e72634af74a9fbad01f42f48e104218413acc0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 10 17:44:19 2015 +0100

    Limit use of AIX intrinsics to IBM's compiler

 src/hb-atomic-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e1d4d0f1dbd8518b5672245c05d73f22a9ed03ea
Merge: 70b33eda 808d3fc0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 10 16:56:07 2015 +0100

    Merge branch 'font-extents'

    Fixes https://github.com/behdad/harfbuzz/pull/165

commit 808d3fc0eadd379909f2a0308fd3db474f1efde8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 10 16:55:16 2015 +0100

    [util] Port hb-view to use font metrics from HarfBuzz instead of cairo

 util/helper-cairo.cc |  4 +++-
 util/view-cairo.cc   | 24 ++++++++++++------------
 2 files changed, 15 insertions(+), 13 deletions(-)

commit 31fa3892947138c7950303ea3719bb5ceb813625
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 10 16:38:29 2015 +0100

    [ft] Use ftface->size->metrics for font extent info

 src/hb-ft.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 3ad16048fdd841f31f1cb98d7ff9ea1871841146
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 10 16:37:49 2015 +0100

    [ot-font] Respect OS/2 fsSelection USE_TYPO_METRICS bit

 src/hb-ot-font.cc | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

commit 70b33edae7c8b9c031b83c95f00cb383789f1041
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 10 15:54:42 2015 +0100

    Add atomic ops for AIX

    Patch from Volker Simonis.

 src/hb-atomic-private.hh | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

commit 98460779bae19e4d64d29461ff154b3527bf8420
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 7 21:38:47 2015 +0100

    Remove final pause from Arabic shaper

    Back in the old days, we used to apply 'calt' and 'cswh' in Arabic
    shaper,
    with a pause in between.  Then we disabled the 'cswh' because
    Microsoft
    disabled it, but forgot to remove the unnecessary pause.  Do that now.

    This has the benefit that it fixes shaping with monbaiti from
    Windows 10.
    In that version of that font, the lookups from 'calt' are duplicated
    in
    'rclt', and Mongolian was changed to go through Universal Shaping
    Engine.
    We still use the Arabic shaper for Mongolian.  With a pause after
    'calt',
    we were applying the duplicate lookups from 'calt' and 'rclt' twice.
    It
    happened to be the case that these lookups were NOT idempotent.  So we
    were getting wrong shaping.  See thread "Windows 10 monbaiti.ttf
    upgrade
    (5.01 -> 5.51) caused loss of diacritical marks when shaped with
    harfbuz"
    on the mailing list.  This fixes that.

 src/hb-ot-shape-complex-arabic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit dee0fbf9e2eac8b61730efc4978bc10c552b5227
Merge: 255df680 a7ffe353
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 7 10:44:08 2015 +0100

    Merge pull request #192 from behdad/jfkthame-stch

    [issue 191] Make apply_stch() give a more precise fit

commit 255df6801201fb22402420f7b7b7ea8b042df8ba
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 7 10:34:47 2015 +0100

    Fix undefined behavior in cmp function

    Fixes https://bugs.freedesktop.org/show_bug.cgi?id=93274

 src/hb-ot-map-private.hh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit fcf9e61bad13c828b5482f26491c82db65d91c96
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 7 10:30:43 2015 +0100

    Fix sorting order of ot_languages array

    Looks like the original sort was wrongly done.
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=93275

 src/hb-ot-tag.cc | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

commit 70952ddb5a29c5bcbb4b6c3a05a428496033234a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 7 10:28:46 2015 +0100

    Add test to make sure ot-languages array is sorted

    Currently fails.  Part of
    https://bugs.freedesktop.org/show_bug.cgi?id=93275

 src/Makefile.am  |  9 ++++++++-
 src/hb-ot-tag.cc | 23 +++++++++++++++++++++++
 2 files changed, 31 insertions(+), 1 deletion(-)

commit 8c37556f730d7e961394075cd863f624af4c53c4
Merge: 8e5f9026 f35b3e93
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 7 09:34:58 2015 +0100

    Merge pull request #134 from ebraminio/dwrite

    Add working but less prefect DirectWrite backend

commit a7ffe3535836032dba5559080dffeec79473197b
Author: jfkthame <jfkthame@gmail.com>
Date:   Sat Dec 5 17:47:37 2015 +0000

    Make apply_stch() give a more precise fit

    This aims to make Syriac Abbr Mark sizing more accurate when repeating
    segments are used, by adding an extra repeat and tightening up the
    spacing slightly rather than leaving a shortfall corresponding to
    a partial repeat-width.

 src/hb-ot-shape-complex-arabic.cc | 15 ++++++++++++++-
 1 file changed, 14 insertions(+), 1 deletion(-)

commit 8e5f902656d2882d24c30e8b26ddbd3963baa55c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 30 16:53:21 2015 -0800

    src/test.cc: wrong field printed

    Fixes https://github.com/behdad/harfbuzz/issues/188
    Fixes https://bugs.freedesktop.org/show_bug.cgi?id=93182

 src/test.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6f2e6de1fae0ab2269b472a750788817de6c2a6e
Author: Simon Cozens <simon@simon-cozens.org>
Date:   Mon Oct 26 16:23:22 2015 +0900

    Get font ascender and descender metrics from OS/2 table.

 src/hb-font-private.hh |  39 ++++++++++++++++++-
 src/hb-font.cc         | 102
 ++++++++++++++++++++++++++++++++++++++++++++++++-
 src/hb-font.h          |  62 ++++++++++++++++++++++++++++--
 src/hb-ft.cc           |  21 ++++++++++
 src/hb-ot-font.cc      |  58 ++++++++++++++++++++++++++--
 5 files changed, 274 insertions(+), 8 deletions(-)

commit 097c998a0c7b250924801bb69f5fa0c529edd183
Author: Simon Cozens <simon@simon-cozens.org>
Date:   Mon Oct 26 16:22:38 2015 +0900

    Parse the OS/2 table.

 src/Makefile.am        |   1 +
 src/hb-ot-os2-table.hh | 105
 +++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 106 insertions(+)

commit d44d52bd0da033865641dfd39d94852119fd4fd7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 26 19:35:43 2015 -0500

    1.1.2

 NEWS         | 15 +++++++++++++++
 configure.ac |  2 +-
 2 files changed, 16 insertions(+), 1 deletion(-)

commit 35d18585fc57750d817f57bfffe569069f9803b5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 26 19:30:37 2015 -0500

    Fix a few docs blocks

 src/hb-buffer.cc    | 4 ++++
 src/hb-glib.cc      | 2 ++
 src/hb-ot-font.cc   | 2 ++
 src/hb-ot-layout.cc | 6 ++++++
 src/hb-ot-shape.cc  | 4 ++++
 5 files changed, 18 insertions(+)

commit 0e38c918b66df31978d8fd3d8271a9b781384545
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 26 19:26:26 2015 -0500

    [introspection] Make scanner happy with HB_EXTERN

 src/Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit ea512f71084296be3bd893f78650def894066de0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 26 19:22:22 2015 -0500

    Use C-style casts instead of compare to 0, to convert hb_bool_t
    to bool

 src/hb-common.cc                  | 2 +-
 src/hb-fallback-shape.cc          | 2 +-
 src/hb-font-private.hh            | 2 +-
 src/hb-ot-layout.cc               | 2 +-
 src/hb-ot-map.cc                  | 2 +-
 src/hb-ot-shape-complex-hangul.cc | 2 +-
 src/hb-ot-shape-complex-hebrew.cc | 2 +-
 src/hb-ot-shape-complex-indic.cc  | 4 ++--
 src/hb-ot-shape-normalize.cc      | 6 +++---
 src/hb-ot-shape.cc                | 2 +-
 10 files changed, 13 insertions(+), 13 deletions(-)

commit 67a36a725e2a61a096ba0324f359d17f9b02d312
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 26 18:48:42 2015 -0500

    Fix vertical GPOS

    This was brorken earlier, though, it's really hard to notice it.
    Unlike the glyph_h_origin(), an unset glyph_v_origin() does NOT
    mean that the vertical origin is at 0,0.

    Related to https://github.com/behdad/harfbuzz/issues/187

 src/hb-ot-shape.cc | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

commit 1c6a057dd1a52511474630896a597bf8e5215214
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 26 18:48:30 2015 -0500

    Add tests for previous commit

 test/shaping/Makefile.am                                 |   1 +
 .../sha1sum/49c9f7485c1392fa09a1b801bc2ffea79275f22e.ttf | Bin 0 ->
 1496 bytes
 test/shaping/fonts/sha1sum/MANIFEST                      |   1 +
 test/shaping/tests/MANIFEST                              |   1 +
 test/shaping/tests/simple.tests                          |   2 ++
 5 files changed, 5 insertions(+)

commit c41c145c7386ebe72b1cfb0475d836a689fecc5e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 26 18:43:15 2015 -0500

    Make nil glyph_h_origin() function return true

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

    Funcs implementations that have a non-zero horizontal origin must
    implement the glyph_h_origin() callback, nothing new here.

    Other implementations (all I know of!) can simply not set
    glyph_h_origin() now.  I did that for hb-ot and hb-ft in
    44f82750807475aa5b16099ccccd917d488df703, though that broke the
    fallback shaper because the default was returning false...

 src/hb-font.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 766963adba6770dcd45de4417481ed8eda60a716
Merge: b344af80 f798b8e2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 24 15:38:43 2015 -0600

    Merge pull request #114 from ThePhD/vc++-fixes

    Fix all VC++ warnings and errors

commit b344af80ca95b9eddfd6017aa6ae103388d6b5f8
Merge: 662acd26 835bbdc7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 24 15:30:27 2015 -0600

    Merge pull request #177 from fanc999/exporting

    Enable use of compiler directives to export symbols

commit 662acd26d10c38e96a9afcdaab2cb2979794966f
Merge: b24e93e3 1979f6fe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 24 15:29:44 2015 -0600

    Merge pull request #181 from mhosken/master

    Fix y_scale problems in hb-gr

commit b24e93e3a4d98111c4684fa08e9080b471881d5c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 24 13:18:20 2015 -0600

    1.1.1

 NEWS         | 7 +++++++
 configure.ac | 2 +-
 2 files changed, 8 insertions(+), 1 deletion(-)

commit 233944ac91bb81250c0e63150eecfedfaf09f590
Merge: 5a24b1d2 d5382019
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Tue Nov 24 18:37:35 2015 +0400

    Merge pull request #185 from khaledhosny/travis-osx

    [travis] Enable Mac OS X support

commit d538201918e6932ef7645f8d5b2c3491954936f8
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Tue Nov 24 12:46:35 2015 +0400

    [travis] Enable Mac OS X support

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

 .travis.yml | 22 ++++++++++++++++------
 1 file changed, 16 insertions(+), 6 deletions(-)

commit 5a24b1d25c59865e298bf105f54503e79587265c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 23 16:46:14 2015 -0600

    [travis] Remove coverity scan

    I never could get it to work, and it's a proprietary platform.

 .travis.yml | 11 -----------
 README      |  1 -
 2 files changed, 12 deletions(-)

commit 1979f6fedca82fa1e4f65491de491db1aa6dc645
Author: Martin Hosken <martin_hosken@sil.org>
Date:   Mon Nov 23 10:03:56 2015 +0700

    Fix y_scale problems in hb-gr

 src/hb-graphite2.cc | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

commit 835bbdc7c92bd774ff92c42a9277ded72066d29d
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Thu Nov 19 18:34:12 2015 +0800

    Public headers: Decorate public symbols with HB_EXTERN

    This prepares the headers for exporting symbols using visibility
    attributes or __declspec(dllexport), so that we do not need to
    maintain
    symbols listing files, as this is what was and is done in GLib
    and GTK+.

 src/hb-blob.h               |  24 +++++-----
 src/hb-buffer.h             | 100 +++++++++++++++++++-------------------
 src/hb-common.h             |  22 ++++-----
 src/hb-coretext.h           |   6 +--
 src/hb-face.h               |  34 ++++++-------
 src/hb-font.h               | 114
 ++++++++++++++++++++++----------------------
 src/hb-ft.h                 |  18 +++----
 src/hb-glib.h               |   8 ++--
 src/hb-gobject-enums.h.tmpl |   2 +-
 src/hb-gobject-structs.h    |  26 +++++-----
 src/hb-graphite2.h          |   4 +-
 src/hb-icu.h                |   6 +--
 src/hb-ot-font.h            |   2 +-
 src/hb-ot-layout.h          |  56 +++++++++++-----------
 src/hb-ot-shape.h           |   4 +-
 src/hb-ot-tag.h             |   8 ++--
 src/hb-set.h                |  52 ++++++++++----------
 src/hb-shape-plan.h         |  18 +++----
 src/hb-shape.h              |  10 ++--
 src/hb-unicode.h            |  52 ++++++++++----------
 src/hb-uniscribe.h          |   4 +-
 src/hb-version.h.in         |   6 +--
 src/hb.h                    |   4 ++
 23 files changed, 292 insertions(+), 288 deletions(-)

commit f798b8e2d683a1b89b6905b1a8615375b847b468
Author: ThePhD <phdofthehouse@gmail.com>
Date:   Sat Nov 21 16:57:26 2015 -0500

    c-style cast

 src/hb-ot-shape-complex-use.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a6991813659376a6a11c00a9f67d85b4f7ba9b5d
Merge: 1dc32ea4 f19c6db1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 20 13:28:42 2015 -0800

    Merge pull request #176 from behdad/missing-braces

    Add braces for subobject initializer in _hb_font_funcs_nil

commit 1dc32ea4d2f294f9d1ae1c8fd19fb75f9278223b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 20 13:24:19 2015 -0800

    Whitespace

 src/hb-private.hh | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

commit f94c0ecbb1488138d3ec3b9d6d9fb78113dfee4f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 20 13:21:29 2015 -0800

    Define HB_MARK_AS_FLAG_T as a macro instead of using templates

    The generic template operator overloading was causing more problems
    than it
    solved.  Eg:

    https://github.com/behdad/harfbuzz/pull/163
    https://github.com/behdad/harfbuzz/issues/175

    So, just use macros.

    Fixes https://github.com/behdad/harfbuzz/issues/175
    Fixes https://github.com/behdad/harfbuzz/pull/178

 src/hb-private.hh | 27 +++++++++++----------------
 1 file changed, 11 insertions(+), 16 deletions(-)

commit f19c6db18e2e2dd0e9a406fc7e8533049fab48b0
Author: jfkthame <jfkthame@gmail.com>
Date:   Fri Nov 20 08:43:49 2015 +0000

    Add braces for subobject initializer in _hb_font_funcs_nil

    To avoid triggering -Wmissing-braces; see
    https://bugzilla.mozilla.org/show_bug.cgi?id=1226175#c8

 src/hb-font.cc | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

commit 9cc1ed4fa68075b3b142a2737438109772dd0002
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 19 12:39:09 2015 -0800

    Do not allow recursiving to same position and same lookup

    This is just to make it harder to be extremely slow.  There definitely
    are ways still, just harder.  Oh well... how do we tame this problem
    without solving halting problem?!

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

 src/hb-ot-layout-gsubgpos-private.hh                     |   5 +++++
 test/shaping/fonts/sha1sum/MANIFEST                      |   1 +
 .../sha1sum/fab39d60d758cb586db5a504f218442cd1395725.ttf | Bin 0 ->
 1894 bytes
 test/shaping/tests/fuzzed.tests                          |   1 +
 4 files changed, 7 insertions(+)

commit 7d75eee799bbb5ee7eef2651cf7b7d3aee6f09b0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 19 12:03:04 2015 -0800

    [fuzzing] Run fuzzing tests using hb-fuzzer as well

 test/fuzzing/Makefile.am | 4 ++++
 1 file changed, 4 insertions(+)

commit 13188cba7f0eaacd587beeb1c2258526ae24c438
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 19 11:59:03 2015 -0800

    Revert "Fix hang in OOM situations"

    This reverts commit f0599db761d7fc2d585d86e757a797f75ebc7499.

    Commit abadc1717d997b69f987fdf1be9e12156d2d13d6 provides a better
    fix for this.

 src/hb-buffer-private.hh | 6 +-----
 1 file changed, 1 insertion(+), 5 deletions(-)

commit 18e1c6b6ef7c85a1b02e3dae86280d8ed6b65118
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 19 11:50:58 2015 -0800

    Revert "Make sure we make progress in OOM situations"

    This reverts commit 68b507a3c3c62c28c38e13fee733702bb703b6ca.

    Commit abadc1717d997b69f987fdf1be9e12156d2d13d6 provides a better
    fix for this.

 src/hb-buffer-private.hh |  7 +++++--
 src/hb-buffer.cc         | 31 ++++++++-----------------------
 2 files changed, 13 insertions(+), 25 deletions(-)

commit e1118aeac3b5556df0ce502732df8ac92bdac45a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 18 23:40:47 2015 -0800

    1.1.0

 NEWS         | 22 ++++++++++++++++++++++
 configure.ac |  2 +-
 2 files changed, 23 insertions(+), 1 deletion(-)

commit 63fe05c8b1cd4f08b525028409e1299f34750810
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 18 23:52:34 2015 -0800

    Fix make distcheck

 src/Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit 9b087dec7753ad96d256ce1b9ae347bd8d697c75
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 18 23:23:35 2015 -0800

    [travis] Only coverity-scan the coverity_scan branch

    This essentially disables coverity-scan right now, until we find
    a pattern to continuously submit branches there.

    For background reasoning, see:
    Fixes https://github.com/behdad/harfbuzz/issues/171

 .travis.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 85062e3b4655ec6d5c3cf5344ce22cd88c21a2aa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 18 23:09:13 2015 -0800

    Add tests for previous two commits

    To fully test what these are supposed to test, they should be run
    against libharfbuzz-fuzzing.la instead of libharfbuzz.la, but for
    now just record the files.

 .../sha1sum/43979b90b2dd929723cf4fe1715990bcb9c9a56b.ttf | Bin 0 ->
 1804 bytes
 test/shaping/fonts/sha1sum/MANIFEST                      |   2 ++
 .../sha1sum/b9e2aaa0d75fcef6971ec3a96d806ba4a6b31fe2.ttf | Bin 0 ->
 1804 bytes
 test/shaping/tests/fuzzed.tests                          |   2 ++
 4 files changed, 4 insertions(+)

commit 37b40cd8a18e25d3324f829acec197f016f4a524
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 18 23:04:45 2015 -0800

    Fix another move_to assertion failure

    If buf->idx is at end, don't set end past it...

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

 src/hb-ot-layout-gsubgpos-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit abadc1717d997b69f987fdf1be9e12156d2d13d6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 18 17:52:08 2015 -0800

    Try to better handle OOM situations

    Fixes assert fail in https://github.com/behdad/harfbuzz/issues/161
    with libharfbuzz-fuzzing.

 src/hb-ot-layout-gsubgpos-private.hh |  2 +-
 src/hb-ot-layout.cc                  |  2 +-
 src/hb-ot-shape-complex-hangul.cc    |  2 +-
 src/hb-ot-shape-complex-indic.cc     |  2 +-
 src/hb-ot-shape-complex-thai.cc      |  2 +-
 src/hb-ot-shape-complex-use.cc       |  8 +-------
 src/hb-ot-shape-normalize.cc         | 10 +++++-----
 src/hb-ot-shape.cc                   |  2 +-
 8 files changed, 12 insertions(+), 18 deletions(-)

commit ec625f7dfb5f6df19d35d81af6605d05e08321f2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 18 16:37:59 2015 -0800

    Try to fix gnome-continuous build fail

 test/fuzzing/Makefile.am | 2 ++
 1 file changed, 2 insertions(+)

commit ff16ef3379e06afe44b5e78b8893aeae0cee2b5b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 18 16:27:32 2015 -0800

    Enable building a bounded version of the library for fuzzing

    test/fuzzing/hb-fuzzer links against libharfbuzz-fuzzing.so now.

 src/Makefile.am          | 16 ++++++++++++++++
 test/fuzzing/Makefile.am |  9 ++-------
 test/fuzzing/README      |  6 ++----
 3 files changed, 20 insertions(+), 11 deletions(-)

commit e0082ae60dbd87d433f3b2b9d2bfa64b9a4c3663
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 17 18:42:13 2015 -0800

    Move things around

 src/hb-private.hh | 22 +++++++++++-----------
 1 file changed, 11 insertions(+), 11 deletions(-)

commit dde8cc87bd880bd35baf764820f4c85bd0a58696
Merge: e97835ad 167c3271
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 17 18:40:10 2015 -0800

    Merge pull request #163 from fanc999/msvc.src

    Update the sources so they will compile under Visual Studio

commit 167c3271778cd1a8c4433b9d2230901ce17c099e
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Mon Nov 9 17:17:56 2015 +0800

    Fix build on MSVC >= 2012

    Use the DEFINE_ENUM_FLAG_OPERATORS macro in winnt.h on Visual Studio,
    which defines the bitwise operators for the enumerations that we
    want to
    mark as hb_mark_as_flags_t, which will take care of the situation
    on newer
    Visual Studio (>= 2012), where the build breaks with C2057 errors
    as the
    underlying types of the enumerations is not clear to the compiler
    when we
    do a bitwise op within the declaration of the enumerations themselves.

    Also disable the C4200 (nonstandard extension used : zero-sized
    array in
    struct/union) and C4800 ('type' : forcing value to bool 'true' or
    'false'
    (performance warning)) warnings as the C4200 is the intended
    scenario and
    C4800 is harmless but is so far an unavoidable side effect of using
    DEFINE_ENUM_FLAG_OPERATORS.

 src/hb-buffer-private.hh           |  6 +++---
 src/hb-ot-layout-common-private.hh |  2 +-
 src/hb-ot-layout-private.hh        |  4 ++--
 src/hb-ot-map-private.hh           |  2 +-
 src/hb-private.hh                  | 11 +++++++++++
 5 files changed, 18 insertions(+), 7 deletions(-)

commit 4d27bb87468a1b84387e7ce084e3d92c0fc8f065
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Fri Nov 6 14:28:30 2015 +0800

    hb-ot-shape-complex-arabic.cc: Fix build on Visual Studio

    Visual Studio does not like declaring a enum variable within a for
    statement, so fix the build by declaring the enum before doing the for
    loop.

 src/hb-ot-shape-complex-arabic.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit a49e7b7e40127beba25f39ef3c10d7a77e2bb0f0
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Tue Nov 3 18:49:34 2015 +0800

    MSVC builds: Add fallback implementation for pre-2013 MSVC

    Pre-2013 MSVC does not have scalbn() and scalbnf(), which are used
    in the
    utility programs.  Add  fallback implementations for these, which
    can be
    used when necessary.

 util/options.hh | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

commit 998e8dda938cfef0146f1bfc4e8973a0e12d7d35
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Mon Nov 2 16:55:29 2015 +0800

    util: Fix build on Visual Studio

    Use the fallback implementation for lround() only on pre-2013 Visual
    Studio, and ensure we are clear about the types of the parameters for
    lround() and scalbnf(), since Visual Studio can be quite picky on
    ambiguous parameter types.  Also, use g_ascii_strcasecmp() rather than
    strcasecmp() as we are already using GLib for this code and we are
    assured that g_ascii_strcasemp() is available.

    For scalbnf() on pre-2013 Visaul Studio, a fallback implementation is
    needed, but use another forced-included header for those compilers,
    which
    will be added later.

    Also use (char)27 on Visual Studio builds as '\e' is not a recognized
    escape sequence, which will do the same thing.

 util/ansi-print.cc   | 16 +++++++++-------
 util/helper-cairo.cc | 20 ++++++++++----------
 util/options.cc      |  2 +-
 3 files changed, 20 insertions(+), 18 deletions(-)

commit e97835ad43f5c68e8cb29599246cae0f4461d663
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 10 11:37:01 2015 -0800

    [util] Fix crash when --output-file is specified but not
    --output-format

 util/options.hh | 3 +++
 1 file changed, 3 insertions(+)

commit d5f0d7c9fb14255388ab616f56e178cb7ca10ec2
Merge: 04ff23e7 529a9331
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 7 07:50:58 2015 -0800

    Merge pull request #167 from KonstantinRitt/unicode_cp_opt

    Micro optimizations to UTF-16 and UTF-32 codecs

commit 04ff23e73d847ab3a5da0e9fac4fbca19aefd284
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 6 16:29:44 2015 -0800

    [arabic] Improve stretch length calculation

    Err on the side of being too short, than too wide.  Reduces chance
    of overlaps with neighboring glyphs.

 src/hb-ot-shape-complex-arabic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 59821ab8b413df3a444c38b80582a5137e364a70
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 6 16:27:44 2015 -0800

    [arabic] Don't stretch over cased letters

    Addresses
    https://github.com/behdad/harfbuzz/commit/6e6f82b6f3dde0fc6c3c7d991d9ec6cfff57823d#commitcomment-14248516

 src/hb-ot-shape-complex-arabic.cc                  | 24
 +++++++++++++++++++++-
 src/hb-unicode-private.hh                          | 20
 ------------------
 .../script-syriac/misc/abbreviation-mark.txt       |  4 ++--
 3 files changed, 25 insertions(+), 23 deletions(-)

commit 5337db29af39084d677a63154f404eca0c20cfeb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 6 16:18:09 2015 -0800

    Revert "Don't process lookups if buffer is in error"

    This reverts commit f92bd86cc8c11d262d1830c631cb7c63fc9d4bc8.

    We don't want to be like cairo, where as soon as there's an error,
    nothing works anymore.  So, lets process lookups as long as there's
    no new memory needed.  That's also a model that hides fewer bugs.

 src/hb-ot-layout.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 529a93312815dff3c2f37f880bf6ccb428bd3da0
Author: Konstantin Ritt <ritt.ks@gmail.com>
Date:   Sat Nov 7 02:00:04 2015 +0400

    Micro optimization to hb_utf16_t and hb_utf32_t ::prev()

    Implement reverse lookup instead of re-using next()

 src/hb-utf-private.hh | 29 +++++++++++++++++++----------
 1 file changed, 19 insertions(+), 10 deletions(-)

commit 44ae9be7a29eebd6003cad2fdb90b40512a9c8eb
Author: Konstantin Ritt <ritt.ks@gmail.com>
Date:   Sat Nov 7 01:58:38 2015 +0400

    Nano optimization to hb_utf16_t and hb_utf32_t ::next()

 src/hb-utf-private.hh | 17 ++++++-----------
 1 file changed, 6 insertions(+), 11 deletions(-)

commit a6d7668a954a763a053f8af8edbff4731aa43729
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 6 09:46:54 2015 -0800

    [fuzzing] Cap max buffer len at 128

 test/fuzzing/Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit f1c4adbcd3f6275e81e118ddadc9396f82daeccf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 6 09:46:05 2015 -0800

    Fix typo

 src/hb-buffer-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 68b507a3c3c62c28c38e13fee733702bb703b6ca
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 6 00:09:26 2015 -0800

    Make sure we make progress in OOM situations

 src/hb-buffer-private.hh |  7 ++-----
 src/hb-buffer.cc         | 31 +++++++++++++++++++++++--------
 2 files changed, 25 insertions(+), 13 deletions(-)

commit 5a7eb5d4d862f402136044c19ead87ad098bd78f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 6 00:01:24 2015 -0800

    [fuzzing] Add test case for OOM

    From https://github.com/behdad/harfbuzz/issues/161

 .../sha1sum/3511ff5c1647150595846ac414c595cccac34f18.ttf | Bin 0 ->
 1483 bytes
 test/shaping/fonts/sha1sum/MANIFEST                      |   2 +-
 test/shaping/tests/fuzzed.tests                          |   1 +
 3 files changed, 2 insertions(+), 1 deletion(-)

commit f0599db761d7fc2d585d86e757a797f75ebc7499
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 5 23:52:41 2015 -0800

    Fix hang in OOM situations

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

 src/hb-buffer-private.hh | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit f92bd86cc8c11d262d1830c631cb7c63fc9d4bc8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 5 23:52:29 2015 -0800

    Don't process lookups if buffer is in error

 src/hb-ot-layout.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 4301703bddb63a01651a0d58474bb15ac0ebbcf6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 5 23:44:59 2015 -0800

    Limit buffer max size growth

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

 src/hb-buffer-private.hh | 11 +++++++++++
 src/hb-buffer.cc         |  8 ++++++++
 src/hb-ot-shape.cc       |  6 ++++++
 test/fuzzing/Makefile.am |  2 ++
 4 files changed, 27 insertions(+)

commit 19300183a6f0bac0d23f7a994b40a51e9c90d6e1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 5 23:08:50 2015 -0800

    [fuzzing] Add build system

 configure.ac              |  1 +
 test/Makefile.am          |  2 +-
 test/fuzzing/Makefile.am  | 44
 ++++++++++++++++++++++++++++++++++++++++++++
 test/fuzzing/README       |  2 ++
 test/fuzzing/hb-fuzzer.cc |  4 ++--
 5 files changed, 50 insertions(+), 3 deletions(-)

commit 9c9ad214af43685b00f6d8493b7807d6607d4e2d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 5 22:50:52 2015 -0800

    [fuzzer] Add README

    https://github.com/behdad/harfbuzz/issues/139#issuecomment-154202645

 test/fuzzing/README | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

commit 6e6f82b6f3dde0fc6c3c7d991d9ec6cfff57823d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 5 17:29:03 2015 -0800

    Implement SYRIAC ABBREVIATION MARK with 'stch' feature

    The feature is enabled for any character in the Arabic shaper.
    We should experiment with using it for Arabic subtending marks.
    Though, that has a directionality problem as well, since those
    are used with digits...

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

 src/hb-ot-shape-complex-arabic.cc                  | 219
 ++++++++++++++++++++-
 src/hb-unicode-private.hh                          |  19 ++
 .../shaper-arabic/script-syriac/misc/MANIFEST      |   1 +
 .../script-syriac/misc/abbreviation-mark.txt       |  11 ++
 4 files changed, 244 insertions(+), 6 deletions(-)

commit c743ec5886a1f6d57de26da33a770a8706be83d6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 5 17:33:57 2015 -0800

    [ft] Fix extents with negative scales

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

 src/hb-ft.cc | 10 ++++++++++
 1 file changed, 10 insertions(+)

commit 73fec3992acb492829bde1d885f1ebeed8dcc133
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 5 15:22:18 2015 -0800

    Reserve a few scratch-flags bits for complex shapers

 src/hb-buffer-private.hh | 5 +++++
 1 file changed, 5 insertions(+)

commit 136863371c1402769426d892aef1b92f9ca1a25e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 5 13:24:15 2015 -0800

    Add new shaper method postprocess_glyphs()

    Unused currently.  To be used for Syriac stretch implementation.

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

 src/hb-ot-shape-complex-arabic.cc  | 3 ++-
 src/hb-ot-shape-complex-default.cc | 1 +
 src/hb-ot-shape-complex-hangul.cc  | 7 ++++---
 src/hb-ot-shape-complex-hebrew.cc  | 1 +
 src/hb-ot-shape-complex-indic.cc   | 1 +
 src/hb-ot-shape-complex-myanmar.cc | 2 ++
 src/hb-ot-shape-complex-private.hh | 9 +++++++++
 src/hb-ot-shape-complex-thai.cc    | 1 +
 src/hb-ot-shape-complex-tibetan.cc | 1 +
 src/hb-ot-shape-complex-use.cc     | 1 +
 src/hb-ot-shape.cc                 | 9 ++++++---
 11 files changed, 29 insertions(+), 7 deletions(-)

commit 6c0ebd02c99e7536975ba7194832a1f33abd7faf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 5 11:37:48 2015 -0800

    [util] If font has color, generate PNG with color

 util/helper-cairo.cc | 33 ++++++++++++++++++++++++++-------
 util/helper-cairo.hh |  6 +++++-
 util/view-cairo.cc   |  7 ++++++-
 3 files changed, 37 insertions(+), 9 deletions(-)

commit e95eb23a4ee920eab1e2f4eec9cf490bb431452c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 22:55:11 2015 -0800

    Don't try zeroing marks by GDEF if there are no non-ASCII

    This one is a hack, but should be ok.

 src/hb-ot-shape.cc | 4 ++++
 1 file changed, 4 insertions(+)

commit 7fa54ed75aa30ae1d6ee9136ccb83b630c24fb65
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 22:54:49 2015 -0800

    Don't try zeroing mark attachments by Unicode if there's no non-ASCII

 src/hb-ot-shape.cc | 3 +++
 1 file changed, 3 insertions(+)

commit 550bd14d2b21ec2a2b509ff42f4df4341dbf2d46
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 22:58:58 2015 -0800

    Actually commit changes for previous commit

 src/hb-buffer-private.hh       |  2 ++
 src/hb-ot-layout-gpos-table.hh | 15 ++++++++-------
 2 files changed, 10 insertions(+), 7 deletions(-)

commit ff31b3c1b8a2a21b57dba37eb5bb5db0579e0640
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 22:42:41 2015 -0800

    Skip GPOS cursive / attachment adjustmnent if none happened

    I'm starting to really like how free these new scratch_flags are.

 src/hb-ot-layout-gpos-table.hh | 3 +++
 1 file changed, 3 insertions(+)

commit 0f407325f6923db11d332585e8250e3646cb74d6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 22:28:44 2015 -0800

    Minor

 src/hb-ot-shape.cc | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 497a6c2071cd0638e4c6af07621d01335fd963a9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 22:24:19 2015 -0800

    Skip forming clusters if text is all ASCII

 src/hb-ot-shape.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 28de104f15b80df4b678267c4488b7d09a42720c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 22:00:25 2015 -0800

    Move variable-sized struct member to end

    Hopefully makes clang build happy

 src/hb-font-private.hh | 21 ++++++++++-----------
 src/hb-font.cc         | 20 ++++++++++++++++++++
 2 files changed, 30 insertions(+), 11 deletions(-)

commit 5bc28b5f688ee90d103d052e98bc15d6e0e7e0b1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 21:53:16 2015 -0800

    Optimize positioning for when h_origin is nil

 src/hb-ot-shape.cc | 38 ++++++++++++++++++++------------------
 1 file changed, 20 insertions(+), 18 deletions(-)

commit 762770c964f9f0591bf4c44427f73ea3e1c51733
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 21:42:55 2015 -0800

    Add font->has_...() to check for individual nil font funcs

    Hopefully this wouldn't break any compiler.  There was some magic
    moments to getting this to compile...

 src/hb-font-private.hh | 19 +++++++++++++++++--
 src/hb-font.cc         |  7 +++++++
 2 files changed, 24 insertions(+), 2 deletions(-)

commit 88e9a9bcae61421d9dd65715d25e5f20b2847c03
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 21:16:26 2015 -0800

    Minor reshaping of hb_font_funcs_t implementation

    In anticipation of further changes.  No functional changes.

 src/hb-font-private.hh | 80
 ++++++++++++++++++++++++++------------------------
 src/hb-font.cc         |  4 +--
 2 files changed, 43 insertions(+), 41 deletions(-)

commit a6a7715bac8b0c8f5473b84bc649c315ad4d2d51
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 20:51:21 2015 -0800

    Comments

 src/hb-font-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6c48ec830ffac00a920d047ed77acd1b05549074
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 20:47:42 2015 -0800

    [ot] Remove font funcs that do nothing

 src/hb-ot-font.cc | 95
 ++++---------------------------------------------------
 1 file changed, 7 insertions(+), 88 deletions(-)

commit 75ea2daa1d9bbe235cd4a8570efb1913d58c3c62
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 20:43:59 2015 -0800

    [ot] Port ot font funcs to allocated object

 src/hb-ot-font.cc | 47 ++++++++++++++++++++++++++++++++++++++---------
 1 file changed, 38 insertions(+), 9 deletions(-)

commit 44f82750807475aa5b16099ccccd917d488df703
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 20:40:05 2015 -0800

    [ft] Remove font funcs that do nothing

 src/hb-ft.cc | 29 ++++-------------------------
 1 file changed, 4 insertions(+), 25 deletions(-)

commit 7918c261efd283e0428ce7836e9e42768a6aa05c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 20:37:49 2015 -0800

    [ft] Port ft font funcs to allocated object

 src/hb-ft.cc | 45 ++++++++++++++++++++++++++++++++++++---------
 1 file changed, 36 insertions(+), 9 deletions(-)

commit da29b43794cfa3f9a602c34b33c5d8a9c36f87b5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 20:22:44 2015 -0800

    Separate nil font-funcs from parent-peeking font-funcs

    API change: all fonts created with hb_font_create() now inherit from
    (ie have parent) hb_font_get_empty().

 src/hb-font.cc       | 211
 +++++++++++++++++++++++++++++++++++----------------
 test/api/test-font.c |   2 +-
 2 files changed, 145 insertions(+), 68 deletions(-)

commit bee901b38ef3c26a04f69c299c8d5e028a0090e9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 19:28:17 2015 -0800

    Optimize positioning direction calculations

    It makes the binary smaller AND faster.  Yumm!

 src/hb-font-private.hh | 40 +++++++++++++++++++++++++++++++++++++++
 src/hb-ot-shape.cc     | 51
 +++++++++++++++++++++++++++-----------------------
 2 files changed, 68 insertions(+), 23 deletions(-)

commit e3e4bb011ae1a2f1ba05e7ea450595b185304bec
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 18:58:02 2015 -0800

    Don't do fractions if buffer is ASCII-only

 src/hb-buffer-private.hh    | 5 +++--
 src/hb-ot-layout-private.hh | 1 +
 src/hb-ot-shape.cc          | 3 ++-
 3 files changed, 6 insertions(+), 3 deletions(-)

commit 6986208ba3b395534f4c7bcfa51df6bf9038f717
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 18:46:22 2015 -0800

    Optimize runs without Default_Ignorable's

    Now that we have a buffer-wide scratch flags facility, use it to
    optimize away a few passes.

 src/hb-buffer-private.hh     |  3 ++-
 src/hb-ot-layout-private.hh  |  4 +++-
 src/hb-ot-shape-normalize.cc |  4 ++--
 src/hb-ot-shape.cc           | 10 ++++++----
 src/hb-private.hh            |  3 +++
 5 files changed, 16 insertions(+), 8 deletions(-)

commit 14c2de321826c36037adde859ccca3e2011325a9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 18:00:57 2015 -0800

    Limit max edits during sanitize to 8

    Used to be 100.  If a tabe needs more than one or two edits, it's
    probably completely bogus...

    Might help with speeding up fuzzing for
    https://github.com/behdad/harfbuzz/issues/157

 src/hb-open-type-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9cbc39aef962a95b0eba32c24ff9c415d1316d56
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 18:00:53 2015 -0800

    Minor

 src/hb-ot-shape-normalize.cc | 2 ++
 1 file changed, 2 insertions(+)

commit 52e6c4e15893ed1cb0997795912a07b3e446b65a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 17:45:06 2015 -0800

    If font doesn't support U+2011, fall back to U+2010

    Test passes now.

 src/hb-ot-shape-normalize.cc | 10 ++++++++++
 1 file changed, 10 insertions(+)

commit 75483aafa6ad02d6391712d082d093823edcd758
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 17:43:36 2015 -0800

    Untangle if/else waterfall

 src/hb-ot-shape-normalize.cc | 40
 +++++++++++++++++++++++++++-------------
 1 file changed, 27 insertions(+), 13 deletions(-)

commit 04fd8517f85ae9aa05b44f25578d2b19abfef7cb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 17:38:22 2015 -0800

    Add tests for hyphen fallback

    U+2011 is <noBreak> equivaent of U+2010, so we should do the fallback
    for it.  Currently fails.

 test/shaping/Makefile.am                                  |   1 +
 .../sha1sum/1c04a16f32a39c26c851b7fc014d2e8d298ba2b8.ttf  | Bin 0 ->
 820 bytes
 test/shaping/fonts/sha1sum/MANIFEST                       |   2 ++
 test/shaping/tests/MANIFEST                               |   1 +
 test/shaping/tests/hyphens.tests                          |   2 ++
 5 files changed, 6 insertions(+)

commit 550417117da7e14457a11f49a20145311f58587b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 17:37:30 2015 -0800

    [test] Drop hintings when subsetting fonts to record

 test/shaping/record-test.sh | 1 +
 1 file changed, 1 insertion(+)

commit 49ef630936325b2e56a870fcef9aa8473a8f8526
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 17:27:07 2015 -0800

    Adjust the width of various spaces if font does not cover them

    See discussion here:
    https://github.com/behdad/harfbuzz/commit/81ef4f407d9c7bd98cf62cef951dc538b13442eb

    There's no way to disable this fallback, but I don't think it would
    be needed.  Let's hope for the best!

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

 src/hb-buffer-private.hh            |  7 ++++
 src/hb-buffer.cc                    |  2 ++
 src/hb-ot-shape-fallback-private.hh |  4 +++
 src/hb-ot-shape-fallback.cc         | 67
 +++++++++++++++++++++++++++++++++++++
 src/hb-ot-shape-normalize.cc        |  1 +
 src/hb-ot-shape.cc                  |  3 ++
 src/hb-unicode-private.hh           | 56 +++++++++++++++++--------------
 test/shaping/tests/spaces.tests     | 24 ++++++-------
 8 files changed, 126 insertions(+), 38 deletions(-)

commit aa7044de0ceacd71cab19212d266c3a66c03b41e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 16:25:57 2015 -0800

    Generalize flags types

 src/hb-buffer-private.hh           |  3 +++
 src/hb-ot-layout-common-private.hh |  5 +++++
 src/hb-ot-layout-private.hh        |  8 +++++---
 src/hb-ot-map-private.hh           | 16 +---------------
 src/hb-ot-shape.cc                 |  2 +-
 src/hb-private.hh                  | 14 ++++++++++++++
 6 files changed, 29 insertions(+), 19 deletions(-)

commit 7793aad946e09b53523b30d57de85abd1d15f8b6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 14:48:46 2015 -0800

    Normalize various spaces to space if font doesn't support

    This resurrects the space fallback feature, after I disabled
    the compatibility decomposition.  Now I can release HarfBuzz
    again without breaking Pango!

    It also remembers which space character it was, such that later
    on we can approximate the width of this particular space
    character.  That part is not implemented yet.

    We normalize all GC=Zs chars except for U+1680 OGHA SPACE MARK,
    which is better left alone.

 src/hb-ot-layout-private.hh                        |  47
 +++------------------
 src/hb-ot-shape-normalize.cc                       |  12 +++++-
 src/hb-unicode-private.hh                          |  40
 ++++++++++++++++++
 test/shaping/Makefile.am                           |   1 +
 .../1c2c3fc37b2d4c3cb2ef726c6cdaaabd4b7f3eb9.ttf   | Bin 0 -> 316 bytes
 test/shaping/fonts/sha1sum/MANIFEST                |   1 +
 test/shaping/tests/MANIFEST                        |   1 +
 test/shaping/tests/spaces.tests                    |  17 ++++++++
 8 files changed, 76 insertions(+), 43 deletions(-)

commit 8b3c7f9ede77052225cff8495d660860bf9c7629
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 15:30:48 2015 -0800

    [test] Support recording multiple lines of text in record-test.sh

 test/shaping/record-test.sh | 15 +++++++++++++--
 1 file changed, 13 insertions(+), 2 deletions(-)

commit 85658394809fe0593ab5dfb30fd96118765c7dc5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 14:46:52 2015 -0800

    Protect against possible invalid-memory access after OOM

 src/hb-buffer-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 4cc80bed25450af3d84a30ea417fa9275b15e014
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 14:46:10 2015 -0800

    Fix typo!

    Ouch!  Fortunately that function was unused.

 src/hb-buffer-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9ac4b9656dd78ffd129bc3d560a92e2692bc3058
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 14:18:39 2015 -0800

    Add Unicode space category

    Unused so far.

 src/hb-ot-layout-private.hh | 78
 +++++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 76 insertions(+), 2 deletions(-)

commit 8249ec3f86510fd24462ce71ed64a6978f0ade17
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 13:26:17 2015 -0800

    Make top-byte of unicode_props available to be used differently per-GC

 src/hb-ot-layout-private.hh | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit cc5d3a33882b52f906ee4346707700f5e846d2ac
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 13:21:25 2015 -0800

    Towards using top-byte of unicode-props for more things

 src/hb-ot-layout-gsubgpos-private.hh | 1 -
 src/hb-ot-layout-private.hh          | 3 ++-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 2f38dde5a1ea5459789fabaee661cae9235d204e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 13:17:33 2015 -0800

    Add _hb_glyph_info_is_unicode_mark()

    Unused right now.

 src/hb-ot-layout-private.hh | 6 ++++++
 1 file changed, 6 insertions(+)

commit 90d75f93bb85aeb627c4e6bb9e4cbd75895c99f7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 3 12:58:12 2015 -0800

    Tighten ccc-setting a bit and document it

 src/hb-ot-layout-private.hh | 12 +++++++++++-
 src/hb-unicode-private.hh   |  5 +++++
 2 files changed, 16 insertions(+), 1 deletion(-)

commit 2f0dfd43cdc2259e6117704f8077ab6951c761e5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 3 12:28:34 2015 -0800

    Fix test expectation

 test/shaping/tests/fuzzed.tests | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit df698f3299d92867e3305715f675b2621c316acd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 3 12:15:12 2015 -0800

    [ot-font] Fix hmtx table length checking, *again*

    Exactly the same problem that I fixed in
    63ef0b41dc48d6112d1918c1b1de9de8ea90adb5

    I rewrote the table checking yesterday in
    67f8821fb25d9bd55719f5e29a582ae1af4b02b3
    and introduced the exact same issue again. :(
    Good thing we have ongoing fuzzing going now.  Was discovered
    immediately by libFuzzer.  Thanks kcc!

    https://github.com/behdad/harfbuzz/issues/139#issuecomment-153449473
    Fixes https://github.com/behdad/harfbuzz/issues/156

 src/hb-ot-font.cc                                         |   4 ++--
 .../sha1sum/8240789f6d12d4cfc4b5e8e6f246c3701bcf861f.ttf  | Bin 0 ->
 633 bytes
 test/shaping/fonts/sha1sum/MANIFEST                       |   1 +
 test/shaping/tests/fuzzed.tests                           |   1 +
 4 files changed, 4 insertions(+), 2 deletions(-)

commit 3530cc2d7c3b7102902cb0e38b0bf9f46188078d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 3 11:34:47 2015 -0800

    [util] Fix option-parsing leaks

 util/helper-cairo.cc   |  7 +++++--
 util/main-font-text.hh | 22 ++++++++++++++++++---
 util/options.cc        | 21 ++++++++++----------
 util/options.hh        | 53
 +++++++++++++++++++++++++++++++++-----------------
 4 files changed, 70 insertions(+), 33 deletions(-)

commit 642135f3b2d6d6eb800153c76c4718239733c0e6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 3 11:26:34 2015 -0800

    [util] In --debug mode, duplicate font data

    This has the effect that the font data will end up in a memory
    section malloc()ed exactly to its size.  This gives us better
    valgrind detection of out-of-bounds access.

    Previously, the font data was placed in a mmap()ed section or
    GString-allocated area, which didn't have proper protections
    at the end when running under valgrind.

 util/options.cc | 3 +++
 1 file changed, 3 insertions(+)

commit ed2024ef93ac3af214082016e5aa8c14db9d7515
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 2 17:58:12 2015 -0800

    [perf] Micro-optimize

 src/hb-ot-layout-private.hh | 23 ++++++++++++++---------
 1 file changed, 14 insertions(+), 9 deletions(-)

commit 76a5310a830c7ae12037b768c5043bef0ff733a0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 2 17:52:45 2015 -0800

    Remove irrelevant comment

    I tried moving the is_default_ignorable() function to an INTERNAL
    function.  That made the binary size grow by 5k AND things got a
    tad bit slower!

 src/hb-ot-layout-private.hh | 1 -
 1 file changed, 1 deletion(-)

commit 8259669fbd1b070fc02287325894caf1bc4d590e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 2 17:44:05 2015 -0800

    Minor

 src/hb-ot-layout-gsubgpos-private.hh | 2 +-
 src/hb-ot-shape-complex-thai.cc      | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 9382c471eabce8d36d3a73c97499ab60af422716
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 2 17:36:51 2015 -0800

    Combine unicode_props0/1 into a uint16

    Slightly faster.  In prep for more changes.

 src/hb-ot-layout-private.hh | 55
 ++++++++++++++++++++++++---------------------
 1 file changed, 29 insertions(+), 26 deletions(-)

commit 71277185454482cff9b0c10b85c416eb4d6e0ed9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 2 17:27:48 2015 -0800

    [perf] Only call combining_class() for marks

    Saves some time.  Also preparing for reusing the ccc byte for
    other stuff.

 src/hb-ot-layout-private.hh | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)

commit 5ba450407b9d9856453e63a815499da8721ff6a7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 2 15:43:08 2015 -0800

    Make max context-length and max nesting level configurable

    ...at compile time.

 src/hb-ot-layout-common-private.hh   | 10 ++++++++--
 src/hb-ot-layout-gsub-table.hh       |  4 ++--
 src/hb-ot-layout-gsubgpos-private.hh | 20 ++++++++++----------
 3 files changed, 20 insertions(+), 14 deletions(-)

commit 67f8821fb25d9bd55719f5e29a582ae1af4b02b3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 2 15:37:29 2015 -0800

    [ot] Make bad-hmtx handling match FreeType

    Also route fuzzing-related tests through hb-ot-font, to reduce
    dependency
    on FreeType behavior for badly-broken fonts.  Fixes failing test with
    FreeType master.

 src/hb-ot-font.cc               | 24 ++++++++++++++----------
 test/shaping/tests/fuzzed.tests | 10 +++++-----
 2 files changed, 19 insertions(+), 15 deletions(-)

commit 672ca3b4e65a75fb3a418ec5d117ad242a98acbb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 26 14:05:05 2015 -0700

    Use templates for making sure expression is constant

 src/hb-private.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 5c8174eda32c08187bc2ed40eefa1017f5b40668
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 21 18:51:40 2015 -0200

    Update comments for removal of compat decompositions

 src/hb-ot-shape-normalize.cc | 16 ++--------------
 1 file changed, 2 insertions(+), 14 deletions(-)

commit f6799700404c49ae0a6018fd51be19551c76768a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 21 17:20:55 2015 -0200

    Disable compatibility decomposition usage during normalization

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

 src/hb-ot-shape-normalize.cc | 24 ------------------------
 1 file changed, 24 deletions(-)

commit ce889189c1f8ef5b400a17f623dcb8b935d1102b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 21 11:23:12 2015 -0200

    Fix two more -Wshadow warnings

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

 src/hb-open-type-private.hh | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit 4a6b1eedbb0044b57505eea65a329d2dc4f9f917
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 21 11:20:55 2015 -0200

    Fix one more -Wshadow warning

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

 src/hb-ot-layout-gsubgpos-private.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 6f932bc8f9045b224613a617af2b4f3450c79467
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 21 11:16:49 2015 -0200

    Fix a few more -Wshadow-local warnings

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

 src/hb-ot-shape-complex-indic.cc   | 10 +++++-----
 src/hb-ot-shape-complex-myanmar.cc | 10 +++++-----
 src/hb-ot-shape-complex-use.cc     | 10 +++++-----
 3 files changed, 15 insertions(+), 15 deletions(-)

commit b90cb366d7723c28758c6b75a0770613fbb5456e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 21 11:13:21 2015 -0200

    Fix one -Wshadow-compatible-local warning

    From https://bugzilla.mozilla.org/show_bug.cgi?id=1215894

 src/hb-ot-shape-complex-indic.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 50e5750bd8670b4cf4463471a2348d4c99c9d054
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 21 11:10:10 2015 -0200

    Avoid unnecessary cast to 64-bit

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

    Or I think it should.

 src/hb-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 305d2fbf5a2db51447c8ed894a48a88896930673
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 21 11:04:28 2015 -0200

    Add HB_FALLTHROUGH

    Borrowed from https://bugzilla.mozilla.org/show_bug.cgi?id=1215411

 src/hb-ot-shape-complex-indic.cc |  2 +-
 src/hb-ot-shape-complex-thai.cc  |  2 +-
 src/hb-ot-shape-fallback.cc      |  4 +++-
 src/hb-private.hh                | 30 ++++++++++++++++++++++++++++++
 4 files changed, 35 insertions(+), 3 deletions(-)

commit f35b3e931ddacd075c5d0810e9b17de07b232ee2
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Fri Sep 11 09:48:12 2015 +0430

    Add a prototype of DirectWrite as a shaping backend

 src/hb-directwrite.cc | 827
 ++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-directwrite.h  |  34 +++
 src/hb-shaper-list.hh |   3 +
 3 files changed, 864 insertions(+)

commit 6486e3755482563ecd89aeb3f8348ed190945e26
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 20 16:39:41 2015 -0200

    Fix typo

 Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 753ea7b90904c951c199861409458bea182abb37
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 20 15:21:18 2015 -0200

    Add BUILD.md to dist

 Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit 5d7a30fde09320c2c62c7c73570ce3f2e298eba6
Merge: 904b0dc3 2fb95a0c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 20 15:19:41 2015 -0200

    Merge pull request #148 from ebraminio/inst

    Add BUILD.md based on harfbuzz.org docs

commit 904b0dc3811464cf61dc9457664de95ee4f61a86
Merge: 86cadc2c ba096bcc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 19 16:59:43 2015 -0200

    Merge pull request #147 from ebraminio/dockerci

    [ci] change to docker infrastructure

commit ba096bcc28ca80e2096e0a15191848fcd175e395
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Oct 19 21:41:01 2015 +0330

    [ci] change to docker infrastructure

 .travis.yml | 24 ++++++++++++++++--------
 1 file changed, 16 insertions(+), 8 deletions(-)

commit 2fb95a0c9d2cb8b03b7c158706d6b0e41283a6df
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Oct 19 22:02:12 2015 +0330

    Add BUILD.md based on harfbuzz.org docs

 BUILD.md | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

commit 86cadc2cd4171050e9d74306b76c42f6ec74b861
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 15 20:25:29 2015 -0300

    1.0.6

 NEWS         | 13 +++++++++++++
 configure.ac |  2 +-
 2 files changed, 14 insertions(+), 1 deletion(-)

commit ca97ea7aa2cb7186f432aaba76f4f151aa90c1d0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 15 20:20:22 2015 -0300

    [ft] Revert change-of-behavior of hb_ft_font_create() introduced
    in 1.0.5

    The default FreeType load flags where changed from FT_LOAD_NO_HINTING
    to FT_LOAD_DEFAULT in 2a9627c5641cd000e2adff0e42a0dc687b53ec70.
    This is crashing HarfBuzz-enabled FreeType as I suppose it causes
    infinite recursion between HB and FT autohinter...

    Revert the behavior change.

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

 src/hb-ft.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 338ffec9e4a5819f2be21c3a320a567378c977b1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 15 12:55:57 2015 -0300

    Add tests for a couple of fixed issues found by libFuzzer

    From:
    https://github.com/behdad/harfbuzz/issues/139#issuecomment-147616887
    https://github.com/behdad/harfbuzz/issues/139#issuecomment-148289957

 .../sha1sum/375d6ae32a3cbe52fbf81a4e5777e3377675d5a3.ttf | Bin 0 ->
 1024 bytes
 .../sha1sum/641bd9db850193064d17575053ae2bf8ec149ddc.ttf | Bin 0 ->
 305 bytes
 test/shaping/fonts/sha1sum/MANIFEST                      |   2 ++
 test/shaping/tests/fuzzed.tests                          |   2 ++
 4 files changed, 4 insertions(+)

commit 63ef0b41dc48d6112d1918c1b1de9de8ea90adb5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 15 12:47:22 2015 -0300

    [ot-font] Fix hmtx wrong table length check

    Discovered by libFuzzer.  Ouch!

    https://github.com/behdad/harfbuzz/issues/139#issuecomment-148289957

 src/hb-ot-font.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 613e630617074eb9b62b794cc37c9b42a7fb079b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 13 23:33:28 2015 -0300

    Reduce max nesting level from 8 to 6

    We probably should implement better system to catch cyclic lookups.
    But for now, this speeds up worst case behavior with broken fonts
    considerably without compromising legitimate usecases.

    https://github.com/behdad/harfbuzz/issues/139#issuecomment-147788447

 src/hb-ot-layout-common-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ab170529246ad80830bef2b3c8b48e9a8d2b7483
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 13 10:55:33 2015 -0300

    1.0.5

 NEWS         | 24 ++++++++++++++++++++++++
 configure.ac |  2 +-
 2 files changed, 25 insertions(+), 1 deletion(-)

commit ed13e2ce509408f849255be1d3cc3dbd7dbb3ba2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 13 10:32:56 2015 -0300

    [ot-font] Fix leak

    https://github.com/behdad/harfbuzz/issues/139#issuecomment-147616887

 src/hb-ot-font.cc | 1 +
 1 file changed, 1 insertion(+)

commit 55db94be2b754ba9b9121f09abcf8496c798affc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 13 00:33:59 2015 -0400

    Add test for previous commit

 .../sha1sum/0509e80afb379d16560e9e47bdd7d888bebdebc6.ttf   | Bin 0 ->
 61 bytes
 test/shaping/fonts/sha1sum/MANIFEST                        |   1 +
 test/shaping/tests/fuzzed.tests                            |   1 +
 3 files changed, 2 insertions(+)

commit f96664974774bfeb237a7274f512f64aaafb201e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 13 00:30:50 2015 -0400

    Fix another memory access issue discovered by libFuzzer

    Fixes
    https://github.com/behdad/harfbuzz/issues/139#issuecomment-146984679

 src/hb-ot-layout-gpos-table.hh | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit c1a5dc46c2231f7b62421e06b9766ccfebaf3ef5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 12 17:39:52 2015 -0400

    [fuzz] Add fuzzing script from kcc@

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

 test/fuzzing/hb-fuzzer.cc | 47
 +++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 47 insertions(+)

commit cc6ea308d4c99b9dd6d625fa3a9b0ef62fa2614f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 12 17:21:52 2015 -0400

    Extern "C" custom-allocator declerations

 src/hb-private.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 98c6fccc00062ead7a86892dd059aa13d266b981
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 11 21:41:04 2015 -0400

    Add test for ee9b0b6cb5fdb08671ab064f26c299135f828260

 .../sha1sum/5a5daf5eb5a4db77a2baa3ad9c7a6ed6e0655fa8.ttf   | Bin 0 ->
 61 bytes
 test/shaping/fonts/sha1sum/MANIFEST                        |   1 +
 test/shaping/tests/fuzzed.tests                            |   1 +
 3 files changed, 2 insertions(+)

commit 50f489a0a013fc589626bb532a9f64f50bb41f58
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 11 20:59:29 2015 -0400

    Typo

 src/hb-font-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ee9b0b6cb5fdb08671ab064f26c299135f828260
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 9 14:23:15 2015 -0400

    Fix another sanitize bug

    Also discovered by "libFuzzer".

 src/hb-open-type-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 34379b49e6922b86c15ee62f7fe3bf016cdc2514
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 9 12:34:02 2015 -0400

    Add test for previous fix

 test/shaping/Makefile.am                                   |   1 +
 .../sha1sum/1a6f1687b7a221f9f2c834b0b360d3c8463b6daf.ttf   | Bin 0 ->
 64 bytes
 test/shaping/fonts/sha1sum/MANIFEST                        |   1 +
 test/shaping/tests/MANIFEST                                |   1 +
 test/shaping/tests/fuzzed.tests                            |   1 +
 5 files changed, 4 insertions(+)

commit f396fbb000dc1c8acddbf6a16e193b328c5e551e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 9 12:25:55 2015 -0400

    Fix return value of sanitize when subformat is not readable

    This is a fix on top of the previous issue fixed in
    c917965b9e6fe2b21ed6c51559673288fa3af4b7.

    This was caught by "libFuzzer" testing.

 src/hb-open-type-private.hh          |  2 ++
 src/hb-ot-layout-gpos-table.hh       | 15 +++++++--------
 src/hb-ot-layout-gsub-table.hh       | 13 ++++++-------
 src/hb-ot-layout-gsubgpos-private.hh |  8 ++++----
 4 files changed, 19 insertions(+), 19 deletions(-)

commit 77a1a2bc18e7b04d4e352a8777ccce345b2f8659
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 9 12:20:58 2015 -0400

    Add hb_dispatch_context_t

 src/hb-open-type-private.hh          | 26 ++++++++++++++++++++++----
 src/hb-ot-layout-gsubgpos-private.hh | 36
 ++++++++++++------------------------
 src/hb-ot-layout.cc                  |  8 +++-----
 3 files changed, 37 insertions(+), 33 deletions(-)

commit 3e905e396bcd745bda88e751998a76556c5cb8c6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 8 12:51:02 2015 -0400

    Add hb_font_set_parent()

    No reason to not have it.  Makes life easier later.
    We (hb-ft, hb-ot-font, etc) can use this API to inject new
    parent into a font...

 src/hb-font.cc       | 26 ++++++++++++++++++++++++++
 src/hb-font.h        |  4 ++++
 test/api/test-font.c | 12 ++++++++++++
 3 files changed, 42 insertions(+)

commit edeb3dabf4a589d67c3f1da7ba43a74e4d3a9afd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 8 12:47:15 2015 -0400

    [ft] Add version for new API

 src/hb-ft.cc | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

commit 2a9627c5641cd000e2adff0e42a0dc687b53ec70
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 7 17:33:20 2015 -0400

    [ft] API: Add hb_font_[sg]et_load_flags() API

    This changes the default load_flags of fonts created using
    hb_ft_font_create() from NO_HINTING to DEFAULT.  Hope that doesn't
    break too much client code.

    Code calling hb_ft_font_set_funcs() is unaffected.

 src/hb-ft.cc | 163
 +++++++++++++++++++++++++++++++++++++++--------------------
 src/hb-ft.h  |  13 +++--
 2 files changed, 118 insertions(+), 58 deletions(-)

commit 3224a594dcf2164b5585b4ccba34f244af3f61b9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 7 17:33:02 2015 -0400

    Minor

 src/hb-ot-font.cc | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

commit 52b418555b62a3b25399f202c1fa72ab7288c224
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Oct 3 13:20:55 2015 +0100

    Allow compiling with custom allocators

    User can define hb_malloc_impl, etc, to name of custom allocator
    functions
    that have the same signature as malloc.

 src/hb-private.hh | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

commit 88da7bba9fa4665b33f5bfcd45add7443097eaf3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 2 14:38:20 2015 +0100

    Default font scale to face upem

    Makes for a better default and avoids nasty inheritance issues.
    See mailing list thread "Default hb_font_t scale".

 src/hb-font.cc       |  2 ++
 test/api/test-font.c | 13 ++++++++-----
 2 files changed, 10 insertions(+), 5 deletions(-)

commit 1866e17114b41d565eb066e7d9393c2ff3e0a12b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 2 14:21:29 2015 +0100

    Make hb_font_create_sub_font() NOT make parent immutable

    We don't rely on that.  However, whenever hb_font_make_immutable()
    is called, it makes its parenting chain immutable.

 src/hb-font.cc       |  4 +++-
 test/api/test-font.c | 21 +++++++++++++++------
 2 files changed, 18 insertions(+), 7 deletions(-)

commit 980e25cad2e58c31f5361862b9223d94ec47fc7a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 2 08:21:12 2015 +0100

    Fix hb-ot-shape-normalize with empty buffer

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

 src/hb-ot-shape-normalize.cc | 2 ++
 1 file changed, 2 insertions(+)

commit a5efaac4ff61b587f228830b265b39fe8e5e4e47
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 2 08:02:29 2015 +0100

    Replace a couple of malloc()s with calloc()

 src/hb-face.cc       | 2 +-
 src/hb-shape-plan.cc | 2 +-
 src/hb-shaper.cc     | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

commit 26ba4d1e1fb8949632fe08e6a7600badfba4f142
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 2 07:25:52 2015 +0100

    Fix segfault with empty buffer in hb_shape_plan_execute()

    Move the empty-buffer check from hb_shape_full() to
    hb_shape_plan_execute().

    Reported by Simon Cozens.

 src/hb-shape-plan.cc | 9 +++++++--
 src/hb-shape.cc      | 5 -----
 2 files changed, 7 insertions(+), 7 deletions(-)

commit 432ffc47a46d41bea17d839d0d3980e654c6e638
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 30 22:51:16 2015 +0100

    1.0.4

 NEWS         | 7 +++++++
 configure.ac | 2 +-
 2 files changed, 8 insertions(+), 1 deletion(-)

commit b47159011ca518c3b94d782ed16a91ffe9dd2ab2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 29 14:57:02 2015 +0100

    Define return_trace()

    Not functional change (expected!).

 src/hb-open-file-private.hh          |  20 +--
 src/hb-open-type-private.hh          |  62 +++----
 src/hb-ot-cmap-table.hh              |  56 +++----
 src/hb-ot-glyf-table.hh              |   4 +-
 src/hb-ot-head-table.hh              |   2 +-
 src/hb-ot-hhea-table.hh              |   2 +-
 src/hb-ot-hmtx-table.hh              |   2 +-
 src/hb-ot-layout-common-private.hh   | 108 ++++++-------
 src/hb-ot-layout-gdef-table.hh       |  44 ++---
 src/hb-ot-layout-gpos-table.hh       | 252 +++++++++++++++--------------
 src/hb-ot-layout-gsub-table.hh       | 304
 ++++++++++++++++++-----------------
 src/hb-ot-layout-gsubgpos-private.hh | 205 +++++++++++------------
 src/hb-ot-layout-jstf-table.hh       |  35 ++--
 src/hb-ot-maxp-table.hh              |   5 +-
 src/hb-ot-name-table.hh              |  14 +-
 src/hb-private.hh                    |   6 +-
 16 files changed, 575 insertions(+), 546 deletions(-)

commit c917965b9e6fe2b21ed6c51559673288fa3af4b7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 29 14:45:35 2015 +0100

    Add missing returns

    Fixes possible invalid read of two bytes.

    Reported by Behzad Najjarpour Jabbari, Secunia Research.

 src/hb-ot-layout-gpos-table.hh       | 14 +++++++-------
 src/hb-ot-layout-gsub-table.hh       | 12 ++++++------
 src/hb-ot-layout-gsubgpos-private.hh |  8 ++++----
 3 files changed, 17 insertions(+), 17 deletions(-)

commit f3159ba5141c2ab0e430e64742972df140f91c43
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 29 14:34:56 2015 +0100

    Micro-optimize hb_language_from_string()

    As measured / improved by Benson Limketkai.

 src/hb-common.cc | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit f2ad935e19338a29113492150f0c5a5fd5befd75
Author: Sascha Brawer <sascha@brawer.ch>
Date:   Sun Jun 28 03:29:47 2015 +0200

    Handle language tags that indicate phonetic IPA transcription

    The BCP-47 registry defines a variant subtag "fonipa" that can be used
    in combination with arbitrary other language tags. For example,
    "rm-CH-fonipa-sursilv" indicates the Sursilvan dialect of Romansh
    as used in Switzerland, transcribed used the International Phonetic
    Alphabet.

    http://www.iana.org/assignments/language-subtag-registry/language-subtag-registry

 src/hb-ot-tag.cc       | 15 ++++++++++++++-
 test/api/test-ot-tag.c |  7 +++++++
 2 files changed, 21 insertions(+), 1 deletion(-)

commit b8811429b6810c4f13be087b593a862c17d9d987
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 3 15:53:22 2015 +0430

    Fix Since tags

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

 src/hb-blob.cc             | 24 +++++++++----------
 src/hb-buffer-serialize.cc | 10 ++++----
 src/hb-buffer.cc           | 58
 +++++++++++++++++++++++-----------------------
 src/hb-buffer.h            |  9 +++++++
 src/hb-common.cc           | 24 +++++++++----------
 src/hb-common.h            |  3 +++
 src/hb-coretext.cc         |  3 +++
 src/hb-font.h              | 18 +++++++-------
 src/hb-ft.cc               |  6 ++---
 src/hb-graphite2.cc        |  6 +++++
 src/hb-ot-layout.cc        |  2 +-
 src/hb-ot-tag.cc           |  2 +-
 src/hb-set.h               |  3 +++
 src/hb-shape.cc            |  2 +-
 src/hb-unicode.cc          | 18 +++++++-------
 src/hb-unicode.h           | 10 ++++----
 16 files changed, 111 insertions(+), 87 deletions(-)

commit 5d74ff02ab01df67808b416af8bb9cefb06f841e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 3 14:55:59 2015 +0430

    Fix Since: version tags on font and face APIs

    A while back we marked every API as version:1.0.  We should fix
    them all
    to reflect real version they were introduced.  This is a start.

    Patch from Nikolay Sivov.

 src/hb-face.cc | 22 ++++++++---------
 src/hb-font.cc | 76
 +++++++++++++++++++++++++++++-----------------------------
 2 files changed, 49 insertions(+), 49 deletions(-)

commit 7f5405397406a24c5a001b5ef43dcf4d6926415e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 1 17:03:50 2015 +0100

    1.0.3

 NEWS         | 11 +++++++++++
 configure.ac |  2 +-
 2 files changed, 12 insertions(+), 1 deletion(-)

commit 5828c45d7a816ccd0a7f10a665ea3cf8cfd63b05
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 1 16:26:35 2015 +0100

    [indic] Add comments to merge_clusters calls

 src/hb-ot-shape-complex-indic.cc | 21 ++++++++++++++++-----
 1 file changed, 16 insertions(+), 5 deletions(-)

commit bdc8215949a7add742cc800b4fdea6acaa37d152
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 1 16:24:54 2015 +0100

    [thai] Respect cluster-level > 0

 src/hb-ot-shape-complex-thai.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 5b31fe383ead726ec77062501ed3bb24c02842b3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 1 16:24:34 2015 +0100

    [use] Merge /before/ reordering

 src/hb-ot-shape-complex-use.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 0d438f89bd9422c66838c776eb4aa867de0a2ad8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 1 16:24:13 2015 +0100

    [hangul] Merge /before/ reordering

 src/hb-ot-shape-complex-hangul.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f883de664fc4bfe01e30c89e07e31dc113f906d9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 1 16:23:40 2015 +0100

    [OT] Merge /before/ reordering

 src/hb-ot-shape.cc | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit c403d6320074455a5e8e48902c0ac4ee9685e33d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 1 16:15:25 2015 +0100

    [myanmar] Use buffer->sort() to sort cluster

    This can possibly produce more granular clusters.

 src/hb-ot-shape-complex-myanmar.cc | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit e995d33c10a4bd9404699d01bddb2b69d811e9ed
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 1 16:13:32 2015 +0100

    [OT] Merge clusters when reordering marks for normalization

    Fixes https://bugzilla.gnome.org/show_bug.cgi?id=541608
    and cluster test.

 src/hb-buffer-private.hh     |  2 ++
 src/hb-buffer.cc             | 21 +++++++++++++++++++++
 src/hb-ot-shape-normalize.cc |  2 +-
 3 files changed, 24 insertions(+), 1 deletion(-)

commit b6d7d161a87b5dde710924e5c557d39c302f5630
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 1 16:12:44 2015 +0100

    [tests] Add Hebrew test for normalization under cluster-level=1

    Currently fails.
    https://bugzilla.gnome.org/show_bug.cgi?id=541608

 .../sha1sum/43ef465752be9af900745f72fe29cb853a1401a5.ttf | Bin 0 ->
 4272 bytes
 test/shaping/fonts/sha1sum/MANIFEST                      |   1 +
 test/shaping/tests/cluster.tests                         |   1 +
 3 files changed, 2 insertions(+)

commit 93099748e39740a3f6f003c83d9dec1d21660ce8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 1 16:11:27 2015 +0100

    Minor

 src/hb-private.hh | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

commit 85846b3de7491b6a07fed6a2c0c6c1b09943b249
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 1 15:07:52 2015 +0100

    Use insertion-sort instead of bubble-sort

    Needed for upcoming merge-clusters fix.

 src/hb-buffer.cc                           |  4 +--
 src/hb-ot-shape-complex-arabic-fallback.hh |  6 ++--
 src/hb-ot-shape-complex-indic.cc           |  2 +-
 src/hb-ot-shape-complex-myanmar.cc         |  2 +-
 src/hb-ot-shape-normalize.cc               |  6 ++--
 src/hb-private.hh                          | 56
 +++++++++++++-----------------
 6 files changed, 34 insertions(+), 42 deletions(-)

commit fad2674874591b4a1df822603144c8864f5364c1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 1 14:45:46 2015 +0100

    Minor

 test/Makefile.am         | 4 ++++
 test/api/Makefile.am     | 4 ++++
 test/shaping/Makefile.am | 4 ++++
 3 files changed, 12 insertions(+)

commit 23e4fac6de913201f263a73e13d3c1fab31d1bdd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 31 19:41:01 2015 +0100

    Update git.mk from upstream

 git.mk | 17 ++++++++++++++++-
 1 file changed, 16 insertions(+), 1 deletion(-)

commit 5783e05f81bbf6debf2618c8994d6852630d9847
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 31 19:18:10 2015 +0100

    [docs] Move docs/reference/ contents into docs/

 configure.ac                                |   3 +-
 docs/Makefile.am                            | 117
 ++++++++++++++++++++++++++-
 docs/{reference => }/harfbuzz-docs.xml      |   0
 docs/{reference => }/harfbuzz-overrides.txt |   0
 docs/{reference => }/harfbuzz-sections.txt  |   0
 docs/reference/Makefile.am                  | 118
 ----------------------------
 docs/{reference => }/usermanual-ch01.xml    |   0
 docs/{reference => }/usermanual-ch02.xml    |   0
 docs/{reference => }/usermanual-ch03.xml    |   0
 docs/{reference => }/usermanual-ch04.xml    |   0
 docs/{reference => }/usermanual-ch05.xml    |   0
 docs/{reference => }/usermanual-ch06.xml    |   0
 docs/{reference => }/version.xml.in         |   0
 13 files changed, 117 insertions(+), 121 deletions(-)

commit cd5e3a13a6e0b6606d3a421f8cd44cdfb8314907
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 31 19:16:41 2015 +0100

    [docs] Fix out-of-tree build

 docs/reference/Makefile.am               |  9 ++++++++-
 docs/reference/harfbuzz-docs.xml         | 12 ++++++------
 docs/{ => reference}/usermanual-ch01.xml |  0
 docs/{ => reference}/usermanual-ch02.xml |  0
 docs/{ => reference}/usermanual-ch03.xml |  0
 docs/{ => reference}/usermanual-ch04.xml |  0
 docs/{ => reference}/usermanual-ch05.xml |  0
 docs/{ => reference}/usermanual-ch06.xml |  0
 8 files changed, 14 insertions(+), 7 deletions(-)

commit 3899795fa3c3e058e3885ec7a6638f0597a752cc
Merge: d2059652 01e16e88
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 31 10:46:01 2015 +0100

    Merge pull request #131 from simoncozens/docs

    Use gtk-doc to build user's manual as well as reference

commit 01e16e88f50b65b82dcb84773f532f18a351319f
Author: Simon Cozens <simon@simon-cozens.org>
Date:   Mon Aug 31 10:40:17 2015 +0100

    Combine user / reference information into gtk-doc generated manual.

 docs/reference/harfbuzz-docs.xml | 91
 +++++++++++++++++++++++-----------------
 1 file changed, 52 insertions(+), 39 deletions(-)

commit 11a07c4729174e1d4af028103ecb0a351e4c2707
Author: Simon Cozens <simon@simon-cozens.org>
Date:   Mon Aug 31 10:39:10 2015 +0100

    Correct tag hierarchy, to allow for table-of-contents entries.

 docs/usermanual-ch01.xml | 12 ++++++------
 docs/usermanual-ch02.xml |  8 ++++----
 docs/usermanual-ch03.xml | 24 ++++++++++++------------
 docs/usermanual-ch04.xml | 16 ++++++++--------
 docs/usermanual-ch05.xml | 12 ++++++------
 5 files changed, 36 insertions(+), 36 deletions(-)

commit 387d6af428ddd5d4f211fe5748412011013a3826
Author: Simon Cozens <simon@simon-cozens.org>
Date:   Mon Aug 31 10:31:09 2015 +0100

    Missing tag (oops).

 docs/usermanual-ch02.xml | 1 +
 1 file changed, 1 insertion(+)

commit d205965286798af4b7ad07e1eafa58288bee4bdb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 31 10:12:05 2015 +0100

    [docs] Fix typo

 docs/usermanual-ch03.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c424b41705b50055c7f92b268cf78a2680af73af
Merge: 31594b98 5470e744
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 31 09:53:16 2015 +0100

    Merge pull request #129 from simoncozens/docs

    First two chapters. More to follow.

commit 31594b98af0c9181982c77d8d3803753007f8fd4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 30 17:33:04 2015 +0100

    [test] Fix test-object

    See previous commit.

 test/api/test-object.c | 4 ----
 1 file changed, 4 deletions(-)

commit 326b5ebf5748f547e4eb7388d66b79fe23130e2a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 30 17:29:21 2015 +0100

    Poison freed objects such that double-free is detected

    Previously we were setting refcount of freed objects to the inert
    value, which
    was harmful because it caused further destroy()s of the freed object
    to NOT
    call free() and hence hide the bug.  Indeed, after eb0bf3ae6688b7
    test-object
    was double-free'ing objects and this was never caught on Linux.
    It only was
    caught as crashing on Mac.

    Now we poison refcount upon freeing and check that it's valid
    whenever reading
    it.  Makes test-object fail now.

 src/hb-object-private.hh | 21 ++++++++++++++++-----
 1 file changed, 16 insertions(+), 5 deletions(-)

commit 5470e744dd264c2dc33437a68d20bcf7c5ffb905
Author: Simon Cozens <simon@simon-cozens.org>
Date:   Sat Aug 29 08:21:18 2015 +0100

    Current state and skeleton outline

 docs/usermanual-ch03.xml | 77
 ++++++++++++++++++++++++++++++++++++++++++++++++
 docs/usermanual-ch04.xml | 18 +++++++++++
 docs/usermanual-ch05.xml | 13 ++++++++
 docs/usermanual-ch06.xml |  8 +++++
 4 files changed, 116 insertions(+)

commit 6578575cc8aeb05341f2053039acfcd735707674
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 25 20:24:59 2015 +0100

    [GPOS] Fix cursive connection with mix of RTL and non-RTL lookups

    See thread "Issue with cursive attachment" started by Khaled.
    Turned out fixing this wasn't as bad as I had assumed.  I like the
    new code better; we now have a theoretical model of cursive
    connections that is easier to reason about.

 src/hb-ot-layout-gpos-table.hh | 34 ++++++++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)

commit 7368da67244ea53195cd9b95a5c57485df695732
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 25 20:28:39 2015 +0100

    [test] Add test for cursive-positioning with mixed directions

    Fails now.  Fix coming.  See thread "Issue with cursive attachment"
    started by Khaled.  Test fonts were made by modifying test font
    from Khaled to add more anchors.

 test/shaping/Makefile.am                                 |   1 +
 .../sha1sum/298c9e1d955f10f6f72c6915c3c6ff9bf9695cec.ttf | Bin 0 ->
 2520 bytes
 test/shaping/fonts/sha1sum/MANIFEST                      |   2 ++
 .../sha1sum/c4e48b0886ef460f532fb49f00047ec92c432ec0.ttf | Bin 0 ->
 2512 bytes
 test/shaping/tests/MANIFEST                              |   1 +
 test/shaping/tests/cursive-positioning.tests             |   2 ++
 6 files changed, 6 insertions(+)

commit f0807654da160bd7ceb9aff5b8338ec0b643171c
Author: Simon Cozens <simon@simon-cozens.org>
Date:   Tue Aug 25 19:57:15 2015 +0100

    First two chapters. More to follow.

 docs/usermanual-ch01.xml | 115 ++++++++++++++++++++++++++++++
 docs/usermanual-ch02.xml | 182
 +++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 297 insertions(+)

commit 58f2a73fb95af42e264a91cdef7bb5a89e965601
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 25 18:55:34 2015 +0100

    [GPOS] Rewrite cursive attachment slightly differently

    In anticipation for upcoming fix for bug reported by
    Khaled in thread "Issue with cursive attachment".

 src/hb-ot-layout-gpos-table.hh | 36 ++++++++++++++++++++++++------------
 1 file changed, 24 insertions(+), 12 deletions(-)

commit fdd1770e006ca2d2973c049177ceda87a575e07f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 24 13:49:55 2015 +0100

    Add API/cmdline to show glyph extents when serializing buffer

    New API: HB_BUFFER_SERIALIZE_FLAG_GLYPH_EXTENTS

    hb-shape now accepts --show-extents.

    Patch from Simon Cozens.

 src/hb-buffer-serialize.cc | 17 +++++++++++++++++
 src/hb-buffer.h            |  3 ++-
 util/hb-shape.cc           |  2 ++
 util/options.cc            |  1 +
 util/options.hh            |  2 ++
 5 files changed, 24 insertions(+), 1 deletion(-)

commit 2cee5b68a07b99214ef9428fe5d03e7b378a558f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 24 13:45:12 2015 +0100

    [ot-font] Fix short-offset calculation

 src/hb-ot-font.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit b50fcfa82994f93568a54dd1eb7fd327f6db5586
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 23 14:42:20 2015 +0100

    [ot-font] Implement glyph_extents() for TrueType fonts

    This brings ot-fonts into almost-complete shape and mostly in par with
    ft font.

 src/Makefile.am         |   1 +
 src/hb-font.h           |   9 +++--
 src/hb-ot-font.cc       |  90 +++++++++++++++++++++++++++++++++++++++--
 src/hb-ot-glyf-table.hh | 104
 ++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-head-table.hh |   3 +-
 5 files changed, 198 insertions(+), 9 deletions(-)

commit 0299b45000b5047c0b9bf0fe51f3b8b68a7982f8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 21 12:44:36 2015 +0100

    Make BYTE a real type

 src/hb-open-type-private.hh | 16 +++++++++++++++-
 1 file changed, 15 insertions(+), 1 deletion(-)

commit ed6962c795ae7c54aaee9ed5667fa65ccf7412bf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 20 15:39:53 2015 +0100

    [coretext] Use i32 instead of u32 as well

    Shouldn't cause *any* functional changes, but is more correct.

 src/hb-coretext.cc | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

commit 163c435f1807c138da9f74f09d29d913eb9e29e9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 20 15:39:06 2015 +0100

    [uniscribe] Fix negative offsets

    Ouch!

 src/hb-uniscribe.cc | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 789b89ef7130ffe5f22c571fc3cb4e6d35456654
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 19 13:39:57 2015 +0100

    1.0.2

 NEWS         | 13 +++++++++++++
 configure.ac |  2 +-
 2 files changed, 14 insertions(+), 1 deletion(-)

commit 958c268fa3a520666436e77a2111a3b564a36d96
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 19 13:22:12 2015 +0100

    [coretext] Add TODO item

 src/hb-coretext.cc | 1 +
 1 file changed, 1 insertion(+)

commit 7c5bee09d9c7c25672c7c77572ebae0b731892d0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 19 13:20:31 2015 +0100

    [uniscribe] Fix font scale handling

    By default shape at upem (or ppem), and scale results.
    Similar to work done in CoreText backend, but using upem as default.

 src/hb-uniscribe.cc | 25 +++++++++++++++++++------
 1 file changed, 19 insertions(+), 6 deletions(-)

commit 902e74a098dad8c3b487856284f9fdf99b04f9f1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 18 18:55:03 2015 +0100

    Commented-out code to print buffer before each lookup

    To be turned into a useful HB_DEBUG_SHAPE infrastructure...

 src/hb-ot-layout.cc | 12 ++++++++++++
 1 file changed, 12 insertions(+)

commit 75504a50488a6aac0b9789f728fb5b87e641d4c3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 18 18:47:02 2015 +0100

    Allow serializing buffer with output-buffer being used

    Ie, don't call get_positions() if positions are not
    requested for serialization.

 src/hb-buffer-serialize.cc | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit e47b772a56af44a9a4f9ec907ee2091b725b94c1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 18 18:42:47 2015 +0100

    [ot] Change buffer content type right after we map to glyphs

    Needed for upcoming debug output changes.

 src/hb-ot-shape.cc | 2 ++
 1 file changed, 2 insertions(+)

commit d104415e4c1e0f9140f794cd8d09c6460c63e966
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 18 17:33:34 2015 +0100

    [Android.mk] Update for SEA removal and USE addition

 Android.mk | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit ddd6bf12f1cabaa298feed820313483b9893528c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 18 15:55:09 2015 +0100

    Don't declare dependency on freetype in harfbuzz.pc

    See comments.

 src/Makefile.am | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

commit 2c8b3b2e5312c9858584f568b1528c57e5bb8a10
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 18 14:36:43 2015 +0100

    [debug] Print lookup index in debug-apply output

 src/hb-ot-layout-gpos-table.hh       | 5 ++++-
 src/hb-ot-layout-gsub-table.hh       | 5 ++++-
 src/hb-ot-layout-gsubgpos-private.hh | 7 +++++--
 src/hb-ot-layout.cc                  | 3 ++-
 4 files changed, 15 insertions(+), 5 deletions(-)

commit 50ad7788eeb7160caef4ec78e65c7c630e601b06
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 18 10:22:16 2015 +0100

    [coretext] Remove assert that kicks in on Mac OS 10.6

    http://crbug.com/419769

 src/hb-coretext.cc | 18 ++++++++++++++----
 1 file changed, 14 insertions(+), 4 deletions(-)

commit 2b646fa07f5f9d4d10d563a91d22a2750b5fc771
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 17 16:03:28 2015 +0200

    Remove unused function

 src/hb-ot-shape-complex-use.cc | 8 --------
 1 file changed, 8 deletions(-)

commit 23237b0279a04407addf33f599c45faa60f002ca
Author: ThePhD <phdofthehouse@gmail.com>
Date:   Fri Aug 14 01:19:08 2015 -0400

    Last apparent boolean fix!

 src/hb-ot-shape-complex-use.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 5c99cf93d6242803bddcac2ca8300fdec7e0f8a7
Merge: 8ad89f05 539a610e
Author: ThePhD <phdofthehouse@gmail.com>
Date:   Fri Aug 14 01:02:00 2015 -0400

    Merge branch 'master' into vc++-fixes

commit 539a610e2e72375e598ab29fd390ed9ec93816d5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 11 12:58:49 2015 +0200

    Add Libs.private and Requires.private to harfbuzz.pc

    Fixes https://bugs.freedesktop.org/show_bug.cgi?id=64501

 configure.ac       | 12 +++++++++---
 src/Makefile.am    | 15 ++++++++++++---
 src/harfbuzz.pc.in |  2 ++
 3 files changed, 23 insertions(+), 6 deletions(-)

commit c7dfe316f8c0fc04b7976fca5e58eb46d91b4821
Author: jfkthame <jfkthame@gmail.com>
Date:   Fri Aug 7 17:55:03 2015 +0100

    Don't rely on .cluster in _hb_ot_shape_normalize()

    Fixes https://github.com/behdad/harfbuzz/pull/124

 src/hb-ot-shape-normalize.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9099e48e29fe5cfdf8566c8f1ba6ddc8c0799e7e
Author: jfkthame <jfkthame@gmail.com>
Date:   Fri Aug 7 17:51:28 2015 +0100

    Don't rely on .cluster field in fallback_position

    Fixes tests/cluster.

    Fixes https://github.com/behdad/harfbuzz/pull/123

 src/hb-ot-shape-fallback.cc | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

commit f3792342f670978cdc3f8512fb5e80314ca0678d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 8 18:02:18 2015 +0200

    [tests] Add test for fallback positioning with cluster_level > 0

    For https://github.com/behdad/harfbuzz/pull/123
    Currently fails.  Fix coming.

 test/shaping/Makefile.am                                  |   1 +
 .../sha1sum/6466d38c62e73a39202435a4f73bf5d6acbb73c0.ttf  | Bin 0 ->
 824 bytes
 test/shaping/fonts/sha1sum/MANIFEST                       |   1 +
 test/shaping/tests/MANIFEST                               |   1 +
 test/shaping/tests/cluster.tests                          |   1 +
 5 files changed, 4 insertions(+)

commit bd22a5cfae24b3b9253bccaeb139e698e74cd0c3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 7 11:13:27 2015 +0200

    Bug 91559 - HarfBuzz 1.0.1: Inconsistent DLL files
    specified/created...

    Fixes https://bugs.freedesktop.org/show_bug.cgi?id=91559

 src/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 02d6439f420d959183dd446abd0b0118ee1ee061
Merge: 9002c27b 160f6355
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 3 22:47:18 2015 +0300

    Merge pull request #122 from RomainNaour/static-fix

    fix static linking with icu-uc

commit 160f635523d596f61e292776f638d4eb09673463
Author: Romain Naour <romain.naour@openwide.fr>
Date:   Wed Jul 22 23:26:23 2015 +0200

    fix static linking with icu-uc

    When linking test-unicode statically it needs $(ICU_LIBS)
    which contains all required flags.
    Especially -lstdc++.

    Fixes:
    http://autobuild.buildroot.net/results/210/2107f9dfb39eeb6559fb4271c7af8b39aef521ca/

    Signed-off-by: Romain Naour <romain.naour@openwide.fr>

 test/api/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9002c27b2f54bb5135db92045c0d770b47317577
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 27 12:17:54 2015 +0200

    1.0.1

 NEWS         | 9 ++++++++-
 configure.ac | 2 +-
 2 files changed, 9 insertions(+), 2 deletions(-)

commit f1c20e1ba5bf218df7dc3e198bdcf1f449fc9387
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 27 12:16:02 2015 +0200

    [USE] Fix out-of-bounds static array access

 src/hb-ot-shape-complex-use.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 260442346a5756c3538ee8fcbf157d1cddcf6f36
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 26 23:39:10 2015 +0200

    1.0.0

 NEWS            | 10 ++++++++++
 configure.ac    |  4 ++--
 src/Makefile.am |  2 +-
 3 files changed, 13 insertions(+), 3 deletions(-)

commit df6cb84449a473d540821e41fb5007b59644780f
Merge: 2ed6be66 786ba458
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 26 19:40:55 2015 +0200

    Merge branch 'use'

commit 2ed6be66703e6cc67f3a3746e197001dad3d9b74
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 26 19:29:53 2015 +0200

    0.9.42

 NEWS         | 12 ++++++++++++
 configure.ac |  2 +-
 2 files changed, 13 insertions(+), 1 deletion(-)

commit 23e56e088a721863cfdef4f027fb66eecbd77457
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jul 25 17:36:46 2015 +0200

    Fix broken sentence

 src/hb-set-private.hh | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

commit 91a2e5d2878a8c0b4d4500e3d52d4fbaaf1ac0d7
Author: Grigori Goronzy <greg@chown.ath.cx>
Date:   Wed Jul 8 23:28:11 2015 +0200

    Update UCDN to upstream commit 8af93f30

    This adds support for Unicode 8.0 and fixes a bug with wrong
    properties
    for ranges of codepoints.

 src/hb-ucdn.cc               |    6 +
 src/hb-ucdn/ucdn.h           |    6 +
 src/hb-ucdn/unicodedata_db.h | 2167
 +++++++++++++++++++++---------------------
 3 files changed, 1118 insertions(+), 1061 deletions(-)

commit 786ba45847127b9cd4d9c0c01ae0e6c61f3a8e06
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 23 13:04:34 2015 +0100

    [test] Encode Kharoshti text

    Ouch!

 .../in-tree/shaper-use/script-kharoshti/misc.txt   | 72
 +++++++++++-----------
 1 file changed, 36 insertions(+), 36 deletions(-)

commit b4231255032e243153a6f32cf8c93c158cb0bf6a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 23 13:01:55 2015 +0100

    [test] Add Batak and Buginese test texts

 test/shaping/texts/in-tree/shaper-use/MANIFEST     |  2 +
 .../texts/in-tree/shaper-use/script-batak/MANIFEST |  1 +
 .../texts/in-tree/shaper-use/script-batak/misc.txt |  9 +++
 .../in-tree/shaper-use/script-buginese/MANIFEST    |  1 +
 .../in-tree/shaper-use/script-buginese/misc.txt    | 70
 ++++++++++++++++++++++
 5 files changed, 83 insertions(+)

commit b8c159ffccad090974a2b97be0a0140fa09af132
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 23 12:59:17 2015 +0100

    [test] Remove shaper-sea texts under shaper-use

 test/shaping/texts/in-tree/MANIFEST                                     |
 1 -
 test/shaping/texts/in-tree/shaper-sea/MANIFEST                          |
 2 --
 test/shaping/texts/in-tree/shaper-sea/script-cham/MANIFEST              |
 1 -
 test/shaping/texts/in-tree/shaper-sea/script-tai-tham/MANIFEST          |
 1 -
 test/shaping/texts/in-tree/shaper-use/MANIFEST                          |
 2 ++
 .../{shaper-sea/script-cham/misc => shaper-use/script-cham}/MANIFEST
 | 0
 .../{shaper-sea/script-cham/misc => shaper-use/script-cham}/misc.txt
 | 0
 .../script-tai-tham/misc => shaper-use/script-tai-tham}/MANIFEST
 | 0
 .../script-tai-tham/misc => shaper-use/script-tai-tham}/misc.txt
 | 0
 .../script-tai-tham/misc => shaper-use/script-tai-tham}/torture.txt
 | 0
 10 files changed, 2 insertions(+), 5 deletions(-)

commit 67ba7320cc5545baeacfcff64cea338223b9bd6d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 23 12:58:21 2015 +0100

    [test] Remove New Tai Lue texts

    New Tai Lue changed encoding to visual, boring, model.

 test/shaping/texts/in-tree/shaper-sea/MANIFEST                         |
 1 -
 test/shaping/texts/in-tree/shaper-sea/script-new-tai-lue/MANIFEST      |
 1 -
 test/shaping/texts/in-tree/shaper-sea/script-new-tai-lue/misc/MANIFEST |
 1 -
 test/shaping/texts/in-tree/shaper-sea/script-new-tai-lue/misc/misc.txt |
 1 -
 4 files changed, 4 deletions(-)

commit c81d957a264539dfe3252f9a94ee066c4a44edf4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 23 12:50:48 2015 +0100

    [test] Add tests for improved 'vert' feature

 test/shaping/Makefile.am                                 |   1 +
 .../sha1sum/191826b9643e3f124d865d617ae609db6a2ce203.ttf | Bin 0 ->
 2140 bytes
 test/shaping/fonts/sha1sum/MANIFEST                      |   1 +
 test/shaping/tests/MANIFEST                              |   1 +
 test/shaping/tests/vertical.tests                        |   1 +
 5 files changed, 4 insertions(+)

commit 8a6a16dbcb1808c7ed50f9ba320384565bbf405a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 23 12:49:09 2015 +0100

    [test] Add recently added test

    Ouch.

 test/shaping/Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit 895fb31c7f0201f13df5a6866b367476bc4aab2e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 23 12:14:03 2015 +0100

    [test] Support additional options to hb-shape in micro-test suite

 test/shaping/record-test.sh                        | 47
 ++++++++++++++++++----
 test/shaping/run-tests.sh                          |  9 ++++-
 test/shaping/tests/arabic-fallback-shaping.tests   |  2 +-
 test/shaping/tests/arabic-feature-order.tests      |  6 +--
 test/shaping/tests/context-matching.tests          |  6 +--
 test/shaping/tests/default-ignorables.tests        |  2 +-
 test/shaping/tests/hangul-jamo.tests               |  4 +-
 test/shaping/tests/indic-joiner-candrabindu.tests  |  4 +-
 test/shaping/tests/indic-old-spec.tests            |  4 +-
 test/shaping/tests/indic-pref-blocking.tests       |  4 +-
 .../tests/mongolian-variation-selector.tests       |  6 +--
 test/shaping/tests/zero-width-marks.tests          |  4 +-
 12 files changed, 67 insertions(+), 31 deletions(-)

commit 0f98fe88f42471eb8fb28d08d45eca9cd8303f7a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 23 11:52:11 2015 +0100

    [ot] Search globally for 'vert' feature if not found in specified
    script/lang

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

 src/hb-ot-layout-private.hh |  9 +++++++++
 src/hb-ot-layout.cc         | 22 ++++++++++++++++++++++
 src/hb-ot-map-private.hh    |  7 ++++---
 src/hb-ot-map.cc            | 10 ++++++++++
 src/hb-ot-shape.cc          |  6 +++++-
 5 files changed, 50 insertions(+), 4 deletions(-)

commit f327aacfa107bbef0c823ef9c3b7dfc91316040c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 23 11:32:59 2015 +0100

    [ot] Minor

 src/hb-ot-shape.cc | 11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)

commit d78463c8016ff1852233479a1ebde30c3bb6de6e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 23 10:11:35 2015 +0100

    Minor debug output fix

 src/hb-ot-layout.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit d99f50bde0e8be0866385ca6886938d2023dbd4f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 23 10:08:48 2015 +0100

    Add missing TRACE_RETURN

 src/hb-ot-layout-gsubgpos-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2dc8e3f470d7c0b579f867605b8bf40688bc5722
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 23 10:07:21 2015 +0100

    [ot] Add missing return!

 src/hb-ot-layout-gsubgpos-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 582069172c39326c7f94373793c656439a4c2b59
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 22 18:44:59 2015 +0100

    Add test case for deleting default ignorables with positioning

 .../sha1sum/051d92f8bc6ff724511b296c27623f824de256e9.ttf | Bin 0 ->
 2028 bytes
 test/shaping/fonts/sha1sum/MANIFEST                      |   1 +
 test/shaping/tests/MANIFEST                              |   1 +
 test/shaping/tests/default-ignorables.tests              |   1 +
 4 files changed, 3 insertions(+)

commit 8cfbc304ee563ec96e402beed34b10b6c0950a6a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 22 18:41:10 2015 +0100

    Fix hide-default-ignorables after
    f0010dfd01ef4a927b0bdc175dd4e343a8637174

    We can't delete things before hb_ot_layout_position_finish().  So,
    just zero the advance before it, and remove later.

 src/hb-ot-shape.cc | 25 +++++++++++++++++++------
 1 file changed, 19 insertions(+), 6 deletions(-)

commit 2dbd3d29d6548bd96fd976606ed689fac8ad8817
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 22 18:28:39 2015 +0100

    Fix hide-ignorables if font doesn't have space glyph

    Was broken by 82b521aeb7cc73879b44ca4278d6fa8b4347527f, as we have
    positioning data by then and can't use the output buffer.  Ouch!

 src/hb-buffer-private.hh | 18 ------------------
 src/hb-ot-shape.cc       | 44
 +++++++++++++++++++++++++++++++++++---------
 2 files changed, 35 insertions(+), 27 deletions(-)

commit 4ba796b26ee62de0d2830a550f3aa3b4aecf6f59
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 22 17:41:31 2015 +0100

    Refactor _hb_glyph_info_is_default_ignorable()

 src/hb-ot-layout-gsubgpos-private.hh | 3 +--
 src/hb-ot-layout-private.hh          | 4 +++-
 src/hb-ot-shape.cc                   | 9 +++------
 3 files changed, 7 insertions(+), 9 deletions(-)

commit f0010dfd01ef4a927b0bdc175dd4e343a8637174
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 22 17:36:23 2015 +0100

    [ot] Hide default-ignorables before finishing off positioning

    For example, fixes the following sequence with Arial XP:
    628 25cc 651 25cc 64e 3a 20 628 651 34f 64e
    628 25cc 64e 25cc 651 3a 20 628 64e 34f 651

    Discovered as part of:
    https://bugs.freedesktop.org/show_bug.cgi?id=85873

 src/hb-ot-shape.cc | 125
 +++++++++++++++++++++++++++--------------------------
 1 file changed, 63 insertions(+), 62 deletions(-)

commit 376d587f36b4ff10342ee6ca3bacd73532ea44c8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 22 16:51:12 2015 +0100

    Implement more granular cluster-merging

    TODO: Documentation.

    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=71445

 NEWS                              |  8 +++++++
 src/hb-buffer-private.hh          |  1 +
 src/hb-buffer.cc                  | 46
 ++++++++++++++++++++++++++++++++++-----
 src/hb-buffer.h                   | 12 ++++++++++
 src/hb-ot-shape-complex-hangul.cc | 13 +++++------
 src/hb-ot-shape.cc                |  7 ++++++
 util/options.cc                   |  1 +
 util/options.hh                   |  3 +++
 8 files changed, 77 insertions(+), 14 deletions(-)

commit a60e2cfa395718cde48eb81f43adc27b4a92e117
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 22 15:49:08 2015 +0100

    [ot] Don't rely on cluster numbers for ensure_native_direction()

 src/hb-ot-shape.cc | 19 ++++++++++++++++++-
 1 file changed, 18 insertions(+), 1 deletion(-)

commit 701112dad9f6e690b253f1e64f4e7e549f5ae65f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 22 15:42:20 2015 +0100

    [ot] Simplify form_clusters()

 src/hb-buffer-private.hh |  9 ++++++++-
 src/hb-buffer.cc         |  7 ++-----
 src/hb-ot-shape.cc       | 11 +++++++++--
 3 files changed, 19 insertions(+), 8 deletions(-)

commit 7b8b63adc5e0389fc4cf2720ef7e5804ab6c29cc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 22 15:24:26 2015 +0100

    [ot] Don't mirror character if font doesn't support mirrored
    character!

 src/hb-ot-shape.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 97d7c3a100e2673279f066540229d229aaf0df78
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 22 14:28:25 2015 +0100

    [graphite2] Fix bunch of stuff

    Based on patch from Martin Hosken, with review from Jonathan and I.

 src/hb-graphite2.cc | 82
 +++++++++++++++++++++++++++++++++++------------------
 1 file changed, 54 insertions(+), 28 deletions(-)

commit ea7f8414e34d4b5efc7b98974637c08f75440f0e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 22 13:53:45 2015 +0100

    [graphite2] Enlarge buffer for output glyphs!

 src/hb-graphite2.cc | 1 +
 1 file changed, 1 insertion(+)

commit 9cd59db1af47ff511edf251949d58b82673cf704
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 22 13:27:06 2015 +0100

    [USE] Implement topographical features for non-Arabic-joining scripts

    This works per-syllable as per the spec, but we think it should be per
    spacing/base/??? glyph instead.

 src/hb-ot-shape-complex-use.cc | 87
 ++++++++++++++++++++++++++++++++++++++----
 1 file changed, 80 insertions(+), 7 deletions(-)

commit ecb0b24ef3f8177e7c789f45a2e858bd67e31be3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 22 12:02:09 2015 +0100

    Use foreach_cluster in Indic shaper

 src/hb-ot-shape-complex-indic.cc | 90
 +++++++++-------------------------------
 1 file changed, 19 insertions(+), 71 deletions(-)

commit 56f71ff98890fc4fd13e8d9743dc34c4b9407309
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 22 11:58:11 2015 +0100

    Use foreach_syllable in Myanmar shaper

 src/hb-ot-shape-complex-myanmar.cc | 62
 ++++++++------------------------------
 1 file changed, 12 insertions(+), 50 deletions(-)

commit ac596511a8c9eeaeb455ca16b5b9c5f1b9923b3a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 22 11:54:02 2015 +0100

    Add foreach_syllable

    Use it in USE.

 src/hb-ot-layout-private.hh    |  24 ++++++++
 src/hb-ot-shape-complex-use.cc | 129
 +++++++++++++----------------------------
 2 files changed, 64 insertions(+), 89 deletions(-)

commit 8ba9e689680f7685c04cfe7c6019222bdf0c52b0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 22 11:16:01 2015 +0100

    [USE] Do Arabic-like shaping

 src/hb-ot-shape-complex-use.cc | 77
 ++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 75 insertions(+), 2 deletions(-)

commit 9daf2dfb6bd5683fd951bdf166c8b87938257e52
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 22 10:32:30 2015 +0100

    Add hb-ot-shape-complex-arabic-private.hh

 src/Makefile.am                           |  1 +
 src/hb-ot-shape-complex-arabic-private.hh | 50
 +++++++++++++++++++++++++++++++
 src/hb-ot-shape-complex-arabic.cc         | 37 +++++++++++++----------
 3 files changed, 73 insertions(+), 15 deletions(-)

commit a51a661fe1dcfdd3a274a6be6ad741c68d430c8c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 21 18:24:21 2015 +0100

    [USE] Only reorder the first component of a split left mark

 src/hb-ot-shape-complex-use.cc | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit a08a278b15c7e57a1d0a783f2bc877471b9d8229
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 21 18:09:40 2015 +0100

    [USE] Don't compose split matras

    Same logic as in Indic shaper.

 src/hb-ot-shape-complex-use.cc | 15 ++++++++++++++-
 1 file changed, 14 insertions(+), 1 deletion(-)

commit 21cb08a417f1203523191192d6a342e8cd0ea14c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 21 17:47:06 2015 +0100

    Remove unused SEA shaper

 src/Makefile.am                        |   4 -
 src/hb-ot-shape-complex-sea-machine.rl | 102 ---------
 src/hb-ot-shape-complex-sea.cc         | 380
 ---------------------------------
 3 files changed, 486 deletions(-)

commit db1e9cdd41ff7c97c29b4d9b64b2351ed0ef0403
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 21 17:46:06 2015 +0100

    Retire SEA shaper in favor of USE

 src/hb-ot-shape-complex-private.hh | 25 +++----------------------
 1 file changed, 3 insertions(+), 22 deletions(-)

commit 87dde9c64753dea4017f11a7734e7528b8eecac0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 21 17:31:43 2015 +0100

    [USE] Only use USE shaper if script system is not DFLT

    Same logic as Indic and SEA.

 src/hb-ot-shape-complex-private.hh | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

commit 29832d797ff2f3a96721dd44f2f03a83fb2e8dda
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 21 17:24:18 2015 +0100

    Route misc untested scripts through USE shaper instead of Indic

    These were never tested with Indic shaper, and indeed wouldn't
    work there
    because they didn't have their viramas and other config defined.
    They are
    all also supported by MS through USE, so route them there.

 src/hb-ot-shape-complex-private.hh | 91
 +++++---------------------------------
 1 file changed, 11 insertions(+), 80 deletions(-)

commit 40c4a991c7ea18017273ff8993eecc3953869e69
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 21 17:14:54 2015 +0100

    [USE] Implement dotted-circle

    This makes USE feature-complete as far as the Indic-like features
    are concerned.

 src/hb-ot-shape-complex-use-machine.rl | 10 ++++++++++
 src/hb-ot-shape-complex-use.cc         | 18 +++++++++++++++---
 2 files changed, 25 insertions(+), 3 deletions(-)

commit 7ce03ebe7c525919ce22d9094480847ff1b3c2b2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 21 16:55:26 2015 +0100

    [USE] Move pref

 src/hb-ot-shape-complex-use-machine.rl |  9 +++++----
 src/hb-ot-shape-complex-use-private.hh |  9 +++++----
 src/hb-ot-shape-complex-use.cc         | 24 ++++++++++++++++++++++--
 3 files changed, 32 insertions(+), 10 deletions(-)

commit 2d4b62ead931b13f95f5dc0e5b740d997a8d1a8e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 21 16:46:37 2015 +0100

    [USE] Fix-up variation selectors and word joiner in table

 src/gen-use-table.py                 |  7 ++++++-
 src/hb-ot-shape-complex-use-table.cc | 34
 +++++++++++++++++++++++-----------
 2 files changed, 29 insertions(+), 12 deletions(-)

commit ad7178227f16abc17456f122deac1508031cbbc3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 21 16:43:27 2015 +0100

    [USE] Use a couple warnings

 src/gen-use-table.py                 | 20 ++++-----
 src/hb-ot-shape-complex-use-table.cc | 82
 ++++++++++++++++++------------------
 2 files changed, 51 insertions(+), 51 deletions(-)

commit a85c4da9b1750c2f994f9f85226a3e755fafe50b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 21 16:07:10 2015 +0100

    [USE] Move rphf

 src/hb-ot-shape-complex-use.cc | 105
 ++++++++++++++---------------------------
 1 file changed, 35 insertions(+), 70 deletions(-)

commit 5b5617e0664e59770910d04d15175f643a5ffb73
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 21 15:52:15 2015 +0100

    Add FLAG_UNSAFE()

    Unused right now.

 src/hb-private.hh | 1 +
 1 file changed, 1 insertion(+)

commit f8160a495966c790b79134a9f9382b6545f8c733
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 21 15:50:02 2015 +0100

    Add FLAG_SAFE() for values known to be small-enough

    And add check to FLAG()

 src/hb-ot-shape-complex-arabic.cc  |  2 +-
 src/hb-ot-shape-complex-indic.cc   | 12 ++++++------
 src/hb-ot-shape-complex-myanmar.cc |  2 +-
 src/hb-private.hh                  |  5 +++--
 src/hb-unicode-private.hh          |  2 +-
 5 files changed, 12 insertions(+), 11 deletions(-)

commit 366aeaad006b230481a3c08ab4d239fb6b64fef8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 21 15:45:48 2015 +0100

    Add note re ASSERT_STATIC_EXPR_ZERO()

 src/hb-private.hh | 2 ++
 1 file changed, 2 insertions(+)

commit d6adca9fbbbd6fc7c8906121b50c3930fbe2de8e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 21 15:17:27 2015 +0100

    Remove unused macro ASSERT_STATIC_EXPR()

 src/hb-ot-shape-complex-arabic-win1256.hh | 4 ++--
 src/hb-ot-shape-complex-indic-private.hh  | 2 --
 src/hb-private.hh                         | 1 -
 3 files changed, 2 insertions(+), 5 deletions(-)

commit 1025e1a9e7785ac67cc90d05b02862e38b3e6026
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 21 15:05:35 2015 +0100

    Use unsigned in FLAG()

 src/hb-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit cf59c7589c2b4064f4b9f4936115f830089a8ee7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 21 14:51:45 2015 +0100

    [USE] Use use_category() for rphf/pref memory

 src/hb-ot-shape-complex-use.cc | 63
 +++++++++++++++---------------------------
 1 file changed, 22 insertions(+), 41 deletions(-)

commit 595936ec25e9c0924851bd1aa1af5eed3723b54f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 21 14:15:35 2015 +0100

    [USE] Hook of rphf and pref custom processing

    Still no reordering.

 src/hb-ot-layout-private.hh    |   8 ++
 src/hb-ot-shape-complex-use.cc | 181
 +++++++++++++++++++++++++++++++++++++++--
 2 files changed, 181 insertions(+), 8 deletions(-)

commit ba72801325e4bd58f7597938d4409762c9fa530c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 21 11:57:23 2015 +0100

    [USE] Add CGJ to table

 src/gen-use-table.py                 | 13 ++++++++++---
 src/hb-ot-shape-complex-use-table.cc |  1 +
 2 files changed, 11 insertions(+), 3 deletions(-)

commit 4febed61edc5367543e5a206ae01d3393841b612
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 21 10:24:32 2015 +0100

    [USE] Set up features

 src/hb-ot-shape-complex-use.cc | 68
 +++++++++++++++++++++++-------------------
 1 file changed, 38 insertions(+), 30 deletions(-)

commit 52a957795697085a5d379921ddd8aa6cf2f1a99d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 21 10:02:04 2015 +0100

    [USE] Hook up new scripts to USE shaper

    Don't reroute scripts that we were routing to other shapers
    before (just yet).

 src/hb-ot-shape-complex-private.hh | 71
 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 71 insertions(+)

commit b4c0829bc18b696f140a260fa2e1089d10164519
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 21 09:31:19 2015 +0100

    [USE] Remove unused Unicode data enums from USE C++ side

 src/hb-ot-shape-complex-use-private.hh | 66
 +---------------------------------
 src/hb-ot-shape-complex-use.cc         | 14 ++------
 2 files changed, 3 insertions(+), 77 deletions(-)

commit 44910cef626e6d03baa4d89d8fbe2c088971902d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 20 18:01:10 2015 +0100

    [USE] Finish converting Unicode positional categories to USE

    Even compiles.

 src/gen-use-table.py                 | 114 +++++-
 src/hb-ot-shape-complex-use-table.cc | 702
 ++++++++++++++++++-----------------
 2 files changed, 467 insertions(+), 349 deletions(-)

commit ad725552521273a1f571f04bc96a04221c3e067a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 20 17:00:06 2015 +0100

    [USE] Map from Unicode data to USE syllabic categories

    Positional sub-categories not applied yet.

 src/gen-use-table.py                 |  128 ++--
 src/hb-ot-shape-complex-use-table.cc | 1062
 ++++++++++++----------------------
 2 files changed, 409 insertions(+), 781 deletions(-)

commit 20e246e674155d5fb6527722fc3ef3accf2413df
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 20 15:56:19 2015 +0100

    [USE] Start moving Unicode-to-USE mapping into Python code

 src/Makefile.am                      |   2 +-
 src/gen-use-table.py                 | 176
 +++++++++++++++++++++++++++++++++--
 src/hb-ot-shape-complex-use-table.cc |   3 +-
 3 files changed, 169 insertions(+), 12 deletions(-)

commit eb74535cc2c0d0de41e54e75bdc71825ec969523
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 20 15:33:25 2015 +0100

    [USE] Fix Number clusters

    The spec wrongly has "H" where "HN" is meant.

 src/hb-ot-shape-complex-use-machine.rl | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit a9663958fe861950b6f389b389f146232b2cd909
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 20 14:24:55 2015 +0100

    [USE] Start putting together the shaper body

 src/hb-ot-shape-complex-use-private.hh |   2 +-
 src/hb-ot-shape-complex-use.cc         | 339
 +++++++++++++++++++++++++++++++++
 2 files changed, 340 insertions(+), 1 deletion(-)

commit e0eabd7f67462ac34fbfc749d897be478fbd1224
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 20 13:30:51 2015 +0100

    [USE] Put a Ragel machine together

    Grammar from the spec!

 src/hb-ot-shape-complex-use-machine.rl | 169
 +++++++++++++++++++++++++++++++++
 src/hb-ot-shape-complex-use-private.hh | 160
 +++++++++++++++++++++++++++++++
 2 files changed, 329 insertions(+)

commit fd74b939b176f47d34d34b3d33e2a09d255c2d9e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 20 13:30:45 2015 +0100

    Minor

 src/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 5e5c8560cca3cb9c6be90c7c18ecb77d5cca0c0f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 20 12:01:20 2015 +0100

    [USE] Minor optimization of USE table

 src/gen-use-table.py                 |  2 +-
 src/hb-ot-shape-complex-use-table.cc | 30 ++++++++++++------------------
 2 files changed, 13 insertions(+), 19 deletions(-)

commit 14b12f92a9ef7db57c5252ef0442239319ce4bca
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 20 11:57:44 2015 +0100

    [USE] Add Kharoshti test data from Unicode proposal

 test/shaping/texts/in-tree/MANIFEST                |  1 +
 test/shaping/texts/in-tree/shaper-use/MANIFEST     |  1 +
 .../in-tree/shaper-use/script-kharoshti/MANIFEST   |  1 +
 .../in-tree/shaper-use/script-kharoshti/misc.txt   | 36
 ++++++++++++++++++++++
 4 files changed, 39 insertions(+)

commit c48ff288522f33dc6c78520de0a0a74306630895
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 20 11:46:17 2015 +0100

    [USE] Build Universal Shaping Engine data table from Unicode 8 files

 src/gen-use-table.py                 |   35 +-
 src/hb-ot-shape-complex-use-table.cc | 1016
 ++++++++++++++++++++++++++++++++++
 2 files changed, 1032 insertions(+), 19 deletions(-)

commit e2c95116e1423f83a692d6170553d0cc95733d24
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 20 11:32:48 2015 +0100

    [USE] Add Universal Shaping Engine to Makefile

 src/Makefile.am                        |  23 +++-
 src/gen-use-table.py                   | 237
 +++++++++++++++++++++++++++++++++
 src/hb-ot-shape-complex-use-machine.rl |   0
 src/hb-ot-shape-complex-use-private.hh |   0
 src/hb-ot-shape-complex-use-table.cc   |   0
 src/hb-ot-shape-complex-use.cc         |   0
 6 files changed, 254 insertions(+), 6 deletions(-)

commit 41a29af8053782e3a9c6a96a394bd76ef6d42099
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 15 01:39:57 2015 +0100

    Update Arabic shaping table for Unicode 8.0

 src/hb-ot-shape-complex-arabic-table.hh | 26 +++++++++++++-------------
 1 file changed, 13 insertions(+), 13 deletions(-)

commit 64a2726e2c6efce4379a7609024ec21eb4b5e4dc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 15 01:36:39 2015 +0100

    Add Unicode 8.0 scripts

    Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1183209

 src/hb-common.cc | 3 +++
 src/hb-common.h  | 7 +++++++
 2 files changed, 10 insertions(+)

commit 9ae156b76820d9079bae062e7e38c34a386d9bd2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 5 22:43:17 2015 +0100

    Fix pragma usage

    https://bugs.freedesktop.org/show_bug.cgi?id=91228

    Commit cdcdfe61b97a0a48ccf834b6d924d187da9609be changed two `#pragma
    message` to `#pragma error` in hb-unicode.cc, however MSVC uses
    #error,
    just like the #else branch. `#pragma error` is an unknown pragma so
    MSVC does not fail the build because of it, which I believe was the
    intention of that commit.

    If it's meant to be an #error, then the #ifdef for _MSC_VER can be
    removed entirely.

 src/hb-unicode.cc |  5 -----
 src/hb-warning.cc | 10 ----------
 2 files changed, 15 deletions(-)

commit 8ad89f057d737ccbc6f411e9ebcf11b8130a50bb
Author: ThePhD <phdofthehouse@gmail.com>
Date:   Tue Jun 23 09:09:24 2015 -0400

    Spelling words is not my strong point.

 src/hb-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e0a828ecbd708757d67977f7e92a6f4c1b0b92fd
Author: ThePhD <phdofthehouse@gmail.com>
Date:   Tue Jun 23 09:07:17 2015 -0400

    Back to using regular `strdup`, with an `hb-private.hh` fix that
    special-cases VC++'s
    definition and usage of the words

 src/hb-common.cc  | 2 +-
 src/hb-private.hh | 3 +++
 2 files changed, 4 insertions(+), 1 deletion(-)

commit 8e545d59610211261e684c10158b9e5df6fae24d
Author: ThePhD <phdofthehouse@gmail.com>
Date:   Mon Jun 22 22:29:04 2015 -0400

    Fix all VC++ warnings and errors in the current commit's builds.

 src/hb-common.cc                  | 4 ++--
 src/hb-fallback-shape.cc          | 2 +-
 src/hb-ot-layout.cc               | 2 +-
 src/hb-ot-map.cc                  | 2 +-
 src/hb-ot-shape-complex-hangul.cc | 2 +-
 src/hb-ot-shape-complex-hebrew.cc | 2 +-
 src/hb-ot-shape-complex-indic.cc  | 4 ++--
 src/hb-ot-shape-normalize.cc      | 6 +++---
 src/hb-ot-shape.cc                | 2 +-
 9 files changed, 13 insertions(+), 13 deletions(-)

commit 5f13bbd9d4b0970851626e2ce3cf4ecb3cfde801
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 19 13:31:49 2015 -0700

    When removing default-ignorables, merge clusters

    Fixes test-shape, and:
    https://code.google.com/p/chromium/issues/detail?id=497578

 src/hb-buffer-private.hh |  2 ++
 src/hb-buffer.cc         | 36 ++++++++++++++++++++++++++++++++++--
 src/hb-ot-shape.cc       |  2 +-
 3 files changed, 37 insertions(+), 3 deletions(-)

commit 82b521aeb7cc73879b44ca4278d6fa8b4347527f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 19 11:57:57 2015 -0700

    Rewrite hide_default_ignorables

    Separate the loops for the two cases of replacing with space
    and deleting.  For deleting, use the out-buffer machinery.

    Needed for upcoming cluster merge fix.

 src/hb-buffer-private.hh | 18 ++++++++++++++
 src/hb-ot-shape.cc       | 65
 +++++++++++++++++++++++++++++-------------------
 2 files changed, 57 insertions(+), 26 deletions(-)

commit b3a2f6afbac1956b65f29a17b9dc896e86135329
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jun 18 17:15:33 2015 -0700

    [test] Add test for cluster merging

    Based on test from
    https://code.google.com/p/chromium/issues/detail?id=497578

    Currently fails.  Basically, if there's a default_ignorable at the
    start of text, and font has no space glyph, we remove the
    default_ignorable,
    and that makes the first char in text to correspond to no cluster.

    Fix coming.

 test/api/test-shape.c | 43 +++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 43 insertions(+)

commit a6446d44e6d04e1eeea994682e29f9cb6265f7f6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jun 18 11:14:56 2015 -0700

    0.9.41

 NEWS         | 10 ++++++++++
 configure.ac |  2 +-
 2 files changed, 11 insertions(+), 1 deletion(-)

commit cd042fc8c4a3984c3647cd22a27c34f00636f6e8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jun 18 10:55:13 2015 -0700

    [util] Disable hb-fc-list for now

    Until I figure out what to do about the API, and finalize
    the tool.

 util/Makefile.am | 28 ++++++++++++++--------------
 1 file changed, 14 insertions(+), 14 deletions(-)

commit 351f68f4e01a107f62e4eb3458d7c7ae379939fb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 12 17:46:06 2015 -0700

    [bindings] Fix hb_language_get_default() and hb_ot_tag_to_language()

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

 src/hb-common.cc | 2 +-
 src/hb-ot-tag.cc | 9 +++++++++
 2 files changed, 10 insertions(+), 1 deletion(-)

commit f0c80060763475aa34a18ecbef600b6811855cb6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 12 17:37:41 2015 -0700

    [TravisCI] Hook up Coverity

    First try...

 .travis.yml | 13 +++++++++++++
 1 file changed, 13 insertions(+)

commit 8ac446908ca75bea989414a0f551a6da8885bf52
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 12 17:29:05 2015 -0700

    Add Coverity Scan badge

 README | 1 +
 1 file changed, 1 insertion(+)

commit a5e4f6d6088f6ed37fb1d68d3682b8eb4c9b46fe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 10 10:57:46 2015 -0700

    Fix warnings: "member call on null pointer of type"

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

 src/hb-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 16dac7eccf04bb357e95a8e4c18c8418dcfb4030
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 3 12:07:46 2015 -0700

    Fix build

 util/options.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 8dacb7f8b46c70f22b70c78e0a8efc3309137650
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 3 11:53:42 2015 -0700

    Add include check to hb-ot-font.h

 src/hb-ot-font.h | 4 ++++
 1 file changed, 4 insertions(+)

commit 37c8daf724add4a41a06385e571277d137dc2a2f
Merge: f1b44303 01c3a885
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jun 1 13:27:37 2015 -0700

    Merge pull request #111 from brawer/since

    Fix "Since:" tags

commit 01c3a88543850c87483fd8671044df53b368c520
Author: Sascha Brawer <sascha@brawer.ch>
Date:   Mon Jun 1 13:22:01 2015 +0200

    Fix "Since:" tags

    Based on data from http://upstream-tracker.org/versions/harfbuzz.html
    Resolves #103

 src/hb-buffer.cc         | 32 +++++++++++++++++------------
 src/hb-common.cc         |  4 ++--
 src/hb-face.cc           | 12 +++++------
 src/hb-font.cc           | 14 ++++++-------
 src/hb-font.h            |  4 ++--
 src/hb-ft.cc             |  4 ++--
 src/hb-glib.cc           |  3 +++
 src/hb-gobject-structs.h | 18 +++++++++++++++++
 src/hb-ot-font.cc        |  3 +++
 src/hb-ot-layout.cc      | 30 ++++++++++++++++++++++++++++
 src/hb-ot-shape.cc       |  6 ++++++
 src/hb-set.cc            | 52
 ++++++++++++++++++++++++------------------------
 src/hb-shape-plan.cc     | 18 ++++++++---------
 src/hb-shape.cc          |  8 ++++----
 src/hb-unicode.cc        |  6 +++---
 src/hb-unicode.h         | 31 ++++++++++++++++++++++++++---
 16 files changed, 168 insertions(+), 77 deletions(-)

commit f1b44303df0712b433e35e1e1e75115c353b279e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 21 14:00:15 2015 -0700

    Fix unary minus operator applied to unsigned int

    Applying unary minus operator to unsigned int causes the following
    warning on MSVS:

      warning C4146: unary minus operator applied to unsigned type,
      result still unsigned

    Based on patch from Koji Ishi.

    Fixes https://github.com/behdad/harfbuzz/pull/110

 src/hb-ot-font.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 1ae6cdb365c15405500d4f50ec98016dde23a26b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 19 17:42:30 2015 -0700

    [gobject] Remove hb_language_t workarounds for g-i shortcomings

    Using latest gobject-introspection, I don't seem to be having this
    problem anymore:

      https://bugzilla.gnome.org/show_bug.cgi?id=707656

    Removing that kludge makes language_t behave more like the way I
    expect it
    in Python.

    Also fixes:
    https://github.com/behdad/harfbuzz/issues/91

 src/hb-gobject-structs.cc | 1 -
 src/hb-gobject-structs.h  | 8 --------
 2 files changed, 9 deletions(-)

commit ece434fa0fec6754e5164d881c1e967376729eca
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 19 17:20:58 2015 -0700

    [gobject] Macroize value types

    Fixes user_data_t

 src/hb-gobject-structs.cc | 73
 +++++++++++------------------------------------
 1 file changed, 17 insertions(+), 56 deletions(-)

commit 9df099b4837df722e738675af318efcc9ac39a78
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 18 18:37:06 2015 -0700

    [ft] Don't set *glyph in get_glyph() if glyph not found

 src/hb-ft.cc | 16 ++++++++++------
 1 file changed, 10 insertions(+), 6 deletions(-)

commit ff0f210519bcb0e44d4b986f7eef2004383cd344
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 18 14:16:28 2015 -0700

    [util] Minor

 util/ansi-print.cc | 26 +++++++++++++-------------
 1 file changed, 13 insertions(+), 13 deletions(-)

commit fbecde3d5c5c6d5af315140e4966dc850388ad63
Merge: 58015215 74139f98
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 7 10:46:42 2015 -0700

    Merge pull request #105 from ebraminio/master

    Fix Travis CI config to pass again

commit 74139f9839f69ea3e7a1d17627f52fea6c06d58a
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu May 7 13:09:32 2015 +0000

    Fix Travis CI config to pass again

 .travis.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 58015215321a76d68df8e0d51039904a67291108
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 6 00:40:31 2015 -0700

    Add note re OpenType 1.7 language tags

 src/hb-ot-tag.cc | 15 ++++++++++-----
 1 file changed, 10 insertions(+), 5 deletions(-)

commit f6266ad291d7686d5e110255ace5f2ff9e70bf38
Author: Roozbeh Pournader <roozbeh@google.com>
Date:   Tue May 5 22:31:19 2015 -0700

    [minor] Remove comment about Navajo OpenType code.

    Apparently the code is already standardized:
    https://www.microsoft.com/typography/otspec/languagetags.htm

 src/hb-ot-tag.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 42b00118eae46a5183e885e89e0856f41361f57e
Merge: c60f3c8e cfeb0562
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 5 14:49:47 2015 -0700

    Merge pull request #102 from roozbehp/master

    Add OpenType language tag 'NAV ' for Navajo.

commit c60f3c8e1156fe7328d42851013cca97333c3bf7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 4 23:10:32 2015 -0700

    [README.python] Add package name for gobject-introspection on Ubuntu

 README.python | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

commit 82010a4bdb32248deb1337a3357dfae5b203c48d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 4 23:09:51 2015 -0700

    [travis] Comment out gobject-introspection again

    Apparently the version on Travis is 1.32.0, while we require 1.34.0.

 .travis.yml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 8a254bdd29a99eb91b37e9e540179a1a01f77605
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 4 19:22:11 2015 -0700

    [travis] Build with introspection enabled

 .travis.yml | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit be66ec5373634234f221ace9cfed45d76b87f20e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 30 18:27:13 2015 -0400

    Use TRUE/FALSE instead of true/false in docs

 src/hb-shape.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit d055e1fc781c123f38d321846937965ef794257e
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Wed Jan 8 02:28:55 2014 +0200

    Some attempt into initial hb-shape documentation

    Very anaemic, needs to descripe the format understood by
    hb_feature_from_string() etc., but it is just start.

 src/hb-shape.cc | 70
 ++++++++++++++++++++++++++++++++++++++-------------------
 src/hb-shape.h  |  3 ---
 2 files changed, 47 insertions(+), 26 deletions(-)

commit 81bedda58cfc15f1987aa1952290cf9d87b4d074
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 30 13:04:16 2015 -0400

    New API: hb_buffer_reverse_range()

 src/hb-buffer.cc | 17 +++++++++++++++++
 src/hb-buffer.h  |  4 ++++
 2 files changed, 21 insertions(+)

commit cfeb0562ebd8804dad731625153549eafeb78213
Author: Roozbeh Pournader <roozbeh@google.com>
Date:   Wed Apr 29 09:32:42 2015 -0700

    Add OpenType language tag 'NAV ' for Navajo.

    The code is not standardized yet, but is used in some Google fonts.

 src/hb-ot-tag.cc | 1 +
 1 file changed, 1 insertion(+)

commit f724cc351640ee075a9867ef42df32cf5e0ef3b7
Author: Jonathan Kew <jfkthame@gmail.com>
Date:   Thu Apr 23 12:45:02 2015 +0100

    Don't apply Arabic shaping to vertical text.

 src/hb-ot-shape-complex-private.hh | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

commit 97942420bbee1bc6953d5f805621066301fa17ca
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 23 18:56:24 2015 -0700

    Update check-libstdc++ for clang

 src/check-libstdc++.sh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 8f0a4d67143ccdef0b5a6ac99fb9b680c3a2f69c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 23 14:32:33 2015 -0700

    [test] Ignor 'n' and 'i' in hb-unicode-encode

    Allows accepting uniXXXX format.

 test/shaping/hb_test_tools.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 39851ce84efd30f6d0570324ff8f3808a01b813b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 21 19:23:27 2015 -0700

    [coretext] Oops; fix issue number for previous commit

 src/hb-coretext.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 24f17afeafd40ff77177ed42c9007a0f34fcbb78
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 21 19:21:32 2015 -0700

    [coretext] Fix positioning with trailing whitespace

    Fixes https://code.google.com/p/chromium/issues/detail?id=476913

 src/hb-coretext.cc | 11 +++++++++++
 1 file changed, 11 insertions(+)

commit dba482fc4458776ffebdeb2d34b970b4223fa8fd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 17 13:08:08 2015 -0700

    [ot-font] Accept MS Symbol cmap if nothing else found

 src/hb-ot-font.cc | 1 +
 1 file changed, 1 insertion(+)

commit 3029e8b59d1667dc6a53355be89a2b55d7089b88
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 14 13:32:22 2015 -0700

    Revert "Add MSVC pragma for UTF-8 source code"

    This reverts commit 89cbd4d9533011fb5487caa99a0cd58923e7cf59.

    See discussion:
    https://bugzilla.gnome.org/show_bug.cgi?id=747772

 src/hb-private.hh | 1 -
 1 file changed, 1 deletion(-)

commit 820505a186ff60e4bae9d717fe4d7ab2390e6fef
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 13 23:51:45 2015 -0700

    Whitespace

 util/options.cc | 18 +++++++++++-------
 1 file changed, 11 insertions(+), 7 deletions(-)

commit 76d57331117be8e0c2d4a2aee8341969b62b6888
Merge: 89cbd4d9 9ee176ee
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 13 23:40:35 2015 -0700

    Merge pull request #86 from cpfair/hb-shape-output-help-improvement

    Improve hb-shape/hb-view's help text w.r.t. output options

commit 89cbd4d9533011fb5487caa99a0cd58923e7cf59
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 13 12:27:08 2015 -0700

    Add MSVC pragma for UTF-8 source code

    Not sure we have any right now; motivated by this:
    https://bugzilla.gnome.org/show_bug.cgi?id=747772

 src/hb-private.hh | 1 +
 1 file changed, 1 insertion(+)

commit 713f99ff6138b4149d9fd382f9af3ace01ee0da5
Merge: 1086f21e 22524a51
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 10 14:34:05 2015 -0700

    Merge pull request #99 from khaledhosny/introspection-fixes2

    More ntrospection fixes

commit 22524a514f6609a2bc009b6035f6b5b932c719c7
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Fri Apr 10 18:14:45 2015 +0200

    [bindings] Fix hb_buffer_get_segment_properties

    Annotate the output parameter.

 src/hb-buffer.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 1086f21e546e2435d9da6024fd6afa7a36ba3707
Merge: 125cb083 fe97b65a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 10 12:21:04 2015 -0700

    Merge branch 'hb-fc'

commit 125cb08345a7f27e565329d37093b1a60a41a403
Merge: e8fd8393 855a5d7c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 10 12:19:57 2015 -0700

    Merge pull request #98 from KonstantinRitt/WEC2013

    Fix build on WEC2013

commit 04f89e8f7dfdb882e8c98afb613cba3f1d02ed7d
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Fri Apr 10 17:49:01 2015 +0200

    [bindings] Fix ownership of returned hb_language_t

    It should not be freed by the caller.

 src/hb-buffer.cc | 2 +-
 src/hb-common.cc | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 855a5d7cb8f585bf66dd18cb480b8c3feef62480
Author: Konstantin Ritt <ritt.ks@gmail.com>
Date:   Fri Apr 10 17:18:01 2015 +0400

    Fix build on WEC2013

    Based on patch from Björn Breitmeyer

 src/hb-private.hh | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit fe97b65a54a416229e28b1c931e5e01ca19f31d3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 6 16:49:51 2014 -0400

    [utils] Add hb-fc-list

    This is a tool that lists all fonts that can render a given string.
    It uses hb_shape() to do so, and as such is aware of HarfBuzz's
    normalizer.

 configure.ac      |  19 +++++
 util/Makefile.am  |  15 ++++
 util/hb-fc-list.c | 222
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 util/hb-fc.cc     | 149 ++++++++++++++++++++++++++++++++++++
 util/hb-fc.h      |  46 +++++++++++
 5 files changed, 451 insertions(+)

commit eb0bf3ae6688b7e98a706df2ad2714c071d77e22
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 6 15:36:41 2014 -0400

    Relax inert checks

    Previously, when creating an object from inert inputs (eg:
    "hb_font_create(hb_face_get_empty())") we returned the inert
    empty object.  This is not helpful as there are legitimate
    usecases to do that.

    We now never return the inert object unless allocation failed.

    Tests are revised to reflect.

 src/hb-face.cc         |  4 ++--
 src/hb-font.cc         |  4 +---
 src/hb-shape-plan.cc   |  7 +++++--
 test/api/test-font.c   | 10 +++++-----
 test/api/test-object.c | 34 +++++++++++++++++-----------------
 5 files changed, 30 insertions(+), 29 deletions(-)

commit e8fd83932a75cfbaa4638a757868915ebfac3c1f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 9 15:52:26 2015 -0700

    [util/hb-view] Fix rendering with all combinations of negative scales

 util/view-cairo.cc | 90
 ++++++++++++++++++++++++++++--------------------------
 util/view-cairo.hh |  2 --
 2 files changed, 47 insertions(+), 45 deletions(-)

commit 69d5af93169ea2d87276b65d43c889a359d5d81e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 9 15:17:16 2015 -0700

    [util] Minor

 util/view-cairo.cc | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

commit a664810e38b479e05ea32cac263cb5730629f9d8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 9 15:04:42 2015 -0700

    [util] Accept comma as well as space when separating components
    of args

    Applies to --font-size and --margin.

    Hopefully the scanf usage here doesn't have compatibility issues
    (star being counted in the return value, etc).

 util/options.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 9c974360febcfd67247107352425fe8590d9d452
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 9 12:04:14 2015 -0700

    Minor rename

 src/hb-atomic-private.hh | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit f3b170bdd970e31e9dbfed94c07c3cda41269aed
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 8 16:26:24 2015 -0700

    Minor

 src/hb-common.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2958f2c147fc6327175b51a4eaca694263e34ac9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 8 16:26:16 2015 -0700

    Fixup

 src/hb-atomic-private.hh | 1 +
 1 file changed, 1 insertion(+)

commit b931e0b0ceeab0e4819d9c4b838c1a1eb87b52e4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 8 14:39:00 2015 -0700

    Fix warnings

    Part of https://github.com/behdad/harfbuzz/pull/68

 src/hb-ot-font.cc                    |  4 ++--
 src/hb-ot-layout-gsubgpos-private.hh | 22 +++++++++++-----------
 2 files changed, 13 insertions(+), 13 deletions(-)

commit cdcdfe61b97a0a48ccf834b6d924d187da9609be
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 8 13:25:04 2015 -0700

    Err, instead of warn, if mutex / atomic / unicode funcs are missing

    Hopefully this results in fewer badly built HarfBuzz integrations.

 src/hb-unicode.cc |  8 ++++----
 src/hb-warning.cc | 22 ++++++++--------------
 2 files changed, 12 insertions(+), 18 deletions(-)

commit fc3c59a1d746c5280f6216a94fdc1be3e826051f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 8 13:03:27 2015 -0700

    Fix unused var warnings

 src/hb-ot-layout-gpos-table.hh | 1 -
 src/hb-ot-layout-gsub-table.hh | 1 -
 2 files changed, 2 deletions(-)

commit 3f174cd020b7762fae96f20ce14fc9e9abec748f
Author: Konstantin Ritt <ritt.ks@gmail.com>
Date:   Sat Mar 28 00:49:33 2015 +0400

    Minor refactoring to the atomics implementation

    s/atomic_int/atomic_int_impl/ and s/atomic_ptr/atomic_ptr_impl/
    to bring it in par with hb_mutex_impl_t, then re-introduce
    hb_atomic_int_t as a wrapper around hb_atomic_int_impl_t.

    In hb_reference_count_t, make it clear the non-atomic get and set
    are intentional due to nature of the cases they are used in
    (comparison to -1 and the debug output/tracing).

 src/hb-atomic-private.hh | 86
 +++++++++++++++++++++++++++++++-----------------
 src/hb-mutex-private.hh  |  4 ++-
 src/hb-object-private.hh | 21 ++++++------
 3 files changed, 69 insertions(+), 42 deletions(-)

commit 24930d544ee9e247e4cf6a5f6d5207ba9d7a3ddc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 8 12:52:06 2015 -0700

    Minor

 src/hb-mutex-private.hh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 45a8b46f478d4aa63ae5df74b6bb28ebdd7521ac
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 8 12:49:38 2015 -0700

    Allow implementing atomic and mutex ops in config

    Motivated by
    https://github.com/behdad/harfbuzz/pull/92

 src/hb-atomic-private.hh | 6 +++++-
 src/hb-mutex-private.hh  | 7 ++++++-
 2 files changed, 11 insertions(+), 2 deletions(-)

commit 3fe4e92bc5ff09d84c6763cedf06ce80d15a5fb2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 8 12:49:23 2015 -0700

    Minor

 src/hb-set-private.hh | 1 -
 1 file changed, 1 deletion(-)

commit 9868749abe468130d89c80a2501847a83acb4579
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 6 14:51:31 2015 -0700

    [test] Use /usr/bin/env python instead of /usr/bin/python

    Bug 76494 - #!/usr/bin/python in testsuite

    https://bugs.freedesktop.org/show_bug.cgi?id=76494

 test/shaping/hb-diff                 | 2 +-
 test/shaping/hb-diff-colorize        | 2 +-
 test/shaping/hb-diff-filter-failures | 2 +-
 test/shaping/hb-diff-ngrams          | 2 +-
 test/shaping/hb-diff-stat            | 2 +-
 test/shaping/hb-manifest-read        | 2 +-
 test/shaping/hb-manifest-update      | 2 +-
 test/shaping/hb-unicode-decode       | 2 +-
 test/shaping/hb-unicode-encode       | 2 +-
 test/shaping/hb-unicode-prettyname   | 2 +-
 test/shaping/hb_test_tools.py        | 2 +-
 11 files changed, 11 insertions(+), 11 deletions(-)

commit bfcddd32a674dd19fca1bf521e95466a0eec5179
Merge: ce01ad7c 363ceec3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 6 14:41:32 2015 -0700

    Merge pull request #93 from ebraminio/archpy3

    Make hb_test_tools.py compatible with python 3

commit ce01ad7c2f5a259030f4dbec746f85522aa9c3f9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 1 11:05:59 2015 -0700

    MSVC 2015 supports snprintf and not _snprintf

 src/hb-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 560718862f0bd994b62361652d6fd558c4182e2a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 1 11:04:33 2015 -0700

    Move WinCE define to better place

 src/hb-private.hh | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 363ceec3fb0c9566db5a59da31e508f69dea1e92
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Mon Mar 30 03:27:14 2015 +0430

    Make hb_test_tools.py compatible with python 3

    On ArchLinux, /usr/bin/python is linked to python 3 so
    HarfBuzz `make check` is broken there.

    This makes hb_test_tools.py compatible with python 3 while
    no breaking it on python 2.

 test/shaping/hb_test_tools.py | 44
 ++++++++++++++++++++++++-------------------
 1 file changed, 25 insertions(+), 19 deletions(-)

commit aee685086c8fde6f6c4590e483a177c19f222540
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Mar 26 14:13:53 2015 -0400

    Fix VC++ /analyze warnings

    out\debug\hb-buffer-deserialize-text.rl(47) : warning C6001: Using
    uninitialized memory 'pos'.

 src/hb-buffer-deserialize-text.rl | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 8886ab430ca68539cb318e175647e9f6973718b0
Merge: e3671b8f a394bb66
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Mar 22 16:18:57 2015 -0400

    Merge pull request #90 from khaledhosny/introspection-fixes

    [bindings] Fix *_from_string functions

commit a394bb66707184c995fe2d08c80e98220e6ec0b0
Author: Khaled Hosny <khaledhosny@eglug.org>
Date:   Sun Mar 22 20:29:10 2015 +0200

    [bindings] Fix *_from_string functions

    Without the element-type they will be getting garbage, at least with
    Python.

 src/hb-common.cc | 8 ++++----
 src/hb-font.cc   | 2 +-
 src/hb-shape.cc  | 2 +-
 3 files changed, 6 insertions(+), 6 deletions(-)

commit e3671b8f8bb339e8a563a9da9cd5069073200fec
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Mar 20 18:03:02 2015 -0400

    0.9.40

 NEWS         | 8 ++++++++
 configure.ac | 2 +-
 2 files changed, 9 insertions(+), 1 deletion(-)

commit 9e401f6890f2bea1d11914bca436c2230f8d0f1b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Mar 20 16:08:38 2015 -0400

    Fix reverse_range() for empty range

    Fixes coretext notdef loop consisting of all default_ignorable glyphs

    https://code.google.com/p/chromium/issues/detail?id=464755

 src/hb-buffer.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 7481bd49d56d4e814ab1f85fc2df8bf934d520f4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 4 15:47:25 2015 -0800

    Fix previous commit

    I misunderstood how which works.

 autogen.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6763e21afb77b250ad4416ff921d46c63ea12443
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 4 15:43:05 2015 -0800

    Accept glibtoolize as libtoolize

    Of course, we don't really run it, autoreconf does.  We just
    err if neither is available.  glibtoolize is the name it is
    shipped under on OS X.  Reported by Adam.

 autogen.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 02a04e6afb1a76894f3723a467716607970d95d3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 4 12:32:03 2015 -0800

    0.9.39

 NEWS         | 10 ++++++++++
 configure.ac |  2 +-
 2 files changed, 11 insertions(+), 1 deletion(-)

commit 98e3ea8e34c798ce003e946c9a150bb41be9d09b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 4 12:03:39 2015 -0800

    Fix hb-uniscribe build

 src/hb-ot-name-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 8ac345e5c0ed0aad6547592ea0839aabfb4ba980
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Mar 2 16:06:55 2015 -0800

    Fix reverse_range() to only reverse alt array if positions are used

    In hb-coretext, when we were using scratch buffer for book-keeping,
    a reverse_range() caused by the notdef-insertion loop could mess up
    our log_clusters.  Ouch!

 src/hb-buffer.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 1e03d7ac83f3e17aafed1e37390d9ff8394e36da
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 26 13:58:32 2015 -0800

    Better error message if libtool is not installed

    Fixes https://github.com/behdad/harfbuzz/pull/88

 autogen.sh | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

commit 6c918e2997fb82e89485f2b50bee2bf4fcd70592
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 26 13:55:34 2015 -0800

    Clean up gtk-doc.make

 Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit 5ec5875acb12cf07447c9ebfb03212601368dfc4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 26 13:53:05 2015 -0800

    Install git.mk in docs/

 docs/Makefile.am | 2 ++
 1 file changed, 2 insertions(+)

commit d146678d103425b3da7ef393bc6d66f6ba4c5593
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 26 13:52:50 2015 -0800

    Update git.mk from upstream

 git.mk | 35 ++++++++++++++++++++++++++++-------
 1 file changed, 28 insertions(+), 7 deletions(-)

commit 5f541f8f7be82f29b77b481827deb212e12d53e4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Feb 21 16:51:17 2015 +0300

    Minor refactoring

 src/hb-private.hh | 44 ++++++++++++++++++++++++++++----------------
 1 file changed, 28 insertions(+), 16 deletions(-)

commit ef79bdf73bbfde1bfaa222834809d105ab7755b3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Feb 21 16:49:15 2015 +0300

    Minor

 src/hb-ot-layout-common-private.hh | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 68e04afbb1e1073c47474f7a4d6d2cacf7057f6f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Feb 21 16:30:28 2015 +0300

    Typo

 src/hb-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 55553699b38d6481fbfacd0a32fc266e55553b34
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Feb 21 16:29:08 2015 +0300

    Minor

 src/hb-private.hh | 2 --
 1 file changed, 2 deletions(-)

commit 5175300fbaf4ff19b7d38c14c86331bb614b0390
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Feb 21 12:50:01 2015 +0300

    [layout] Fix comparison of GlyphID and hb_codepoint_t

    Before, the IntType::cmp functions providing this and was truncating
    the hb_codepoint_t to 16bits before comparison.  I have no idea how
    this was never discovered, and I'm too lazy to try to reproduce this
    with Pango (which uses non-16bit codepoint numbers for missing
    glyphs).

 src/hb-open-type-private.hh | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 7cce809cb11e0ce65dbdab899779ece3dc337763
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Feb 21 12:41:08 2015 +0300

    Remove unused (and wrong as of a few commits ago) cmp() function

 src/hb-open-type-private.hh | 1 -
 1 file changed, 1 deletion(-)

commit 8e3d4bae033bdec649676da26cfc3eb7610832a8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Feb 21 12:31:59 2015 +0300

    Minor

 src/hb-ot-layout-common-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f47cf1f12dd1fa3cd3aa84502139caca9d469af8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Feb 21 11:45:22 2015 +0300

    Minor

 src/hb-ot-layout.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 640b66c6348653bfd7cf88ea9caa2133c0eb949f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 19 17:30:05 2015 +0300

    [layout] If lookup has only one subtable, move the forward loop down
    to subtable

    I was hoping to see a nice speedup, but it resulted in a very
    minor one.

 src/hb-ot-layout.cc | 33 ++++++++++++++++++++++++++++++++-
 1 file changed, 32 insertions(+), 1 deletion(-)

commit e2f50f2a7ebf9882ea89dc3f0c740e7fce964e37
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 19 17:15:05 2015 +0300

    [layout] Add apply_forward / apply_backward

 src/hb-ot-layout.cc | 69
 +++++++++++++++++++++++++++++++++++------------------
 1 file changed, 46 insertions(+), 23 deletions(-)

commit 1d4a328472f094c0d75a062f6e176c6b1875cfdc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 19 11:33:30 2015 +0300

    [layout] Remove unneeded return value from apply()

 src/hb-ot-layout.cc | 12 +++++-------
 1 file changed, 5 insertions(+), 7 deletions(-)

commit bbdd6fd21cc2e079defff7cb17c3eb8eff3f9e09
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 19 17:03:02 2015 +0300

    Minor simpilfy BEInt

 src/hb-open-type-private.hh | 25 ++-----------------------
 1 file changed, 2 insertions(+), 23 deletions(-)

commit 88a399acdc0fcb060803da0e7db56de2866981e3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 19 16:57:12 2015 +0300

    Optimize IntType comparison to avoid branches for 16bit numbers

 src/hb-open-type-private.hh | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

commit 37de2d533126245774417234e3536fcfb24f3a6b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 19 16:55:51 2015 +0300

    Minor simplify IntType

 src/hb-open-type-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit bd047d3b7f04d551c0a26bc0ce9b9d61481e34e1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 19 10:47:18 2015 +0300

    [layout] Minor

 src/hb-ot-layout-gpos-table.hh | 6 ++++++
 src/hb-ot-layout-gsub-table.hh | 6 ++++++
 src/hb-ot-layout.cc            | 4 ++--
 3 files changed, 14 insertions(+), 2 deletions(-)

commit b9d3f60520c022dc952e65a66eb138d1f7cae2e1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 19 10:42:41 2015 +0300

    [layout] Minor

 src/hb-ot-layout.cc | 15 ++++-----------
 1 file changed, 4 insertions(+), 11 deletions(-)

commit 1a2322134a5d7bba990da28baf893b35879a5a7a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 19 10:40:23 2015 +0300

    [layout] Don't check glyph props against lookup flags when recursing

    Shouldn't be needed.  I have a hard time imagining this breaking any
    legitimate use case.

 src/hb-ot-layout-gpos-table.hh | 10 +---------
 src/hb-ot-layout-gsub-table.hh | 10 +---------
 2 files changed, 2 insertions(+), 18 deletions(-)

commit 095a1257cc3cc56b044b4cd842a92f0d0f933a50
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 19 10:29:41 2015 +0300

    [layout] Port sanitize() to use dispatch()

    Needed some rework of Extension table.  Hopefully I got it right, and
    the new template usage doesn't break any compilers...

 src/hb-open-type-private.hh          |  5 ++-
 src/hb-ot-layout-gpos-table.hh       | 82
 +----------------------------------
 src/hb-ot-layout-gsub-table.hh       | 72 ++-----------------------------
 src/hb-ot-layout-gsubgpos-private.hh | 84
 ++++++++++++------------------------
 4 files changed, 37 insertions(+), 206 deletions(-)

commit 758fb20630f84c3d373cda37974b88f16c02995e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 18 13:45:03 2015 +0300

    Remove unused macro

 src/hb-ot-shape-complex-arabic-win1256.hh | 1 -
 1 file changed, 1 deletion(-)

commit 40c58923cbf689c465f9b65334c455a9b7f71ab0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 18 13:18:46 2015 +0300

    [layout] Refactor Lookup::dispatch()

 src/hb-ot-layout-common-private.hh   | 20 ++++++++++++++++++++
 src/hb-ot-layout-gpos-table.hh       | 12 +-----------
 src/hb-ot-layout-gsub-table.hh       | 12 +-----------
 src/hb-ot-layout-gsubgpos-private.hh |  6 ------
 4 files changed, 22 insertions(+), 28 deletions(-)

commit 70366f5d19df2e654f0933474fecf1aa16e27812
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 18 13:09:54 2015 +0300

    [layout] Refactor get_subtable()

 src/hb-ot-layout-common-private.hh | 12 ++++++++++++
 src/hb-ot-layout-gpos-table.hh     |  4 ++--
 src/hb-ot-layout-gsub-table.hh     |  6 +++---
 3 files changed, 17 insertions(+), 5 deletions(-)

commit f72f326aea6d1e93f63040730f7aecd401676c1c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 17 19:18:07 2015 +0300

    Minor

 src/hb-ot-layout-gpos-table.hh | 1 -
 1 file changed, 1 deletion(-)

commit 8e36ccfd4f076888076ca176c055c18104af03b6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 17 19:15:34 2015 +0300

    [layout] Use dispatch() for add_coverage()

 src/hb-ot-layout-gpos-table.hh       | 12 ++----------
 src/hb-ot-layout-gsub-table.hh       | 12 ++----------
 src/hb-ot-layout-gsubgpos-private.hh | 12 ++++++++++--
 3 files changed, 14 insertions(+), 22 deletions(-)

commit 50b8dc79daffc7ef671dd5eedfea47f8d5e946f4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 17 18:14:17 2015 +0300

    [layout] Add may_dispatch()

    No functional change right now.

 src/hb-ot-layout-gpos-table.hh       |  7 +++++++
 src/hb-ot-layout-gsub-table.hh       |  6 ++++++
 src/hb-ot-layout-gsubgpos-private.hh | 12 ++++++++++++
 3 files changed, 25 insertions(+)

commit de2118ed7a998a1df9b28fd1be96b4af89ed82c3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 17 17:27:44 2015 +0300

    Make sanitize() a const method

    This makes a lot of code safer.  We only try modifying the object
    in one
    place, after making sure it's safe to do so.  So, do a const_cast<> in
    that one place...

 src/hb-open-file-private.hh          |  15 +++--
 src/hb-open-type-private.hh          |  51 +++++++++++------
 src/hb-ot-cmap-table.hh              |  35 ++++++++----
 src/hb-ot-head-table.hh              |   6 +-
 src/hb-ot-hhea-table.hh              |   3 +-
 src/hb-ot-hmtx-table.hh              |   3 +-
 src/hb-ot-layout-common-private.hh   |  58 ++++++++++++-------
 src/hb-ot-layout-gdef-table.hh       |  30 ++++++----
 src/hb-ot-layout-gpos-table.hh       | 108
 +++++++++++++++++++++++------------
 src/hb-ot-layout-gsub-table.hh       |  58 ++++++++++++-------
 src/hb-ot-layout-gsubgpos-private.hh |  65 +++++++++++++--------
 src/hb-ot-layout-jstf-table.hh       |  12 ++--
 src/hb-ot-maxp-table.hh              |   6 +-
 src/hb-ot-name-table.hh              |   6 +-
 14 files changed, 296 insertions(+), 160 deletions(-)

commit 6759ed95a3bec2874826376b68ebff19ba277ef2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 17 16:05:30 2015 +0300

    Minor

 src/hb-ot-layout-gpos-table.hh | 6 ++----
 src/hb-ot-layout-gsub-table.hh | 6 ++----
 2 files changed, 4 insertions(+), 8 deletions(-)

commit 6b599dac1f814a3c900300241d4c492a8f8b66d2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 17 16:04:07 2015 +0300

    Remove unnecessary check in sanitize

 src/hb-ot-layout-gpos-table.hh | 2 --
 src/hb-ot-layout-gsub-table.hh | 2 --
 2 files changed, 4 deletions(-)

commit 365576d246949f9d587e90cf0539dc0381e4d0a3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 29 13:59:42 2015 +0100

    [layout] Allocate iters in the context

    Can be further optimized, but I think I didn't break anything.

    Saves another 3% off Roboto shaping.

 src/hb-ot-layout-gpos-table.hh       | 18 ++++++------------
 src/hb-ot-layout-gsubgpos-private.hh | 21 +++++++++++++--------
 src/hb-ot-shape-fallback.cc          |  2 +-
 3 files changed, 20 insertions(+), 21 deletions(-)

commit 514564f5444b8ad2f210b1e3d7d66378f7275317
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 29 13:48:48 2015 +0100

    [layout] Move skippy_iter setup from constructor into init()

 src/hb-ot-layout-gpos-table.hh       | 18 ++++++++++++------
 src/hb-ot-layout-gsubgpos-private.hh | 28 +++++++++++++++-------------
 src/hb-ot-shape-fallback.cc          |  3 ++-
 3 files changed, 29 insertions(+), 20 deletions(-)

commit b051be542a8945ec14b0192bbc285f3e1a78c8f1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 29 13:40:39 2015 +0100

    [lookup] Add skippy_iter.reset()

    Towards reducing the cost of initializing skippy_iter()

 src/hb-ot-layout-gpos-table.hh       | 18 ++++++++++++------
 src/hb-ot-layout-gsubgpos-private.hh | 27 ++++++++++++++++++---------
 src/hb-ot-shape-fallback.cc          |  3 ++-
 3 files changed, 32 insertions(+), 16 deletions(-)

commit 2cecc38c7cf49b2cf697efa7e974ceee7055f2c5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 29 13:32:05 2015 +0100

    [layout] Shuffle code around

 src/hb-ot-layout-gsubgpos-private.hh | 111
 ++++++++++++++++++-----------------
 1 file changed, 56 insertions(+), 55 deletions(-)

commit 696266981df5ef6c62ad0115133dad1d6c1d9acc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 29 13:08:41 2015 +0100

    [layout] Merge forward and backward iterators

 src/hb-ot-layout-gpos-table.hh       | 12 +++---
 src/hb-ot-layout-gsubgpos-private.hh | 71
 ++++++++----------------------------
 src/hb-ot-shape-fallback.cc          |  2 +-
 3 files changed, 23 insertions(+), 62 deletions(-)

commit 1f038eec3c0dd6331036f795614fe1ddcbf613b0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 29 13:05:25 2015 +0100

    [layout] Fix backward reject()

    Has no functional effect since reject was never used with
    match_glyph_data.

 src/hb-ot-layout-gsubgpos-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 37d13acd8d414a4b53fac0152addfadecf755cd4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 29 11:38:01 2015 +0100

    [layout] Remove some unnecessary checks in skippy

 src/hb-ot-layout-gpos-table.hh       | 3 ---
 src/hb-ot-layout-gsubgpos-private.hh | 9 ++-------
 2 files changed, 2 insertions(+), 10 deletions(-)

commit baa14e18148d3f5493f78b4fe9e0c835a01f50f7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 29 11:08:43 2015 +0100

    [lookup] Don't initialize skippy if coverage match fails

    Currently:

      - Initializing skippy is very expensive,

      - Our lookup accelerator (using set-digests) can be very ineffecite,

    As such, we end up many times initializing skippy but then failing
    coverage check.  Reordering fixes that.

    When, later, we fix our accelerator to have truly small false-positive
    rate (for example by using the frozen-sets), then we might want to
    reorder these checks such that we wouldn't calculate coverage number
    if skippy is going to fail.

    This shows a 5% speedup with Roboto already.

 src/hb-ot-layout-gpos-table.hh | 15 ++++++---------
 1 file changed, 6 insertions(+), 9 deletions(-)

commit 7788993bc19bf122f1e143ab64cc1da2ed1865a3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 28 23:01:12 2015 -0800

    [layout] Use setter method to set c->lookup_props

 src/hb-ot-layout-gpos-table.hh | 2 +-
 src/hb-ot-layout-gsub-table.hh | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit f4ee48fd7b312550faf9b0be4cd1b2f2849dd08d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 28 22:53:54 2015 -0800

    [layout] Remove unused wrapper method

 src/hb-ot-layout-gsubgpos-private.hh | 2 --
 1 file changed, 2 deletions(-)

commit 7b7129c7a997def599fb4d2ba05fda40d27aed20
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 28 21:46:07 2015 -0800

    Add hb_frozen_set_t

    I experimented with replacing use of hb_set_digest_t with this new
    hb_frozen_set_t, hoping to get a huge speedup for busy lookups
    (like kern lookup in Roboto), but I only got 6% speendup in Roboto
    and 4% in NotoNastaliqUrduDraft :(.

 src/hb-set-private.hh | 57
 ++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 56 insertions(+), 1 deletion(-)

commit 241eac9559465fa79f396570af4e87f455b7e9d5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 28 20:55:42 2015 -0800

    Hide internals of lookup accelerators

 src/hb-ot-layout-gsub-table.hh | 5 +++--
 src/hb-ot-layout-private.hh    | 5 +++++
 src/hb-ot-layout.cc            | 6 +++---
 3 files changed, 11 insertions(+), 5 deletions(-)

commit e2d4e8480d85436a3acad8145acac345ed593f5a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 28 20:29:48 2015 -0800

    [util] Add convenience "make lib" target

 util/Makefile.am | 4 ++++
 1 file changed, 4 insertions(+)

commit faaae64bf28abdcdd15185374bc09a3809794118
Merge: 7888a6b0 9768e651
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 25 15:34:34 2015 -0800

    Merge pull request #85 from KonstantinRitt/define_inline

    Fix build with MSVC on CE

commit 9ee176ee978e6668c4faf00028811ce70979122e
Author: Collin Fair <cpf@cpfx.ca>
Date:   Sat Feb 14 09:59:44 2015 -0500

    Stop hb-shape docs leaking into hb-view

 util/options.cc | 15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)

commit 952b8dbdf61da9b4814e09ad3c1b9b76483bef5c
Author: Collin Fair <cpf@cpfx.ca>
Date:   Sat Feb 14 09:44:00 2015 -0500

    'All' of the above, not 'each'

 util/options.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 9e867b64467c46eea5cc9b1d5a9404a1221bbbfc
Author: Collin Fair <cpf@cpfx.ca>
Date:   Sat Feb 14 09:32:04 2015 -0500

    Remove reference to --help-output-content in --help-output (as
    --help-output-format's options aren't available in hb-view)

 util/options.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 1d55ffeb66381889f11ebb9039ca4ec2ca5efbab
Author: Collin Fair <cpf@cpfx.ca>
Date:   Sat Feb 14 09:29:35 2015 -0500

    Add serialization syntax documentation. Clarify naming and wording
    in --help-output/--help-format

 util/options.cc | 30 ++++++++++++++++--------------
 1 file changed, 16 insertions(+), 14 deletions(-)

commit 9768e651be0561f07d6f38c3ed8bc5ee04882990
Author: Konstantin Ritt <ritt.ks@gmail.com>
Date:   Sat Feb 14 00:58:51 2015 +0400

    Fix build with MSVC on CE

    This code is C++ only. There isn't a single C++ compiler that fails to
    understand the "inline" keyword, since it's required by C++98. Any
    compiler older than C++98 is likely to choke on the template usage
    further down, so this isn't necessary.

    Moreover, the C++ standard says you cannot define macros.
    [lib.macro.names] says "Nor shall such a translation unit define
    macros
    for names lexically identical to keywords." -- technically, it's a
    promise that the Standard Library headers won't do it, the wording
    means
    that the entire translation unit won't do it, which implies no source
    can do it.

    MSVC complains about it:
    fatal error C1189: #error : The C++ Standard Library forbids
    macroizing
    keywords. Enable warning C4005 to find the forbidden macro.

    Author: Thiago Macieira <thiago.macieira@intel.com>

 src/hb-private.hh | 10 ----------
 1 file changed, 10 deletions(-)

commit 7888a6b07a9922cedd3e0d235959058e0011357b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 28 12:40:40 2015 -0800

    [ft] Handle negative scales with vertical writing

 src/hb-ft.cc | 8 ++++++++
 1 file changed, 8 insertions(+)

commit 982d94eaa2a377616f22f39427e5ed9f1ce43263
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 28 10:51:33 2015 -0800

    [coretext] Don't generate notdef glyph for default-ignorables

    As discovered on Chrome Mac:
    https://code.google.com/p/chromium/issues/detail?id=452326

 src/hb-coretext.cc | 2 ++
 src/hb-ot-shape.cc | 2 +-
 2 files changed, 3 insertions(+), 1 deletion(-)

commit 6917a045fd8d16952cad75fda8b291b11e1d3564
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 28 10:43:32 2015 -0800

    [coretext] Unbreak glyph positioning in presence of notdef runs

    As discovered on Chrome Mac:
    https://code.google.com/p/chromium/issues/detail?id=452326

    This was originally broken in:

            commit 5a0eed3b50629be4826e4e9428f2c3255195395d
            Author: Behdad Esfahbod <behdad@behdad.org>
            Date:   Mon Aug 11 23:47:16 2014 -0400

                [coretext] Implement vertical shaping

 src/hb-coretext.cc | 35 +++++++++++++++++++++++++++--------
 1 file changed, 27 insertions(+), 8 deletions(-)

commit 1eff4350239b0768e1042b52db9fb1c0d266f96a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 27 12:26:04 2015 -0800

    Minor optimization

 src/hb-ot-shape-normalize.cc | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

commit 675956aca01fc4e005a338af43d1c1f4f938abd1
Author: Konstantin Ritt <ritt.ks@gmail.com>
Date:   Tue Jan 27 11:23:07 2015 +0400

    Do not leak hb_language_t on hb_language_item_t destruction

 src/hb-common.cc | 1 +
 1 file changed, 1 insertion(+)

commit b306f9674a599da50754d24fa5aefcb6bba04420
Author: Konstantin Ritt <ritt.ks@gmail.com>
Date:   Tue Jan 27 20:08:41 2015 +0400

    Minor improvement to HB_SHAPER_DATA_DESTROY

 src/hb-shaper-private.hh | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

commit 61820bc4ca1f02433db4be7c81f27cf97e2bd519
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 26 14:25:52 2015 -0800

    [API] Add hb_buffer_add_latin1()

    This is by no ways to promote non-Unicode encodings.  This is an entry
    point that takes Unicode codepoints that happen to all be the first
    256 characters and hence fit in 8bit strings.  This is useful eg
    in Chrome
    where strings that can fit in 8bit are implemented that way, and this
    avoids copying into UTF-8 or UTF-16.

    Perhaps we should rename this to hb_buffer_add_codepoints8().
    I'm also
    curious if anyone would be really interested in
    hb_buffer_add_codepoints16().

    Please discuss!

 src/hb-buffer.cc      | 36 +++++++++++++++++++++++++-------
 src/hb-buffer.h       |  8 ++++++++
 src/hb-utf-private.hh | 57
 ++++++++++++++++++++++++++++++++++++++-------------
 3 files changed, 80 insertions(+), 21 deletions(-)

commit 78c6e86c04f12154c88b9f9264d0bd50b721699b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 26 14:08:36 2015 -0800

    Fix hb_buffer_add_codepoints to actually NOT validate

 src/hb-buffer.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 70c25ee215635db23eb0757641bd372940c0d85d
Merge: 28f5e0b2 f3537b62
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 25 13:06:03 2015 -0800

    Merge pull request #81 from KonstantinRitt/fixes/build/win8phone

    winrt_buildfixes

commit f3537b620b0a7392ea27f01f465c5ba79459c858
Author: Konstantin Ritt <ritt.ks@gmail.com>
Date:   Sun Jan 25 09:50:51 2015 +0400

    Move some code around

    Just to keep Windows specific workarounds in a single place.

 src/hb-private.hh | 25 ++++++++++++-------------
 1 file changed, 12 insertions(+), 13 deletions(-)

commit afb62d88d78cacb6b881aaf329a654fd32f5ae29
Author: Konstantin Ritt <ritt.ks@gmail.com>
Date:   Sun Jan 25 08:16:26 2015 +0400

    Do not define MemoryBarrier on WinCE

    There is a _HBMemoryBarrier() wrapper function that emulates
    MemoryBarrier() behavior when it is not defined.

 src/hb-private.hh | 1 -
 1 file changed, 1 deletion(-)

commit 7db326a15b173c0d101adc608bf551a628c65dcd
Author: Konstantin Ritt <ritt.ks@gmail.com>
Date:   Sun Jan 25 08:13:24 2015 +0400

    Fix build on WinRT

    There is no environment (like WinCE) and the basic version
    of InitializeCriticalSection is unsupported.

    https://codereview.qt-project.org/#/c/92496/

 src/hb-mutex-private.hh | 4 ++++
 src/hb-private.hh       | 2 ++
 2 files changed, 6 insertions(+)

commit 28f5e0b2f41670617bd778660364bbd58b1b68f2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 23 12:45:35 2015 -0800

    0.9.38

 NEWS         | 23 +++++++++++++++++++++++
 configure.ac |  2 +-
 2 files changed, 24 insertions(+), 1 deletion(-)

commit a319d0777b746a2bbe5cd5a206172f1580da3379
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 23 12:44:24 2015 -0800

    [ft] Handle negative x_scale / y_scale

 src/hb-ft.cc | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

commit b0b38bb892473d9a65e06dd3b4713da39f92bef9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 21 19:19:33 2015 -0800

    [coretext] Fix positioning of notdef

 src/hb-coretext.cc | 19 ++++++++++---------
 1 file changed, 10 insertions(+), 9 deletions(-)

commit 70622e5089c01ea16fd9deed11cb39d43145c121
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 21 18:50:57 2015 -0800

    [coretext] Fix scaling

    Before we were not accounting for possible differences in x_scale and
    y_scale, as well as the signs of those.  All should be in good shape
    now.

 src/hb-coretext.cc | 26 +++++++++++++++++++-------
 1 file changed, 19 insertions(+), 7 deletions(-)

commit 221ba02b0816584a02471037edae7cec9c1b8acc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 21 16:42:09 2015 -0800

    [coretext] Use vertical advance for notdef in vertical direction

 src/hb-coretext.cc | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

commit 7988da24c507ee310772f72cc5bcfd3c0a1187a0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 21 18:33:50 2015 -0800

    Add convenience make target "make lib" in src/

 src/Makefile.am | 3 +++
 1 file changed, 3 insertions(+)

commit 31d48dd919e3b4a0bec5ede384f76db9b44f4d71
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 21 01:57:44 2015 -0800

    Add README.python

 README.python | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

commit ca1c2813dd0b082a8c418bd3edd3f6cba97bd5f0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 21 01:51:48 2015 -0800

    [bindings] Add README.python

 Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit cd4eb96abb90a84b42e9b288e39bad759e4411a0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 20 12:30:45 2015 -0800

    [util] Add --font-size to hb-shape

    Also makes hb-view to use 8 bits of subpixel precision and shape at
    requested size, instead of always shaping at upem and scaling results.

 util/hb-ot-shape-closure.cc |  2 +-
 util/hb-shape.cc            |  2 +-
 util/hb-view.cc             |  5 ++++-
 util/helper-cairo.cc        | 16 ++++++++--------
 util/helper-cairo.hh        |  5 ++---
 util/main-font-text.hh      |  4 ++--
 util/options.cc             | 44
 +++++++++++++++++++++++++++++++++++++++++---
 util/options.hh             | 16 ++++++++++++----
 util/view-cairo.cc          |  2 +-
 util/view-cairo.hh          |  8 ++++----
 10 files changed, 76 insertions(+), 28 deletions(-)

commit 5789ca69d7464bab5fa0c5bdf404f3afaa490faf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 9 14:22:01 2015 -0800

    [util] Minor

 util/options.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 67dfa8c7c2f2e9040a9c60c680f739ada4a35fb5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 19 17:00:31 2015 -0800

    When matching second glyph of kerning pairs, use bsearch

    Roboto has glyphs (like 'F') that have 200 kerning pairs.
    Add a handcoded bsearch instead of previous linear search.

    This doesn't show much speedup though, apparently we spend the
    bulk of the time somewhere before here.

 src/hb-ot-layout-gpos-table.hh | 21 ++++++++++++++++-----
 1 file changed, 16 insertions(+), 5 deletions(-)

commit e9f5c65be027eb7759ab819e267e24dff3b017b6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 19 14:42:11 2015 -0800

    [bindings] Minor

 src/sample.py | 2 ++
 1 file changed, 2 insertions(+)

commit 3704628d1f124234324b5f2bdd5fdd61c14c7801
Merge: 1aaa7d67 5eb939dd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 19 16:15:00 2015 -0800

    Merge pull request #77 from roozbehp/master

    Change New Tai Lue shaping engine from SEA to default

commit 5eb939ddfe9ef217da2e48d7d0f1f4b7501714ad
Author: Roozbeh Pournader <roozbeh@google.com>
Date:   Sun Jan 18 14:30:08 2015 -0800

    Change New Tai Lue shaping engine from SEA to default

    This is to reflect the UTC decision to change the encoding model of
    New Tai Lue from logical to visual to be similar to Thai, Lao, and
    Tai Viet: http://www.unicode.org/L2/L2014/14250.htm#141-C26

    The visual encoding is already the current practice of encoding New
    Tai Lue on the web anyway:
    http://www.unicode.org/L2/L2014/14195-newtailue.txt

    Fixes behdad/harfbuzz#66.

 src/hb-ot-shape-complex-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 1aaa7d6799b42b392dd191d3c12011721ef99e74
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 17 20:16:56 2015 -0800

    [indic] Fix out-of-bounds access

 src/gen-indic-table.py                 |  2 +-
 src/hb-ot-shape-complex-indic-table.cc | 36
 +++++++++++++++++-----------------
 2 files changed, 19 insertions(+), 19 deletions(-)

commit 238d6a38f2ceb7d8dceec9365a823f032b3b9f7d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 7 10:51:44 2015 -0800

    [bindings] Update sample.py

 src/sample.py | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

commit 2cd5323531dcd800549b2cb1cb51d708e72ab2d8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 6 19:16:38 2015 -0800

    [bindings] Use hb_glib_blob_create() in sample

    hb_blob_create() is considered C-only API.

 src/hb-blob.cc |  8 ++++----
 src/sample.py  | 19 +++++++++----------
 2 files changed, 13 insertions(+), 14 deletions(-)

commit 0ef179e2dc040c13497af847b8c1cec846dbdbf9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 6 16:58:33 2015 -0800

    [glib] Add hb_glib_blob_create() that takes GBytes

 src/hb-glib.cc | 11 +++++++++++
 src/hb-glib.h  |  3 +++
 2 files changed, 14 insertions(+)

commit b91904a40da6287f84bc79de60674fa57232ec09
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 6 15:43:14 2015 -0800

    [bindings] Replace deprecated allow-none with optional and nullable

 src/hb-blob.cc    | 4 ++--
 src/hb-shape.cc   | 2 +-
 src/hb-unicode.cc | 2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)

commit 81a31f3eff44a85bb2160d51156a01a18f0a97df
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 6 15:37:31 2015 -0800

    [bindings] Make sample Python 2/3 compatible

 src/sample.py | 15 ++++++++++++++-
 1 file changed, 14 insertions(+), 1 deletion(-)

commit b632e7997d9cb6e4782cab6d8c62e8e5edaa4cb0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 6 14:05:26 2015 -0800

    Fix up gobject-introspection a bit

    Minimal shaping works now!

 src/hb-blob.cc   |  6 +++---
 src/hb-buffer.cc |  2 +-
 src/sample.py    | 34 ++++++++++++++++++++++++++++------
 3 files changed, 32 insertions(+), 10 deletions(-)

commit 3d1a666a8629a8502a2bcf23ab943e2b39a0da92
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 5 14:43:13 2015 -0800

    Remove hardcoded ICU include paths.

    ICU exports them using LOCAL_EXPORT_C_INCLUDE_DIRS.

    https://android-review.googlesource.com/#/c/121311/

 Android.mk | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 8cb41cb9508eb1bb6319e92f900cfe5e8a131be3
Merge: 365c03fc fb85d618
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 4 20:32:18 2015 -0800

    Merge pull request #76 from cpeterso/cpeterso/Wunused-function

    Add #ifdef HB_USE_ATEXIT to fix -Wunused-function warnings

commit fb85d618f5883458bacf0ecb0894772291a2d738
Author: Chris Peterson <cpeterson@mozilla.com>
Date:   Sun Jan 4 19:31:10 2015 -0800

    Add #ifdef HB_USE_ATEXIT to fix -Wunused-function warnings

 src/hb-common.cc | 2 +-
 src/hb-ft.cc     | 4 +++-
 src/hb-shape.cc  | 4 +++-
 src/hb-shaper.cc | 4 +++-
 4 files changed, 10 insertions(+), 4 deletions(-)

commit 365c03fc2bcdb4098314a0e123c46018fb882586
Merge: c36c4a99 d1897a98
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 3 21:55:30 2015 -0800

    Merge pull request #75 from cpeterso/cpeterso/Wunused-value

    Fix hb_atomic_ptr_cmpexch -Wunused-value warnings

commit d1897a98d8da40cffb57c07099a9a93cfeaacc36
Author: Chris Peterson <cpeterson@mozilla.com>
Date:   Sat Jan 3 19:46:19 2015 -0800

    Fix hb_atomic_ptr_cmpexch -Wunused-value warnings

 src/hb-common.cc | 2 +-
 src/hb-icu.cc    | 4 +---
 2 files changed, 2 insertions(+), 4 deletions(-)

commit c36c4a9924609df648e62e47fa017b19b844fd98
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 2 14:09:23 2015 -0800

    Add missing va_end()

    Fixes https://github.com/behdad/harfbuzz/pull/74

 util/options.cc | 1 +
 1 file changed, 1 insertion(+)

commit f34aaba8687a20794835e2dc878c52d1b53e6f85
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 28 18:56:15 2014 -0800

    [ft] Don't set font ppem

    For discussion see:

      http://lists.freedesktop.org/archives/harfbuzz/2012-April/001905.html

    Over time we have had added NO_HINTING all over the place in hb-ft.
    Finish it off.
    Not setting ppem on hb-font disables get_contour_point() calls which
    is good anyway.

    See comments in the commit.

 src/hb-ft.cc | 9 +++++++++
 1 file changed, 9 insertions(+)

commit 350f3a02ce225e5d78db8ac96de1351ff9f96dd5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 28 17:44:26 2014 -0800

    [ft] Add hb_ft_face_create_referenced() and
    hb_ft_font_create_referenced()

    When I originally wrote hb-ft, FreeType objects did not support
    reference
    counting.  As such, hb_ft_face_create() and hb_ft_font_create() had a
    "destroy" callback and client was responsible for making sure
    FT_Face is
    kept around as long as the hb-font/face are alive.

    However, since this was not clearly documented, some clienets didn't
    correctly did that.  In particular, some clients assumed that
    it's safe
    to destroy FT_Face and then hb_face_t.  This, indeed, used to work,
    until
    45fd9424c723f115ca98995b8f8a25185a6fc71d, which make face destroy
    access
    font tables.

    Now, I fixed that issue in 395b35903e052aecc97d0807e4f813c64c0d2b0b
    since
    the access was not needed, but the problem remains that not all
    clients
    handle this correctly.  See:

      https://bugs.freedesktop.org/show_bug.cgi?id=86300

    Fortunately, FT_Reference_Face() was added to FreeType in 2010,
    and so we
    can use it now.  Originally I wanted to change hb_ft_face_create() and
    hb_ft_font_create() to reference the face if destroy==NULL was
    passed in.
    That would improve pretty much all clients, with little undesired
    effects.
    Except that FreeType itself, when compiled with HarfBuzz support,
    calls
    hb_ft_font_create() with destroy==NULL and saves the resulting
    hb-font on
    the ft-face (why does it not free it immediately?).  Making hb-face
    reference ft-face causes a cycling reference there.  At least,
    that's my
    current understanding.

    At any rate, a cleaner approach, even if it means all clients will
    need a
    change, is to introduce brand new API.  Which this commit does.

    Some comments added to hb-ft.h, hoping to make future clients
    make better
    choices.

    Fixes https://bugs.freedesktop.org/show_bug.cgi?id=75299

 configure.ac |  4 ++--
 src/hb-ft.cc | 32 ++++++++++++++++++++++++++++++++
 src/hb-ft.h  | 59
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 3 files changed, 92 insertions(+), 3 deletions(-)

commit 9a3b74884b2e41c7040611030f4336f13d18fd3e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 28 17:27:39 2014 -0800

    Remove redundant check for FT_Face_GetCharVariantIndex

    We require FreeType >= 2.8.3.  This symbol was introduced earlier
    than that.

 configure.ac | 9 +--------
 src/hb-ft.cc | 2 --
 2 files changed, 1 insertion(+), 10 deletions(-)

commit 1226b2e930aa456cc05bbe621c96f4286a95cff6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 28 17:04:23 2014 -0800

    Fix FreeType version check

 configure.ac | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit affacf2f37db767ab8df7f2db6cd9e0e9b0a2b8a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 28 16:20:31 2014 -0800

    [ft] Open blob in READONLY mode

    HB_MEMORY_MODE_READONLY_MAY_MAKE_WRITABLE is deprecated and fairly
    useless now.

 src/hb-ft.cc | 6 +-----
 1 file changed, 1 insertion(+), 5 deletions(-)

commit 395b35903e052aecc97d0807e4f813c64c0d2b0b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 28 16:03:26 2014 -0800

    Avoid accessing layout tables at face destruction

    "Fixes" https://bugs.freedesktop.org/show_bug.cgi?id=86300

    Based on discussion someone else who had a similar issue, most
    probably
    the user is releasing FT_Face before destructing hb_face_t /
    hb_font_t.
    While that's a client bug, and while we can (and should) use FreeType
    refcounting to help avoid that, it happens that we were accessing
    the table when we didn't really have to.  Avoid that.

 src/hb-ot-layout-private.hh                | 3 +--
 src/hb-ot-layout.cc                        | 4 ++--
 src/hb-ot-shape-complex-arabic-fallback.hh | 2 +-
 3 files changed, 4 insertions(+), 5 deletions(-)

commit 7d5e7613ced3dd39d05df83ca7e8952cbecd68f6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 18 18:22:21 2014 -0800

    Fail blob creation if length overflows or is too large

    Fail if blob start plus length overflows; or if blob length
    is greater than 2GB.  It takes a while for fonts to get to that
    size.  In the mean time, it protects against bugs like this:

      http://www.icu-project.org/trac/ticket/11450

    Also avoids some weird issues with 32bit vs 64bit systems
    as we accept length as unsigned int.  As such, a length of
    -1 will cause overflow on 32bit machines, but happily
    accepted on a 64bit machine.  Avoid that.

 src/hb-blob.cc       | 5 ++++-
 test/api/test-blob.c | 3 +++
 2 files changed, 7 insertions(+), 1 deletion(-)

commit d5a5052098b0aa79ff55c235e61a9db477c4120f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 18 18:09:41 2014 -0800

    Assert that blob length doesn't overflow address.

    This will crash now, if blob was created with wrong length.
    Check for that coming next commit.

 src/hb-open-type-private.hh | 1 +
 1 file changed, 1 insertion(+)

commit 66e37409b3bc1eddc86704ae26d9176677ce6aa6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 17 12:09:17 2014 -0800

    0.9.37

 NEWS         | 8 ++++++++
 configure.ac | 2 +-
 2 files changed, 9 insertions(+), 1 deletion(-)

commit 093c520de506aec74f3fb1e195c0ca85813424dd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 12 21:07:53 2014 -0800

    [otlayout] Mark variables that are C arrays as opposed to OT::ArrayOf

 src/hb-ot-layout-gpos-table.hh       | 24 +++++++--------
 src/hb-ot-layout-gsubgpos-private.hh | 60
 ++++++++++++++++++------------------
 2 files changed, 42 insertions(+), 42 deletions(-)

commit 9df0a520306a491f973d42965597bfda6023e508
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 12 20:54:28 2014 -0800

    [otlayout] Avoid invalid access with Context format 3

 src/hb-ot-layout-gsubgpos-private.hh | 2 ++
 1 file changed, 2 insertions(+)

commit 295ef1dd5229f47d8e0eb5b4eb48c90a6b470073
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 12 20:43:18 2014 -0800

    [ot] Debug get_coverage

 src/hb-ot-layout-gsubgpos-private.hh | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit 00f6a8e334ec4c586e4e633a95b411ccb50306d3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 12 20:36:49 2014 -0800

    [ot] Print format in dispatch trace

 src/hb-ot-layout-gpos-table.hh       | 16 ++++++++--------
 src/hb-ot-layout-gsub-table.hh       | 14 +++++++-------
 src/hb-ot-layout-gsubgpos-private.hh |  8 ++++----
 3 files changed, 19 insertions(+), 19 deletions(-)

commit 5c7d6f02d71362c2b192a7d96e6181977682921c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 12 20:28:49 2014 -0800

    Minor

 src/hb-private.hh | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 153beebba9b76901b8b62b90ba0dc69462ae2090
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 12 19:46:09 2014 -0800

    [ot] Make sure all toplevel tables have tableTag

 src/hb-open-file-private.hh | 2 ++
 src/hb-ot-hhea-table.hh     | 2 ++
 src/hb-ot-hmtx-table.hh     | 2 ++
 3 files changed, 6 insertions(+)

commit 282b13f9b4d86b091714de7fbddc94b3e3ff3d91
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 12 19:32:46 2014 -0800

    [sanitize] Improve debug output some more

 src/hb-open-type-private.hh | 30 ++++++++++++++++--------------
 1 file changed, 16 insertions(+), 14 deletions(-)

commit 0766ee1f4e6046598a2e8fb1b167c3942b4a87a0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 12 18:23:20 2014 -0800

    [sanitize] Improve debug output

 src/hb-open-type-private.hh | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

commit e6f80fa1044243898c402ec6a59d6c1b5420be53
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 10 12:05:24 2014 -0800

    [indic] Allow ZWJ/ZWNJ before SM

    In Oriya, a ZWJ/ZWNJ might be added before candrabindu to encourage
    or stop ligation of the candrabindu.  This is clearly specified in
    the Unicode section on Oriya.  Allow it there.  Note that Uniscribe
    doesn't allow this.

    Micro tests added using Noto Sans Oriya draft.

    No changes in numbers.  Currently at:

    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: 1048147 out of 1048334 tests passed. 187 failed
    (0.0178378%)
    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%)

 src/hb-ot-shape-complex-indic-machine.rl                 |   2 +-
 test/shaping/Makefile.am                                 |   1 +
 .../sha1sum/5028afb650b1bb718ed2131e872fbcce57828fff.ttf | Bin 0 ->
 4720 bytes
 test/shaping/fonts/sha1sum/MANIFEST                      |   1 +
 test/shaping/tests/MANIFEST                              |   1 +
 test/shaping/tests/indic-joiner-candrabindu.tests        |   2 ++
 6 files changed, 6 insertions(+), 1 deletion(-)

commit c0e95abc5f3f14121483b71f10837828a3a1d73a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 20 14:42:24 2014 -0800

    0.9.36

 NEWS         | 12 ++++++++++++
 configure.ac |  2 +-
 2 files changed, 13 insertions(+), 1 deletion(-)

commit fde3e4a423871463c883cb969e99c29cb6f69f6b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 29 11:23:08 2014 -0700

    In hb_ot_collect_glyphs(), don't recurse to a lookup more than once

    Otherwise, we might process a lookup thousands of times, with no
    benefit.  This pathological case was hit by Noto Nastaliq Urdu Draft
    in Firefox's code to determine whether space glyph is involved in
    any GSUB/GPOS rules.  A test page is at http://behdad.org/urdu

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

 src/hb-ot-layout-gsubgpos-private.hh | 17 ++++++++++++++++-
 1 file changed, 16 insertions(+), 1 deletion(-)

commit 5a5640d8506ccfc99fd119e89e829170d1fea421
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 14 21:26:13 2014 -0700

    Move code around

 src/hb-open-type-private.hh | 50
 ++++++++++++++++++++++-----------------------
 1 file changed, 25 insertions(+), 25 deletions(-)

commit 666b42f73bd1f516657b206ef738108825bf239f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 14 21:24:59 2014 -0700

    Move macros around

    Fixes https://bugs.freedesktop.org/show_bug.cgi?id=84491

 src/hb-open-type-private.hh | 63
 ++++++++++++++++++++++++++++++++++++++-------
 src/hb-private.hh           | 41 -----------------------------
 src/hb-uniscribe.cc         |  6 +++++
 3 files changed, 60 insertions(+), 50 deletions(-)

commit 5c87120b8178566ddae99d9825edc24f9b87ea3d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 14 20:07:31 2014 -0700

    Fix misc warnings

    Fixes https://github.com/behdad/harfbuzz/pull/51

 src/hb-buffer-deserialize-json.rl | 4 ++--
 src/hb-ot-layout-gsub-table.hh    | 2 +-
 src/hb-private.hh                 | 6 +++---
 3 files changed, 6 insertions(+), 6 deletions(-)

commit a1f27ac3c48cfe6d532dc422cf256952fea472ed
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 2 16:54:33 2014 -0400

    Update test expectation for previous commit

 test/shaping/tests/arabic-fallback-shaping.tests | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 8afaf096870d7895cf2fffb6438b02c0ad1b6c52
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 2 16:40:41 2014 -0400

    [ft] Add NO_HINTING in a couple other places

 src/hb-ft.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 7228011411f0e490ad1ba9894dd0d576823903ea
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 1 18:58:43 2014 -0400

    [travis] Fix clang again

 .travis.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 406a020e5228d4a04da6282f5a75165bab7a483e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 1 18:54:55 2014 -0400

    [travis] Fail build if coveralls fails

 .travis.yml | 15 ++-------------
 1 file changed, 2 insertions(+), 13 deletions(-)

commit a8aa20260dbd9af9cbcc7d545fa8b41b07aae276
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 1 18:48:40 2014 -0400

    [travis] Only run coveralls under gcc

 .travis.yml | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

commit 5de0407337d630117e424b7c715b7cbd432f4ef9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 1 18:18:25 2014 -0400

    Help clang with gcov

 src/check-defs.sh    | 2 +-
 src/check-symbols.sh | 6 +++---
 2 files changed, 4 insertions(+), 4 deletions(-)

commit ef40ca8e5e830231539dc61088b58e907a840629
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 1 18:07:27 2014 -0400

    [travis] Try to make coverage work with clang

 .travis.yml | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

commit 52784da17b7278f2587168234878bb15d918c9fe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 1 17:57:43 2014 -0400

    [travis] Minor

 README | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit f2c9005f5123c7f9b227fd9ac9a3438c5fe4cf47
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 1 17:45:17 2014 -0400

    Add README.md symlink to make github happy

 README.md | 1 +
 1 file changed, 1 insertion(+)

commit 40987e8aaca4155d9cff211549e8d23f24c334e5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 1 17:44:30 2014 -0400

    [travis] Re-enable clang

 .travis.yml | 8 +-------
 1 file changed, 1 insertion(+), 7 deletions(-)

commit 5400ac476e5a5bcc66559fcfb05a683a6b433ea1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 1 17:41:41 2014 -0400

    Add build and coverage status links

 README | 3 +++
 1 file changed, 3 insertions(+)

commit 19360e0a5609c65842a989587b01a4dc7c9eae36
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 1 17:35:03 2014 -0400

    [travis] Report matrix settings to help debugging

 .travis.yml | 6 ++++++
 1 file changed, 6 insertions(+)

commit 9b89fc52f49b80df1f27ac7de69e0152bdcc94d6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 1 17:20:31 2014 -0400

    [travis] More coveralls

 .travis.yml | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

commit a68f2b62c1f24009993911b1dbcb76b821e58c51
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 1 17:05:58 2014 -0400

    [travis] Give coveralls a hand

 .travis.yml | 1 +
 1 file changed, 1 insertion(+)

commit 5194d647e13aa5ba2cfcdbdcd4a659dc5bd11418
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 1 17:03:26 2014 -0400

    [travis] Disable clang for now

 .travis.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 715f27f85f97fee13b119f60037db5c139489ee6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 1 16:53:00 2014 -0400

    [test] Fixup test

 test/shaping/tests/hangul-jamo.tests | 9 ---------
 1 file changed, 9 deletions(-)

commit 2a508ddae5de3852243725ce22caa3dcffccb83e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 1 16:49:22 2014 -0400

    [travis] Another try at coveralls.io

 .travis.yml | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit dfe8078e5be46cab5e67aed977749c1d6725e6a7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 1 16:38:47 2014 -0400

    [travis] First try to hookup coveralls.io code coverage tracking

 .travis.yml | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit 1b387571e4d0eed883f1ae8ec85cf0e818b4a7f9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 1 16:14:59 2014 -0400

    [travis] Unbreak

 .travis.yml | 8 +-------
 1 file changed, 1 insertion(+), 7 deletions(-)

commit e281ed360dfdf803aea87b6078983867d08e07a7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 1 16:09:08 2014 -0400

    [travis] Minor

 .travis.yml | 23 +++++++++++++++++++++--
 1 file changed, 21 insertions(+), 2 deletions(-)

commit c0b82ba32a1987902a3b9c05b46f8be6b121883a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 1 14:24:07 2014 -0400

    Create ragel-generated files in srcdir

 src/Makefile.am | 25 ++++++++++---------------
 1 file changed, 10 insertions(+), 15 deletions(-)

commit 79bbb10b0da49ace763a50f259c2ea687143f7ea
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 1 13:33:21 2014 -0400

    Clean ragel-generated headers in maintainercleanfiles

 src/Makefile.am | 7 +++++++
 1 file changed, 7 insertions(+)

commit 8971cac83eb4f06847abfa3eaa15857d27141810
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 1 12:41:03 2014 -0400

    Don't use tmp files in Makefile

    Useful for code-coverage generation of the ragel-generated files
    as they will now contain the correct .hh filename in them.

 src/Makefile.am | 27 +++++++++++++--------------
 1 file changed, 13 insertions(+), 14 deletions(-)

commit 22723186652224a635f1dad5cda0f753e78c301d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 1 11:56:07 2014 -0400

    check-static-inits: Filter out zero-length sections

    When compiling with -O0, zero-sized constructors were showing up
    and confusing the test.

 src/check-static-inits.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b695a3dc2300ed970a4154ad8b997407b3cb4faf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 1 11:55:14 2014 -0400

    check-static-inits: check for static finalizers

 src/check-static-inits.sh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 250398b1e4f102e4e44eeb9e2aebf0cd2d397344
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 1 11:28:01 2014 -0400

    Hide other bubble-sort

 src/hb-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c1e87442621beff98791ce56cfd1ccee506c4ee6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 1 11:07:08 2014 -0400

    Hide bubble-sort!

 src/hb-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 80f77282264afb1356351024b1f062b2824bba3b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 25 17:59:46 2014 +0300

    [util] Fix ansi output when surface is empty

 util/helper-cairo-ansi.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 156852991e18e5ac256ee4d6b2916931cc274977
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 25 17:45:49 2014 +0300

    [ot-font] Add hb_ot_face_cmap_accelerator_t

 src/hb-ot-font.cc | 113
 +++++++++++++++++++++++++++++++-----------------------
 1 file changed, 66 insertions(+), 47 deletions(-)

commit d088ccaf11d9475fe0d269ce130b1793b8a1ffbf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 25 17:26:56 2014 +0300

    [ot-font] Minor

 src/hb-ot-font.cc | 23 ++++++++++++-----------
 1 file changed, 12 insertions(+), 11 deletions(-)

commit d7c160a1530adabbcf33725b105072293115a34c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 25 17:15:35 2014 +0300

    [ot-font] Handle missing vertical metrics tables

 src/hb-ot-font.cc | 26 +++++++++++++++++++-------
 1 file changed, 19 insertions(+), 7 deletions(-)

commit be1cca270257bfdfee3fbe821175269713acf408
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 25 16:53:24 2014 +0300

    [ot-font] Add metrics_accel_t

 src/hb-ot-font.cc       | 111
 ++++++++++++++++++++++--------------------------
 src/hb-ot-hhea-table.hh |   2 +-
 src/hb-ot-hmtx-table.hh |   4 +-
 3 files changed, 54 insertions(+), 63 deletions(-)

commit d41b809e9d21e655129a97c600d28f278fd7e62c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 25 13:04:08 2014 +0300

    [ot-font] Start adding vertical support

 src/hb-ot-font.cc       | 57 ++++++++++++++++++++++++++++++++++----------
 src/hb-ot-hhea-table.hh | 63
 ++++++++++++++++++++++++++-----------------------
 src/hb-ot-hmtx-table.hh | 35 +++++++++++++++++----------
 3 files changed, 100 insertions(+), 55 deletions(-)

commit 22f0de5025aeeef4c8b3ca876d291d4c8e558d94
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 25 12:54:57 2014 -0400

    Fix build

 src/hb-ot-shape-complex-arabic-win1256.hh | 3 +++
 1 file changed, 3 insertions(+)

commit d457e3f0ff9b27616a34e4cc110d3edbf8796841
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 25 12:31:19 2014 -0400

    [arabic] Don't #include __FILE__

    Fine!

    https://code.google.com/p/chromium/issues/detail?id=406957

 src/hb-ot-shape-complex-arabic-win1256.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9ceb673d9c35bb28c9b2ed5359bdd8b23fda0019
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 25 11:48:12 2014 -0400

    [arabic] Allow disabling win1256 fallback code

    By defining HB_NO_WIN1256.

 src/hb-ot-shape-complex-arabic-fallback.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 8a9319502141c09695461c386e54f998250420e9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 22 12:06:57 2014 -0400

    [ot] Prefer Windows platform cmap tables / accept all Unicode
    encodingIDs

    Some fonts on the Mac ship with (0,1).

 src/hb-ot-font.cc | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

commit 270971a0fccdf4964fd3e8ab8e5cf53037a3518d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 15 14:28:04 2014 -0400

    [win32] Avoid preprocessor warnings re macros

 src/hb-private.hh | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

commit 8c6bd34d38fb3007c3d660fce0095cc5c7e9962e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 14 13:33:37 2014 -0400

    Fix check-symbols on OS X

 src/check-libstdc++.sh | 14 +++++++-------
 src/check-symbols.sh   |  8 +++++++-
 2 files changed, 14 insertions(+), 8 deletions(-)

commit 522b1cc5261c1419166bfb90d2ff634b684be66a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 14 13:29:30 2014 -0400

    [coretext] Hide feature_mappings

 src/hb-coretext.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0d2c2f238bf0a847ecd55a70cc0f081f18a053ac
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 14 13:25:55 2014 -0400

    Simplify hb-object

 src/hb-object-private.hh | 118
 +++++++++++++++--------------------------------
 1 file changed, 36 insertions(+), 82 deletions(-)

commit 9d861b81f349188a4507350398786a6e94038095
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 14 13:15:21 2014 -0400

    Really fix clang build this time

 src/hb-object-private.hh | 141
 +++++++++++++++++++++++------------------------
 1 file changed, 68 insertions(+), 73 deletions(-)

commit 272226f294382b0c6921b36e0e67fc53daa765d3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 14 13:11:33 2014 -0400

    Revert "Fix build on clang after previous commit"

    This reverts commit 9c80cbc87f23040a334e30c750f64523d9ef10c8.

 src/hb-object-private.hh | 34 +++++++++++++---------------------
 1 file changed, 13 insertions(+), 21 deletions(-)

commit 9c80cbc87f23040a334e30c750f64523d9ef10c8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 14 13:09:52 2014 -0400

    Fix build on clang after previous commit

 src/hb-object-private.hh | 34 +++++++++++++++++++++-------------
 1 file changed, 21 insertions(+), 13 deletions(-)

commit a5a27073cfff91c4f80209ca8462543130af61dd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 14 13:05:36 2014 -0400

    Rewrite this==NULL checks to avoid undefined behavior

    Fixes https://code.google.com/p/chromium/issues/detail?id=403594

 src/hb-object-private.hh | 18 ++++++++----------
 1 file changed, 8 insertions(+), 10 deletions(-)

commit cc3b2d432b02f9381cdf19e2dd5fbbdd002a750c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 14 12:59:16 2014 -0400

    Remove this==NULL check from face->reference_table()

    Not supposed to happen, and apparently this is undefined in C++.
    https://code.google.com/p/chromium/issues/detail?id=403594

 src/hb-face-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit cd7ea4f791dc41d62ad238673e2ea0107883c9e3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 14 12:57:02 2014 -0400

    Make hb_object_t members private

    In preparation for fixing:
    https://code.google.com/p/chromium/issues/detail?id=403594

 src/hb-object-private.hh | 26 +++++++++++++++++++++-----
 src/hb-set-private.hh    |  2 +-
 2 files changed, 22 insertions(+), 6 deletions(-)

commit c4308f895aef93ed884fd54e4ebc65b6d2cfc94a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 13 19:42:01 2014 -0400

    Minor

 test/shaping/hb_test_tools.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit cd5a1149d980dc3c17b6bb9d961c761b2671ba1b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 13 12:39:34 2014 -0400

    0.9.35

 NEWS         | 29 +++++++++++++++++++++++++++++
 configure.ac |  2 +-
 2 files changed, 30 insertions(+), 1 deletion(-)

commit 20076cc41e673c31305fcb58d37b3b292fd35f83
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 12 19:26:35 2014 -0400

    [coretext] Add version guards for kCTLanguageAttributeName

 src/hb-coretext.cc | 7 +++++++
 1 file changed, 7 insertions(+)

commit 1b3011c27df531875d432e909ae6b77f115c5017
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 12 19:17:19 2014 -0400

    [coretext] Pass buffer language to CoreText

 src/hb-coretext.cc | 12 ++++++++++++
 1 file changed, 12 insertions(+)

commit 3eb6a4dbf25b11fce5e0e426e89f7457887aeca0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 12 19:10:33 2014 -0400

    [coretext] Minor

 src/hb-coretext.cc | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

commit 08acfe0d3a1d8223a9fa0696703fff63d6c2ea8b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 12 18:57:08 2014 -0400

    [hb-coretext] Fix cluster order of notdef runs in RTL text

 src/hb-coretext.cc | 3 +++
 1 file changed, 3 insertions(+)

commit 30eed75de24ac0b6648a72d98d10bb24a563d7ef
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 12 17:15:09 2014 -0400

    [shape-plan] Fix typo!

    The only effect is, if shaper_list was not NULL and no shaper
    was found,
    we now don't insert anything into cache and return earlier.

 src/hb-shape-plan.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit dc9aba6fc53898acd7281b118cec0355d61b1df2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 12 17:14:36 2014 -0400

    [shape-plan] Better debug messages

 src/hb-shape-plan.cc | 14 ++++++++++----
 1 file changed, 10 insertions(+), 4 deletions(-)

commit e956c65bf724a8403471362288d2361361b6ac58
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 12 17:03:27 2014 -0400

    [shape-plan] Simplify macro

 src/hb-shape-plan.cc | 22 ++++++++--------------
 1 file changed, 8 insertions(+), 14 deletions(-)

commit 29e25550ce8fee3fecc42d20a45ce9c212dc59df
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 12 17:02:59 2014 -0400

    Fix gcc warning

 src/hb-private.hh | 9 +++++++++
 1 file changed, 9 insertions(+)

commit 8d5eebc0c6ada01128c6ee384340efdbef7ba29d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 12 16:50:22 2014 -0400

    [shape-plan] Fix shape-plan caching with more than one requested
    shaper

    Wasn't breaking out of loop, ouch!

    http://www.mail-archive.com/debian-bugs-dist@lists.debian.org/msg1246370.html

 src/hb-shape-plan.cc | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

commit bc3d0dc60104f1cda465a5e8ba5b40ed5bec70b9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 12 16:49:18 2014 -0400

    [shape-plan] Add debug tracing

 src/hb-shape-plan.cc | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

commit 81b8d9777b9c38c7e6408591763a4cac6de18e4b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 12 15:49:47 2014 -0400

    [coretext] Fix buffer resizing

    Was very broken.  Now fixed and tested.

 src/hb-coretext.cc | 17 +++++++++++++----
 1 file changed, 13 insertions(+), 4 deletions(-)

commit c3e924fb9e0e2d4003790817655efd9c5688c7e1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 12 14:25:11 2014 -0400

    [coretext] Rewind scratch-allocated arrays when not needed anymore

 src/hb-coretext.cc | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

commit 8fd4d70b1450d7261a35ab3dea1c70baea2e5c99
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 12 13:12:31 2014 -0400

    [wince] Two more Windows CE fixes

    Report has it that it builds (and works) now:

      https://codereview.qt-project.org/#/c/92087/

 src/hb-mutex-private.hh | 2 +-
 src/hb-private.hh       | 2 ++
 2 files changed, 3 insertions(+), 1 deletion(-)

commit fd0001d7dbe6ede99a9f87f96f231ffb53303be8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 12 10:32:41 2014 -0400

    [coretext] Compare CGFont and PS name, if CTFont didn't match

    See comments.

    Fixes vertical text.  CoreText backend is in very good shape now!

    Also see:
    5a0eed3b50629be4826e4e9428f2c3255195395d
    25f4fb9b56bb3f8bec821571c78f8829e40daa54

    Fixes http://github.com/behdad/harfbuzz/pull/36

 src/hb-coretext.cc | 54
 ++++++++++++++++++++++++++++++++++++++++++++++++------
 1 file changed, 48 insertions(+), 6 deletions(-)

commit 5a0eed3b50629be4826e4e9428f2c3255195395d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 11 23:47:16 2014 -0400

    [coretext] Implement vertical shaping

    Currently doesn't work though, we detect font fallback.  Apparently
    matching on ct_font is not safe for this.  Looks like commit
    25f4fb9b56bb3f8bec821571c78f8829e40daa54 wasn't enough after all.

 src/hb-coretext.cc | 127
 ++++++++++++++++++++++++++++++++++-------------------
 1 file changed, 81 insertions(+), 46 deletions(-)

commit 1b55077f03758e49f93b8bc1de678e96ea58718c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 11 20:45:12 2014 -0400

    [coretext] Remove unnecessary alt_size

    Wasn't needed after a6b8dc87421de33746b0b14d86d2d1532aec02af.

 src/hb-coretext.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 10b1104d791a0b0103c6bbb083b5819f2b7d328d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 11 20:02:45 2014 -0400

    [coretext] Use CFRunStatus

    Assert that all runs had expected direction, and take hint for
    non-monotone clusters.

 src/hb-coretext.cc | 17 +++++++++++++++--
 1 file changed, 15 insertions(+), 2 deletions(-)

commit fd1a6aa8d029c701b1532efa59ce901109cfc216
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 11 20:01:37 2014 -0400

    [coretext] Minor

 src/hb-coretext.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 130856c705641aa681307b5b51b5fb84e295f382
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 11 19:16:26 2014 -0400

    [coretext] Remove debug printf!

 src/hb-coretext.cc | 1 -
 1 file changed, 1 deletion(-)

commit b5fbc3b8f560235d014c62e49220574ffcf89349
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 11 18:40:01 2014 -0400

    API: Do not clear buffer-flags in hb_buffer_clear_contents()

    After 763e5466c0a03a7c27020e1e2598e488612529a7, one doesn't
    need to set flags for different pieces of text.  The flags now
    are something the client sets up once, depending on how it
    actually uses the buffer.  As such, don't clear it in
    clear_contents().

    Tests updated.

 src/hb-buffer-private.hh |  4 +---
 src/hb-buffer.cc         |  4 ++--
 test/api/test-buffer.c   | 15 ++++++++++++---
 3 files changed, 15 insertions(+), 8 deletions(-)

commit 104484cefeca03d95837bba5f39178693c86ce8a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 11 18:23:43 2014 -0400

    Minor

 src/hb-common.h | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 4acce77db7dd588ba277779c4997b0256ebe426e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 11 17:46:50 2014 -0400

    [coretext] Pass buffer direction to CoreText

    Have to use a CTTypesetter for this.

 src/hb-coretext.cc | 26 ++++++++++++++++++++++----
 1 file changed, 22 insertions(+), 4 deletions(-)

commit 5ec45dd37caa8a87ce2689a66272ba8a343fe6ba
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 11 17:46:12 2014 -0400

    [coretext] Minor

    It's hard to handle all possible NULL returns from CoreText.  Add one
    more...

 src/hb-coretext.cc | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

commit 624a299b829ccf9864dd2f3001b1a49476e96b4a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 11 15:29:18 2014 -0400

    [coretext] Attach marks to base clusters

    Fixes https://githu.com/behdad/harfbuzz/issues/49
    to the extent that it can be fixed.

 src/hb-coretext.cc | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

commit 3c41ccb5358b0be6cc68d49f436d2cb1792cd5e5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 11 15:11:59 2014 -0400

    [coretext] Use input clusters

    Before, this shaper was returning UTF-16 cluster indices instead of
    returning whatever cluster values the user had had set up in the
    buffer.
    Ouch!

 src/hb-coretext.cc | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

commit a6b8dc87421de33746b0b14d86d2d1532aec02af
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 11 15:08:19 2014 -0400

    [coretext] Fix buffer resize handling

    We can't really resize buffer and continue in this shaper as we are
    using the scratch buffer for string_ref and log_cluster.  Restructure
    shaper to retry from (almost) scratch.

 src/hb-buffer-private.hh |   3 +
 src/hb-coretext.cc       | 428
 ++++++++++++++++++++++++++---------------------
 2 files changed, 238 insertions(+), 193 deletions(-)

commit 9b3c60c88b118f01610ae7a608b138f79f2dc7be
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 11 13:25:43 2014 -0400

    [coretext] Always compute log_clusters

    To be used soon.

 src/hb-coretext.cc | 24 +++++++++++-------------
 1 file changed, 11 insertions(+), 13 deletions(-)

commit 15c633dd1f412f9ef839d80a8f7af35e7ea48fbc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 11 13:42:42 2014 -0400

    Minor

 src/hb-graphite2.cc | 4 ++--
 src/hb-uniscribe.cc | 6 ++----
 2 files changed, 4 insertions(+), 6 deletions(-)

commit 9ce067c77524a9ffc77ceabcba5e7dab36fd39de
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 11 02:04:38 2014 -0400

    [coretext] Simplify cluster mapping

 src/hb-coretext.cc | 41 +++++++++++++++++------------------------
 1 file changed, 17 insertions(+), 24 deletions(-)

commit 49f7fb63761e4ca9936990fb90a77fd3600f5ad2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 10 19:19:38 2014 -0400

    [coretext] Minor

 src/hb-coretext.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 25f4fb9b56bb3f8bec821571c78f8829e40daa54
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 10 19:05:25 2014 -0400

    [coretext] Fix fallback detection

    Fixes http://github.com/behdad/harfbuzz/pull/36

 src/hb-coretext.cc | 29 ++++++++++++++++++++---------
 1 file changed, 20 insertions(+), 9 deletions(-)

commit 77a7a53acef7de355116d488e7d64ff1d7e9e9e1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 10 18:59:47 2014 -0400

    [coretext] Fix last range

    Test with:

    hb-view /Library/Fonts/Zapfino.ttf ZapfinoZapfino --features=-dlig[7:]
    --shaper=coretext

 src/hb-coretext.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c2b151d95262a8dc2d2ce94e19ab0ef5b0c8f98d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 10 18:52:07 2014 -0400

    Fix hb_in_range() for types smaller than int

    As exercised by hb-coretext .notdef code.

 src/hb-private.hh | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 26a963b9cb4af3119177f277a2d48a5d537458fb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 10 18:04:50 2014 -0400

    [wince] Try to fix some stuff on Windows CE

    Based on errors seen here:
    http://testresults.qt-project.org/ci/QtBase_dev_Integration/build_03837/wince70embedded-armv4i-msvc2008_Windows_7/log.txt.gz

    Fully untested.

 src/hb-private.hh | 8 ++++++++
 1 file changed, 8 insertions(+)

commit 92aeee3f040c2c32cbf70b27bd6954535388c870
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 10 17:42:19 2014 -0400

    Minor

 src/hb-coretext.cc  | 4 ++--
 src/hb-uniscribe.cc | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

commit b9993d8d6d332994dfbd29e99ff8043622003417
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 10 17:40:24 2014 -0400

    [coretext] Fix assert on Yosemite

    Apparently those functions documented as sometimes returning NULL
    actually exercise that right in OS X 10.10 Yosemite.  The scratch
    was too small for that.  I *think* I fixed it, but haven't tested
    as I don't have Yosemite.

 src/hb-coretext.cc | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit 087733dd66e17297ef0e53680fafe42c84884104
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 18 11:21:08 2014 -0700

    [coretext] Use CGFont as face_data

 src/hb-coretext.cc | 26 +++++++++-----------------
 1 file changed, 9 insertions(+), 17 deletions(-)

commit d277c3d7eee1fd4fb41c38255e5c4df539353e89
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 7 15:38:52 2014 -0400

    [arabic] Bug 82306 - Mandaic had errors in its Unicode Joining_Type

    Fixes https://bugs.freedesktop.org/show_bug.cgi?id=82306

 src/hb-ot-shape-complex-arabic-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 38fb30d7420a4b01f99cee31baa8c3990a1d1c5f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 6 13:34:49 2014 -0400

    Use atexit() only if it's safe to call from shared library

    Apparently they are not (advertised as?) safe on BSD systems.
    We ignore the case of static libraries.

    Whitelisted on glibc, Android, and MSVC / mingw.

    https://bugs.freedesktop.org/show_bug.cgi?id=82246

 src/hb-common.cc    |  4 ++--
 src/hb-ft.cc        |  2 +-
 src/hb-private.hh   | 25 +++++++++++++++++++++++++
 src/hb-shape.cc     |  2 +-
 src/hb-shaper.cc    |  2 +-
 src/hb-uniscribe.cc |  2 +-
 6 files changed, 31 insertions(+), 6 deletions(-)

commit d5e61470fa8e5046c35a79988e00e012ae4fff0f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 5 14:19:01 2014 -0400

    [arabic] Fix fallback shaping regression

    Was broken in 615d00ea252739da57edbd980ff27e573.

    Fixes https://github.com/behdad/harfbuzz/pull/48

    Micro-test added.

 src/hb-ot-shape-complex-arabic.cc                        |   4 ++--
 test/shaping/Makefile.am                                 |   1 +
 test/shaping/fonts/sha1sum/MANIFEST                      |   1 +
 .../sha1sum/df768b9c257e0c9c35786c47cae15c46571d56be.ttf | Bin 0 ->
 6332 bytes
 test/shaping/tests/MANIFEST                              |   1 +
 test/shaping/tests/arabic-fallback-shaping.tests         |   1 +
 6 files changed, 6 insertions(+), 2 deletions(-)

commit 91c2c0fd2b0f660d79744b3dfaf39ab86883e96b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 2 19:24:55 2014 -0400

    0.9.34

 NEWS         | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 configure.ac |  2 +-
 2 files changed, 54 insertions(+), 1 deletion(-)

commit d7c850f8037d2701366008eb8c2a527c9d40abde
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 2 17:46:38 2014 -0400

    [uniscribe] Minor

 src/hb-uniscribe.cc | 1 +
 1 file changed, 1 insertion(+)

commit 8f3eebf7ee4005f9a8efaafcb7f4058cc0a3756e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 2 17:18:46 2014 -0400

    Make sure gsubgpos buffer vars are available during fallback_position

    Add buffer var allocation asserts to a few key places.

 src/hb-ot-layout-gpos-table.hh             |  4 ++--
 src/hb-ot-layout-gsub-table.hh             |  2 +-
 src/hb-ot-layout-private.hh                | 15 +++++++++++++++
 src/hb-ot-shape-complex-arabic-fallback.hh |  2 +-
 src/hb-ot-shape-fallback.cc                |  2 ++
 src/hb-ot-shape-normalize.cc               |  2 ++
 src/hb-ot-shape.cc                         |  3 +++
 7 files changed, 26 insertions(+), 4 deletions(-)

commit 2053f369f84676f197ac41ea654a318c48922abd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 2 16:31:16 2014 -0400

    Disable 'liga' for vertical text

    The reason we turned it on is because Kazuraki uses it.  But that's
    not reason enough.  Until the OpenType spec gets its act together re
    adding design-direction to lookups, this is better user experience.

 src/hb-ot-shape.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 763e5466c0a03a7c27020e1e2598e488612529a7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 2 16:17:44 2014 -0400

    Make it easier to use HB_BUFFER_FLAG_BOT/EOT

    Previously, we expected users to provide BOT/EOT flags when the
    text *segment* was at paragraph boundaries.  This meant that for
    clients that provide full paragraph to HarfBuzz (eg. Pango), they
    had code like this:

      hb_buffer_set_flags (hb_buffer,
                           (item_offset == 0 ? HB_BUFFER_FLAG_BOT : 0) |
                           (item_offset + item_length == paragraph_length
                           ?
                            HB_BUFFER_FLAG_EOT : 0));

      hb_buffer_add_utf8 (hb_buffer,
                          paragraph_text, paragraph_length,
                          item_offset, item_length);

    After this change such clients can simply say:

      hb_buffer_set_flags (hb_buffer,
                           HB_BUFFER_FLAG_BOT | HB_BUFFER_FLAG_EOT);

      hb_buffer_add_utf8 (hb_buffer,
                          paragraph_text, paragraph_length,
                          item_offset, item_length);

    Ie, HarfBuzz itself checks whether the segment is at the beginning/end
    of the paragraph.  Clients that only pass item-at-a-time to HarfBuzz
    continue not setting any flags whatsoever.

    Another way to put it is: if there's pre-context text in the buffer,
    HarfBuzz ignores the BOT flag.  If there's post-context, it ignores
    EOT flag.

 src/hb-ot-shape-complex-arabic.cc | 40
 +++++++++++++++++++--------------------
 src/hb-ot-shape.cc                |  1 +
 2 files changed, 20 insertions(+), 21 deletions(-)

commit 0a5ae9336231c4d189e1682e4fd9c9c4552b8bbf
Merge: ac53443f 6ab6be32
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 2 15:00:34 2014 -0400

    Merge branch 'win1256'

commit 6ab6be32c5857ce3344021ad2996e80b2a8c8f99
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 2 14:58:38 2014 -0400

    [arabic/win1256] Remove unused MultipleSubst macros

 src/hb-ot-shape-complex-arabic-win1256.hh | 12 ------------
 1 file changed, 12 deletions(-)

commit abfa4252cce1c56c472693dcd8400cd97ededd2f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 1 19:05:33 2014 -0400

    [arabic/win1256] Really fix lam-alef this time

    https://bugzilla.mozilla.org/show_bug.cgi?id=1045139#c26
    https://github.com/behdad/harfbuzz/commit/b276e897d17519a2c28f79d024904ac2bdd86bcf#commitcomment-7243499

 src/hb-ot-shape-complex-arabic-fallback.hh |  2 +-
 src/hb-ot-shape-complex-arabic-win1256.hh  | 49
 +++++++++---------------------
 2 files changed, 15 insertions(+), 36 deletions(-)

commit 55977f2a462b7fa1248eab3787053dc82320d3e5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 1 16:14:33 2014 -0400

    [arabic/win1256] Hook up lamMedi lookup

    Restructure lookup array to accommodate.

    https://bugzilla.mozilla.org/show_bug.cgi?id=1045139#c18

 src/hb-ot-shape-complex-arabic-fallback.hh | 26
 ++++++++++----------------
 src/hb-ot-shape-complex-arabic-win1256.hh  |  1 +
 2 files changed, 11 insertions(+), 16 deletions(-)

commit e839e2523e64fd0cf21929f6a45e2facd59c7917
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 1 16:09:31 2014 -0400

    [arabic/win1256] Fix TEH MARBUTA final form

    https://bugzilla.mozilla.org/show_bug.cgi?id=1045139#c18

 src/hb-ot-shape-complex-arabic-win1256.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit a2de193220ee2839125594bd1a60b5b66ab4598e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 31 18:21:05 2014 -0400

    [arabic/win1256] Fix shaping of JEEM, HAH, and KHAH

    https://bugzilla.mozilla.org/show_bug.cgi?id=1045139#c16

 src/hb-ot-shape-complex-arabic-win1256.hh | 22 ++++++++++++----------
 1 file changed, 12 insertions(+), 10 deletions(-)

commit 1789ccb1dd56af6117eac00e633eff94860ba252
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 31 11:04:00 2014 -0400

    [arabic/win1256] Remove GCC'ism

    The table can now compile independently too.  If we cannot make
    it work
    on MSVC, we can always generate the data and distribute it.

    The code now compiles cleanly with:

    gcc -c -xc -std=c99 -Werror -pedantic
    hb-ot-shape-complex-arabic-win1256.hh
    g++ -c -xc -std=c++1x -Werror -pedantic
    hb-ot-shape-complex-arabic-win1256.hh

    See:
    https://github.com/behdad/harfbuzz/commit/a97f537cec209649302899975d76ca2b2661da7a#commitcomment-7218736

 src/hb-ot-shape-complex-arabic-fallback.hh |   4 +-
 src/hb-ot-shape-complex-arabic-win1256.hh  | 123
 +++++++++++++++++------------
 2 files changed, 75 insertions(+), 52 deletions(-)

commit f28b1c823db2ad56fed356ef864a7508d23048b8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 30 02:15:44 2014 -0400

    [arabic] Implement Windows-1256 private shaping

    Bug 1045139 - The Arabic text with "MS Sans Serif" font is rendered
    bad
    https://bugzilla.mozilla.org/show_bug.cgi?id=1045139

    This is only enabled on Windows platforms, and requires support from
    Uniscribe to work.  But for clients that do hook up to Uniscribe, this
    fixes shaping of Windows-1256-encoded bitmap fonts like "MS Sans
    Serif".

    The code and table together have just less than a 1kb footprint when
    enabled.

    UNTESTED.  I might even have broken regular Arabic fallback shaping.

 src/Makefile.am                            |   1 +
 src/check-includes.sh                      |   2 +-
 src/hb-ot-shape-complex-arabic-fallback.hh | 125 +++++++++--
 src/hb-ot-shape-complex-arabic-win1256.hh  | 328
 +++++++++++++++++++++++++++++
 4 files changed, 442 insertions(+), 14 deletions(-)

commit ac53443f1cea83ed43a4e41a9fdb91902f7fae7b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 31 18:51:37 2014 -0400

    [hangul] Don't apply 'calt'

    See comments.

    Micro-test added.

 src/hb-ot-shape-complex-hangul.cc                        |  11
 ++++++++++-
 test/shaping/Makefile.am                                 |   1 +
 .../sha1sum/757ebd573617a24aa9dfbf0b885c54875c6fe06b.ttf | Bin 0 ->
 1804 bytes
 .../sha1sum/7e14e7883ed152baa158b80e207b66114c823a8b.ttf | Bin 0 ->
 1644 bytes
 test/shaping/fonts/sha1sum/MANIFEST                      |   2 ++
 test/shaping/tests/MANIFEST                              |   1 +
 test/shaping/tests/hangul-jamo.tests                     |  11
 +++++++++++
 7 files changed, 25 insertions(+), 1 deletion(-)

commit 8292f96b2be173ebceb1b54426c271cfeaecd633
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 31 18:33:11 2014 -0400

    [test] Fix record-test.sh

 test/shaping/record-test.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 88911e8cc765c26e502503a3a00ac7f17973f3d9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 29 19:47:26 2014 -0400

    Minor

 src/hb-ot-shape-complex-arabic-fallback.hh | 1 +
 1 file changed, 1 insertion(+)

commit 9e834e29e0b657f0555df1ab9cea79ff7abcf08d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jul 26 20:34:01 2014 -0400

    [hebrew] Zero mark advance by GDEF late

    Seems to be what Uniscribe does.

    At this point I think it's work checking our default...

    Fixes Bug 76767 - Zeroing of advance of 2nd component of multiple
    substitution with SBL Hebrew
    https://bugs.freedesktop.org/show_bug.cgi?id=76767

    Micro-test added.

 src/hb-ot-shape-complex-hebrew.cc                        |   2 +-
 .../sha1sum/8454d22037f892e76614e1645d066689a0200e61.ttf | Bin 0 ->
 6068 bytes
 test/shaping/fonts/sha1sum/MANIFEST                      |   1 +
 test/shaping/tests/zero-width-marks.tests                |   1 +
 4 files changed, 3 insertions(+), 1 deletion(-)

commit 6f2d9ba52a6d1e3fc200da1ef0e85ba020fcd0dc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jul 26 19:17:44 2014 -0400

    Add old-Myanmar shaper

    Looks like Unsicribe responds to the 'mymr' tag by zeroing marks
    GDEF_LATE instead of generic-shaper UNICODE_LATE.  Implement that.

    Fixes
    Bug 81775 - Incorrect Rendering with harfbuzz-ng myanmar unicode
    https://bugs.freedesktop.org/show_bug.cgi?id=81775

    Micro-test added based on Padauk.

 src/hb-ot-shape-complex-myanmar.cc                    |  18
 ++++++++++++++++++
 src/hb-ot-shape-complex-private.hh                    |   5 +++--
 test/shaping/Makefile.am                              |   1 +
 test/shaping/fonts/sha1sum/MANIFEST                   |   1 +
 .../bb9473d2403488714043bcfb946c9f78b86ad627.ttf      | Bin 0 ->
 3440 bytes
 test/shaping/tests/MANIFEST                           |   1 +
 test/shaping/tests/zero-width-marks.tests             |   1 +
 7 files changed, 25 insertions(+), 2 deletions(-)

commit 595d2b96c37de8147489dc5e0ddcc4ab1ad3eea9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jul 26 18:44:15 2014 -0400

    Minor

 src/hb-ot-shape-complex-indic.cc | 1 +
 src/hb-ot-shape.cc               | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

commit fe6788bc570d77d5b3aafc68efd51ca6b80499b1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 25 12:40:56 2014 -0400

    Typo

 src/hb-common.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0de25d4184d2d92b1a2ebb6fa054275aaae4c316
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 25 12:35:03 2014 -0400

    [util] Note CSS compatibility in --help-features

 util/options.cc | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 6e69200a2aadbc6bba35ffb4a058c14286b84f46
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 25 12:30:47 2014 -0400

    Fix snprintf() format

    Patch from Maks Naumov.
    Fixes https://github.com/behdad/harfbuzz/pull/22

 src/hb-shape.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 5c5cdbbdf8be231c433e21b050a6c6991d327b61
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 25 12:21:49 2014 -0400

    Make sure broken feature strings are not partially parsed

    If user doesn't check hb_feature_from_string() return value, we
    don't want them to end up see the partially-parsed feature.

 src/hb-shape.cc | 18 ++++++++++++++----
 1 file changed, 14 insertions(+), 4 deletions(-)

commit a795fe637846e0d9561d2f7cdd84cfafd58b23a7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 25 12:15:33 2014 -0400

    Allow quotation marks around feature tag in hb_feature_from_string()

    With this, I believe we accept CSS feature strings completely.

 src/hb-shape.cc | 24 +++++++++++++++++++++---
 1 file changed, 21 insertions(+), 3 deletions(-)

commit 3f6461847412e78bcddc8eba97200f3afcde869a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 25 12:04:27 2014 -0400

    Allow space at the end of feature string with values, eg 'dlig=1 '

 src/hb-shape.cc | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit f31f7d2259dd8edffc070af55938cb7aa23514c1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 25 12:03:52 2014 -0400

    Minor

 src/hb-shape.cc | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

commit 60cb18a5dea2d30793f89e80995bb729c014864a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 25 12:01:22 2014 -0400

    Allow on/off in hb_feature_from_string()

    We now allow things like "dlig on" / "dlig=on".

 src/hb-shape.cc | 26 ++++++++++++++++++++++++--
 1 file changed, 24 insertions(+), 2 deletions(-)

commit d9e618eca9e01c2eb6db65504af3f73be370a1e7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 25 11:56:01 2014 -0400

    Remove duplicate definition of ISALNUM

    It's defined in hb-private.h already.

 src/hb-shape.cc | 2 --
 1 file changed, 2 deletions(-)

commit 2ee5f665ded86147acedc400153c0b3a90fe07c6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 25 11:53:46 2014 -0400

    Fix parsing of features like "- liga" (with the space)

 src/hb-shape.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit e15fa7a8cffbe6a67b1048d7b87b7df77d8b1686
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 25 11:44:35 2014 -0400

    Do not require the '=' in hb_feature_from_string()

    Towards accepting CSS font-feature-settings strings.

 src/hb-shape.cc | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit f4fe9baefdb7e0ff9946f88b6f4b55738fa30cdf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 25 11:39:55 2014 -0400

    Reject tags longer than 4 chars in hb_feature_from_string()

 src/hb-shape.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 7e8c38954649c0bf2e6051d84ca08dce090ec169
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 25 11:18:11 2014 -0400

    Minor warnings fixes

    Some systems insist on -Wmissing-field-initializers.  We have
    too many,
    by design.  Fix a few easy ones.

 src/hb-open-type-private.hh | 2 +-
 src/hb-ot-layout-private.hh | 2 +-
 src/hb-private.hh           | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

commit fc0daafab0336b847ac14682e581a8838f36a0bf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 23 16:48:51 2014 -0400

    [indic] Handle old-spec Malayalam reordering with final Halant

    See comment.

    Micro-tests added.

 src/hb-ot-shape-complex-indic.cc                   |  28
 +++++++++++++++++----
 test/shaping/Makefile.am                           |   1 +
 .../270b89df543a7e48e206a2d830c0e10e5265c630.ttf   | Bin 0 -> 3428 bytes
 .../57a9d9f83020155cbb1d2be1f43d82388cbecc88.ttf   | Bin 0 -> 2272 bytes
 test/shaping/fonts/sha1sum/MANIFEST                |   2 ++
 test/shaping/tests/MANIFEST                        |   1 +
 test/shaping/tests/indic-old-spec.tests            |   2 ++
 .../indic/script-malayalam/misc/misc.txt           |   1 +
 8 files changed, 30 insertions(+), 5 deletions(-)

commit d6d349d17898529ecdf8217a54987a3e9f81ce05
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 23 11:38:49 2014 -0400

    Give CC to gir-scanner

    From:
    https://github.com/Alexpux/MINGW-packages/blob/master/mingw-w64-harfbuzz/0001-give-cc-to-gir-scanner.all.patch

 src/Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit 8c1bdb46facb79cfca5ebfea9a7e467b40337f47
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 22 17:56:43 2014 -0400

    0.9.33

 NEWS         | 10 ++++++++++
 configure.ac |  2 +-
 2 files changed, 11 insertions(+), 1 deletion(-)

commit d218bdb26b226fbf68331eb586b24460c061313d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 22 18:01:46 2014 -0400

    Fix test runner under Windows

 test/shaping/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 3f310dc0cae9015c45ba642b9b83d5695c807aad
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 22 16:26:27 2014 -0400

    Disallow changing settings on immutable face

    Ouch!

 src/hb-face.cc    | 8 ++++----
 src/hb-font.cc    | 4 ++--
 src/hb-unicode.cc | 2 +-
 3 files changed, 7 insertions(+), 7 deletions(-)

commit 0fc0a1022854324261fea8893678a3e9fd9443eb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 21 11:12:54 2014 -0400

    [win] Fix Cygwin build

    https://github.com/behdad/harfbuzz/commit/db308280488c2ee11ba865a9922eb6a0c1abeef3#commitcomment-7077778

 src/hb-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 1132a7dd0ecf1c425078e39e5471330bace42659
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 20 01:17:40 2014 -0400

    Add HB_TAG_MAX_SIGNED / _HB_SCRIPT_MAX_VALUE_SIGNED

    To make C language police happy.

 src/hb-common.h | 17 ++++++++++++-----
 1 file changed, 12 insertions(+), 5 deletions(-)

commit df99976398a53521e0228541055dcaee8f5ba87f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jul 19 17:31:23 2014 -0400

    [gobject] Skip _HB_SCRIPT_MAX_VALUE

    Fixes https://github.com/behdad/harfbuzz/pull/38

 src/hb-common.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f1a8d50a87edfb8147aa1bec732ed7ccbfef2877
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jul 19 16:52:32 2014 -0400

    [win] Don't define visibility attribtue under Cygwin

 src/hb-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9c77027d645142794c3ff1590a96bb151c3f2e91
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jul 19 16:37:22 2014 -0400

    [win] Turn STRICT on for including windows.h

 src/hb-private.hh | 1 +
 1 file changed, 1 insertion(+)

commit db308280488c2ee11ba865a9922eb6a0c1abeef3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jul 19 16:32:04 2014 -0400

    [win] Consolidate windows.h include tips and tricks

 src/hb-atomic-private.hh |  4 ----
 src/hb-mutex-private.hh  |  1 -
 src/hb-private.hh        | 12 ++++++++++++
 src/hb-uniscribe.cc      |  3 ---
 src/hb-uniscribe.h       |  3 ---
 5 files changed, 12 insertions(+), 11 deletions(-)

commit f26d59d4684be3419c976d781b6dbc956248e3bb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jul 19 16:10:21 2014 -0400

    More fixing MemoryBarrier() on Mingw32

    Set requested windows header to Vista.  See discussion:

    https://github.com/behdad/harfbuzz/commit/fbb2847f541389f40718af71c4945024ae177ab2#commitcomment-7054700

 src/hb-atomic-private.hh | 3 +++
 1 file changed, 3 insertions(+)

commit 00a57eb4b50fd894dc68c6525a5bbebf0ebc30e4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 18 14:42:50 2014 -0400

    [test] Remove unused micro-font

 .../9d64156923a1b9fed1e05f74599c16563eca42d9.ttf        | Bin 81968 ->
 0 bytes
 test/shaping/fonts/sha1sum/MANIFEST                     |   1 -
 2 files changed, 1 deletion(-)

commit ed29b15f5d0d9e7b40143926ca7d40bf645f67e9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 18 14:37:49 2014 -0400

    [test] Add more Mongolian variation selector tests

    From
    https://code.google.com/p/chromium/issues/detail?id=393896

 .../9d64156923a1b9fed1e05f74599c16563eca42d9.ttf        | Bin 0 ->
 81968 bytes
 test/shaping/fonts/sha1sum/MANIFEST                     |   2 ++
 .../bb29ce50df2bdba2d10726427c6b7609bf460e04.ttf        | Bin 0 ->
 74856 bytes
 test/shaping/tests/mongolian-variation-selector.tests   |   1 +
 .../shaper-arabic/script-mongolian/misc/MANIFEST        |   1 +
 .../script-mongolian/misc/variation-selectors.txt       |   8 ++++++++
 6 files changed, 12 insertions(+)

commit 385cf37cf084198e3aedb4354a7b025938a9f11b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 17 18:22:07 2014 -0400

    Fix hb_in_range() unused-var warning on Windows

 src/hb-private.hh | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

commit e3b42f1af409c073b819bfc696024ccb1f1da63f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 17 17:13:54 2014 -0400

    [arabic] Disable 'cswh' again

    Ouch!

 src/hb-ot-shape-complex-arabic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 66f30915b185727a0041c998641edb550eb8a7fc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 17 16:05:47 2014 -0400

    0.9.32

 NEWS         | 12 ++++++++++++
 configure.ac |  2 +-
 2 files changed, 13 insertions(+), 1 deletion(-)

commit 82f4d9d53f348f41b14b877c1ac77c0372c49caa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 17 15:57:37 2014 -0400

    [arabic] Add note re disabled 'cswh'

 src/hb-ot-shape-complex-arabic.cc | 9 +++++++++
 1 file changed, 9 insertions(+)

commit 615d00ea252739da57edbd980ff27e573f88ee7e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 17 13:36:09 2014 -0400

    [arabic] Apply init/medi/isol/fini/... in separate stages

    Follows the order of the Arabic/Syriac specs.  Also don't stop
    between rlig and calt in non-Arabic scripts.

    Micro-tests for Arabic and Mongolian added for the latter.

 src/hb-ot-shape-complex-arabic.cc                  |  56
 +++++++++++++--------
 test/shaping/Makefile.am                           |   2 +
 .../813c2f8e5512187fd982417a7fb4286728e6f4a8.ttf   | Bin 0 -> 3428 bytes
 .../8a9fea2a7384f2116e5b84a9b31f83be7850ce21.ttf   | Bin 0 -> 3428 bytes
 test/shaping/fonts/sha1sum/MANIFEST                |   3 ++
 .../a919b33197965846f21074b24e30250d67277bce.ttf   | Bin 0 -> 12560 bytes
 test/shaping/tests/MANIFEST                        |   1 +
 test/shaping/tests/arabic-feature-order.tests      |   3 ++
 8 files changed, 43 insertions(+), 22 deletions(-)

commit d21e997035b16e9807dfb29c3605abb93f92f1ee
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 17 15:27:46 2014 -0400

    [test] Make record_test understand cmdline args to hb-shape

 test/shaping/record-test.sh | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 7cd33f230441093dbfb1fec48f8c580ee8d9ef71
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 17 14:22:11 2014 -0400

    Micro optimization

 src/hb-fallback-shape.cc           | 36
 +++++++++++++++++++-----------------
 src/hb-ot-shape-complex-arabic.cc  | 19 +++++++++++--------
 src/hb-ot-shape-complex-indic.cc   | 15 ++++++++++-----
 src/hb-ot-shape-complex-myanmar.cc |  7 +++++--
 src/hb-ot-shape-complex-sea.cc     |  7 +++++--
 src/hb-ot-shape-fallback.cc        | 30 ++++++++++++++++--------------
 src/hb-ot-shape.cc                 | 18 ++++++++++++------
 7 files changed, 78 insertions(+), 54 deletions(-)

commit 164c13d73f67fdddba28e6409d76b4903e8ffab3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 17 14:16:38 2014 -0400

    Another try to fix Mongolian free variation selectors

    This reverts bf029281 and fixes it properly.  That commit
    was not enough as it was only inheriting the shaping_action
    for prev_action, but not curr_action.

    Micro-test added.

    https://code.google.com/p/chromium/issues/detail?id=393896

 src/hb-ot-shape-complex-arabic.cc                  |  24
 +++++++++++++++------
 src/hb-unicode-private.hh                          |   3 ++-
 test/shaping/fonts/sha1sum/MANIFEST                |   1 +
 .../ef86fe710cfea877bbe0dbb6946a1f88d0661031.ttf   | Bin 0 -> 2748 bytes
 .../tests/mongolian-variation-selector.tests       |   1 +
 5 files changed, 22 insertions(+), 7 deletions(-)

commit 5209c505061130854a2bfea8849928ade3ee92f3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 17 12:23:44 2014 -0400

    Revert "Show U+FFFD REPLACEMENT CHARACTER for invalid Unicode
    codepoints"

    We now handle U+FFFD replacement in hb_buffer_add_utf*().  Any other
    manipulation can happen in user callbacks.  No need for this.

    https://github.com/behdad/harfbuzz/commit/efe74214bbb68eaa3d7621e73869b5d58210107e#commitcomment-7039404

    This reverts commit efe74214bbb68eaa3d7621e73869b5d58210107e.

    Conflicts:
            src/hb-ot-shape-normalize.cc

 src/hb-ot-shape-normalize.cc | 7 -------
 1 file changed, 7 deletions(-)

commit 9e7c720100e432b43564ed5ff12f3175ca2ed74a
Author: Dominik Röttsches <dominik.rottsches@intel.com>
Date:   Thu Jul 17 14:40:34 2014 +0300

    Fix CoreText build after a8b89a09f6d3a34

 src/hb-private.hh | 1 +
 1 file changed, 1 insertion(+)

commit a4d643755a531c82ab91e1e43d6bb0b7bd46453a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 16 20:15:45 2014 -0400

    Minor

 src/hb-utf-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a18897f87ce2c6048c3a0339074924b2232e2b95
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 16 16:02:15 2014 -0400

    0.9.31

 NEWS         | 29 +++++++++++++++++++++++++++++
 configure.ac |  2 +-
 2 files changed, 30 insertions(+), 1 deletion(-)

commit 976c8f455221eb599d1c446eafd88d51d7d2aa65
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 16 15:34:20 2014 -0400

    New API: hb_buffer_[sg]et_replacement_codepoint()

    With this change, we now by default replace broken UTF-8/16/32 bits
    with U+FFFD.  This can be changed by calling new API on the buffer.
    Previously the replacement value used to be (hb_codepoint_t)-1.

    Note that hb_buffer_clear_contents() does NOT reset the replacement
    character.

    See discussion here:

    https://github.com/behdad/harfbuzz/commit/6f13b6d62daae4989e3cc2fe4b168e5c59650964

    New API:

      hb_buffer_set_replacement_codepoint()
      hb_buffer_get_replacement_codepoint()

 src/hb-buffer-private.hh |  1 +
 src/hb-buffer.cc         | 45
 ++++++++++++++++++++++++++++++++++++++++++---
 src/hb-buffer.h          | 15 ++++++++++++++-
 src/hb-utf-private.hh    | 34 ++++++++++++++++++++--------------
 test/api/test-buffer.c   | 26 +++++++++++++++-----------
 5 files changed, 92 insertions(+), 29 deletions(-)

commit bcba8b45024e1eca8be77ca2657de1dc44dbf8fb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 16 14:59:04 2014 -0400

    New API hb_buffer_add_codepoints()

    Like hb_buffer_add_utf32, but doesn't do any Unicode validation.
    This is like what hb_buffer_add_utf32 used to be until a couple
    commits ago.

 src/hb-buffer.cc | 32 +++++++++++++++++++++++++++-----
 src/hb-buffer.h  |  8 ++++++++
 2 files changed, 35 insertions(+), 5 deletions(-)

commit 625dbf141a05f1ae81a7b8cbc529996370101284
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 16 14:49:55 2014 -0400

    [buffer] Templatize UTF-* functions

 src/hb-buffer.cc      |  10 +-
 src/hb-utf-private.hh | 307
 ++++++++++++++++++++++++++------------------------
 2 files changed, 166 insertions(+), 151 deletions(-)

commit e634fed4285ce440d277345727ed01757df6d779
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 16 14:17:26 2014 -0400

    [buffer] Validate UTF-32 input

    Same as what we do for UTF-8 and UTF-16.

 src/hb-utf-private.hh  | 13 +++++++++---
 test/api/test-buffer.c | 55
 ++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 65 insertions(+), 3 deletions(-)

commit b98c5db32d15fcfb27ce2f6737203ce1ad124319
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 16 13:44:01 2014 -0400

    Minor refactoring

 src/hb-ot-layout-gsubgpos-private.hh | 25 ++++++-------------------
 1 file changed, 6 insertions(+), 19 deletions(-)

commit 844f1a487d9c39724ebff20e89f6184c9a59be0b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 16 13:32:51 2014 -0400

    [tests] Add record-test.sh

 test/shaping/Makefile.am    |  1 +
 test/shaping/record-test.sh | 49
 +++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 50 insertions(+)

commit 3b861421a772f52eb232ff93bd74b5a8214801ec
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 16 13:22:05 2014 -0400

    Fix Mongolian Variation Selectors for fonts without GDEF

    Originally we fixed those in 79d1007a501fd63c0ba4d51038c513e6b8b94740.
    However, fonts like MongolianWhite don't have GDEF, but have
    IgnoreMarks
    in their LigatureSubstitute init/etc features.  We were synthesizing a
    GDEF class of mark for Mongolian Variation Selectors and as such the
    ligature lookups where not matching.  Uniscribe doesn't do that.

    I tried with more sophisticated fixes, like, if there is no GDEF and
    a lookup-flag mismatch happens, instead of rejecting a match, try
    skipping that glyph.  That surely produces some interesting behavior,
    but since we don't want to support fonts missing GDEF more than
    we have
    to, I went for this simpler fix which is to always mark
    default-ignorables as base when synthesizing GDEF.

    Micro-test added.

    Fixes rest of https://bugs.freedesktop.org/show_bug.cgi?id=65258

 src/hb-ot-shape.cc                                       |  13
 +++++++++++--
 .../sha1sum/37033cc5cf37bb223d7355153016b6ccece93b28.ttf | Bin 0 ->
 2780 bytes
 test/shaping/fonts/sha1sum/MANIFEST                      |   1 +
 test/shaping/tests/MANIFEST                              |   1 +
 test/shaping/tests/mongolian-variation-selector.tests    |   1 +
 5 files changed, 14 insertions(+), 2 deletions(-)

commit 878a25375b2fdf64cf0cc30c23fca9fcd58548e8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 16 13:21:26 2014 -0400

    Minor

 src/hb-ot-shape.cc        | 1 +
 src/hb-unicode-private.hh | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

commit ec181e50140fc65b32d6080e2f7f73bbe0269ba9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 16 13:10:03 2014 -0400

    Minor moving around

 src/hb-ot-shape.cc | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

commit e7ce50d9eb6e3678f731b10dfeb308ffc478af8d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 16 12:30:39 2014 -0400

    [indic] Fix access past end of array

 src/hb-ot-shape-complex-indic.cc | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit 73e23b0acfd2948d500321769035c56c9e072d77
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 15 18:43:49 2014 -0400

    Whitespace

 src/hb-ot-layout-gsubgpos-private.hh | 1 -
 1 file changed, 1 deletion(-)

commit f27be105afb86b337c7d940badc5a6462f0b58bb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 11 18:15:34 2014 -0400

    [Android.mk] Actually remove static library

 Android.mk | 26 --------------------------
 1 file changed, 26 deletions(-)

commit 96b80e9bcc4796eedac09d284dc8cc0439ced6ba
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 11 17:00:12 2014 -0400

    [Android.mk] Remove static library, add note re how to build

 Android.mk | 41 +++++++++++++++++++++++++++++++++++++----
 1 file changed, 37 insertions(+), 4 deletions(-)

commit b7bc0b671d2d568cb64b647dad2ca866a4e0183b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 11 16:20:28 2014 -0400

    Simplify / speed up UTF-8 code

 src/hb-utf-private.hh | 15 ++++++---------
 1 file changed, 6 insertions(+), 9 deletions(-)

commit af2490c0959daa0fe7f32a8b3b3a3699c7fc5f48
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 11 16:10:58 2014 -0400

    Only accept well-formed UTF-8 sequences

    Enable tests that were disabled before, and adjust one test,
    and add more tests.

 src/hb-utf-private.hh  | 93
 +++++++++++++++++++++++++++++++++-----------------
 test/api/test-buffer.c |  9 +++--
 2 files changed, 68 insertions(+), 34 deletions(-)

commit 7323d385cc758c06671cb38239d240eb517b28bc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 11 15:10:05 2014 -0400

    Simplify hb_utf_prev<16> to call hb_utf_next<16>

 src/hb-utf-private.hh | 23 ++++++++---------------
 1 file changed, 8 insertions(+), 15 deletions(-)

commit c09a607a842fdd7b33e2c57e8af96d21ff091acd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 11 15:05:36 2014 -0400

    Use hb_in_range() for arabic and indic tables

    Though, looks like gcc was smart enough to produce the same code
    before...

 src/gen-arabic-table.py                 |  18 +-
 src/gen-indic-table.py                  |  10 +-
 src/hb-ot-shape-complex-arabic-table.hh | 420
 ++++++++++++++++----------------
 src/hb-ot-shape-complex-indic-table.cc  |  88 +++----
 4 files changed, 268 insertions(+), 268 deletions(-)

commit 7627100f428ac0ec8509d961d368d2d25d8f0b6e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 11 14:54:42 2014 -0400

    Mark unsigned integer literals with the u suffix

    Simplifies hb_in_range() calls as the type can be inferred.
    The rest is obsessiveness, I admit.

 src/hb-buffer-serialize.cc                 |   2 +-
 src/hb-common.cc                           |   4 +-
 src/hb-coretext.cc                         |  16 +--
 src/hb-open-file-private.hh                |   4 +-
 src/hb-open-type-private.hh                |   2 +-
 src/hb-ot-cmap-table.hh                    |   4 +-
 src/hb-ot-head-table.hh                    |   6 +-
 src/hb-ot-hhea-table.hh                    |   2 +-
 src/hb-ot-layout-common-private.hh         |  14 +--
 src/hb-ot-layout-gdef-table.hh             |   8 +-
 src/hb-ot-layout-gpos-table.hh             |  24 ++--
 src/hb-ot-layout-gsub-table.hh             |   6 +-
 src/hb-ot-layout-gsubgpos-private.hh       |   2 +-
 src/hb-ot-layout-jstf-table.hh             |   2 +-
 src/hb-ot-layout-private.hh                |   4 +-
 src/hb-ot-layout.h                         |   6 +-
 src/hb-ot-map-private.hh                   |   8 +-
 src/hb-ot-maxp-table.hh                    |   4 +-
 src/hb-ot-shape-complex-arabic-fallback.hh |   2 +-
 src/hb-ot-shape-complex-hangul.cc          |  36 +++---
 src/hb-ot-shape-complex-hebrew.cc          | 134 ++++++++++-----------
 src/hb-ot-shape-complex-indic.cc           | 182
 ++++++++++++++---------------
 src/hb-ot-shape-complex-myanmar.cc         |  56 ++++-----
 src/hb-ot-shape-complex-sea.cc             |   8 +-
 src/hb-ot-shape-complex-thai.cc            |  84 ++++++-------
 src/hb-ot-shape-fallback.cc                |  40 +++----
 src/hb-ot-shape-normalize.cc               |   2 +-
 src/hb-ot-shape.cc                         |   6 +-
 src/hb-ot-tag.cc                           |  18 +--
 src/hb-unicode-private.hh                  |  40 +++----
 src/hb-uniscribe.cc                        |  14 +--
 src/hb-utf-private.hh                      |  16 +--
 32 files changed, 378 insertions(+), 378 deletions(-)

commit a8b89a09f6d3a3466282aae07fd65e143f9f8f83
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 11 14:18:01 2014 -0400

    Simplify hb_in_range()

    It's both faster and produces smaller code.  Now I feel stupid for
    not writing it this way before.

 src/hb-private.hh | 16 ++++++----------
 1 file changed, 6 insertions(+), 10 deletions(-)

commit db8934faa1854dafaf4c4ce34d1818e12f67ef52
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 11 13:58:36 2014 -0400

    Simplify hb_utf_prev<8> to call hb_utf_next<8>

 src/hb-utf-private.hh | 24 ++++--------------------
 1 file changed, 4 insertions(+), 20 deletions(-)

commit efe74214bbb68eaa3d7621e73869b5d58210107e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 11 11:59:48 2014 -0400

    Show U+FFFD REPLACEMENT CHARACTER for invalid Unicode codepoints

    Only if the font doesn't support it.  Ie, this gives the user to
    use non-Unicode codepoints as private values and return a meaningful
    glyph for them.  But if it's invalid and font callback doesn't
    like it, and if font has U+FFFD, show that instead.

    Font functions that do not want this automatic replacement to
    happen should return true from get_glyph() if unicode > 0x10FFFF.

    Replaces https://github.com/behdad/harfbuzz/pull/27

 src/hb-ot-shape-normalize.cc | 7 +++++++
 1 file changed, 7 insertions(+)

commit 6f13b6d62daae4989e3cc2fe4b168e5c59650964
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 10 19:31:40 2014 -0400

    When parsing UTF-16, generate invalid codepoint for lonely low
    surrogate

    Test passes now.

 src/hb-utf-private.hh | 42 ++++++++++++++++++++++++++++--------------
 1 file changed, 28 insertions(+), 14 deletions(-)

commit 24b2ba9dfa7c35769cd843a07079ef88fa594bf8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 10 19:31:16 2014 -0400

    [test-buffer] Add test for lonely low-surrogate

    Currenty fails.  Ouch!

 test/api/test-buffer.c | 1 +
 1 file changed, 1 insertion(+)

commit 6334495ac1ee0a86228e67794b7a41ee91146f3b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 10 19:22:07 2014 -0400

    Use zh-Hans / zh-Hant when converting OT language tag to hb_language_t

 src/hb-ot-tag.cc       | 15 +++------------
 test/api/test-ot-tag.c |  6 +++---
 2 files changed, 6 insertions(+), 15 deletions(-)

commit f381e320df795a9d73ac81499f8ed8c311bcb2f0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 10 19:20:35 2014 -0400

    Fix lang matching logic

    Previous code was broken logically, but harmless.

 src/hb-ot-tag.cc       | 2 +-
 test/api/test-ot-tag.c | 1 +
 2 files changed, 2 insertions(+), 1 deletion(-)

commit ee5350d667f3a9644667202597694581f2cf657d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 10 19:06:45 2014 -0400

    Accept BCP 47 zh-Hans / zh-Hant language tags

 src/hb-ot-tag.cc       | 27 ++++++++++++++++++---------
 test/api/test-ot-tag.c |  3 +++
 2 files changed, 21 insertions(+), 9 deletions(-)

commit 431540286794e023ec5eafd5eeedc008d4f31b4c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 10 17:37:26 2014 -0400

    [Android.mk] Add note re static library

 Android.mk | 7 +++++++
 1 file changed, 7 insertions(+)

commit 5b4131eb1c670c20fd9a45a5617c64060a505ef5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 9 19:09:08 2014 -0400

    [Android.mk] Update for new ICU

    https://android-review.googlesource.com/#/c/100722/1/Android.mk

 Android.mk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ab28196c9557a63971a56915aa6f98bb5803bd1b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 9 18:18:06 2014 -0400

    [Android.mk] Re-enable ICU unicode funcs

 Android.mk | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

commit ea001374b86c4f1b24246c08a3d66d2a0e95a827
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 9 17:28:43 2014 -0400

    0.9.30

 NEWS         | 17 +++++++++++++++++
 configure.ac |  2 +-
 2 files changed, 18 insertions(+), 1 deletion(-)

commit 8b16ff12590200afb08e8821e3f14d2fdf8efbda
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 9 17:40:52 2014 -0400

    [uniscribe] Fix build after recent changes to Offset

 src/hb-ot-name-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 73f7f8919ea1f09b8c5b29f231ac84105cde2145
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 9 17:17:18 2014 -0400

    Define _POSIX_C_SOURCE only if it is not defined

    Fixes https://github.com/behdad/harfbuzz/pull/45

 src/hb-blob.cc | 2 ++
 1 file changed, 2 insertions(+)

commit 6bd5646f1b865a76304a67e03a6161afcfef293f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 9 17:07:06 2014 -0400

    [tests] Remove bash'ish

    Apparently on travis-ci, bash is linked to dash, which doesn't
    understand "let".  Failing tests were not being noticed.  See eg:

      https://travis-ci.org/behdad/harfbuzz/jobs/29544211

    Don't rely on bash.

 test/shaping/run-tests.sh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 0afedaa96c81b63774a4a0ef9b4cb4995d24ec9e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 9 17:00:48 2014 -0400

    [util/hb-shape] Fix crash; oops

 util/hb-shape.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0cd94491b99aed438ad79a55cdfced8d1b657179
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 9 16:51:38 2014 -0400

    [ucdn] Update to Unicode 7.0.0 data

    From http://github.com/behdad/ucdn

 src/hb-ucdn.cc               |   23 +
 src/hb-ucdn/README           |    1 +
 src/hb-ucdn/ucdn.c           |    2 +-
 src/hb-ucdn/ucdn.h           |   27 +
 src/hb-ucdn/unicodedata_db.h | 3711
 ++++++++++++++++++++++--------------------
 5 files changed, 2039 insertions(+), 1725 deletions(-)

commit 9d4ede3a97fff544a5ec2a671e49a92a79645b61
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 9 16:19:55 2014 -0400

    [Android.mk] Update source list

 Android.mk | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

commit 7e1ab1f6d812a55f75d4844f7981d5604481049c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 9 16:13:40 2014 -0400

    [Android.mk] Whitespace

 Android.mk | 26 ++++++--------------------
 1 file changed, 6 insertions(+), 20 deletions(-)

commit 5c6695c42470e0a15e9029ebe8ecbebf3fa4f95b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 9 16:07:12 2014 -0400

    [Android.mk] Remove -lpthread; we build with -DHB_NO_MT

 Android.mk | 3 ---
 1 file changed, 3 deletions(-)

commit 9109f1e944dd4bd4ae8057b75c8a31e9d31797aa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 8 20:02:29 2014 -0400

    [util/hb-shape] Accept an empty output-format that would skip output

    Useful for benchmarking, to avoid buffer serialization overhead (which
    seems to by far dominate shaping!)

 util/hb-shape.cc | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 8656408572c2685f278a3b742ee69c767c29788c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 8 18:10:20 2014 -0400

    [util] Fix hb-view rendering with --font-funcs=ot

 util/helper-cairo.cc | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

commit 8650def73500204b79c651f58b1be3f94a41973d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jul 5 15:50:18 2014 -0400

    [util] Add option to set font function implementation to use

    Supports ft and ot right now.  hb-view currently not rendering
    with ot.
    Will fix after some clean up.

 util/options.cc | 76
 ++++++++++++++++++++++++++++++++++++++++++++++++++-------
 util/options.hh | 21 ++++++++++++++++
 2 files changed, 88 insertions(+), 9 deletions(-)

commit 2306ad46dce1c53b0b1bfabdc04d70e3b99eabb7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 4 18:09:29 2014 -0400

    [util] Fix memory issue

 util/options.cc | 6 ++----
 util/options.hh | 9 +++++++++
 2 files changed, 11 insertions(+), 4 deletions(-)

commit 14a4a9d649798d32c31f79b4045a885626dffc7f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 1 15:51:54 2014 -0400

    Add Roozbeh to AUTHORS

    He's been my shadow for all Indic-related changes in the last
    few months.

 AUTHORS | 1 +
 1 file changed, 1 insertion(+)

commit 68f724484b1663255ee249481624e552d2e2313f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jun 30 15:46:53 2014 -0400

    [indic] Remove some more now-unused special-cases

 src/hb-ot-shape-complex-indic.cc | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit e79c9489802f99dc7eb8b4c2765c4c71b5f80e60
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jun 30 15:39:39 2014 -0400

    [indic] Remove special-casing of U+1CF2,1CF3

    These were introduced in a498565cedf0441ae723c5e5969f637d792a15e7,
    but IndicSyllabicCategory has had the correct value already, so the
    special code was never needed.

 src/hb-ot-shape-complex-indic.cc | 6 ------
 1 file changed, 6 deletions(-)

commit d743ce78e10758b7dbaf0cfd191309e5ef646881
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jun 30 15:24:02 2014 -0400

    [indic-table] Update to Unicode 7.0 data

    Touch code just enough to preserve previous syllable structure
    and functionality as closely as possible.  Many further cleanups
    coming later.

 src/gen-indic-table.py                   |   4 +
 src/hb-ot-shape-complex-indic-private.hh |  23 +-
 src/hb-ot-shape-complex-indic-table.cc   | 468
 ++++++++++++++++++++++---------
 src/hb-ot-shape-complex-indic.cc         |  21 --
 src/hb-ot-shape-complex-myanmar.cc       |   2 -
 5 files changed, 355 insertions(+), 163 deletions(-)

commit 5fa21b3ab7175f55f89cb194b544d5d4bd06a481
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jun 30 14:30:54 2014 -0400

    [indic-table] Fix category frequency counts in comments

 src/gen-indic-table.py                 |  2 +-
 src/hb-ot-shape-complex-indic-table.cc | 46
 +++++++++++++++++-----------------
 2 files changed, 24 insertions(+), 24 deletions(-)

commit 5c4e3e9a57b6b735e7d72cbd5f4070cf024d7015
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jun 30 14:25:18 2014 -0400

    Whitespace

 src/hb-ot-shape-complex-indic-private.hh | 76
 ++++++++++++++++----------------
 1 file changed, 38 insertions(+), 38 deletions(-)

commit af528b6674bccac3efd13f8b33fcdc6aeb178f4c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 27 18:07:00 2014 -0400

    Fix typo; ouch!

 src/hb-ot-cmap-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 7d4ada66c96a748ce92f8e8edac149361c3dc829
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 27 17:30:59 2014 -0400

    Mark unsed members with a "Z" suffix

    There may be more.  There are members that are by definition
    redundant or reserved and not needed, NOT what we *currently*
    don't use.

    I'm sure there's more...

 src/hb-open-file-private.hh        |  6 +++---
 src/hb-ot-cmap-table.hh            | 24 ++++++++++++------------
 src/hb-ot-layout-common-private.hh |  2 +-
 3 files changed, 16 insertions(+), 16 deletions(-)

commit 23afcff1d14e57f5ce30a4100698d4f2dc530958
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 27 17:22:36 2014 -0400

    [ot-font] Implement Unicode variation selectors

 src/hb-ot-font.cc | 20 +++++++++++++++++++-
 1 file changed, 19 insertions(+), 1 deletion(-)

commit a5a4736916b6035e6413d4619f9e7287e683d51b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 27 17:03:22 2014 -0400

    [cmap] Implement subtable format 14

 src/hb-ot-cmap-table.hh | 147
 +++++++++++++++++++++++++++++++++++++++++++-----
 1 file changed, 133 insertions(+), 14 deletions(-)

commit 586b60622c33878f9ca4826b4ef07369d32bf039
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 27 15:39:47 2014 -0400

    Minor: final bits of cleanup

 src/hb-open-type-private.hh        | 1 +
 src/hb-ot-layout-common-private.hh | 4 ++--
 2 files changed, 3 insertions(+), 2 deletions(-)

commit 51d9ba09bc78188ec87218aef5232e80568c1712
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 27 15:27:15 2014 -0400

    Minor

 src/hb-open-type-private.hh | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

commit 3084767e92483c669f38319f153c498e9a6b92c7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 27 15:24:35 2014 -0400

    Minor: Remove LongArrayOf

 src/hb-open-file-private.hh | 2 +-
 src/hb-open-type-private.hh | 4 ----
 2 files changed, 1 insertion(+), 5 deletions(-)

commit 41ea59495032e712fa6f801350ee00d5f00b5724
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 27 15:23:18 2014 -0400

    Minor: Remove LongSortedArrayOf

 src/hb-open-type-private.hh | 4 ----
 src/hb-ot-cmap-table.hh     | 2 +-
 2 files changed, 1 insertion(+), 5 deletions(-)

commit bb6ecf2ce5c2679c298741af17836a22e1d68121
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 27 15:13:44 2014 -0400

    Minor: Remove LongOffsetArrayOf and LongOffsetLongArrayOf

 src/hb-open-file-private.hh    | 2 +-
 src/hb-open-type-private.hh    | 8 --------
 src/hb-ot-layout-gdef-table.hh | 2 +-
 3 files changed, 2 insertions(+), 10 deletions(-)

commit 99d281712390fd54e523b2f0580d10445457ec2f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 27 15:12:52 2014 -0400

    Minor: Remove GenericOffset

 src/hb-open-type-private.hh        | 13 +++++--------
 src/hb-ot-layout-common-private.hh |  8 ++++----
 2 files changed, 9 insertions(+), 12 deletions(-)

commit 9da552dcc5b89b3bbbe5a55fb7c543222382e12a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 27 15:09:42 2014 -0400

    Minor: Remove some GenericXXX templates

 src/hb-open-type-private.hh        | 32 +++++++++++---------------------
 src/hb-ot-cmap-table.hh            |  4 ++--
 src/hb-ot-layout-common-private.hh |  2 +-
 3 files changed, 14 insertions(+), 24 deletions(-)

commit 36073ede5b52bd1231622cbacd1bee6b82696d81
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 27 14:48:54 2014 -0400

    Minor: Reorder template parameter order

 src/hb-open-type-private.hh | 14 +++++++-------
 src/hb-ot-cmap-table.hh     |  2 +-
 2 files changed, 8 insertions(+), 8 deletions(-)

commit 0394ec1bfbd7806cbe9fc809b34f96f8d12ffbf2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 27 14:40:35 2014 -0400

    Minor: Introduce GenericOffset

 src/hb-open-type-private.hh | 16 ++++++----------
 1 file changed, 6 insertions(+), 10 deletions(-)

commit 0d1b3419a7bbfd18ab8fed1abd3a41dec11e8d97
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jun 26 19:13:34 2014 -0400

    Minor: Use template parameter default values for OffsetTo

 src/hb-open-type-private.hh | 13 +++++--------
 1 file changed, 5 insertions(+), 8 deletions(-)

commit 546b1adcdce2d3592843938b0b81ff32e67b0b83
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jun 26 19:10:21 2014 -0400

    Minor: Use template parameter default values for hb_prealloced_array_t

 src/hb-private.hh | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

commit 911ca38645bd51764e7859bc482319e8f6d2f710
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 24 10:20:36 2014 -0600

    Add back API removed recently

    Add hb_ot_layout_language_get_required_feature_index() again, which
    is used in Pango.  This was removed in
    da132937989acb4d8ca9bd41c79f98750e7dda30 in favor of
    hb_ot_layout_language_get_required_feature().

    API changes:

      - Added hb_ot_layout_language_get_required_feature_index back.

 src/hb-ot-layout.cc | 15 +++++++++++++++
 src/hb-ot-layout.h  |  7 +++++++
 2 files changed, 22 insertions(+)

commit 89e4946929a8cd2359c7d76fa9272d5604243002
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jun 22 11:32:13 2014 -0600

    Add new IndicSyllabicCategory short forms for Unicode 7.0

 src/gen-indic-table.py | 4 ++++
 1 file changed, 4 insertions(+)

commit dcee838e89c2863c2fda4e8f098e720637e02335
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jun 22 11:29:59 2014 -0600

    Minor

 src/gen-arabic-table.py | 2 +-
 src/gen-indic-table.py  | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit f2ad86e6053fa87ab188c36edc3d98c92324c049
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 21 15:31:10 2014 -0600

    [indic-table-gen] Minor

 src/gen-indic-table.py | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 2ec62279aab8c2263f17ffbc7c6f74304674f9a8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 21 15:25:59 2014 -0600

    [indic-table] Update to Unicode 6.3.0

    Was from 6.2.0.  It's a no-op.  Committing for the record.

 src/hb-ot-shape-complex-indic-table.cc | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit 5d4d7384efa97a30893ad28b9ad9a994722de12c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 21 14:53:21 2014 -0600

    Minor: format

 src/hb-ot-shape-complex-arabic.cc | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

commit 44243ae5902cc420e6bf6ec2fca2584ba93ff2fb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 21 14:19:34 2014 -0600

    [arabic-table] Update to Unicode 7.0

    Old table was from 6.2.  Remove hard-coded Mongolian and Phags-pa
    data.
    This completes support for new scripts Manichian and Psaltar Pahlavi.

 src/hb-ot-shape-complex-arabic-table.hh | 72
 ++++++++++++++++++++++++++++-----
 src/hb-ot-shape-complex-arabic.cc       | 22 ----------
 2 files changed, 63 insertions(+), 31 deletions(-)

commit cd86ab9b4f4d7bd4f563be64a83714fc8fb395d7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 21 14:10:38 2014 -0600

    [arabic-table] Add ZWJ/ZWNJ now that table is segmented

 src/gen-arabic-table.py                 |  2 --
 src/hb-ot-shape-complex-arabic-table.hh | 12 +++++++++++-
 src/hb-ot-shape-complex-arabic.cc       |  5 -----
 3 files changed, 11 insertions(+), 8 deletions(-)

commit 2390d9b67e1dfeccd3f0850d1304c52b54817ca0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 21 14:07:00 2014 -0600

    [arabic-table] Further tune

    In anticipation of Unicode 7.0 data coming in the next commit.

 src/gen-arabic-table.py                 | 10 ++++++---
 src/hb-ot-shape-complex-arabic-table.hh | 38
 +++++++++++++++------------------
 2 files changed, 24 insertions(+), 24 deletions(-)

commit a133e6067aaebc494c0156b5fac7f4a879e12dbe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 20 18:01:34 2014 -0400

    [indic-table] Minor

 src/gen-indic-table.py | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

commit b900fa2c8cc088dbcbdbf90bfdf8764f9ee1c96a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 20 17:59:43 2014 -0400

    [arabic-table] Use segmented table

    No functional change.

 src/gen-arabic-table.py                 | 82
 +++++++++++++++++++++++----------
 src/hb-ot-shape-complex-arabic-table.hh | 53 ++++++++++++++-------
 src/hb-ot-shape-complex-arabic.cc       |  8 ++--
 3 files changed, 97 insertions(+), 46 deletions(-)

commit c2e113404640bf9b8bac469d0803ac946e77964f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 20 17:57:03 2014 -0400

    [indic-table] Make output stable

 src/gen-indic-table.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 55abfbd2ac1626af16151298a0837b837d0796df
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 20 16:47:43 2014 -0400

    [indic-table] Minor

    No output change.

 src/gen-indic-table.py | 7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)

commit f88670749006991282bcc4e8b6218487295ca670
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 20 16:30:10 2014 -0400

    [arabic-table] Don't write comments

    No functional change.

 src/gen-arabic-table.py                 |  20 +-
 src/hb-ot-shape-complex-arabic-table.hh | 710
 ++------------------------------
 2 files changed, 38 insertions(+), 692 deletions(-)

commit 200dfe3eb10feda2ad25940338b08011f4757ca4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 20 16:20:59 2014 -0400

    [arabic-table] Use short names for values

    No functional change.

 src/gen-arabic-table.py                 |   16 +-
 src/hb-ot-shape-complex-arabic-table.hh | 1386
 ++++++++++++++++---------------
 2 files changed, 716 insertions(+), 686 deletions(-)

commit 3f5327a41efcf50f64d9498ef3dfd6875ef6a5ab
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 20 16:17:42 2014 -0400

    [arabic-table] Read Blocks.txt and shuffle code around

    No functional change.

 src/Makefile.am                         |  2 +-
 src/gen-arabic-table.py                 | 80
 +++++++++++++++++++--------------
 src/hb-ot-shape-complex-arabic-table.hh | 30 ++++++++-----
 3 files changed, 67 insertions(+), 45 deletions(-)

commit 171f970e4f72d9fe1af30eab32b96906ee4a14f5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 20 15:25:30 2014 -0400

    [indic-table] Black-list Thai, Lao, and Tibetan

    We don't need Indic table for those.

 src/gen-indic-table.py                 |  3 ++
 src/hb-ot-shape-complex-indic-table.cc | 94
 +++++++---------------------------
 2 files changed, 21 insertions(+), 76 deletions(-)

commit 65ac2dae4f284f563b2dc476a21e2b5a48124de8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 20 15:12:49 2014 -0400

    [indic-table] Speed up lookup

 src/gen-indic-table.py                 | 22 +++++++++---
 src/hb-ot-shape-complex-indic-table.cc | 61
 +++++++++++++++++++++++-----------
 2 files changed, 59 insertions(+), 24 deletions(-)

commit 64442a3f4c5c7be08893454742cad6bfe73cb8d7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 20 14:58:53 2014 -0400

    [indic-table] Fix compiler warning

 src/gen-indic-table.py                 | 4 +---
 src/hb-ot-shape-complex-indic-table.cc | 4 +---
 2 files changed, 2 insertions(+), 6 deletions(-)

commit 0436e1d50527497ebe5053b51a34ce6590276249
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 20 14:56:22 2014 -0400

    [indic-table] Make table more compact by not covering full blocks

    -#define indic_offset_total 4416
    +#define indic_offset_total 3816

    -}; /* Table occupancy: 60% */
    +}; /* Table occupancy: 69% */

 src/gen-indic-table.py                 |  24 ++++--
 src/hb-ot-shape-complex-indic-table.cc | 150
 +++++++++------------------------
 2 files changed, 57 insertions(+), 117 deletions(-)

commit 190a251479b3cfc68871ff1daf9a9d1abe3f86e6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 20 14:41:39 2014 -0400

    [indic-table] Remove block range from data table

    No functional change.

 src/gen-indic-table.py                 |   4 +-
 src/hb-ot-shape-complex-indic-table.cc | 102
 ++++++++++++++++-----------------
 2 files changed, 54 insertions(+), 52 deletions(-)

commit 2b051c6057920c564c13c5d6a3e6dca93446fa12
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 20 14:09:57 2014 -0400

    Rename HB_VERSION_CHECK and hb_version_check to "atleast"

    HB_VERSION_CHECK's comparison was originally written wrongly
    by mistake.  When API tests were written, they were also written
    wrongly to pass given the wrong implementation... Sigh.

    Given the purpose of this API, there's no point in fixing it
    without renaming it.  As such, rename.

    API changes:

      HB_VERSION_CHECK -> HB_VERSION_ATLEAST
      hb_version_check -> hb_version_atleast

 docs/reference/harfbuzz-sections.txt |  4 ++--
 src/hb-common.cc                     | 10 +++++-----
 src/hb-version.h.in                  | 10 +++++-----
 test/api/test-version.c              | 29 +++++++++++++++--------------
 4 files changed, 27 insertions(+), 26 deletions(-)

commit cabfa538ed4b1355326fa8de05f7209dda1c1c7a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 20 13:51:21 2014 -0400

    Adjust unused doc symbols

 docs/reference/harfbuzz-sections.txt | 19 +++++++++++++++++--
 src/hb-ot-shape.h                    | 21 ++++++++++-----------
 2 files changed, 27 insertions(+), 13 deletions(-)

commit da132937989acb4d8ca9bd41c79f98750e7dda30
Author: Jonathan Kew <jfkthame@gmail.com>
Date:   Sun Apr 27 14:05:24 2014 +0100

    Rework handling of requiredFeature to solve problem with rlig in
    arial.ttf from winxp

    https://bugzilla.mozilla.org/show_bug.cgi?id=986802
    Fixes https://github.com/behdad/harfbuzz/pull/39

    API Change:

    -hb_ot_layout_language_get_required_feature_index
    +hb_ot_layout_language_get_required_feature

    New API takes an extra pointer argument.  Pass NULL in to get
    behavior of previous API.

    Reworked by behdad

 src/hb-ot-layout-gsubgpos-private.hh |  4 +--
 src/hb-ot-layout.cc                  | 29 ++++++++++++---------
 src/hb-ot-layout.h                   | 11 ++++----
 src/hb-ot-map.cc                     | 50
 ++++++++++++++++++++++++++----------
 src/main.cc                          |  4 +--
 5 files changed, 64 insertions(+), 34 deletions(-)

commit df554af99db390e42d378983bb3fcf583477a1d7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jun 19 15:39:18 2014 -0400

    Rename search() to bsearch() and lsearch()

    Such that the complexity of the algorithm used is clear at
    call site.

 src/hb-open-type-private.hh        |  4 ++--
 src/hb-ot-cmap-table.hh            | 14 +++++++-------
 src/hb-ot-layout-common-private.hh |  9 +++++----
 3 files changed, 14 insertions(+), 13 deletions(-)

commit fb8cc86ff99c08064ac58a559bb66cc340693b92
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jun 19 15:30:18 2014 -0400

    Rename sort() to qsort()

    In an effort to make the algorithm used clear.

 src/hb-coretext.cc  | 4 ++--
 src/hb-ot-map.cc    | 4 ++--
 src/hb-private.hh   | 8 ++++----
 src/hb-uniscribe.cc | 4 ++--
 4 files changed, 10 insertions(+), 10 deletions(-)

commit 577ca4814314c374824cac736996b9cdd4f9d11f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 18 12:29:23 2014 -0400

    [unicode7] Update list of Default_Ignorable codepoints

 src/hb-unicode-private.hh | 66
 +++++++++++++++++++++--------------------------
 1 file changed, 30 insertions(+), 36 deletions(-)

commit 7cfee3827636f0dff7df5c8975a4fadd1b4bfbd5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 28 15:09:30 2014 -0700

    [unicode7] Route Manichaean and Psalter Pahlavi through Arabic shaper

    Still needs update to joining table to fully work.

 src/hb-ot-shape-complex-private.hh | 4 ++++
 1 file changed, 4 insertions(+)

commit a4a7899cd93fb9d1bc2163a4bbabfa733ee5bd52
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 28 15:06:42 2014 -0700

    [unicode7] Mark right-to-left scripts

 src/hb-common.cc | 8 ++++++++
 1 file changed, 8 insertions(+)

commit 62587bfc5178a447ef66d88eab7412a7efe84692
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 28 15:07:21 2014 -0700

    [unicode7] Declare Unicode 7 scripts

 src/hb-common.h | 21 +++++++++------------
 1 file changed, 9 insertions(+), 12 deletions(-)

commit dc61294aa93d36d0c5d187d4a692560a7cb46444
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 28 14:58:28 2014 -0700

    [unicode7] Add missing ISO 15924 tags

 src/hb-common.h | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 7526373e70bc4c2e2072da36babf9399fcf483b8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 17 11:45:26 2014 -0400

    [coretext] Remove unused var

 src/hb-coretext.cc | 2 --
 1 file changed, 2 deletions(-)

commit 798e4185bc71b1a63528e6b0af236d4c964ec607
Author: Jonathan Kew <jfkthame@gmail.com>
Date:   Tue Jun 10 13:10:30 2014 +0100

    When zeroing mark widths for LTR, also adjust offset...

    ...so that they overstrike preceding glyph.

    https://github.com/behdad/harfbuzz/pull/43

 src/hb-ot-shape.cc | 50
 +++++++++++++++++++++++++++++++++++++++-----------
 1 file changed, 39 insertions(+), 11 deletions(-)

commit 80f7405a5208f88b8615aa4ce4c54ffeb16f04f8
Author: Jonathan Kew <jfkthame@gmail.com>
Date:   Tue Jun 10 13:10:02 2014 +0100

    [Thai] set the correct general category on Nikhahit when decomposing
    Sara-Am.

 src/hb-ot-shape-complex-thai.cc | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 1d634cbb4b0338e1c2841127a72c5fac3a2a5ca1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 6 17:55:02 2014 -0400

    Fix base-position when 'pref' is NOT formed

    If pre-base reordering Ra is NOT formed (or formed and then
    broken up), we should consider that Ra as base.  This is
    observable when there's a left matra or dotreph that positions
    before base.

    Now, it might be that we shouldn't do this if the Ra happend
    to form a below form.  We can't quite deduce that right now...

    Micro test added.  Also at:

    https://code.google.com/a/google.com/p/noto-alpha/issues/detail?id=186#c29

 src/hb-ot-shape-complex-indic.cc                   |  28
 +++++++++++++++++++--
 test/shaping/fonts/sha1sum/MANIFEST                |   5 ++++
 .../e207635780b42f898d58654b65098763e340f5c7.ttf   | Bin 0 -> 3000 bytes
 test/shaping/tests/indic-pref-blocking.tests       |   3 ++-
 4 files changed, 33 insertions(+), 3 deletions(-)

commit 04dc52fa15f5b7f9eb5f448ea43e7ef1b2269e88
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 6 17:28:38 2014 -0400

    [indic] Recover OT_H undergone ligation and multiplication

    Sometimes font designers form half/pref/etc consonant forms
    unconditionally and then undo that conditionally.  Try to
    recover the OT_H classification in those cases.

    No test number changes expected.

 src/hb-ot-layout-private.hh      |  8 ++++++++
 src/hb-ot-shape-complex-indic.cc | 21 +++++++++++++++++++++
 2 files changed, 29 insertions(+)

commit 39c8201f8e361e8c0f23f07bf20124ccadc6086c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 6 17:19:35 2014 -0400

    [indic] Improve base re-finding

    No test numbers change.

 src/hb-ot-shape-complex-indic.cc | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

commit c04d5f0dd24d0ed9560fb9aebb5561ce946743c3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 6 17:02:39 2014 -0400

    [indic] Minor

 src/hb-ot-shape-complex-indic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 824d00dce483d0f4030c0cac253f994810e10f32
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jun 9 14:17:33 2014 -0400

    Fix commit 3f38c1137b6219a646da141b08463ffa922d4e35

    Previous commit was not compiling with clang.

 configure.ac | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 3f38c1137b6219a646da141b08463ffa922d4e35
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 6 16:03:40 2014 -0400

    Don't use -mstructure-size-boundary=8 on clang arm

    As in building for Android / iPhone.  Only set it if
    struct{char} alignment is not 1.

    NOT tested on an actual Arm architecture.  Guess we'll know
    when this makes it to people's build bots.

 configure.ac | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

commit 0ff74b09d2ccf7a9ea0f0b463d8b6d819c86c837
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jun 5 21:55:23 2014 -0400

    Add missing test file.  Oops

 test/shaping/tests/indic-pref-blocking.tests | 1 +
 1 file changed, 1 insertion(+)

commit 832a6f99b34f334b1e82b8e3a7ad137e823d203c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 4 16:57:42 2014 -0400

    [indic] Don't reorder reph/pref if ligature was expanded

    Normally if you want to, say, conditionally prevent a 'pref', you
    would use blocking contextual matching.  Some designers instead
    form the 'pref' form, then undo it in context.  To detect that
    we now also remember glyphs that went through MultipleSubst.

    In the only place that this is used, Uniscribe seems to only care
    about the "last" transformation between Ligature and Multiple
    substitions.  Ie. if you ligate, expand, and ligate again, it
    moves the pref, but if you ligate and expand it doesn't.  That's
    why we clear the MULTIPLIED bit when setting LIGATED.

    Micro-test added.  Test: U+0D2F,0D4D,0D30 with font from:

    [1]
    https://code.google.com/a/google.com/p/noto-alpha/issues/detail?id=186#c29

 src/hb-ot-layout-gsub-table.hh                      |   2 +-
 src/hb-ot-layout-gsubgpos-private.hh                |  20
 ++++++++++++++++----
 src/hb-ot-layout-private.hh                         |  16
 +++++++++++++++-
 src/hb-ot-shape-complex-indic.cc                    |   4 ++--
 test/shaping/Makefile.am                            |   5 ++++-
 .../226bc2deab3846f1a682085f70c67d0421014144.ttf    | Bin 0 -> 2828 bytes
 test/shaping/tests/MANIFEST                         |   1 +
 7 files changed, 39 insertions(+), 9 deletions(-)

commit b5be2317201774c84470167767ad83c8637cad5b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jun 5 19:00:22 2014 -0400

    [gsub] Adjust single-length ligature subst to act like single subst

 src/hb-ot-layout-gsub-table.hh | 8 ++++++++
 1 file changed, 8 insertions(+)

commit aae69451dfbf2e3671c555c234f788c194302818
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jun 5 18:54:44 2014 -0400

    [gsub] Minor shuffling

 src/hb-ot-layout-gsub-table.hh | 29 ++++++++++++++++-------------
 1 file changed, 16 insertions(+), 13 deletions(-)

commit b6b304f12be917b7449b3ac9409069fcd4a27d95
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jun 5 17:12:54 2014 -0400

    [ot] Add TODO re zero-len MultipleSubst sequences

 src/hb-ot-layout-gsub-table.hh       | 9 +++++++++
 src/hb-ot-layout-gsubgpos-private.hh | 4 +++-
 2 files changed, 12 insertions(+), 1 deletion(-)

commit f1a72fe7bf863535ec09b559cc0bd878fd0799f2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 4 19:00:29 2014 -0400

    [ot-font] Fix cmap EncodingRecord cmp order

 src/hb-ot-cmap-table.hh | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

commit ce34f0b07e5324ed52e6e2c43000c2b09ee010d4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 4 18:57:46 2014 -0400

    [ot-font] Use binary search for format12 cmap subtable

 src/hb-open-type-private.hh | 4 ++++
 src/hb-ot-cmap-table.hh     | 2 +-
 2 files changed, 5 insertions(+), 1 deletion(-)

commit 257d1adfa1b3422c511c55e641840a6e31ec6008
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 4 18:47:55 2014 -0400

    [ot-font] Work around broken cmap subtable format 4 length

    Roboto was hitting this.  FreeType also has pretty much the
    same code for this, in ttcmap.c:tt_cmap4_validate():

        /* in certain fonts, the `length' field is invalid and goes */
        /* out of bound.  We try to correct this here...            */
        if ( table + length > valid->limit )
        {
          if ( valid->level >= FT_VALIDATE_TIGHT )
            FT_INVALID_TOO_SHORT;

          length = (FT_UInt)( valid->limit - table );
        }

 src/hb-ot-cmap-table.hh | 22 ++++++++++++++++++----
 1 file changed, 18 insertions(+), 4 deletions(-)

commit 51f563579b94e1ee23ced9bbcc7dd3341535ce72
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 4 18:42:32 2014 -0400

    Move try_set to sanitize context

 src/hb-open-type-private.hh        | 22 ++++++++++------------
 src/hb-ot-layout-common-private.hh |  2 +-
 2 files changed, 11 insertions(+), 13 deletions(-)

commit 500737e8e16dce5248aff394899bb3761a9c3bbf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 4 18:17:29 2014 -0400

    [ot-font] Don't select a Null cmap subtable

    Can happen either in broken fonts, or as a result of sanitize().

 src/hb-ot-cmap-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit dac86026a6bae5a8a03cfe885bf93f32e5f48614
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 3 17:57:00 2014 -0400

    Fix some cppcheck warnings

    Bug 77800 - cppcheck reports

 src/hb-common.cc                   | 4 +++-
 src/hb-ot-layout-common-private.hh | 2 +-
 src/hb-private.hh                  | 2 +-
 src/hb-shape-plan.cc               | 4 ++--
 4 files changed, 7 insertions(+), 5 deletions(-)

commit c306410cab368a27c1941a2625d3b475edeaac04
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 3 16:59:41 2014 -0400

    Bug 77732 - Fix unused typedef warning for ASSERT_STATIC with GCC 4.8

 src/hb-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ae2b854eab7f1c48e56751c987a714c2c18d6eb6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 3 16:59:09 2014 -0400

    Move code around

 src/hb-private.hh | 134
 ++++++++++++++++++++++++++----------------------------
 1 file changed, 65 insertions(+), 69 deletions(-)

commit 17c3b809f42aec34d83dba2e6229ad85804bebae
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jun 2 15:08:18 2014 -0400

    [indic] Treat U+A8E0..A8F1 as OT_A instead of OT_VD

    Apparently they can intermix with other OT_A.

    Test: U+0915,A8E2,1CD0

 src/hb-ot-shape-complex-indic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6ae13f257c3986517c097fa666ab9f58bdc918b5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 30 17:38:14 2014 -0400

    [graphite2] Fix cluster mapping

    Patch from Martin Hosken.  I expect this to fix the following bugs:

    https://bugs.freedesktop.org/show_bug.cgi?id=75076
    https://bugzilla.gnome.org/show_bug.cgi?id=723582
    https://bugzilla.redhat.com/show_bug.cgi?id=998812

 src/hb-graphite2.cc | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 5875ad9c467b39d00ad4d98fd425179c701e6fd0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 29 15:48:16 2014 -0400

    0.9.29

 NEWS         | 12 ++++++++++++
 configure.ac |  2 +-
 2 files changed, 13 insertions(+), 1 deletion(-)

commit 7977ca17aac34b9ab10622928bed8afa2177f16a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 29 15:34:26 2014 -0400

    [indic] Allow decimal and Brahmi digits as placeholders

    Tests: U+0967,0951 U+0031,093F

 src/hb-ot-shape-complex-indic.cc                                      |
 4 ++++
 .../texts/in-tree/shaper-indic/indic/script-devanagari/misc/misc.txt  |
 2 ++
 2 files changed, 6 insertions(+)

commit e8b5d64039614ecce472eda1a7a603736da25d86
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 29 15:18:27 2014 -0400

    [indic] Do NOT allow reph formation on placeholders

    Only allow it on DOTTED CIRCLE.  No effect on test numbers.

    Test: U+0930,094D,00A0

 src/hb-ot-shape-complex-indic-machine.rl                                |
 2 +-
 .../in-tree/shaper-indic/indic/script-devanagari/misc/dottedcircle.txt  |
 1 +
 2 files changed, 2 insertions(+), 1 deletion(-)

commit 52b562a6a058131c0103aaa5404d053e6465bb23
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 27 18:18:23 2014 -0400

    [indic] Clean up a bit

    No functional change intended.

 src/hb-ot-shape-complex-indic.cc | 17 +++++------------
 1 file changed, 5 insertions(+), 12 deletions(-)

commit 3bf652b90783e8244c153739585d95dc4162efb4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 27 18:07:26 2014 -0400

    [indic] Treat U+002D and U+2010..2014 as placeholders

 src/hb-ot-shape-complex-indic.cc | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit e0de95f40244924cb8f9f7abca7f53117044a0eb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 27 17:58:34 2014 -0400

    [indic] Treat U+00D7 MULTIPLICATION SIGN as placeholder

 src/hb-ot-shape-complex-indic.cc | 1 +
 1 file changed, 1 insertion(+)

commit cf78dd483cbe1759a8ecb731879e041a53ba9bb3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 27 17:53:37 2014 -0400

    [indic/myanmar] Rename OT_NBSP to OT_PLACEHOLDER

 src/hb-ot-shape-complex-indic-machine.rl | 4 ++--
 src/hb-ot-shape-complex-indic-private.hh | 6 +++---
 src/hb-ot-shape-complex-indic.cc         | 4 ++--
 src/hb-ot-shape-complex-myanmar.cc       | 2 +-
 4 files changed, 8 insertions(+), 8 deletions(-)

commit 186ece94c8838e95db240d3e7c3ce415da6be81e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 27 17:49:45 2014 -0400

    [myanmar] Use OT_NBSP instead of OT_DOTTEDCIRCLE for OT_GB

    No functional change.

 src/hb-ot-shape-complex-myanmar-machine.rl | 2 +-
 src/hb-ot-shape-complex-myanmar.cc         | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit cf71d28c380819cb0f7f0f22f6ff9e4aa881a2b8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 27 17:47:43 2014 -0400

    [indic/myanmar] Refactor a few macros

 src/hb-ot-shape-complex-indic-private.hh | 12 ++++++++++++
 src/hb-ot-shape-complex-indic.cc         | 10 ----------
 src/hb-ot-shape-complex-myanmar.cc       |  6 ------
 3 files changed, 12 insertions(+), 16 deletions(-)

commit 2307268e01d27a999b56a2f573dfcee8b2a7949b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 27 17:39:01 2014 -0400

    [indic] Treat U+0A72..0A73 like regular consonants

    Unicode 6.x IndicSyllableCategory categorizes them as
    placeholders, but they can subjoin.

 src/hb-ot-shape-complex-indic.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit e9b2a4cfe593bdbe9288571635ba26ac42ede987
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 23 15:49:10 2014 -0400

    [indic] Support U+1CED

 src/hb-ot-shape-complex-indic.cc | 5 +++++
 1 file changed, 5 insertions(+)

commit d19f8e85702a1e473efe2f02027984dcc127602a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 23 15:45:50 2014 -0400

    [indic] Support U+A8F2..A8F7,1CE9..1CEC,1CEE..1CF1

 src/hb-ot-shape-complex-indic.cc | 8 ++++++++
 1 file changed, 8 insertions(+)

commit ddbdfcbf1c10eed0a7b81b29fee99f1bd22113e5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 23 15:39:55 2014 -0400

    [indic] Simplify grammar

    No functional change.

 src/hb-ot-shape-complex-indic-machine.rl | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

commit 4e9b1f662b23966e67c548b86afeff2bec9b0eb7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 23 15:38:42 2014 -0400

    [indic] Always start new syllable for Avagraha

    In fact, the previous grammar was ambigious.  No functional
    change.

 src/hb-ot-shape-complex-indic-machine.rl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9f9bd9bf31161660214b8b39a78cdafbb79db1be
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 23 15:33:13 2014 -0400

    [indic] Rename avagraha cluster to symbol cluster

    In anticipation of adding more characters to that class of clusters.

 src/hb-ot-shape-complex-indic-machine.rl | 10 +++++-----
 src/hb-ot-shape-complex-indic-private.hh |  4 ++--
 src/hb-ot-shape-complex-indic.cc         | 14 +++++++-------
 3 files changed, 14 insertions(+), 14 deletions(-)

commit a498565cedf0441ae723c5e5969f637d792a15e7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 22 19:39:56 2014 -0400

    [indic] Support U+1CF2,U+1CF3

 src/hb-ot-shape-complex-indic.cc | 6 ++++++
 1 file changed, 6 insertions(+)

commit ecb98babbaa065940b40ca8954a454f0e2cdcff0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 22 19:36:21 2014 -0400

    [indic] Support U+1CE2..U+1CE8

 src/hb-ot-shape-complex-indic.cc | 4 ++++
 1 file changed, 4 insertions(+)

commit 37bf2c9224e32fdc99c20158c6dc0a4602ec1292
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 22 19:35:17 2014 -0400

    Minor

 src/hb-ot-shape-complex-indic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 131e17ff9ae792cafa7a500043acb373802ee872
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 22 19:32:51 2014 -0400

    [indic] Support U+1CF5,1CF6

 src/hb-ot-shape-complex-indic.cc | 3 +++
 1 file changed, 3 insertions(+)

commit 72ead0cc72dac4d1c985ead065bb820f93f14a1d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 22 19:12:10 2014 -0400

    [indic] Treat U+1CE1 as a tone-mark too

    It's spacing, but otherwise the same as the other ones.

 src/hb-ot-shape-complex-indic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e848bfae7c975a6fae434daf8e3db4d69914df9f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 22 18:50:34 2014 -0400

    [indic] Recategorize U+A8E0..A8F1 as OT_VD

    Up to two of them come after all OT_A characters.

 src/hb-ot-shape-complex-indic-machine.rl |  2 +-
 src/hb-ot-shape-complex-indic.cc         | 10 ++++++----
 2 files changed, 7 insertions(+), 5 deletions(-)

commit c519536c34c842304da558dd4a9e3844fc261b20
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 22 18:43:14 2014 -0400

    [indic] Allow up to three tone marks

    According to Roozbeh, there are valid combinations in Unicode
    proposals for up to three.  Previously we were allowing up to two.

 src/hb-ot-shape-complex-indic-machine.rl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c11fc6833980fce6d70c5ae0c6623de97a3eb30a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 22 18:41:49 2014 -0400

    [indic] Support more extended Devanagari tone marks

    Also adjust U+0953,0954 handling.

 src/hb-ot-shape-complex-indic.cc | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

commit 26c836e53d55a2e2d4c17fd9ea1884eec33ce015
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 21 18:35:48 2014 -0400

    [indic] Handle "Cantillation marks for the Samaveda"

 src/hb-ot-shape-complex-indic.cc | 3 +++
 1 file changed, 3 insertions(+)

commit 29531128f2f4342d537817746863705df80efe4b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 15 14:04:02 2014 -0600

    [indic] Improve reph formation of Sinhala and Telugu

    Sinhala and Telugu use "explicit" reph.  That is, the reph is
    formed by
    a Ra,H,ZWJ sequence.  Previously, upon detecting this sequence,
    we were
    checking checking whether the 'rphf' feature applies to the first two
    glyphs of the sequence.  This is how the Microsoft fonts are designed.
    However, testing with Noto shows that apparently Uniscribe also forms
    the reph if the lookup ligates all three glyphs.  So, try both
    sequences.

    Doesn't affect test results for Sinhala or Telugu.

    https://code.google.com/a/google.com/p/noto-alpha/issues/detail?id=232

 src/hb-ot-shape-complex-indic.cc | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

commit 8c703f13bf8b4b276093b1c42cd3759e34b6787f
Author: Oleg Oshmyan <chortos@inbox.lv>
Date:   Wed May 14 22:10:09 2014 +0100

    Fix build with --coretext on older OS X

    Fixes https://github.com/behdad/harfbuzz/pull/40

 src/hb-coretext.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 439b05867c0856a81fa8f9bea3a7465b4b4bdd91
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 14 16:44:39 2014 -0600

    [myanmar] Allow MedialYa+Asat in the grammar

    The grammar in the OT spec, and the existing Windows implementation
    seem to be confused around where to allow Asat around the medial
    consonants.

    The previous grammar for medial group was allowing an Asat after
    the medial group only if there was a medial Wa or Ha, but not if
    there was only a medial Ya.  This doesn't make sense to me and
    sounds reversed, as both medial Wa and Ha are below marks while
    Asat is an above mark.  An Asat can come before the medial group
    already (in fact, multiple ones can.  Why?!).  The medial Ya
    however is a spacing mark and according to Roozbeh it's valid
    to want an Asat on the medial Ya instead of the base, so it looks
    to me like we want to allow an Asat after the medial group if
    there *was* a Ya but not if there wasn't any.  Not wanting to
    produce dotted-circle where Windows is not, this commit changes
    the grammar to allow one Asat after the medial group no matter
    what comes in the group.

    Test: U+1002,103A,103B vs U+1002,103B,103A

 src/hb-ot-shape-complex-myanmar-machine.rl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0a017ce169d791c9aea56671fe5837961e0a3c09
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 14 16:44:16 2014 -0600

    Add tests for Myanmar Asat+MedialYa and MedialYa+Asat sequences

    One of them currently produces dotted-circle.  Fix and detailed
    message coming.

 test/shaping/texts/in-tree/shaper-myanmar/script-myanmar/misc/misc.txt |
 2 ++
 1 file changed, 2 insertions(+)

commit c95587618c88d187be64f923033dae151cf820be
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 14 00:42:18 2014 -0400

    [ot] Minor note re cmap subtable format 2 and 8

 src/hb-ot-cmap-table.hh | 2 ++
 1 file changed, 2 insertions(+)

commit b7878cd58ea9a67236e1e0228c35b5b03ec4ff9c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 13 21:47:51 2014 -0400

    [ot] Implement cmap subtable format 0

 src/hb-open-type-private.hh |  3 ++-
 src/hb-ot-cmap-table.hh     | 32 ++++++++++++++++++++++++++++++++
 2 files changed, 34 insertions(+), 1 deletion(-)

commit ca7b77431d1e0aaa803722be8be85a368a385f47
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 13 21:26:34 2014 -0400

    [ot] Factor out code between cmap sutable format 12 and 13

 src/hb-ot-cmap-table.hh | 43 +++++++++++++------------------------------
 1 file changed, 13 insertions(+), 30 deletions(-)

commit 94759e8219ed08392573bae948a8135e16b8e0d0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 13 21:17:28 2014 -0400

    [ot] Factor out code between cmap subtable format 6 and 10

 src/hb-ot-cmap-table.hh | 49
 ++++++++++---------------------------------------
 1 file changed, 10 insertions(+), 39 deletions(-)

commit 1a8ffc512987c1ff1b4896549f80b145c85454a8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 13 21:06:39 2014 -0400

    Minor

 src/hb-blob.h | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

commit 91bbfca87527fa14d6ebec86b087f2a989381872
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 12 18:19:29 2014 -0400

    [ot] Implement cmap subtable formats 6 and 10

 src/hb-ot-cmap-table.hh | 77
 +++++++++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 74 insertions(+), 3 deletions(-)

commit d294a2cb165c4f20daa5624969067c51eb9aef58
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 12 17:58:31 2014 -0400

    [ot] Implement cmap subtable format 13

 src/hb-ot-cmap-table.hh | 47
 +++++++++++++++++++++++++++++++++++++++++------
 1 file changed, 41 insertions(+), 6 deletions(-)

commit 0d75793fae95ed9f6b8522ae3af4fcdf397d8c36
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 12 17:51:15 2014 -0400

    [ot] Implement cmap subtable format 12

 src/hb-ot-cmap-table.hh | 63
 +++++++++++++++++++++++++++++++++++++++++++++++--
 src/hb-ot-font.cc       |  5 ++++
 2 files changed, 66 insertions(+), 2 deletions(-)

commit 3608a6847e7b7eb4206df049158513a085810afd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 12 13:46:29 2014 -0400

    [ot] Hook up cmap table to hb_ot_font_funcs()

 src/hb-ot-cmap-table.hh | 10 +++++++---
 src/hb-ot-font.cc       | 33 +++++++++++++++++++--------------
 2 files changed, 26 insertions(+), 17 deletions(-)

commit c8a47452993b9dee6854bfc866aca4a20142696f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 9 19:55:51 2014 -0400

    [ot] Implement cmap subtable format 4

 src/hb-ot-cmap-table.hh | 52
 +++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 52 insertions(+)

commit 4719621f20dfd6a0377c650a7b4df223c18dc143
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 9 16:09:11 2014 -0400

    Minor

 src/hb-open-type-private.hh | 1 -
 1 file changed, 1 deletion(-)

commit 41ca1fbebf61cf26e1e0e4b11f4a5b52fb7d88a9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 9 15:35:56 2014 -0400

    [ot] Start implementing cmap table

 src/Makefile.am         |   1 +
 src/hb-ot-cmap-table.hh | 171
 ++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-font.cc       |   1 +
 3 files changed, 173 insertions(+)

commit c7074b8798048324cb8850c55908ce77fc33d11e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 8 18:24:31 2014 -0400

    [otlayout] Add GenericArrayOf::search()

 src/hb-open-type-private.hh | 11 +++++++++++
 1 file changed, 11 insertions(+)

commit 40a479797add42fa42b78d4267920ef75bfb6b9a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 8 18:21:04 2014 -0400

    [otlayout] Add GenericSortedArrayOf

 src/hb-open-type-private.hh | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

commit 0ddecabc6de205b121bec31fbf670f37cc9454ef
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 1 16:01:40 2014 -0700

    [main] Minor improvement to output

 src/main.cc | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

commit 79ecdc3f9525212053d2bc88a5541c41697159da
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 28 14:24:23 2014 -0700

    0.9.28

 NEWS         | 13 +++++++++++++
 configure.ac |  2 +-
 2 files changed, 14 insertions(+), 1 deletion(-)

commit 6faff8e4132197ba06f0e685b82efe35b546cf64
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 28 14:29:39 2014 -0700

    Add static storage classifier to inline functions

    Before we were just relying on the compiler inlining them and not
    leaving a trace in our public API.  Try to fix.  Hopefully not
    breaking anyone's build.

 src/hb-open-type-private.hh    | 22 +++++++++++-----------
 src/hb-ot-layout-gpos-table.hh |  4 ++--
 src/hb-ot-layout-gsub-table.hh |  6 +++---
 src/hb-ot-layout-private.hh    | 36 ++++++++++++++++++------------------
 src/hb-ot-map-private.hh       | 10 +++++-----
 src/hb-private.hh              |  2 +-
 6 files changed, 40 insertions(+), 40 deletions(-)

commit 9c9411839bb89d0a1a83120af0982c60e0e393d9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 28 12:38:25 2014 -0700

    [tibetan] Reorder PADMA sign to occur after other below marks

    Based on suggestion from Andrew Glass.

    Test: U+0F40,0FC6,0F83

 src/hb-unicode-private.hh | 4 ++++
 1 file changed, 4 insertions(+)

commit 659cd3c5b470ff9724ce5e53fedd1fea3e7512c4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 28 12:43:42 2014 -0700

    [test] Add test case for Tibetan sign PADMA

    Currently fails.

 test/shaping/texts/in-tree/shaper-tibetan/script-tibetan/misc/misc.txt |
 1 +
 1 file changed, 1 insertion(+)

commit ee703bc3ef740c300718fca7a12c050c322dce19
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 28 12:43:18 2014 -0700

    Reshuffle test data

 test/shaping/texts/in-tree/MANIFEST                                    |
 3 +++
 test/shaping/texts/in-tree/shaper-default/MANIFEST                     |
 3 ---
 .../in-tree/{shaper-default => shaper-hangul}/script-hangul/MANIFEST
 | 0
 .../{shaper-default => shaper-hangul}/script-hangul/misc/MANIFEST
 | 0
 .../{shaper-default => shaper-hangul}/script-hangul/misc/misc.txt
 | 0
 .../in-tree/{shaper-default => shaper-hebrew}/script-hebrew/MANIFEST
 | 0
 .../{shaper-default => shaper-hebrew}/script-hebrew/misc/MANIFEST
 | 0
 .../script-hebrew/misc/diacritics.txt                                  |
 0
 .../in-tree/{shaper-default => shaper-tibetan}/script-tibetan/MANIFEST
 | 0
 .../{shaper-default => shaper-tibetan}/script-tibetan/misc/MANIFEST
 | 0
 .../{shaper-default => shaper-tibetan}/script-tibetan/misc/misc.txt
 | 0
 11 files changed, 3 insertions(+), 3 deletions(-)

commit b082ef373cefb35dd98b5f2f0b677ccc7806f51e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 25 11:48:10 2014 -0700

    Typo

 src/hb-ot-shape-complex-indic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 828e109c7aac3389cc3b89ea1f13388aefb63804
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 18 16:53:34 2014 -0700

    [indic] Fix-up zero-context matching

    commit b5a0f69e47ace468b06e21cf069a18ddcfcf6064
    Author: Behdad Esfahbod <behdad@behdad.org>
    Date:   Thu Oct 17 18:04:23 2013 +0200

        [indic] Pass zero-context=false to would_substitute for newer
        scripts

        For scripts without an old/new spec distinction, use
        zero-context=false.
        This changes behavior in Sinhala / Khmer, but doesn't seem
        to regress.
        This will be useful and used in Javanese.

    The *intention* was to change zero-context from true to false for
    scripts that
    don't have old-vs-new specs.  However, checking the code, looks
    like we
    essentially change zero-context to always be true; ie. we only
    changed things
    for old-spec, and we broke them.  That's what causes this bug:

      https://bugs.freedesktop.org/show_bug.cgi?id=76705

    The root of the bug is here:

      /* Use zero-context would_substitute() matching for new-spec of
      the main
       * Indic scripts, but not for old-spec or scripts with one spec
       only. */
      bool zero_context = indic_plan->config->has_old_spec ||
      !indic_plan->is_old_spec;

    Note that is_old_spec itself is:

      indic_plan->is_old_spec = indic_plan->config->has_old_spec &&
      ((plan->map.chosen_script[0] & 0x000000FF) != '2');

    It's easy to show that zero_context is now always true.  What we
    really meant was:

      bool zero_context = indic_plan->config->has_old_spec &&
      !indic_plan->is_old_spec;

    Ie, "&&" instead of "||".  We made this change supposedly to make
    Javanese
    work.  But apparently we got it working regardless!  So I'm going
    to fix this
    to only change the logic for old-spec and not touch other cases.

 src/hb-ot-shape-complex-indic.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 66c6a48b6ce9dab6375ba1a23d7e450d6974852a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 14 15:55:42 2014 -0700

    Add HB_NO_MERGE_CLUSTERS

    Disables any cluster-merging.  Added for testing purposes while
    we investigate what kind of API to add for this.

 src/hb-buffer.cc | 8 ++++++++
 1 file changed, 8 insertions(+)

commit 897c7b804d6817470a364ba31b1719555b12f751
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 10 16:27:13 2014 -0700

    Add Khmer test for U+17DD

 .../shaper-indic/south-east-asian/script-khmer/misc/other-marks.txt
 | 1 +
 1 file changed, 1 insertion(+)

commit 50a00535ccac538bbf93358fd2d2442e4c12542f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 10 16:03:29 2014 -0700

    Require gobject-introspection 1.34.0

    Fixes https://bugs.freedesktop.org/show_bug.cgi?id=75384

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 5fd996c4a4049a75c6d9e964f1a81c00ff191893
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 9 16:38:26 2014 -0700

    Further adjust check-defs and check-symbols for mipsel

    Fixes https://bugs.freedesktop.org/show_bug.cgi?id=74491

 src/check-defs.sh    | 2 +-
 src/check-symbols.sh | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 75ec6d0bc5ca0170c73e4d1099a898d38d8f85c0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 9 16:33:32 2014 -0700

    Tighten up check-static-inits.sh check

    Fixes https://bugs.freedesktop.org/show_bug.cgi?id=74490

 src/check-static-inits.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 110ec0714a11b9417eed82f7d25b85c9dc7b6df4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 8 17:32:08 2014 -0700

    Typo

 src/hb-blob.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0682ddd05c22a400ff5ce97d4ea4b52a18b845ae
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 8 16:03:35 2014 -0700

    [indic] Support U+17DD KHMER SIGN ATTHACAN

    As requested by Martin Hosken on the list.

 src/hb-ot-shape-complex-indic.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 05870ed62edd8728d6d732f60d6b7e149d45e6f4
Author: Primiano Tucci <primiano@chromium.org>
Date:   Wed Apr 2 11:35:27 2014 +0100

    Use __aarch64__ for 64-bit ARM detection, not __arm64__

    Many GCC versions don't define __arm64__

 src/hb-atomic-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 04d894e89795041b2055dc172744a018644f2bca
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Mar 25 12:11:32 2014 -0700

    Minor

 src/hb-ot-layout-gsubgpos-private.hh | 1 +
 1 file changed, 1 insertion(+)

commit 903648437c180c7b039801cdb0672e0f8e14afd4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Mar 24 14:26:36 2014 -0700

    Start fleshing out builtin font functions

 src/Makefile.am                     |   3 +-
 src/hb-glib.cc                      |   2 +-
 src/hb-icu.cc                       |   2 +-
 src/hb-ot-font.cc                   | 260
 ++++++++++++++++++++++++++++++++++++
 src/{hb-tt-font.cc => hb-ot-font.h} |  56 ++------
 src/hb-ot-hhea-table.hh             |   2 +-
 src/hb-ot-hmtx-table.hh             |   2 +-
 src/hb-ot.h                         |   1 +
 util/Makefile.am                    |   4 +-
 util/options.cc                     |   4 +
 10 files changed, 283 insertions(+), 53 deletions(-)

commit 343a0e4e747d93eeeb724c5d585f5ba036a0df84
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Mar 21 14:37:27 2014 -0700

    Add "make built-sources"

 src/Makefile.am | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit e9853f33d1f53d4d69ee0fa340ce9225a5ed17ca
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Mar 21 12:53:08 2014 -0700

    One more fix for build without gtk-doc

    Fixes https://github.com/behdad/harfbuzz/pull/35

 autogen.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b96af03c20e46105982b3608b608614403540661
Author: Konstantin Ritt <ritt.ks@gmail.com>
Date:   Thu Mar 20 16:01:30 2014 +0200

    Fix build with --coretext on iOS

    On iOS CoreText and CoreGraphics are stand-alone frameworks

 configure.ac      | 23 +++++++++++++++++++----
 src/hb-coretext.h |  8 +++++++-
 2 files changed, 26 insertions(+), 5 deletions(-)

commit ea5e8a02eb83ad19f3009b0008893f77ce113118
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 19 15:38:02 2014 -0700

    [util] Plug minor leak

 util/hb-shape.cc     |  6 +++---
 util/helper-cairo.cc | 21 ++++++++++++---------
 util/helper-cairo.hh |  2 +-
 util/options.cc      |  6 +++++-
 util/options.hh      |  6 +++---
 5 files changed, 24 insertions(+), 17 deletions(-)

commit 09732cc6695b8e41ba6cdcd4058a4f7cad90167a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 19 12:00:17 2014 -0700

    Remove dead warning

 src/hb-unicode.cc |  9 +++++++--
 src/hb-warning.cc | 11 -----------
 2 files changed, 7 insertions(+), 13 deletions(-)

commit b934b0f9d1b39fc7a06c812bea3d79ca5424e278
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 19 11:52:40 2014 -0700

    Yet another try to make build without gtk-doc succeed

 autogen.sh                 | 1 +
 docs/reference/Makefile.am | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

commit a7a5be090dd9cc39605853e8994eb417550939d4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 19 11:39:23 2014 -0700

    Another try to make gtk-doc optional

 docs/reference/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ba8c9d92935ea351970a80d0d3441858ad4cf33f
Author: Dominik Röttsches <dominik.rottsches@intel.com>
Date:   Tue Mar 18 14:39:03 2014 +0200

    0.9.27

 NEWS         | 16 ++++++++++++++++
 configure.ac |  2 +-
 2 files changed, 17 insertions(+), 1 deletion(-)

commit a949cd329e49d2c0ad6f1e023f324790d886dafe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Mar 16 20:22:42 2014 -0700

    Don't use "register" storage class specifier

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

 src/hb-private.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 0082dbeae6c25a7859960b7e791a540ad04246d9
Author: jfkthame <jfkthame@gmail.com>
Date:   Sun Mar 16 08:25:17 2014 +0000

    wrap definition of free_langs() with HAVE_ATEXIT

    ...to avoid an unused function warning; see mozilla bug
    https://bugzilla.mozilla.org/show_bug.cgi?id=984081.

 src/hb-common.cc | 2 ++
 1 file changed, 2 insertions(+)

commit a9e25e90a4ca05746fda4a598ad698db1d2c5c1a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Mar 14 19:55:46 2014 -0700

    [coretext] Add hb_coretext_face_create()

    Not tested.

 src/hb-coretext.cc | 57
 +++++++++++++++++++++++++++++++++++++++++++++---------
 src/hb-coretext.h  |  4 ++++
 2 files changed, 52 insertions(+), 9 deletions(-)

commit c79865f90f62309dc64c8d3f2f503ec2aa4b7ec1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Mar 14 19:37:55 2014 -0400

    [coretext] Add coretext_aat shaper

    This is a higher-priority shaper than default shaper ("ot"), but
    only picks up fonts that have AAT "morx"/"mort" table.

    Note that for this to work the font face's get_table() implementation
    should know how to return the full font blob.

    Based on patch from Konstantin Ritt.

 src/hb-coretext.cc    | 94
 +++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-coretext.h     |  4 +++
 src/hb-shaper-list.hh |  4 +++
 3 files changed, 102 insertions(+)

commit af1aa362cacc652ab8ffda05a5d98a3ff5430439
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Mar 14 15:52:47 2014 -0700

    If HAVE_ICU_BUILTIN is defined, use hb-icu Unicode callbacks

    Useful for Android / Chrome / etc when ICU is built in the same
    library as harfbuzz itself.

 src/hb-unicode.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 853daf857f231c9ce0277a78abff1241150ea903
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Mar 14 15:49:18 2014 -0700

    Remove old cruft

 src/hb-shaper-list.hh | 6 ------
 1 file changed, 6 deletions(-)

commit 2a473338da1538efa4ff14ae9e4aba8dd50f9b0f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Mar 10 15:04:46 2014 -0700

    Add Myanmar test case from OpenType Myanmar spec

 test/shaping/texts/in-tree/shaper-myanmar/script-myanmar/misc/MANIFEST  |
 1 +
 .../shaping/texts/in-tree/shaper-myanmar/script-myanmar/misc/otspec.txt |
 2 ++
 2 files changed, 3 insertions(+)

commit 158985908981189a2fd4d15275a641286fc770fe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Mar 10 14:57:55 2014 -0700

    Minor

 test/shaping/texts/in-tree/shaper-myanmar/script-myanmar/misc/MANIFEST
 | 1 -
 test/shaping/texts/in-tree/shaper-sea/script-tai-tham/misc/MANIFEST
 | 1 +
 .../script-myanmar => shaper-sea/script-tai-tham}/misc/torture.txt
 | 0
 3 files changed, 1 insertion(+), 1 deletion(-)

commit bb8ffb581b89cf27fb8e0743b81bbda21654233e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Mar 4 13:03:51 2014 -0800

    Use AM_MISSING_PROG for ragel and git

 Makefile.am     | 4 ++--
 configure.ac    | 2 ++
 src/Makefile.am | 2 +-
 3 files changed, 5 insertions(+), 3 deletions(-)

commit a82165248cddb720576464b8e59a986491d3f2e9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 18 15:53:56 2014 -0500

    Only do fallback Hebrew composition if no GPOS 'mark' available

    Apparently some modern fonts have proper GPOS mark positioning
    tables, but undesirable precomposed forms!  See thread
    "Hebrew composition to presentation forms" and:

      http://tex.stackexchange.com/questions/156775/having-trouble-with-vowel-positioning-in-ezra-sil-xelatex

    Test case: U+fb1d,05d9,05b4

 src/hb-ot-shape-complex-hebrew.cc | 2 +-
 src/hb-ot-shape-private.hh        | 2 ++
 2 files changed, 3 insertions(+), 1 deletion(-)

commit b456d42bf68c4374f71f09867e375a51c7f2b3ed
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 11 17:29:40 2014 -0500

    Allow bootstrapping without gtk-doc

    Seems like configure.ac is already able to handle it.

 autogen.sh | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit 1eacde00cc8c57a08fb74276e3530844ef463d67
Author: Luis de Bethencourt <luis@debethencourt.com>
Date:   Thu Feb 6 23:20:47 2014 -0500

    check hb_set_is_emtpy in test-set.c

 test/api/test-set.c | 9 +++++++++
 1 file changed, 9 insertions(+)

commit db068d81cda180a91638e5539984f8139aff49c6
Author: Werner Lemberg <wl@gnu.org>
Date:   Mon Feb 10 10:38:56 2014 -0500

    typo in ucdn's Makefile.am

 src/hb-ucdn/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit fbb2847f541389f40718af71c4945024ae177ab2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 5 08:22:06 2014 -0500

    Improve MemoryBarrier() implementation

    See thread "[HarfBuzz] compilation error of 0.9.26 with MinGW"
    started by Werner.

 src/hb-atomic-private.hh | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

commit 189bf23bfc90405d8bdc70bf3d6d3ffec38b470c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 30 15:14:58 2014 -0500

    0.9.26

 NEWS         | 20 ++++++++++++++++++++
 configure.ac |  2 +-
 2 files changed, 21 insertions(+), 1 deletion(-)

commit 7691a154e50f8c8c77bbd94787686262955bf5d4
Author: Jonathan Kew <jfkthame@gmail.com>
Date:   Wed Jan 29 14:07:58 2014 +0000

    Ensure hb_script_t can safely hold any hb_tag_t value it's given.

    Fixes https://github.com/behdad/harfbuzz/pull/21

 src/hb-common.h | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

commit c29993a181c2139eaec97b5f6225824040ca3ac9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 28 17:29:42 2014 -0500

    [coretext] Handle surrogate pairs when generating notdef glyphs

    Fixes github.com/behdad/harfbuzz/pull/19

 src/hb-coretext.cc | 18 ++++++++++++++----
 1 file changed, 14 insertions(+), 4 deletions(-)

commit 748b2782e4898420003a3bbc041dcccbe9e3edc2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 28 17:10:05 2014 -0500

    [coretext] Minor optimization

 src/hb-coretext.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 24e6b11f12788500182715a64d4771a22c5b7525
Author: Konstantin Ritt <ritt.ks@gmail.com>
Date:   Tue Jan 28 18:16:01 2014 +0200

    Fix double destruction in case of OOM

 src/hb-graphite2.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 083225916a19f6d67017523af87386933bd9ecdc
Author: Konstantin Ritt <ritt.ks@gmail.com>
Date:   Wed Jan 22 20:31:30 2014 +0200

    Micro optimizations

 src/hb-ot-layout-gpos-table.hh | 28 +++++++++++++++++-----------
 1 file changed, 17 insertions(+), 11 deletions(-)

commit c9522de2335e4ef5fe65a72745c10943827a8da2
Author: Konstantin Ritt <ritt.ks@gmail.com>
Date:   Wed Jan 22 21:07:13 2014 +0200

    Make it possible to disable the fallback shaper at configure time

    The OT shaper supersedes the fallback shaper in every case
    and the latter become an extra weight for 99.9% of users.

 configure.ac          | 6 ++++++
 src/Makefile.am       | 5 ++++-
 src/hb-shaper-list.hh | 2 ++
 3 files changed, 12 insertions(+), 1 deletion(-)

commit 6775da3a7c07db6c032cf429dc199d471948db56
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 23 14:18:49 2014 -0500

    Fix clang warning 'private field 'xxx' is not used

    Fixes https://github.com/behdad/harfbuzz/pull/16

 src/hb-open-type-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 62299826f4905e080b9497bce335e093b287494e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 23 14:11:03 2014 -0500

    Fix typo in _hb_buffer_serialize_glyphs_text()

    Fixes https://github.com/behdad/harfbuzz/pull/17

 src/hb-buffer-serialize.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ae23c24c32f474a34484ee78bc177ad31fa5e6d0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 22 11:03:02 2014 -0500

    [arabic] Disable 'cswh' by default

    I believe Windows 8 disables it, and spec update dated
    Jan 2014 also clearly says it's disabled by default:

      http://www.microsoft.com/typography/OpenTypeDev/arabic/intro.htm#features

 src/hb-ot-shape-complex-arabic.cc | 1 -
 1 file changed, 1 deletion(-)

commit 08cf5d75ef0c75095173dec822ccb07defaaa6c2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 22 07:53:55 2014 -0500

    [ot] Don't try to compose if normalization is off

 src/hb-ot-shape-normalize.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 0596343bfeb80ad6b19d459654edf7dfded6affe
Merge: 62cb28df 83d7e791
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 22 04:43:51 2014 -0800

    Merge pull request #13 from jfkthame/hangul-shaper

    Tone-mark reordering and improved Old Hangul support

commit 62cb28dfc668cae9cbff826229bde2271e157927
Author: Jonathan Kew <jfkthame@gmail.com>
Date:   Mon Jan 20 14:23:08 2014 +0000

    fixup for 64-bit windows build

 src/hb-uniscribe.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 83d7e7915a5eaa8ff4c7014c319844e7dffd8225
Author: Jonathan Kew <jfkthame@gmail.com>
Date:   Mon Jan 20 19:49:47 2014 +0000

    [hangul] Fix ordering of dotted circle with Hangul tone mark (reported
    by Dohyun Kim).

 src/hb-ot-shape-complex-hangul.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit deef1862657d55b7ae8d45f4eecbe45c80785c4e
Author: Jonathan Kew <jfkthame@gmail.com>
Date:   Mon Jan 20 10:38:27 2014 +0000

    [hangul] Don't force zero-width for marks - this is not wanted for
    the Jamo Filler glyphs.

 src/hb-ot-shape-complex-hangul.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 391934db0a171aeb2057ebcd4a38ed81621e7393
Author: Jonathan Kew <jfkthame@gmail.com>
Date:   Mon Jan 20 10:37:32 2014 +0000

    [unicode] Exclude the Jamo Filler characters from Default_Ignorable,
    as some fonts want these to be visible/spacing glyphs.

 src/hb-unicode-private.hh | 15 +++++++--------
 1 file changed, 7 insertions(+), 8 deletions(-)

commit 7244b3fc3bf9757dd094709d36bea68682264e20
Author: Jonathan Kew <jfkthame@gmail.com>
Date:   Mon Jan 20 10:35:51 2014 +0000

    [hangul] Reorder Hangul tone mark to beginning of syllable, unless
    font implements it using a zero-width glyph.

 src/hb-ot-shape-complex-hangul.cc | 59
 ++++++++++++++++++++++++++++++++++++++-
 1 file changed, 58 insertions(+), 1 deletion(-)

commit 103436838df3a77552d3d33fc4bd80f09d9bf079
Author: Jonathan Kew <jfkthame@gmail.com>
Date:   Mon Jan 20 10:35:07 2014 +0000

    [hangul] Apply the appropriate *jmo features to decomposed
    syllables, including Old Hangul sequences that don't have Unicode
    compositions. Merge clusters in decomposed syllables.

 src/hb-ot-shape-complex-hangul.cc | 197
 +++++++++++++++++++++++++++++++-------
 1 file changed, 165 insertions(+), 32 deletions(-)

commit 8fc1f7fe74a25bf8549f5edd79c7da6b720eb064
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 2 17:04:04 2014 +0800

    [ot/hangul] Don't decompose Hangul even when combining marks present

    As discussed on
    https://github.com/behdad/harfbuzz/pull/10#issuecomment-31442030

 src/hb-ot-shape-complex-hangul.cc    |  2 +-
 src/hb-ot-shape-normalize-private.hh |  1 +
 src/hb-ot-shape-normalize.cc         | 24 +++++++++++++-----------
 3 files changed, 15 insertions(+), 12 deletions(-)

commit 64426ec73a987bfe1e71a293ee195f268897e8d6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 2 14:33:10 2014 +0800

    [ot] Simplify composing

    Not tested.  Ouch.

 src/hb-ot-shape-normalize.cc | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 8de20b1e8a1c4d2081f64e695045e6e4da7ce144
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 2 14:30:45 2014 +0800

    Add font->has_glyph()

 src/hb-font-private.hh            |  6 ++++++
 src/hb-ot-shape-complex-hangul.cc | 14 ++++++--------
 src/hb-ot-shape.cc                |  3 +--
 3 files changed, 13 insertions(+), 10 deletions(-)

commit f6298e55ae0f0f23f66935226f78afb98320ea78
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 2 14:23:56 2014 +0800

    [fallback] Minor

 src/hb-fallback-shape.cc | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 29ea403d67e29c2d531c1f613ce3d69e60f078f6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 2 14:20:00 2014 +0800

    [hangul] Fix decomposition logic

    Seems to be working now.

 src/hb-ot-shape-complex-hangul.cc | 19 ++++++++-----------
 1 file changed, 8 insertions(+), 11 deletions(-)

commit bdb20dafc3f737923da3dca0c832fdf4ab8daabc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 2 14:04:30 2014 +0800

    [hangul] Fix decomposition

    Part of https://github.com/behdad/harfbuzz/pull/10

 src/hb-ot-shape-complex-hangul.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 32478656ce6e7926c3ad481511f02187ca743af6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 2 14:01:56 2014 +0800

    [hangul] Tighten up character categories

    I had tried to expand to fill the blocks, but that sounds wrong in
    retrospect.

 src/hb-ot-shape-complex-hangul.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit f14bb7de631b20e2868fb62e5311cd0d9e24bb49
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 31 16:49:15 2013 +0800

    [ot] Separate out hebrew and tibetan shapers from default

    Now default shaper is truly no-op.

 src/Makefile.am                    |   2 +
 src/hb-ot-shape-complex-default.cc | 161
 +---------------------------------
 src/hb-ot-shape-complex-hebrew.cc  | 172
 +++++++++++++++++++++++++++++++++++++
 src/hb-ot-shape-complex-private.hh |  17 +++-
 src/hb-ot-shape-complex-tibetan.cc |  61 +++++++++++++
 5 files changed, 251 insertions(+), 162 deletions(-)

commit 6300cd72539284ca294ee8286bbbb7f9c72af320
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 31 16:38:47 2013 +0800

    [ot] Define HB_OT_SHAPE_ZERO_WIDTH_MARKS_DEFAULT

 src/hb-ot-shape-complex-default.cc | 2 +-
 src/hb-ot-shape-complex-hangul.cc  | 2 +-
 src/hb-ot-shape-complex-private.hh | 4 +++-
 src/hb-ot-shape-complex-thai.cc    | 2 +-
 4 files changed, 6 insertions(+), 4 deletions(-)

commit 3d6ca0d32e5c6597acfcf59301cb1905586ddb52
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 31 16:04:35 2013 +0800

    [ot] Simplify normalization_preference again

    No shaper has more than one behavior re this, so no need for
    a callback.

 src/hb-ot-shape-complex-arabic.cc  | 2 +-
 src/hb-ot-shape-complex-default.cc | 8 +-------
 src/hb-ot-shape-complex-hangul.cc  | 2 +-
 src/hb-ot-shape-complex-indic.cc   | 8 +-------
 src/hb-ot-shape-complex-myanmar.cc | 9 +--------
 src/hb-ot-shape-complex-private.hh | 7 +------
 src/hb-ot-shape-complex-sea.cc     | 9 +--------
 src/hb-ot-shape-complex-thai.cc    | 2 +-
 src/hb-ot-shape-normalize.cc       | 4 +---
 9 files changed, 9 insertions(+), 42 deletions(-)

commit c98b7183f7dc453d5bac1f2503017cded317a495
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 31 15:55:40 2013 +0800

    [ot] Add Hangul shaper

    Not exhaustively tested, but I think I got the intended logic
    right.

    The logic can perhaps be simplified.  Maybe we should disabled
    normalization with this shaper.  Then again, for now focusing on
    correctness.

 src/Makefile.am                    |   1 +
 src/hb-ot-shape-complex-default.cc |  13 ---
 src/hb-ot-shape-complex-hangul.cc  | 232
 +++++++++++++++++++++++++++++++++++++
 src/hb-ot-shape-complex-private.hh |  10 +-
 src/hb-private.hh                  |   6 +
 5 files changed, 240 insertions(+), 22 deletions(-)

commit 15f67048e45853ad4069fd4334e132bc3db4d2c4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 27 19:33:28 2013 -0500

    Reorder Tai Tham SAKOT to ensure it comes after any tone marks

 src/hb-unicode-private.hh | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit 3216e44feb7b97f44620b51e197425a80a41cdb7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 23 14:39:23 2013 -0500

    [uniscribe] Fix scratch-buffer accounting

 src/hb-uniscribe.cc | 15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)

commit beeb12c9af4e0e66378cd36cf3dbb1560763a8e3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 22 22:53:27 2013 -0500

    Add TODO item

 src/hb-ot-shape.h | 1 +
 1 file changed, 1 insertion(+)

commit fbd4acc58a4bb501625b482bd318be9764ff8e02
Author: Luis de Bethencourt <luis@debethencourt.com>
Date:   Sun Dec 22 08:02:11 2013 -0500

    Clean ht-ob headers

 src/Makefile.am    |  1 +
 src/hb-ot-layout.h |  5 -----
 src/hb-ot-shape.h  | 53
 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-ot.h        |  9 +--------
 4 files changed, 55 insertions(+), 13 deletions(-)

commit 5497a8a274a7066c0230c850baadef681785c8bb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 22 20:48:53 2013 -0500

    Cache various masks on the shape plan

 src/hb-ot-shape-fallback.cc |  6 ++----
 src/hb-ot-shape-private.hh  | 15 +++++++++++++++
 src/hb-ot-shape.cc          | 26 +++++++-------------------
 3 files changed, 24 insertions(+), 23 deletions(-)

commit 02f909664fa24a7ccf7cf73d75d1d3426aaaae7d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 22 19:35:27 2013 -0500

    Minor correction to kern mask checking

 src/hb-ot-shape-fallback.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit a7e8bbb080aef318b16750ca1771d0d3af3d0ae9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 22 19:33:35 2013 -0500

    Minor fraction mask setting improvement

 src/hb-ot-map-private.hh | 2 --
 src/hb-ot-shape.cc       | 8 +++++---
 2 files changed, 5 insertions(+), 5 deletions(-)

commit 76fff252a96b4357b5e71694d5201daef822aa60
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 22 17:55:59 2013 -0500

    Don't form fractions if only one of numr/dnom exist

 src/hb-ot-shape.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 3aeee519f0b82df5263974945ae852badc4dbded
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 22 16:17:54 2013 -0500

    Bug 72698 - Automatically support frac / numr / dnom

    When seeing U+2044 FRACTION SLASH in the text, find decimal
    digits (Unicode General Category Decimal_Number) around it,
    and mark the pre-slash digits with 'numr' feature, the post-slash
    digits with 'dnom' feature, and the whole sequence with 'frac'
    feature.

    This beautifully renders fractions with major Windows fonts,
    and any other font that implements those features (numr/dnom is
    enough for most fonts.)

    Not the fastest way to do this, but good enough for a start.

 src/hb-ot-shape.cc | 51
 +++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 51 insertions(+)

commit 014f369ec98fdbb3e7a2ef68aea2c4e017e7b680
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 22 16:15:30 2013 -0500

    Add XXX note

 src/hb-ot-map-private.hh | 2 ++
 1 file changed, 2 insertions(+)

commit 739325178aba00ea5526c6a54ce588a79e5d45e2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Dec 21 00:18:18 2013 -0500

    Initialize masks before mirroring

    We were throwing away the rtlm feature mask set during
    mirroring...

 src/hb-ot-shape.cc | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

commit d507f6b5b7a052f4d0eb9ba4ec88fd2e3d6f64b4
Author: Luis de Bethencourt <luis@debethencourt.com>
Date:   Mon Dec 16 15:48:44 2013 -0500

    Have Gtk-Doc ignore UCDN files

 docs/reference/Makefile.am | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

commit d688475ea9cd236bc9b9e0153489fac0025f07f0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 12 13:21:57 2013 -0500

    Minor

 util/options.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 2a8c49ade07a0bd4f2c9543f4bd129da82083ea0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 11 20:22:28 2013 -0500

    Remove unnecessary includes

 src/hb-blob.cc                       | 1 -
 src/hb-buffer-private.hh             | 1 -
 src/hb-common.cc                     | 2 --
 src/hb-face-private.hh               | 1 -
 src/hb-face.cc                       | 1 -
 src/hb-font-private.hh               | 1 -
 src/hb-font.cc                       | 1 -
 src/hb-graphite2.cc                  | 2 --
 src/hb-open-type-private.hh          | 2 --
 src/hb-ot-layout-private.hh          | 2 --
 src/hb-ot-shape-normalize-private.hh | 2 --
 src/hb-ot-tag.cc                     | 1 -
 src/hb-set-private.hh                | 1 -
 src/hb-shape-plan-private.hh         | 1 -
 src/hb-tt-font.cc                    | 2 --
 src/hb-unicode-private.hh            | 2 --
 16 files changed, 23 deletions(-)

commit 2646aec1e67cd6e09f5f7859c9d5898917acc2d5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 5 18:19:35 2013 -0500

    Drop required automake version back to 1.11.3

    Work around broken automake-1.13 changes.

 configure.ac             | 3 ++-
 test/shaping/Makefile.am | 7 +++++++
 2 files changed, 9 insertions(+), 1 deletion(-)

commit 860fc9aa7b4c49a1d50e64cfdf4d4dffadb7aa8f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 4 20:06:59 2013 -0500

    0.9.25

 NEWS         | 12 ++++++++++++
 configure.ac |  2 +-
 2 files changed, 13 insertions(+), 1 deletion(-)

commit adb039554de0c98a4121f26423bec8df09a62e61
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 4 20:10:02 2013 -0500

    Minor

 util/view-cairo.hh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 95d18a7cab480712d8c95a587ac2a8fdcbec5e71
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 4 20:01:22 2013 -0500

    [git.mk] Update

 git.mk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit d913f98d88098fc0f4163dfbc54d8ca9ebe9dd81
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 4 19:59:48 2013 -0500

    Require automake 1.13

    Fix tests build.

    https://bugs.freedesktop.org/show_bug.cgi?id=71353

 configure.ac             |  2 +-
 test/shaping/Makefile.am | 19 ++++++++++++++-----
 2 files changed, 15 insertions(+), 6 deletions(-)

commit 205bf834d80f81471f0c3da4f400e60ce3a533dc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 2 20:41:41 2013 -0500

    Revert "Karen" language mapping back to what it was before

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

 src/hb-ot-tag.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit f47b9219546edcfdeb3991ee27f6d9ba455c3e08
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 2 05:57:27 2013 -0500

    Fix unsafe shape_plan->face dependency

 src/hb-ot-shape-private.hh   |  2 +-
 src/hb-shape-plan-private.hh |  2 +-
 src/hb-shape-plan.cc         | 12 +++---------
 3 files changed, 5 insertions(+), 11 deletions(-)

commit c704a8700e169885f1d9cbab93544d85aa4358e9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 2 05:42:04 2013 -0500

    [util] Fix uninitialized memory access

 util/view-cairo.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 260a3198f44a4ece60864b6f6caab2ee756ad762
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 2 05:39:39 2013 -0500

    [util] Plug leak

 util/options.cc | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit ca8d96c8ba33ce581684cbc07936a3696b6c83d9
Author: Jonathan Kew <jfkthame@gmail.com>
Date:   Mon Dec 2 05:22:00 2013 -0500

    cache shape plans even if (global) user features are set

 src/hb-shape-plan-private.hh |  3 +++
 src/hb-shape-plan.cc         | 59
 ++++++++++++++++++++++++++++++++++++++++----
 2 files changed, 57 insertions(+), 5 deletions(-)

commit 8ffa528f28a24ae85952ad1c1b0206e736bcfeab
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 2 05:17:14 2013 -0500

    Add note about unsafe shape_plan->face

    Will fix by removing shape_plan->face completely.

 src/hb-shape-plan.cc | 2 ++
 1 file changed, 2 insertions(+)

commit aec468f01e866c99e65a8f764a792c74c96840d7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 29 19:21:58 2013 -0500

    [coretext] Add TODO

 src/hb-coretext.cc | 2 ++
 1 file changed, 2 insertions(+)

commit 58cc233e8b5fdc9dce603acc1b968540a2dea3e1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 29 19:17:42 2013 -0500

    [coretext] Cleanup

 src/hb-coretext.cc | 27 ++++++++++++++++-----------
 1 file changed, 16 insertions(+), 11 deletions(-)

commit c8213c6198abff97822e29a6d565722cfbb43832
Author: Khaled Hosny <khaledhosny.eglug.org>
Date:   Fri Nov 29 19:01:56 2013 -0500

    [coretext] Avoid font fallback with CoreText shaper

    CoreText does automatic font fallback (AKA "cascading") for
    characters
    not supported by the requested font, and provides no way to turn
    it off,
    so detect if the returned run uses a font other than the requested one
    and fill in the buffer with .notdef glyphs instead of random indices
    glyph from a different font.

 src/hb-coretext.cc | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

commit 63bae73aefb0e5988ef6975f1ed38e040e50e91d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 26 22:57:24 2013 -0500

    [fallback] Add TODO note

 src/hb-fallback-shape.cc | 10 ++++++++++
 1 file changed, 10 insertions(+)

commit e1ebf01d0cf3df55bb9137136e2d0c9630e7bd78
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 26 18:00:35 2013 -0500

    Minor

 src/hb-ot-layout-common-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a182dbc9e4e51fa7990c4aea3eaa425a061b29c7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 26 17:53:41 2013 -0500

    Minor

 src/hb-ot-layout-common-private.hh | 1 +
 1 file changed, 1 insertion(+)

commit 9174a9db5c4e01284143ed8bd318ce9454535987
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 25 18:10:38 2013 -0500

    [myanmar] Allow punctuation clusters

    The spec and Uniscribe don't allow these, but UTN#11
    specifically says the sequence U+104B,U+1038 is valid.
    As such, allow all "P V" sequences.  There's about
    eight sequences that match that structure, but Roozbeh
    thinks it's fine to allow all of them.

    Test case: U+104B, U+1038

    https://bugs.freedesktop.org/show_bug.cgi?id=71947

 src/hb-ot-shape-complex-myanmar-machine.rl |  3 +++
 src/hb-ot-shape-complex-myanmar.cc         | 19 ++++++++++++++++++-
 2 files changed, 21 insertions(+), 1 deletion(-)

commit 096b71e8ef0c1443f3f86069d5416b887af6e9e7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 25 18:03:34 2013 -0500

    [myanmar] Mark U+104E MYANMAR SYMBOL AFOREMENTIONED as Consonant

    The spec and Uniscribe treat it as consonant in the grammar, but
    it's not in IndicSyllableCategory.txt, so fix up.

    Test sequence: U+1004,U+103A,U+1039,U+104E

    https://bugs.freedesktop.org/show_bug.cgi?id=71948

 src/hb-ot-shape-complex-myanmar.cc | 4 ++++
 1 file changed, 4 insertions(+)

commit d2da5e0b4b4ffc1722403ffb90b8777cfa1cd174
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 25 17:50:07 2013 -0500

    [myanmar] Relax pwo-tone group a bit

    This is broken sequence according to OpenType spec, Uniscribe,
    and current HarfBuzz implementation.  But Roozbeh says this
    is a valid sequence, so allow it.  There are multiple
    "(DB As?)?" constructs in the grammar, but Roozbeh thinks only
    this one needs changing.

    Test case: 1014,1063,103A

    Fixes https://bugs.freedesktop.org/show_bug.cgi?id=71949

 src/hb-ot-shape-complex-myanmar-machine.rl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9af91ca8ffee4a8d2804eff5d380b4f9749414d1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 25 17:47:19 2013 -0500

    Add more Myanmar test cases

    All three are broken right now according to Roozbeh.

    https://bugs.freedesktop.org/show_bug.cgi?id=71947
    https://bugs.freedesktop.org/show_bug.cgi?id=71948
    https://bugs.freedesktop.org/show_bug.cgi?id=71949

 .../shaping/texts/in-tree/shaper-myanmar/script-myanmar/misc/misc.txt |
 4 ++++
 1 file changed, 4 insertions(+)

commit 08c2d27d35093e07142168665139274ac99395e8
Author: Roozbeh Pournader <roozbeh@google.com>
Date:   Sat Nov 23 21:39:31 2013 -0800

    Added support for several new languages

    Based on research into latest SIL and Windows fonts, pulling in
    the latest OpenType language tag proposal from Microsoft, and updating
    to latest language tags and names from ISO 639.

 src/hb-ot-tag.cc | 314
 +++++++++++++++++++++++++++++++++++++++++++------------
 1 file changed, 247 insertions(+), 67 deletions(-)

commit 05511acd198d0c2157cdb41e1d36eac0b8075357
Author: Roozbeh Pournader <roozbeh@google.com>
Date:   Sat Nov 23 15:19:07 2013 -0800

    Added language tags for S'gaw Karen and Khamti

    Tags based on support in Windows 8.1's 'Myanmar Text' font.

 src/hb-ot-tag.cc | 2 ++
 1 file changed, 2 insertions(+)

commit 0bb31e4497523442fbb26bbd55b194ab70205ca4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 20 14:21:07 2013 -0500

    Bug 71845 - Use 64-bit cmpexch on ARM64 iOS

 src/hb-atomic-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 02c6c8cd6e8c93b63c75b25de6bf76bb45755bb4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 15 13:05:38 2013 -0500

    Set buffer content type to INVALID in hb_buffer_set_length(0)

    Previously we were only setting this in hb_buffer_clear_contents(),
    but set_length(0) is a valid way to reinitialize buffer to use with
    new text.

 src/hb-buffer-private.hh | 2 +-
 src/hb-buffer.cc         | 3 +++
 2 files changed, 4 insertions(+), 1 deletion(-)

commit 6300694f6e531593e7e932000f9540b0367940b8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 13 14:54:07 2013 -0500

    0.9.24

 NEWS         | 8 ++++++++
 configure.ac | 2 +-
 2 files changed, 9 insertions(+), 1 deletion(-)

commit 061cb4649342b005fb1de93abae25e889cc560bd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 13 14:50:25 2013 -0500

    Use long alignment for scratch buffer

    Fixes last of scratch alignment warnings in hb-coretext.

 src/hb-buffer-private.hh | 2 +-
 src/hb-buffer.cc         | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

commit 68c372ed2eac76a6d347811293fe2ba2fd6a1eed
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 13 14:44:01 2013 -0500

    More scratch-buffer cleanup

 src/hb-buffer-private.hh |  3 ++-
 src/hb-buffer.cc         | 10 +++++-----
 src/hb-coretext.cc       |  5 ++---
 src/hb-graphite2.cc      |  2 +-
 src/hb-uniscribe.cc      | 30 ++++++++++++++----------------
 5 files changed, 24 insertions(+), 26 deletions(-)

commit 8fcadb9cf9418345610e3f4e38c28c12b768b589
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 13 14:33:57 2013 -0500

    [coretext] More scratch buffer fixes

 src/hb-coretext.cc | 25 +++++++++++++------------
 1 file changed, 13 insertions(+), 12 deletions(-)

commit 16f175cb2e081e605fe7f9cd01bbe8c24380278a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 12 17:22:49 2013 -0500

    Fix scratch-buffer alignment warnings

 src/hb-buffer-private.hh |  2 +-
 src/hb-buffer.cc         |  9 +++++----
 src/hb-coretext.cc       | 17 ++++++++++-------
 src/hb-graphite2.cc      | 28 +++++++++++++++++-----------
 src/hb-private.hh        |  3 +++
 src/hb-uniscribe.cc      | 29 +++++++++++++++++------------
 6 files changed, 53 insertions(+), 35 deletions(-)

commit c7c4ccf8a1e784b6f8798388a219dda9a26fbd93
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 12 15:41:22 2013 -0500

    [travis] Enable graphite2

 .travis.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 83408cf804a6908873c41b70bb7c43448e66ddd2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 6 14:46:04 2013 -0500

    Fix llvm warnings on Mac

    Patch from Scott Fleischman.  Warnings were:

    harfbuzz/src/hb-font-private.hh:121:42: Implicit conversion loses
    integer precision: 'long long' to 'hb_position_t' (aka 'int')
    harfbuzz/src/hb-font-private.hh:126:42: Implicit conversion loses
    integer precision: 'long long' to 'hb_position_t' (aka 'int')
    harfbuzz/src/hb-font-private.hh:400:85: Implicit conversion loses
    integer precision: 'long long' to 'hb_position_t' (aka 'int')
    harfbuzz/src/hb-ot-layout-common-private.hh:1115:37: Implicit
    conversion
    loses integer precision: 'long long' to 'int'
    harfbuzz/src/hb-ft.cc:421:97: Implicit conversion loses integer
    precision: 'unsigned long long' to 'int'
    harfbuzz/src/hb-ft.cc:422:97: Implicit conversion loses integer
    precision: 'unsigned long long' to 'int'

 src/hb-font-private.hh             | 6 +++---
 src/hb-ft.cc                       | 4 ++--
 src/hb-ot-layout-common-private.hh | 2 +-
 3 files changed, 6 insertions(+), 6 deletions(-)

commit 333cc6e2d11831bcd2370723456e678574d570ec
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 30 17:30:11 2013 +0000

    [otlayout] Remove unused is_inplace()

    Patch from Jonathan Kew.

 src/hb-ot-layout-gpos-table.hh       |   6 --
 src/hb-ot-layout-gsub-table.hh       |  56 ------------
 src/hb-ot-layout-gsubgpos-private.hh | 159
 -----------------------------------
 3 files changed, 221 deletions(-)

commit 176fd17d02ac183af32a0e710ec32d25c9322021
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 30 17:27:24 2013 +0000

    Bug 70971 - Signed/unsigned compiler warnings on windows

    Patch from Emil Eklund.

 src/hb-buffer-serialize.cc | 8 ++++----
 src/hb-ot-map.cc           | 2 +-
 2 files changed, 5 insertions(+), 5 deletions(-)

commit 3d436d325edccc0f3dd820e06e3d529cc8f3eca4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 28 21:00:37 2013 +0100

    [otlayout] Reset ccc when marking glyph as letter

 src/hb-ot-layout-gsubgpos-private.hh | 3 +++
 1 file changed, 3 insertions(+)

commit b9d0077ac1a8e8a62ee15c64ad302f7976e23bdd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 28 20:44:03 2013 +0100

    Fix win32 testing

 test/shaping/Makefile.am  | 1 +
 test/shaping/run-tests.sh | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

commit dce79c2bd747d398bdf2f4b171b0ba9b5b951f72
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 28 20:26:40 2013 +0100

    0.9.23

 NEWS         | 10 ++++++++++
 configure.ac |  2 +-
 2 files changed, 11 insertions(+), 1 deletion(-)

commit 2e990a3d722c10d1eefdc4c5ccbdaa384625c3fd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 28 20:23:07 2013 +0100

    Make "make distcheck" happy

 configure.ac             | 2 +-
 test/shaping/Makefile.am | 3 +++
 2 files changed, 4 insertions(+), 1 deletion(-)

commit 6ffc007b61402c9d1d4de368deed4971a10ed00b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 28 19:26:02 2013 +0100

    [otlayout] Optimize inplace

    See thread started by Jonathan with subject "an optimization for
    complex
    fonts".

 src/hb-ot-layout.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 71b4c999a511bf018acaf48a45e070470c0daf12
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 28 00:20:59 2013 +0100

    Revert "Zero marks by GDEF for Tibetan"

    This reverts commit d5bd0590ae2fbc7b0dee86385a565aef00ffb835.

    The reasoning behind that logic was flawed and made under
    a misunderstanding of the original problem, and caused
    regressions as reported by Jonathan Kew in thread titled
    "tibetan marks" in Oct 2013.  Apparently I have had fixed
    the original problem with this commit:

      7e08f1258da229dfaf7e1c4b5c41e5bb83906cb0

    So, revert the faulty commit and everything seems to be in good
    shape.

 src/hb-ot-layout-gsubgpos-private.hh |  4 ++--
 src/hb-ot-shape-complex-arabic.cc    | 10 +++-------
 src/hb-ot-shape-complex-default.cc   | 17 +----------------
 src/hb-ot-shape-complex-indic.cc     |  8 +-------
 src/hb-ot-shape-complex-myanmar.cc   | 15 +++++----------
 src/hb-ot-shape-complex-private.hh   |  8 ++------
 src/hb-ot-shape-complex-sea.cc       | 14 ++++----------
 src/hb-ot-shape-complex-thai.cc      |  9 +--------
 src/hb-ot-shape.cc                   |  4 ++--
 9 files changed, 21 insertions(+), 68 deletions(-)

commit 9596b2bf569dae6fbe268803e3cb248001f10954
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 28 00:09:05 2013 +0100

    Pass CPPFLAGS=-Werror to Travis-CI

    We want default gcc / clang warnings to fail the CI build.

 .travis.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c77d1ade6898cea161f0709c5c5a912e14aff951
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 27 23:52:26 2013 +0100

    Fix warnings

 test/api/test-blob.c      | 2 +-
 util/helper-cairo-ansi.cc | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit c2bc818706df56022c8bb922df2b741cb120f7e4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 27 23:36:35 2013 +0100

    Work with old and new glib

    Avoids "deprecated" warnings.

 src/test-buffer-serialize.cc | 7 +++++--
 src/test-size-params.cc      | 7 +++++--
 src/test-would-substitute.cc | 7 +++++--
 src/test.cc                  | 7 +++++--
 util/options.cc              | 4 ++--
 util/options.hh              | 4 ++++
 util/view-cairo.hh           | 4 ++++
 7 files changed, 30 insertions(+), 10 deletions(-)

commit 46a863d91dbcc9a4c796e3715ea3828939f4d941
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 27 23:24:50 2013 +0100

    [indic] Adjust pref reordering logic

    For Javanese (pref_len == 1) only reorder if it didn't ligate.  That's
    sensible, and what the spec says.  For other Indic (pref_len > 1)
    only reorder if ligated.

    Doesn't change any test numbers.

 src/hb-ot-shape-complex-indic.cc | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

commit 6b03e3c724ec6cd255f4a323bf4aa7d8c93a056e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 27 21:04:55 2013 +0100

    Optimize fallback kerning

    Patch from Jonathan Kew.  "These changes seem to yield a small but
    just-about-measurable improvement with old fonts that lack GPOS
    kerning."

 src/hb-ot-shape-fallback.cc | 47
 ++++++++++++++++++++++++++++-----------------
 1 file changed, 29 insertions(+), 18 deletions(-)

commit 133eeba6a32769ec1a7520e7c8a0d2eb1ad986f8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 27 00:24:59 2013 +0200

    Minor

    See:
    https://github.com/prezi/harfbuzz-js/pull/1/files#r7032397

 src/hb-common.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a74f0de225c403998212e2618dcf9452bc5b590d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 24 11:46:33 2013 +0200

    [indic] Fix CM2, really

    Followup from 6e613f3365bf4e9fd778758c53e7de00c64beca1.

 src/hb-ot-shape-complex-indic-machine.rl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6e613f3365bf4e9fd778758c53e7de00c64beca1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 23 23:34:13 2013 +0200

    Fix "shift count >= width of type" issue

 src/hb-ot-shape-complex-indic-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ac8cd511911c7dca6222d14fa758bff75d601567
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 18 19:33:09 2013 +0200

    Refactor

 src/hb-ot-layout-gpos-table.hh | 120
 ++++++++++++++++++++++-------------------
 src/hb-ot-layout.cc            |  31 +++++------
 src/hb-ot-shape-normalize.cc   |  29 +++++-----
 src/hb-ot-shape.cc             |  82 ++++++++++++++++------------
 4 files changed, 145 insertions(+), 117 deletions(-)

commit 0f3fe37fccfb540437adf13dd580f2c5164a0b1f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 18 19:14:22 2013 +0200

    Comment

 src/hb-ot-layout-private.hh | 1 +
 1 file changed, 1 insertion(+)

commit ddce2d8df6fed9c033f1f13e235666680c5beb67
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 18 18:07:11 2013 +0200

    [indic] Improve positioning of post-base bells and whistles

    Bug 58714 - Kannada u+0cb0 u+200d u+0ccd u+0c95 u+0cbe does not
    provide
    same results as Windows8
    https://bugs.freedesktop.org/show_bug.cgi?id=58714

    Test with U+0CB0,U+200D,U+0CCD,U+0C95,U+0CBF and tunga.ttf.

    Improves some scripts.  Improves Bengali too, but numbers
    are up because we produce better results than Uniscribe for some
    sequences now.

    New numbers:
    BENGALI: 353724 out of 354188 tests passed. 464 failed (0.131004%)
    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: 1048140 out of 1048334 tests passed. 194 failed
    (0.0185056%)
    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%)

 src/hb-ot-shape-complex-indic.cc | 19 ++++++++++---------
 1 file changed, 10 insertions(+), 9 deletions(-)

commit d5bd0590ae2fbc7b0dee86385a565aef00ffb835
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 18 16:44:54 2013 +0200

    Zero marks by GDEF for Tibetan

    See:
    http://lists.freedesktop.org/archives/harfbuzz/2013-April/003101.html

 src/hb-ot-layout-gsubgpos-private.hh |  4 ++--
 src/hb-ot-shape-complex-arabic.cc    | 10 +++++++---
 src/hb-ot-shape-complex-default.cc   | 17 ++++++++++++++++-
 src/hb-ot-shape-complex-indic.cc     |  8 +++++++-
 src/hb-ot-shape-complex-myanmar.cc   | 15 ++++++++++-----
 src/hb-ot-shape-complex-private.hh   |  8 ++++++--
 src/hb-ot-shape-complex-sea.cc       | 14 ++++++++++----
 src/hb-ot-shape-complex-thai.cc      |  9 ++++++++-
 src/hb-ot-shape.cc                   |  4 ++--
 9 files changed, 68 insertions(+), 21 deletions(-)

commit bf029281b1b0f854f671969ab40eac3046a111bd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 18 16:20:13 2013 +0200

    Bug 65258 - [...] Mongolian with free variation selector

 src/hb-ot-shape-complex-arabic.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 0193649ce4ca78b8e2835a50bd51ee594cffe34e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 18 16:08:53 2013 +0200

    [otfallback] Don't shift down above-marks too much

    This seems to generate much better, almost-perfect, positioning for
    Arabic as well as Latin above marks.

 src/hb-ot-shape-fallback.cc | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

commit dba9580237da788275b1ab5fe6be75c8a3f359b9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 18 15:57:36 2013 +0200

    [otfallback] Never fallback-position a below-mark upwards

    Test with WinXP times.ttf and U+05D9,U+05B5.

 src/hb-ot-shape-fallback.cc | 6 ++++++
 1 file changed, 6 insertions(+)

commit 8177da29ad07d8fa444ce07003fa65cd31a2776b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 18 15:50:29 2013 +0200

    Minor

 src/hb-ot-shape-fallback.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit c16012e9019ec59c2200a3cc29b8a37ea70eda70
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 18 02:27:00 2013 +0200

    [indic] Add Javanese support!

    Seems to be working just fine!

 src/hb-ot-shape-complex-indic-machine.rl | 14 ++++++------
 src/hb-ot-shape-complex-indic-private.hh | 37
 ++++++++++++++++----------------
 src/hb-ot-shape-complex-indic.cc         |  9 ++++++--
 3 files changed, 34 insertions(+), 26 deletions(-)

commit 755b44cce6dc23376a3cf0212893609231fa4967
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 18 11:17:42 2013 +0200

    [ft] Round metrics instead of truncate

    Lohit-Punjabi has a upem of 769!  We were losing one unit in our
    code, and FreeType is losing another one...  Test with U+0A06.
    Has an advance of 854 in the font.  We were producing 852.
    Now we do 853, which is what FreeType is telling us.

 src/hb-ft.cc | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 9a49351cc2625de16a73e0e153d3097ef6c7cc0f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 18 02:14:53 2013 +0200

    [indic] Swith pref logic to use _hb_glyph_info_substituted()

    See comments from caveat!  Seems to work fine.

    This is useful for Javanese which has an atomically encoded pre-base
    reordering Ra which should only be reordered if it was substituted
    by the pref feature.

 src/hb-ot-shape-complex-indic.cc | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit f175aa33c5e94397c60648ac0697c80f5fe0dcb7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 18 02:07:44 2013 +0200

    [indic] Fix compiler warnings

 src/hb-ot-shape-complex-indic.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 857027341423f15fd6084c7563cc355b06e7cbdd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 18 01:11:05 2013 +0200

    [otlayout] Add _hb_glyph_info_substituted()

    Currently unused.

 src/hb-ot-layout-private.hh | 6 ++++++
 1 file changed, 6 insertions(+)

commit a1f7b2856184959e965c9c2b80363f9f46d486a7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 18 01:09:08 2013 +0200

    [otlayout] Switch over from old is_a_ligature() to IS_LIGATED

    Impact should be minimal and positive.

 src/hb-ot-layout-gsubgpos-private.hh |  2 +-
 src/hb-ot-layout-private.hh          | 12 +++++++++---
 src/hb-ot-shape-complex-indic.cc     |  4 ++--
 src/hb-ot-shape-complex-myanmar.cc   |  2 +-
 src/hb-ot-shape.cc                   |  2 +-
 5 files changed, 14 insertions(+), 8 deletions(-)

commit 09675a8115b9d77261c33940401aa919cede8662
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 18 01:05:58 2013 +0200

    [otlayout] Add HB_OT_LAYOUT_GLYPH_PROPS_LIGATED

    Currently unused.

 src/hb-ot-layout-gsubgpos-private.hh | 15 ++++++++++-----
 src/hb-ot-layout-private.hh          |  5 ++++-
 2 files changed, 14 insertions(+), 6 deletions(-)

commit 05ad6b50ac0a1b9a8da10d2ee2238068b7811e7d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 18 00:45:59 2013 +0200

    [otlayout] Add HB_OT_LAYOUT_GLYPH_PROPS_SUBSTITUTED

    Currently unused.

 src/hb-ot-layout-gsubgpos-private.hh |  5 +++--
 src/hb-ot-layout-private.hh          | 10 ++++++----
 2 files changed, 9 insertions(+), 6 deletions(-)

commit 101303dbf7cf15d044bf2518f14b3aec65970fea
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 18 00:42:39 2013 +0200

    [otlayout] More shuffling around

 src/hb-ot-layout-gpos-table.hh       | 16 +++----
 src/hb-ot-layout-gsub-table.hh       | 13 +++--
 src/hb-ot-layout-gsubgpos-private.hh |  8 ++--
 src/hb-ot-layout-private.hh          | 92
 ++++++++++++++++++++++++++++++++----
 src/hb-ot-shape.cc                   |  8 ++--
 5 files changed, 102 insertions(+), 35 deletions(-)

commit 91689de2603e4151e2a2d3a3852c61667f0c6264
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 18 00:21:59 2013 +0200

    [otlayout] Add _hb_glyph_info_set_glyph_props()

    No functional change.

 src/hb-ot-layout-gsub-table.hh       | 2 +-
 src/hb-ot-layout-gsubgpos-private.hh | 4 ++--
 src/hb-ot-layout-private.hh          | 9 +++++++++
 src/hb-ot-shape.cc                   | 8 +++++---
 4 files changed, 17 insertions(+), 6 deletions(-)

commit a0161746589934e93c3b115814bbd81f56ab962f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 18 00:06:30 2013 +0200

    [otlayout] Simplify set_class() usage

 src/hb-ot-layout-gsubgpos-private.hh | 31 ++++++++++++++++++-------------
 1 file changed, 18 insertions(+), 13 deletions(-)

commit 3ddf892b5328b74afb6e7d9da727d8771ca5d288
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 18 00:02:43 2013 +0200

    [otlayout] Renaming

 src/hb-ot-layout-gpos-table.hh       | 18 +++++++-------
 src/hb-ot-layout-gsub-table.hh       |  2 +-
 src/hb-ot-layout-gsubgpos-private.hh | 36 +++++++++++++--------------
 src/hb-ot-layout-private.hh          | 48
 +++++++++++++++++++++---------------
 src/hb-ot-shape-complex-indic.cc     |  5 ++--
 src/hb-ot-shape-complex-myanmar.cc   |  2 +-
 src/hb-ot-shape-fallback.cc          |  8 +++---
 src/hb-ot-shape.cc                   |  2 +-
 8 files changed, 65 insertions(+), 56 deletions(-)

commit 2e96d2c6ee34142375373be07217c9953e7822cc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 17 21:16:20 2013 +0200

    [otlayout] More shuffling

 src/hb-ot-layout-private.hh | 252
 +++++++++++++++++++++++---------------------
 1 file changed, 130 insertions(+), 122 deletions(-)

commit 469524692bd0a258b28e63294c984e677a9c2477
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 17 21:01:57 2013 +0200

    [otlayout] Code shuffling

 src/hb-ot-layout-private.hh | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

commit 11fb16cb849285a178d9e80991b1d60a960326ee
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 17 20:57:57 2013 +0200

    Use unsigned enums for mask types

 src/hb-buffer.h             | 16 ++++++++--------
 src/hb-ot-layout-private.hh |  8 ++++----
 2 files changed, 12 insertions(+), 12 deletions(-)

commit 03058c3d1e8c18858c1e0b0c738ce9d299f2787a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 17 20:55:34 2013 +0200

    [otlayout] Remove two unused HB_OT_LAYOUT_GLYPH_PROPS_* values

 src/hb-ot-layout-gdef-table.hh | 1 -
 src/hb-ot-layout-gsub-table.hh | 3 ++-
 src/hb-ot-layout-private.hh    | 7 +++++--
 3 files changed, 7 insertions(+), 4 deletions(-)

commit 941b6992042e7b73b3a2aab1448383adf33bef28
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 17 20:47:33 2013 +0200

    [otlayout] Remove unused HB_OT_LAYOUT_GLYPH_PROPS_UNCLASSIFIED

 src/hb-ot-layout-gdef-table.hh |  7 +++++--
 src/hb-ot-layout-private.hh    | 10 ++++------
 2 files changed, 9 insertions(+), 8 deletions(-)

commit 8f9ec92dfce5c469fb85ad301296b5dde1b2ab0a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 17 19:52:47 2013 +0200

    [indic] Adjust Javanese base algorithm

 src/hb-ot-shape-complex-indic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 49901862e36e1c153835877a9f1183729333bbbe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 17 19:48:51 2013 +0200

    [otlayout] Guard against use of ReverseChain through Context

 src/hb-ot-layout-gsub-table.hh | 4 +++-
 src/hb-ot-layout.cc            | 4 ++--
 2 files changed, 5 insertions(+), 3 deletions(-)

commit 74f4bbf0560a5fd2d295e100e96f0c6c7033e852
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 17 19:07:53 2013 +0200

    [indic] Towards supporting atomicly-encoded prebase-reorderings

 src/hb-ot-shape-complex-indic.cc | 65
 ++++++++++++++++++++++++----------------
 1 file changed, 40 insertions(+), 25 deletions(-)

commit efed40b975110d78c9c505441e7e17a8c13e85c8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 17 18:50:11 2013 +0200

    [indic] Minor refactoring of reph handling

 src/hb-ot-shape-complex-indic.cc | 14 ++++++++------
 src/hb-ot-shape-complex-sea.cc   |  2 +-
 2 files changed, 9 insertions(+), 7 deletions(-)

commit 684fe59ff858a0ecba71b3ed80378afb0b8bbb48
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 17 18:30:06 2013 +0200

    [indic] Minor refactoring of would_substitute()

 src/hb-ot-shape-complex-indic.cc | 19 ++++++++++---------
 1 file changed, 10 insertions(+), 9 deletions(-)

commit 321df83fb4f0b8a5310888129cb70bfda8ae0c96
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 17 18:16:14 2013 +0200

    Route Buginese through the SEA shaper

    Both Indic and SEA seem to do it just fine, but SEA is much
    simpler.

 src/hb-ot-shape-complex-private.hh | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

commit b5a0f69e47ace468b06e21cf069a18ddcfcf6064
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 17 18:04:23 2013 +0200

    [indic] Pass zero-context=false to would_substitute for newer scripts

    For scripts without an old/new spec distinction, use
    zero-context=false.
    This changes behavior in Sinhala / Khmer, but doesn't seem to regress.
    This will be useful and used in Javanese.

 src/hb-ot-shape-complex-indic.cc | 35 +++++++++++++++++++----------------
 1 file changed, 19 insertions(+), 16 deletions(-)

commit c4e71ff36d1f86a6ea56539728a964d97217e2b6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 17 17:04:47 2013 +0200

    [indic] Clean up Khmer and Sinhala base finding algorithm

 src/hb-ot-shape-complex-indic.cc | 24 +++++++++++-------------
 1 file changed, 11 insertions(+), 13 deletions(-)

commit e10453e6fb2544724ccd7ddfdbb9de90ef9274ce
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 17 16:49:06 2013 +0200

    [indic] Add BASE_POS_LAST_SINHALA

    Previously we planted this into the mode used for Khmer.  There's not
    really much in common between the two, so separate again.

 src/hb-ot-shape-complex-indic.cc | 21 +++++++++++++++++++--
 1 file changed, 19 insertions(+), 2 deletions(-)

commit 9ac6b01e0cd8e2d66dfc727157f45b615bc77109
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 17 16:27:38 2013 +0200

    [indic] Adjust Sinhala cluster merging under uniscribe

    Similar to 190c8f2b60af0851bf692f653c1604cfbf0561a5 but for
    Sinhala.

 src/hb-ot-shape-complex-indic.cc | 23 ++++++++++++++++-------
 1 file changed, 16 insertions(+), 7 deletions(-)

commit 3c3df9cba13fec2c35e0e7ae587d9699ac0c37f5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 17 13:58:31 2013 +0200

    [otlayout] Minor

 src/hb-ot-layout-gsubgpos-private.hh | 62
 +++++++++++++++++++-----------------
 1 file changed, 33 insertions(+), 29 deletions(-)

commit 6cc136f7531a45e71ea08a7dc8a2187172cb813d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 17 13:55:48 2013 +0200

    [otlayout] Minor

 src/hb-ot-layout-gsubgpos-private.hh | 14 ++++++--------
 1 file changed, 6 insertions(+), 8 deletions(-)

commit ba6ddc421e5e440231c2ece2db1363f8e6d2ecbf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 17 13:52:51 2013 +0200

    [otlayout] Increase MAX_CONTEXT_LENGTH

    It's cheap.

 src/hb-ot-layout-common-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e714fe6d6a2633494cb1fa7170a32ca2638cbb51
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 17 13:49:51 2013 +0200

    [otlayout] Simplify ligate_input()

    Shouldn't change behavior at all, but is faster / more robust.

 src/hb-ot-layout-gsub-table.hh       | 16 +++++++---------
 src/hb-ot-layout-gsubgpos-private.hh | 17 +++++++----------
 2 files changed, 14 insertions(+), 19 deletions(-)

commit 6b2abdcd203204131f3017ca85c91de9d43959cd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 17 13:15:43 2013 +0200

    [indic] Improve clusters in presence of reph

 src/hb-ot-shape-complex-indic.cc | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

commit 42d0f55cbc68285e22d713df7062e520af708c82
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 17 13:05:05 2013 +0200

    [indic] Apply calt,clig in the same stage as presentation features

    Whic means these twp are applied per-syllable now.  Apparently
    in some Khmer fonts the clig interacts with presentation features.

    Test case: U+1781,U+17D2,U+1789,U+17BB,U+17C6 with Mondulkiri-R.ttf
    should produce one big ligature.

 src/hb-ot-shape-complex-indic.cc | 4 ++++
 1 file changed, 4 insertions(+)

commit ae9a5834df477006686421d494b55a1569789327
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 17 12:24:55 2013 +0200

    [indic] Fix pref vs blwf interaction

    If a glyph can be both blwf and pref, we were wrongly sorting it
    in the post position instead of below position.

 src/hb-ot-shape-complex-indic.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit c7dacac02cfe8526eaf131ce6c5e7b6df7ca2ccd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 17 12:20:24 2013 +0200

    [indic] Don't apply blwf before base under old-spec mode

    Test case: U+09AC,U+09CD,U+09A6 with Lohit-Bengali 2.5.3.

 src/hb-ot-shape-complex-indic.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit da72042c52ed3cc0ee19d3eabb8db7c7dd34d3ed
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 17 12:01:50 2013 +0200

    [otlayout] Fix up recent Context matching change

    Commit 6b65a76b40522a4f57a6fedcbdfc5a4d736f1d3c.  "end" was becoming
    negative.  Was trigerred by Lohit-Kannada 2.5.3 and the sequence:
    U+0CB0,U+200D,U+0CBE,U+0CB7,U+0CCD,U+0C9F,U+0CCD,U+0CB0,U+0C97,U+0CB3
    Two glyphs were being duplicated.

 src/hb-buffer.cc                     | 7 ++++++-
 src/hb-ot-layout-gsubgpos-private.hh | 3 ++-
 2 files changed, 8 insertions(+), 2 deletions(-)

commit 1a7de1ba9876b0554c758acbc6459366d9d98a5d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 16 19:55:06 2013 +0200

    [indic] Improve Avagraha support in machine

 src/hb-ot-shape-complex-indic-machine.rl | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit 3756efaf4e14ec3b5b1def700a1b5985f162372b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 16 19:06:29 2013 +0200

    [indic] Misc harmless fixes!

    First, we were abusing OT_VD instead of OT_A.  Fix that
    but moving OT_A in the grammar where it belongs (which
    is different from what the spec says).

    Also, only allow medial consonants after all other
    consonants.  This doesn't affect any current character.

    Finally, fix Halant attachment in presence of medial
    consonants.  Again, this currently doesn't affect any
    sequence.

    I lied.  There's Gurmukhi U+0A75 which is Consonant_Medial.
    Uniscribe allows one of those in each of these positions:
    before matras, after matras and before syllable modifiers,
    and after syllable modifiers!  We currently just allow
    unlimited numbers of it, before matras.

 src/hb-ot-shape-complex-indic-machine.rl |  8 ++++----
 src/hb-ot-shape-complex-indic-private.hh |  2 +-
 src/hb-ot-shape-complex-indic.cc         | 11 ++++++-----
 3 files changed, 11 insertions(+), 10 deletions(-)

commit c52ddab72e025d1bee8274c8f3416208b12f68f1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 16 13:42:38 2013 +0200

    [arabic] Make ZWJ prevent ligatures instead of facilitating it

    Unicode 6.2.0 Section 16.2 / Figure 16.3 says:

    "For backward compatibility, between Arabic characters a ZWJ acts just
    like the sequence <ZWJ, ZWNJ, ZWJ>, preventing a ligature from forming
    instead of requesting the use of a ligature that would not normally be
    used. As a result, there is no plain text mechanism for requesting the
    use of a ligature in Arabic text."

    As such, we flip internal zwj to zwnj flags for GSUB matching, which
    means it will block ligation in all features, unless the font
    explicitly matches U+200D glyph.  This doesn't affect joining
    behavior.

 src/hb-ot-layout-private.hh       |  6 ++++++
 src/hb-ot-shape-complex-arabic.cc | 18 ++++++++++++++++++
 2 files changed, 24 insertions(+)

commit 1a31f9f820c4538015ddaf4ca2b790649c5997ed
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 16 13:42:18 2013 +0200

    [otlayout] Minor

 src/hb-ot-layout-private.hh | 23 +++++++++++++++--------
 1 file changed, 15 insertions(+), 8 deletions(-)

commit 28d5daec948e1a24f13e492ce301aeb9abff37c8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 16 12:32:12 2013 +0200

    [indic] More granular post-base cluster merging!

 src/hb-ot-shape-complex-indic.cc | 45
 ++++++++++++++++++++++++++++++++++------
 1 file changed, 39 insertions(+), 6 deletions(-)

commit 9cb59d460e80d769087045535a8d54ec9ed7985c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 16 11:34:07 2013 +0200

    [indic] Fix cluster merging of left matras

    The merge_clusters there was totally broken.

 src/hb-ot-shape-complex-indic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 190c8f2b60af0851bf692f653c1604cfbf0561a5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 16 11:33:18 2013 +0200

    [indic] Adjust cluster merging under uniscribe mode for Tamil

    Apparently Uniscribe Tamil shaper doesn't ship chubby clusters
    for Tamil.  Adjust to that.

 src/hb-ot-shape-complex-indic.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 5c558877da5db8c734ba072f01e5e4797876619c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 16 11:14:15 2013 +0200

    [indic] Allow up to two syllable modifiers

    Bug 70509 - Candrabindu+Visarga doesn't work in Devanagari
    https://bugs.freedesktop.org/show_bug.cgi?id=70509

    We categorize both bindus and visarga as syllable-modifiers.
    OT spec doesn't actually say what characters go in the syllable
    modifier category, and allows one.  We just allow up to two now.

    Test case: U+0930,U+0941,U+0901,U+0903

    Uniscribe currently doesn't support that and produces a
    dotted circle.

 src/hb-ot-shape-complex-indic-machine.rl                                |
 2 +-
 .../texts/in-tree/shaper-indic/indic/script-devanagari/misc/misc.txt    |
 1 +
 2 files changed, 2 insertions(+), 1 deletion(-)

commit f5299eff5c0065d6329cd536c0ac339abea085b0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 15 18:13:07 2013 +0200

    [indic] Simplify reph logic

    *Shouldn't* break anything.

 src/hb-ot-shape-complex-indic.cc | 11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)

commit 65a929b1c033e91919c931b495a775f76b6dcbb3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 15 18:08:05 2013 +0200

    [indic] If Malayalam dot-reph formed a ligature, don't move it

    Rachana-0.6 implements dot-reph by ligation, so we shouldn't move it.
    Uniscribe doesn't either.  Test case:

      U+0D4E,U+0D1A,U+0D4D,U+0D1A,U+0D4D

 src/hb-ot-shape-complex-indic.cc                   | 23
 ++++++++++++++++------
 .../indic/script-malayalam/misc/dot-reph.txt       |  3 +++
 2 files changed, 20 insertions(+), 6 deletions(-)

commit a01cbf6cbe0021722302cfb58fb638a0a2427b26
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 15 16:37:53 2013 +0200

    [indic] Harmless reordering of Khmer features!

 src/hb-ot-shape-complex-indic.cc | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

commit c46f406973024051877e867b93614942ff80c107
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 15 16:24:21 2013 +0200

    [tests] Remove Myanmar micro-font and test

 .../sha1sum/ceadd106a8205214fbe7337ef9de32a862b59762.ttf | Bin 3040 ->
 0 bytes
 test/shaping/tests/context-matching.tests                |   1 -
 2 files changed, 1 deletion(-)

commit eb10233b267909dee0245f126000e117f3b21c35
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 15 15:26:44 2013 +0200

    [indic] Apply 'kern' for all scripts except for Khmer in Uniscribe
    mode

    Seems to better match Uniscribe.

    Note: NotoSansTelugu-Regular has kern feature, so this fixes most
    of the
    positioning failures there, except for the kern pairs blocked by a
    (non-)joiner, in which case we (correctly) kern, but Uniscribe
    doesn't.

 src/hb-ot-shape-complex-indic.cc | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

commit 30145272a7d428bc62a903388bd7be43f4da7fc3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 15 13:47:27 2013 +0200

    [indic] Don't apply presentation features across syllables

    More like Uniscribe...  We still allow user-defined features to
    work across syllables, but not pres,blws,abs,psts,etc.

    This "regressed" Sinhala numbers by 11.  These are cases were
    there's Consonant followed by Ra,Halant,ZWJ at the of text.
    The Ra,Halant,ZWJ ends up forming reph, which is wrong...
    But before we were also ligating that reph with the previous
    consonant.  That's even more wrong.  That's also what Uniscribe
    does.

    Current numbers:

    BENGALI: 353732 out of 354188 tests passed. 456 failed (0.128745%)
    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: 951030 out of 951913 tests passed. 883 failed (0.0927606%)
    KHMER: 299070 out of 299124 tests passed. 54 failed (0.0180527%)
    MALAYALAM: 1048140 out of 1048334 tests passed. 194 failed
    (0.0185056%)
    ORIYA: 42320 out of 42329 tests passed. 9 failed (0.021262%)
    SINHALA: 271655 out of 271847 tests passed. 192 failed (0.070628%)
    TAMIL: 1091753 out of 1091754 tests passed. 1 failed (9.15957e-05%)
    TELUGU: 970555 out of 970573 tests passed. 18 failed (0.00185457%)

 src/hb-ot-shape-complex-indic.cc                    | 21
 +++++++++++++++++----
 .../shaper-indic/indic/script-sinhala/misc/misc.txt |  1 +
 2 files changed, 18 insertions(+), 4 deletions(-)

commit 3c7b3641cfb00f2c4dcc0768b9854e4f4410d15f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 15 11:21:01 2013 +0200

    [indic] Handle Avagraha

    It can come either at the end(ish!) of the syllable, or independently.
    When independent, it accepts a few bits and pieces.

 src/hb-ot-shape-complex-indic-machine.rl                   |  5 ++++-
 src/hb-ot-shape-complex-indic-private.hh                   |  5 +++--
 src/hb-ot-shape-complex-indic.cc                           | 14
 +++++++++++++-
 .../shaper-indic/indic/script-devanagari/misc/misc.txt     |  1 +
 .../in-tree/shaper-indic/indic/script-telugu/misc/misc.txt |  1 +
 5 files changed, 22 insertions(+), 4 deletions(-)

commit 5e7432b8172473aa4dda3d51a79add9e97c2d2c1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 15 12:28:23 2013 +0200

    [myanmar] Apply abvm/blwm

 src/hb-ot-shape-complex-myanmar.cc | 10 ++++++++++
 1 file changed, 10 insertions(+)

commit 8acbb6be271817c12d2ee0066b355e2fb0f9a934
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 15 12:15:49 2013 +0200

    [indic] Some scripts like blwf applied to pre-base characters

    ...while some don't!

    Improved Bengali, Devanagari, Gurmukhi, Malayalam.

    Updated numbers:

    BENGALI: 353732 out of 354188 tests passed. 456 failed (0.128745%)
    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: 951030 out of 951913 tests passed. 883 failed (0.0927606%)
    KHMER: 299070 out of 299124 tests passed. 54 failed (0.0180527%)
    MALAYALAM: 1048134 out of 1048334 tests passed. 200 failed
    (0.0190779%)
    ORIYA: 42320 out of 42329 tests passed. 9 failed (0.021262%)
    SINHALA: 271666 out of 271847 tests passed. 181 failed (0.0665816%)
    TAMIL: 1091753 out of 1091754 tests passed. 1 failed (9.15957e-05%)
    TELUGU: 970555 out of 970573 tests passed. 18 failed (0.00185457%)

 src/hb-ot-shape-complex-indic.cc | 33 ++++++++++++++++++++-------------
 1 file changed, 20 insertions(+), 13 deletions(-)

commit 2c85a3df0983f28aed77a0ea3bf2417ef65d4b84
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 14 19:41:52 2013 +0200

    Fix issue with automake

 test/shaping/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6b65a76b40522a4f57a6fedcbdfc5a4d736f1d3c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 14 18:51:39 2013 +0200

    [otlayout] Fix (Chain)Context recursion!

    Previously we only supported recursive sublookups with
    ascending indices.  We were also not correctly handling
    non-1-to-1 recursed lookups.

    Fix all that!

    Fixes the three tests in test/shaping/tests/context-matching.tests,
    which were derived from NotoSansBengali and NotoSansDevanagari
    among others.

 src/hb-buffer-private.hh             |   4 +
 src/hb-buffer.cc                     |  46 ++++++++++
 src/hb-ot-layout-common-private.hh   |   1 +
 src/hb-ot-layout-gsub-table.hh       |   1 +
 src/hb-ot-layout-gsubgpos-private.hh | 157
 +++++++++++++++++------------------
 5 files changed, 127 insertions(+), 82 deletions(-)

commit 841e20d083aec8d814cd8d90aa6ab60127c0d1f2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 14 18:47:51 2013 +0200

    Add test suite for shaping results

    The new test suite runs tests included under
    hb/test/shaping/tests/*.tests, which themselves reference
    font files stored by sha1sum under hb/test/shaping/fonts/sha1sum.
    The fonts are produced using a subsetter to only include glyphs
    needed to run the test.

    Four initial tests are added for (Chain)Context matching,
    of which three currently fail.

 test/shaping/Makefile.am                           |  10 +++++-
 .../4cce528e99f600ed9c25a2b69e32eb94a03b4ae8.ttf   | Bin 0 -> 1320 bytes
 .../ceadd106a8205214fbe7337ef9de32a862b59762.ttf   | Bin 0 -> 3040 bytes
 .../d629e7fedc0b350222d7987345fe61613fa3929a.ttf   | Bin 0 -> 1768 bytes
 .../f499fbc23865022234775c43503bba2e63978fe1.ttf   | Bin 0 -> 3564 bytes
 test/shaping/run-tests.sh                          |  34
 +++++++++++++++++++++
 test/shaping/tests/MANIFEST                        |   1 +
 test/shaping/tests/context-matching.tests          |   4 +++
 8 files changed, 48 insertions(+), 1 deletion(-)

commit e2dab69291a5d86fc90a8c273c458c16574eafb5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 14 16:44:44 2013 +0200

    Minor

 test/shaping/hb_test_tools.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 4e6e53db5da0a5da87ae732c3f9d01babf4ae6c2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 14 13:06:36 2013 +0200

    [otlayout] "Minor"

 src/hb-ot-layout.cc | 1 +
 1 file changed, 1 insertion(+)

commit 9326d48e4309901e7e0b0e15230936a21ee3df72
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 10 20:04:42 2013 +0200

    Don't use g_mapped_file_unref()

    Was introduced in glib 2.22.

 src/test-buffer-serialize.cc | 2 +-
 src/test-size-params.cc      | 2 +-
 src/test-would-substitute.cc | 2 +-
 src/test.cc                  | 2 +-
 util/options.cc              | 4 ++--
 5 files changed, 6 insertions(+), 6 deletions(-)

commit e152d1a27891bd1d9d46a9c028c026843bad384a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 3 15:09:37 2013 -0400

    0.9.22

 NEWS         | 13 +++++++++++++
 configure.ac |  2 +-
 2 files changed, 14 insertions(+), 1 deletion(-)

commit 27674b4bb351e501373bd9994e4ba6546e465cf7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 3 14:54:50 2013 -0400

    [OTLayout] Protect against out-of-range lookup indices

    Filter them out when compiling map.

 src/hb-ot-layout.cc | 17 +++++++++++++++++
 src/hb-ot-layout.h  |  5 +++++
 src/hb-ot-map.cc    |  8 +++++++-
 3 files changed, 29 insertions(+), 1 deletion(-)

commit 6b4fdded94b7efb96c6e41cca4350878ed859ff1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 30 13:48:19 2013 -0400

    Update git.mk

 git.mk | 20 +++++++++++++-------
 1 file changed, 13 insertions(+), 7 deletions(-)

commit 2a2b5b89ef3a606ba2996bc89fd1c577a6c98f40
Author: M1cha <sigmaepsilon92@gmail.com>
Date:   Mon Sep 30 08:55:52 2013 +0000

    Cleanup Android.mk
    - use common src files for both static and shared libs
    - remove empty LOCAL_SHARED_LIBRARIES

 Android.mk | 58
 +++++++++++++++++-----------------------------------------
 1 file changed, 17 insertions(+), 41 deletions(-)

commit 622bc3d829cab84c3a4148b88f2c91fee491ef39
Merge: 3d2c4f0c d583df1e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Sep 29 13:31:58 2013 -0700

    Merge pull request #4 from amarullz/master

    Add build static library on Android.mk

commit 3d2c4f0c2ff8fab4262988aad65b170e5b479b20
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 27 17:06:29 2013 -0400

    Fix hiding of default_ignorables if font doesn't have space glyph

    Based on patch from Jonathan Kew.  See discussion on the list.

 src/hb-ot-shape.cc | 40 ++++++++++++++++++++++++++++++----------
 1 file changed, 30 insertions(+), 10 deletions(-)

commit d583df1e78003f8f1039ad72331bf877b13d1ae5
Author: Ahmad Amarullah <support@amarullz.com>
Date:   Fri Sep 27 19:04:32 2013 +0700

    Add build static library on Android.mk

    Use UCDN instead ICU
    HAVE Freetype

 Android.mk | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 50 insertions(+)

commit 078de49ca10285f6cd1452abd40f831a17af5d1a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 26 18:26:43 2013 -0400

    [util] Don't use g_array_unref()

    Was introduced in glib 2.22.

 util/view-cairo.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 48360ec03b225dfec5f90bc5cb93122203d2dd6b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 26 16:48:42 2013 -0400

    Bug 68990 - test-common fails on i686-linux

    Fix use-after-end-of-scope.

 src/hb-common.cc | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit b61f97d544ce43d85f5fe93e682c324e042c0770
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 16 22:07:22 2013 -0400

    0.9.21

 NEWS         | 12 ++++++++++++
 configure.ac |  2 +-
 2 files changed, 13 insertions(+), 1 deletion(-)

commit 2af826296315d89f3a433952903c5968e56044ea
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 16 21:49:56 2013 -0400

    Improve library checks

 src/Makefile.am      |  1 +
 src/check-defs.sh    | 44 ++++++++++++++++++++++++++++++++++++++++++++
 src/check-symbols.sh | 37 ++++++++++++-------------------------
 3 files changed, 57 insertions(+), 25 deletions(-)

commit 882edce48e507a1c76c908ec2db04aac218b67d6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 13 20:36:43 2013 -0400

    [graphite2] Fix include

 src/hb-graphite2.cc | 5 ++---
 src/hb-graphite2.h  | 2 ++
 2 files changed, 4 insertions(+), 3 deletions(-)

commit ace5c7eb4c2302a6a7eb3576e6dbc3bc026e569c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 13 20:34:42 2013 -0400

    [introspection] hb-ft annotations

 src/hb-face.cc |  2 +-
 src/hb-ft.cc   | 30 +++++++++++++++++++++++++++++-
 2 files changed, 30 insertions(+), 2 deletions(-)

commit a8949df48780e680e03b9afbbafb3628a0acef52
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 13 20:23:51 2013 -0400

    [introspection] Annotate Unicode / font callbacks

    Should move these out of the public header...

    We're "clean" of introspection warnings now.  Remaining ones are about
    graphite2 / freetype types not being introspectable.

 src/hb-blob.cc   |   4 +-
 src/hb-face.cc   |   2 +-
 src/hb-font.cc   |   4 +-
 src/hb-font.h    | 132
 +++++++++++++++++++++++++++++++++++++++++++++++++++++--
 src/hb-unicode.h | 106 ++++++++++++++++++++++++++++++++++++++++----
 5 files changed, 231 insertions(+), 17 deletions(-)

commit 4b011094d5e90cf93df2891e47aeab1bffad5bbf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 13 20:17:42 2013 -0400

    Move code around

    I believe I didn't break anything...

 src/hb-ot-shape.cc | 22 +++++++++++-----------
 1 file changed, 11 insertions(+), 11 deletions(-)

commit 4878db218202ed804c9f76edb7e4aa220de8a8d8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 12 20:56:32 2013 -0400

    Remove contrib/ Python hand-coded binding stuff

    gobject-introspection coming together.

 contrib/README                    |   2 -
 contrib/python/README             |  10 --
 contrib/python/lib/fontconfig.pyx |  47 ---------
 contrib/python/lib/harfbuzz.pyx   | 213
 --------------------------------------
 contrib/python/scripts/hbtestfont | 116 ---------------------
 contrib/python/setup.py           |  39 -------
 6 files changed, 427 deletions(-)

commit e478ebe4d3f74dc271ffe88680fd29f6b1924c93
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 12 20:53:07 2013 -0400

    [introspection] Add sample.py

 src/sample.py | 13 +++++++++++++
 1 file changed, 13 insertions(+)

commit dfdbe7f932daffcf73911ff4e4a36f749164d960
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 12 20:52:20 2013 -0400

    [introspection] Make hb_blob_create() introspectable

 src/Makefile.am | 2 ++
 src/hb-blob.cc  | 2 +-
 2 files changed, 3 insertions(+), 1 deletion(-)

commit 085d4291a9f253a4b8e2eec8003ac11d02a9394f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 12 17:14:33 2013 -0400

    [introspection] Disable constructors for now

    Since our types are not associated with their methods, marking
    constructors makes them inaccessible from bindings.  Undo for now.

 src/hb-blob.cc       | 2 +-
 src/hb-buffer.cc     | 2 +-
 src/hb-face.cc       | 2 +-
 src/hb-font.cc       | 4 ++--
 src/hb-set.cc        | 2 +-
 src/hb-shape-plan.cc | 2 +-
 src/hb-unicode.cc    | 2 +-
 7 files changed, 8 insertions(+), 8 deletions(-)

commit 6c48f20eea22c6e686416ab4ec8388be3e8cd0b5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 9 15:43:10 2013 -0400

    [otlayout] Add structs for JSTF table

 src/Makefile.am                |   1 +
 src/hb-ot-head-table.hh        |   2 +-
 src/hb-ot-hhea-table.hh        |   2 +-
 src/hb-ot-hmtx-table.hh        |   2 +-
 src/hb-ot-layout-gdef-table.hh |   2 +-
 src/hb-ot-layout-gpos-table.hh |   2 +-
 src/hb-ot-layout-gsub-table.hh |   2 +-
 src/hb-ot-layout-jstf-table.hh | 229
 +++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-layout.cc            |   1 +
 src/hb-ot-layout.h             |   1 +
 src/hb-ot-maxp-table.hh        |   2 +-
 src/hb-ot-name-table.hh        |   2 +-
 src/main.cc                    |   2 +-
 13 files changed, 241 insertions(+), 9 deletions(-)

commit 70303cf23b22647bf641be22c8650310128322a9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 6 17:35:57 2013 -0400

    [docs/introspection] Some more annotations

 src/hb-common.cc    | 151
 ++++++++++++++++++++++++++++++++++++++++++++++++++--
 src/hb-font.cc      |  16 +++---
 src/hb-version.h.in |  19 -------
 3 files changed, 155 insertions(+), 31 deletions(-)

commit 288f2899979bcc9e68f8115cb76e3271ed0e17bc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 6 15:40:22 2013 -0400

    [docs/introspection] More annotations

 src/hb-blob.cc             |  63 +++---
 src/hb-buffer-serialize.cc |  63 ++++++
 src/hb-buffer.cc           | 307 ++++++++++++++++++++++++++-
 src/hb-face.cc             | 171 +++++++++++++++
 src/hb-font-private.hh     |   4 +-
 src/hb-font.cc             | 504
 ++++++++++++++++++++++++++++++++++++++++++++-
 src/hb-set.cc              |   2 +-
 src/hb-shape-plan.cc       | 104 ++++++++++
 src/hb-shape.cc            |  56 +++++
 src/hb-unicode.cc          | 128 ++++++++++++
 10 files changed, 1355 insertions(+), 47 deletions(-)

commit 17905c54f1bab9e6dfe13f59f5ec208de12832f7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 6 16:57:01 2013 -0400

    [introspection] Work around g-i limitation with hb_language_t

 src/hb-gobject-structs.cc | 15 +++++++++++----
 src/hb-gobject-structs.h  |  8 ++++++++
 2 files changed, 19 insertions(+), 4 deletions(-)

commit cd361c3cbe4a288e3019b9a029f44e4c5f24436c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 6 16:20:21 2013 -0400

    Minor change to hb_language_t

    Let me know if this breaks anyone's anything.

 src/hb-common.cc | 2 +-
 src/hb-common.h  | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 20cbc1f8eb0811e6cefa3be3550e80df9c372782
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 6 15:29:22 2013 -0400

    Annotate hb-set a bit; add HB_SET_VALUE_INVALID

 src/hb-set-private.hh |  20 +++--
 src/hb-set.cc         | 244
 ++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-set.h          |   2 +
 src/hb-version.h.in   |   6 +-
 test/api/test-set.c   |  26 +++---
 5 files changed, 276 insertions(+), 22 deletions(-)

commit c44b81833d5bfb9a926d348a76463314c3ec2018
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 6 15:13:16 2013 -0400

    Whitespace

 src/hb-buffer.cc | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit ae9dc717d37d58efdd3fabbe4a9c3c2bf9dc3568
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 5 16:40:37 2013 -0400

    [gtk-doc] Pass source files to gtk-doc

 docs/reference/Makefile.am | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 5f512017ba615ba6ac8e5da2ea0c57a72db2c26b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 4 18:28:39 2013 -0400

    [docs] Document a few symbols

 src/hb-blob.cc      | 160
 +++++++++++++++++++++++++++++++++++++++++++++++++++-
 src/hb-buffer.cc    |  78 ++++++++++++++++++++++++-
 src/hb-version.h.in |  17 ++++++
 3 files changed, 251 insertions(+), 4 deletions(-)

commit e0dbf99b4497be305d689a528282fd37214e7f1c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 5 16:00:47 2013 -0400

    [introspection] Pass source files to scanner

 src/Makefile.am | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 5a5350b39b81e0128d36ebc81307a6d698a4dc50
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 3 20:11:01 2013 -0400

    Revert "Round when scaling values"

    This reverts commit 10f964623f003c70f6bdd33423420abda3820ce0.

    See discussion with Khaled Hosny on mailing list.  In short, since
    integers here can be negative, and int division is "round towards
    zero", proper rounding should take sign into account.  Just skip
    doing it again, has been serving us well before.

 TODO                   | 2 ++
 src/hb-font-private.hh | 6 +-----
 2 files changed, 3 insertions(+), 5 deletions(-)

commit 74ff41c3a573bdf74b60623065eb92a49f055893
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 3 20:09:14 2013 -0400

    Minor

 Makefile.am | 2 ++
 1 file changed, 2 insertions(+)

commit 63dd4b0ac2076fe9cc3dfe5d31ef3616d4ed01e5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 3 20:01:40 2013 -0400

    [gtk-doc] Remove hack for deleting tmpl/

    This was introduced in 029f46bde7e39094d3decb46525e91a97c5cc02c
    and was in fact a bug in gtk-doc master:

      https://bugzilla.gnome.org/show_bug.cgi?id=707426

 docs/reference/Makefile.am | 5 -----
 1 file changed, 5 deletions(-)

commit 213001aa99003422199245e96878f9fe348c55b4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 3 20:00:16 2013 -0400

    [build] Fix EXTRA_DIST

    I was under the impression that EXTRA_DISTs will happen regardless of
    automake conditionals.  Apparently I was wrong.

 src/Makefile.am | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit 1e994a8fcc94dfea42a6cbfe23a401142d79a1a6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 3 18:11:47 2013 -0400

    [gtk-doc] Copy makefile

 autogen.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 81a007ffad683e53f12093a0c9e30112106f415d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 30 19:45:13 2013 -0400

    [TODO] Update

 TODO | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

commit a2a28235e8131a1e1d4b8c3d0933df5cf056bbc6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 30 19:38:47 2013 -0400

    [gtk-doc] Generate version.xml from configure

    Even though this is not what autoconf recommends, it reduces doc
    rebuilds when version doesn't change but configure changes.

 configure.ac                  |  1 +
 docs/reference/Makefile.am    | 11 +++--------
 docs/reference/version.xml.in |  1 +
 3 files changed, 5 insertions(+), 8 deletions(-)

commit ac1b723917d9b8f247a350f8d3e1bc5d1e472073
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 30 19:32:10 2013 -0400

    Remove hb-old and hb-icu-le test shapers

    They've been disabled for a while and no one cared.  We're past
    the point to need them for testing, and if we ever need to
    resurrect them again, well, they're in git graveyard somewhere.

 configure.ac                           |   23 +-
 src/Makefile.am                        |   28 +-
 src/hb-icu-le.cc                       |  265 --
 src/hb-icu-le/COPYING                  |    2 -
 src/hb-icu-le/FontTableCache.cpp       |   91 -
 src/hb-icu-le/FontTableCache.h         |   48 -
 src/hb-icu-le/Makefile.am              |   25 -
 src/hb-icu-le/PortableFontInstance.cpp |  275 --
 src/hb-icu-le/PortableFontInstance.h   |  119 -
 src/hb-icu-le/README                   |    3 -
 src/hb-icu-le/cmaps.cpp                |  200 --
 src/hb-icu-le/cmaps.h                  |   87 -
 src/hb-icu-le/letest.h                 |   63 -
 src/hb-icu-le/license.html             |   51 -
 src/hb-icu-le/sfnt.h                   |  453 ---
 src/hb-old.cc                          |  410 ---
 src/hb-old/COPYING                     |   24 -
 src/hb-old/Makefile.am                 |   56 -
 src/hb-old/README                      |    7 -
 src/hb-old/harfbuzz-arabic.c           | 1150 ------
 src/hb-old/harfbuzz-buffer-private.h   |  107 -
 src/hb-old/harfbuzz-buffer.c           |  383 --
 src/hb-old/harfbuzz-buffer.h           |  102 -
 src/hb-old/harfbuzz-external.h         |  106 -
 src/hb-old/harfbuzz-gdef-private.h     |  135 -
 src/hb-old/harfbuzz-gdef.c             | 1163 ------
 src/hb-old/harfbuzz-gdef.h             |  140 -
 src/hb-old/harfbuzz-global.h           |  125 -
 src/hb-old/harfbuzz-gpos-private.h     |  729 ----
 src/hb-old/harfbuzz-gpos.c             | 6094
 --------------------------------
 src/hb-old/harfbuzz-gpos.h             |  155 -
 src/hb-old/harfbuzz-greek.c            |  447 ---
 src/hb-old/harfbuzz-gsub-private.h     |  483 ---
 src/hb-old/harfbuzz-gsub.c             | 4329 -----------------------
 src/hb-old/harfbuzz-gsub.h             |  148 -
 src/hb-old/harfbuzz-hangul.c           |  268 --
 src/hb-old/harfbuzz-hebrew.c           |  187 -
 src/hb-old/harfbuzz-impl.c             |   84 -
 src/hb-old/harfbuzz-impl.h             |  135 -
 src/hb-old/harfbuzz-indic.cpp          | 1868 ----------
 src/hb-old/harfbuzz-khmer.c            |  642 ----
 src/hb-old/harfbuzz-myanmar.c          |  511 ---
 src/hb-old/harfbuzz-open-private.h     |  102 -
 src/hb-old/harfbuzz-open.c             | 1433 --------
 src/hb-old/harfbuzz-open.h             |  288 --
 src/hb-old/harfbuzz-shaper-all.cpp     |   37 -
 src/hb-old/harfbuzz-shaper-private.h   |  159 -
 src/hb-old/harfbuzz-shaper.cpp         |  996 ------
 src/hb-old/harfbuzz-shaper.h           |  265 --
 src/hb-old/harfbuzz-stream-private.h   |   81 -
 src/hb-old/harfbuzz-stream.c           |  114 -
 src/hb-old/harfbuzz-stream.h           |   51 -
 src/hb-old/harfbuzz-tibetan.c          |  249 --
 src/hb-old/harfbuzz.h                  |   38 -
 54 files changed, 2 insertions(+), 25532 deletions(-)

commit b94243d6a9457864ad8ef3ad47ad01985b138862
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 30 18:41:33 2013 -0400

    [g-i] Rename library from harfbuzz to HarfBuzz

 src/Makefile.am | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit f730b5d1e2369762952481f1a2d3db26a2b48015
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 29 15:53:33 2013 -0400

    0.9.20

 NEWS         | 48 ++++++++++++++++++++++++++++++++++++++++++++++++
 configure.ac |  2 +-
 2 files changed, 49 insertions(+), 1 deletion(-)

commit b0e03508bad04d7dcf2c50ac81f6261425b34c5f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 29 15:56:32 2013 -0400

    Dist with gobject and introspection enabled

 Makefile.am | 2 ++
 1 file changed, 2 insertions(+)

commit e4ce6745e15eab33ed693874e7a56981f4d6f79a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 29 15:56:16 2013 -0400

    [gtk-doc] Fix build without gobject

 docs/reference/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 263372f15ffdf4c0e4386133f64ff389ba73de33
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 28 13:43:54 2013 -0400

    Remove gtk-doc.make

    It's copied by gtk-docize.

 gtk-doc.make | 302
 -----------------------------------------------------------
 1 file changed, 302 deletions(-)

commit 79d754efeef89543d51775b110e8bd49cf7e699b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 28 13:43:35 2013 -0400

    Fix build

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 71ef22b04d466803076af1da6763fecab95ce5bb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 28 12:52:55 2013 -0400

    Turn hb-gobject, and introspection off by default

    Also enable bootstrapping without them.

 configure.ac    | 39 ++++++++++++++++++++++++++++++++++-----
 src/Makefile.am |  5 +++--
 2 files changed, 37 insertions(+), 7 deletions(-)

commit d8f507099b9ae5f0c643fb8dddbb069df6f62a94
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 26 21:26:24 2013 -0400

    Hookup harfbuzz-gobject to introspection

 src/Makefile.am | 16 +++++++++++++---
 1 file changed, 13 insertions(+), 3 deletions(-)

commit 71439a8c7ae9df25193bc3ad0f203117d2884a19
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 26 20:56:58 2013 -0400

    [gobject] Flesh out hb-gobject

    Move it to new harfbuzz-gobject library.  Implement enums and
    boxed types for object-types.  Still have to do boxed types for
    value types.

 configure.ac                         | 12 ++++-
 docs/reference/Makefile.am           | 12 ++++-
 docs/reference/harfbuzz-docs.xml     |  3 ++
 docs/reference/harfbuzz-sections.txt | 48 +++++++++++++++++++-
 src/Makefile.am                      | 48 +++++++++++++-------
 src/harfbuzz-gobject.pc.in           | 12 +++++
 src/hb-gobject-enums.cc.tmpl         | 11 +++--
 src/hb-gobject-enums.h.tmpl          | 55 +++++++++++++++++++++++
 src/hb-gobject-structs.cc            | 84
 +++++++++++++++++++++++++++-------
 src/hb-gobject-structs.h             | 87
 ++++++++++++++++++++++++++++++++++++
 src/hb-gobject.h                     | 38 ++--------------
 11 files changed, 333 insertions(+), 77 deletions(-)

commit 23027f7611b53b594e4b4008e916e42b5154f6ac
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 22 19:03:21 2013 -0400

    [introspection] Enable gobject-introspection again

 configure.ac    |  7 ++++---
 src/Makefile.am | 49 ++++++++++++++++++++++++++++---------------------
 2 files changed, 32 insertions(+), 24 deletions(-)

commit 757a7a9018577dcc399be03dc45a59589585d2fb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 28 12:35:13 2013 -0400

    [uniscribe] Fixed build with wide chars

    https://github.com/blinkseb/harfbuzz/commit/f65dafa4138e1fb4395bf646fa33bb01a86a7e9a

 src/hb-uniscribe.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 4dc798de19c767b91fd3025c85593fa6809d1340
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 26 20:39:00 2013 -0400

    Add hb-deprecated.h, and rename a couple enum values

    Add deprecated alias for old name.

 src/Makefile.am              |  1 +
 src/hb-buffer.cc             |  4 ++--
 src/hb-buffer.h              |  8 +++----
 src/hb-common.h              |  5 -----
 src/hb-deprecated.h          | 51
 ++++++++++++++++++++++++++++++++++++++++++++
 src/hb.h                     |  1 +
 src/test-buffer-serialize.cc |  2 +-
 test/api/test-buffer.c       |  2 +-
 util/Makefile.am             |  1 +
 util/hb-shape.cc             |  2 +-
 util/options.hh              |  2 +-
 11 files changed, 64 insertions(+), 15 deletions(-)

commit 2e3a07abdf97b0ad2105c3a52f3ff0e0b60b29c4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 26 18:49:07 2013 -0400

    Separate face source code from font

    Makes documentation / introspection easier.

 Android.mk                           |   1 +
 docs/reference/harfbuzz-docs.xml     |   1 +
 docs/reference/harfbuzz-sections.txt |   6 +-
 src/Makefile.am                      |   3 +
 src/hb-face-private.hh               | 108 ++++++++++++
 src/hb-face.cc                       | 311
 +++++++++++++++++++++++++++++++++++
 src/hb-face.h                        | 117 +++++++++++++
 src/hb-font-private.hh               |  67 +-------
 src/hb-font.cc                       | 269 ------------------------------
 src/hb-font.h                        |  75 +--------
 src/hb.h                             |   1 +
 11 files changed, 549 insertions(+), 410 deletions(-)

commit d3490761e11ae308fbd8aaf02059653f579035c5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 26 21:15:29 2013 -0400

    Improve check-includes.sh

 src/check-includes.sh | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

commit 381f2fb5e664715d67ffc9a234b0fd8aa540fada
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 26 19:20:38 2013 -0400

    Minor

 docs/reference/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ac1f09b53e2c5d14c874e4d9f1b25b03ea1d1c44
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 26 18:50:12 2013 -0400

    [gtk-doc] Fix maintainer-clean rule

 docs/reference/Makefile.am | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 38b8b40526a85f33521542e24d1e0c82588efc85
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 27 11:44:09 2013 -0400

    Fix possible snprintf OOM

    https://bugzilla.redhat.com/show_bug.cgi?id=1001645

 src/hb-buffer-serialize.cc | 14 +++++++-------
 src/hb-font-private.hh     |  3 ++-
 src/hb-shape.cc            |  6 +++---
 3 files changed, 12 insertions(+), 11 deletions(-)

commit d22548c0e362cc9447557440af9ecbb11badfa78
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 26 18:46:21 2013 -0400

    [check-*] Minor

 src/check-c-linkage-decls.sh | 4 ++--
 src/check-header-guards.sh   | 4 ++--
 src/check-includes.sh        | 4 ++--
 3 files changed, 6 insertions(+), 6 deletions(-)

commit 029f46bde7e39094d3decb46525e91a97c5cc02c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 26 18:11:07 2013 -0400

    [gtk-doc] Remove tmpl in make maintainer-clean

 docs/reference/Makefile.am | 3 +++
 1 file changed, 3 insertions(+)

commit dddf990c3687a47297eafc82b54fa96842e68003
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 26 17:58:25 2013 -0400

    [git.mk] Update

 git.mk | 17 +++++++++++++----
 1 file changed, 13 insertions(+), 4 deletions(-)

commit 700a15fe4b80da9c67befd85ae10a166f5b65962
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 26 17:49:36 2013 -0400

    Add HB_DISABLE_DEPRECATED

    That moment that you have to accept that you made API mistakes...

 docs/reference/Makefile.am           | 2 +-
 docs/reference/harfbuzz-sections.txt | 8 +++++---
 src/hb-common.h                      | 4 +++-
 3 files changed, 9 insertions(+), 5 deletions(-)

commit ddc456a519a9a59e96f9d7fcad988369e0a8842b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 26 17:34:18 2013 -0400

    [travis] Add graphite2

 .travis.yml | 1 +
 1 file changed, 1 insertion(+)

commit f7c72b42efb8d42859023659fd2e3d589523436d
Author: Anthony Carrico <acarrico@memebeam.org>
Date:   Sun Feb 24 13:00:33 2013 -0500

    [gtk-doc] Initial setup

    Initial setup of gtk-doc. Straight forward setup following the gtk-doc
    instructions. Ignore some troublesome types in src/hb-gobject.h. To
    build use "./autogen.sh --enable-gtk-doc" then "make". Docs are in
    harfbuzz/docs/reference/html/index.html.

 .travis.yml                           |  10 +-
 Makefile.am                           |   7 +-
 autogen.sh                            |   7 +
 configure.ac                          |   7 +-
 docs/Makefile.am                      |   1 +
 docs/reference/Makefile.am            | 109 +++++++++
 docs/reference/harfbuzz-docs.xml      |  61 +++++
 docs/reference/harfbuzz-overrides.txt |   0
 docs/reference/harfbuzz-sections.txt  | 431
 ++++++++++++++++++++++++++++++++++
 gtk-doc.make                          | 302 ++++++++++++++++++++++++
 src/Makefile.am                       |   2 +-
 src/hb-gobject.h                      |   3 +-
 12 files changed, 931 insertions(+), 9 deletions(-)

commit 3409fb1c767118067cf7edfb97068936b6f4b717
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 21 17:22:21 2013 -0400

    [uniscribe] Ask Uniscribe to return shaping results in logical order

    See discussion on the list in the thread "Arabic presentation forms
    and the uniscribe backend".

    Based on patch from Jonathan Kew.

 src/hb-uniscribe.cc | 24 ++++++++++++------------
 1 file changed, 12 insertions(+), 12 deletions(-)

commit 1d05fdd09fa271b641f30a2138171e6fafcd8db7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 20 13:22:21 2013 -0400

    [uniscribe] Print run info

 src/hb-uniscribe.cc | 8 ++++++++
 1 file changed, 8 insertions(+)

commit 3613696b57225111507a3f4263f5fa6937d0bc72
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 12 00:33:28 2013 -0400

    [coretext] Fully support user features

    Based on patch from Jonathan Kew and data from Apple.

    It's not working correctly though, and I suspect I'm hitting a bug in
    CoreText.  When I do this:

    hb-shape /Library/Fonts/Zapfino.ttf ZapfinoZapfino --shaper coretext \
    --features=-liga

    I expect both ligatures to turn off, but only the second one does:

    [Z_a_p_f_i_n_o=0+2333|Z=7+395|a=8+285|p_f=9+433|i=11+181|n=12+261|o=13+250]

    whereas if I disable 'dlig' instead of 'liga', both are turned off.
    Smells...

    Doesn't resolve conflicting feature settings.

 src/hb-coretext.cc  | 446
 +++++++++++++++++++++++++++++++++++++++++++++++-----
 src/hb-uniscribe.cc |   2 +-
 2 files changed, 404 insertions(+), 44 deletions(-)

commit 54e6f6c588a164f7de62ff88b3eff4f25adb8f17
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 9 14:34:54 2013 -0400

    Clean up list of Unicode scripts

    Rename HB_SCRIPT_CANADIAN_ABORIGINAL to HB_SCRIPT_CANADIAN_SYLLABICS
    and a macro for the old name.

 src/hb-common.h                    | 277
 ++++++++++++++++++++-----------------
 src/hb-glib.cc                     |   2 +-
 src/hb-ot-shape-complex-private.hh |   2 +
 src/hb-ucdn.cc                     |   2 +-
 test/api/test-unicode.c            |   2 +-
 5 files changed, 153 insertions(+), 132 deletions(-)

commit 7cd4a715848c44be9aec6b6b622cfc2a60b1a5a9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 9 09:41:48 2013 -0400

    Update TODO

 TODO | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 515a0ac81e531c95b1bb7f1a3c5df73a9e64b14f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 9 09:40:59 2013 -0400

    Fix compiler warning

 src/hb-ot-layout-common-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 10f964623f003c70f6bdd33423420abda3820ce0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 9 09:40:01 2013 -0400

    Round when scaling values

    Doesn't matter for most users since they should be working in a
    fixed sub-pixel scale anyway (ie. 22.10, 26.6, 16.16, etc).

 TODO                   | 2 --
 src/hb-font-private.hh | 6 +++++-
 2 files changed, 5 insertions(+), 3 deletions(-)

commit df8f70ae5de6181d56efa3f076f14e4d52119a5e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 9 09:35:10 2013 -0400

    Minor

 src/hb-font-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ce8badf1808f9fbdd9a22e9215c7475d3afde5ed
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 9 09:31:06 2013 -0400

    Minor

 src/hb-font-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit d71c0df2d17f4590d5611239577a6cb532c26528
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 9 09:28:32 2013 -0400

    Remove vrt2, vkrn, vpal, and valt from default vertical features

    See thread by John Dagget on the list.

 TODO               | 2 --
 src/hb-ot-shape.cc | 9 ---------
 2 files changed, 11 deletions(-)

commit a782a5e9a37c8733ac2830410a514d38635b543a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 7 21:08:54 2013 -0400

    [coretext] Start adding support for features

    Unlike AAT, looks like with CoreText very few OT features can
    be mapped.
    :(

 src/hb-coretext.cc | 65
 +++++++++++++++++++++++++++++++++++++++++++++---------
 1 file changed, 54 insertions(+), 11 deletions(-)

commit bdd8873fd8ae5c794018f6edac242b0a8b62ff31
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 7 17:58:25 2013 -0400

    Revert "[Indic] don't apply 'calt' by default in Indic shaper"

    This reverts commit 952121007c6f6f374e4cf1734ebcfe2d2d71c71c.

    In light of discussion on the mailing list...

 src/hb-ot-shape-complex-indic.cc | 4 ----
 1 file changed, 4 deletions(-)

commit 9a175914d72187d0c3f50ddad50c9569649c3072
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 7 17:26:13 2013 -0400

    [uniscribe] Support feature ranges

    As Khaled pointed out, right now setting any features, turns kern
    and possibly other features off.

 src/hb-uniscribe.cc | 232
 ++++++++++++++++++++++++++++++++++++++++++++--------
 1 file changed, 199 insertions(+), 33 deletions(-)

commit 627af695e48ef10b6e634c34b723f7e7013467f6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 6 16:53:56 2013 -0400

    More git.mk updates

 git.mk | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 722252743d59e4cd53cb71720d823ea00b708ad8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 6 15:19:23 2013 -0400

    Update git.mk

 git.mk | 37 +++++++++++++++++++++++--------------
 1 file changed, 23 insertions(+), 14 deletions(-)

commit 38d5c58d23fce38221689cda98cea1c3e42ed615
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 6 14:45:36 2013 -0400

    [uniscribe] Half-support user features

    Turning features on globally works now.

 src/hb-uniscribe.cc | 54
 ++++++++++++++++++++++++++++++++++++++++++-----------
 1 file changed, 43 insertions(+), 11 deletions(-)

commit 639afdc690c681a302080239a1967ce735ba5be5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 6 14:28:12 2013 -0400

    Minor

 src/hb-private.hh | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)

commit 952121007c6f6f374e4cf1734ebcfe2d2d71c71c
Author: Jonathan Kew <jfkthame@gmail.com>
Date:   Tue Aug 6 10:36:14 2013 -0400

    [Indic] don't apply 'calt' by default in Indic shaper

 src/hb-ot-shape-complex-indic.cc | 4 ++++
 1 file changed, 4 insertions(+)

commit 625678436c29100eef82d87e635b251030a18f60
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 5 22:44:18 2013 -0400

    Fix glyph closure with class==0

    As reported by cibu.  Untested.

 src/hb-ot-layout-common-private.hh | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

commit 580d5eb93af5bbbc64994b626d5e011e2c256d74
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 4 16:55:21 2013 -0400

    Don't apply 'dlig' by default

    Windows 8 doesn't, and the spec will be fixed.

 src/hb-ot-shape-complex-arabic.cc | 1 -
 1 file changed, 1 deletion(-)

commit 48382e2f41499a91181bea0acc5792989d2485bb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 30 18:25:39 2013 -0400

    Minor

 src/hb-ot-layout-common-private.hh | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit c461371419d186811d4bfc768e26535f48a807f4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 30 14:48:23 2013 -0400

    [CoreText] Don't leak the CTLine object (and everything that hangs
    off it)

    Patch from Jonathan Kew.

 src/hb-coretext.cc | 2 ++
 1 file changed, 2 insertions(+)

commit 5fbc952524ac8840f007dc0136823a4ab6e25f70
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 29 14:34:40 2013 -0400

    Fix glyph name printing in hb-ot-shape-closure

 util/hb-ot-shape-closure.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6fadd9dd7cc220f131c29946285831635afc8044
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 26 10:33:06 2013 -0400

    Apply 'mark' to Myanmar

    According to Andrew Glass: "The issue with Myanmar <mark> feature was
    fixed via a servicing patch as soon as Windows 8 became available."

 src/hb-ot-shape-complex-myanmar.cc | 11 -----------
 1 file changed, 11 deletions(-)

commit 86522e493d071f395b5abf64289232bf8867ac29
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 22 19:07:53 2013 -0400

    Fix glyph closure recursion!

 src/hb-ot-layout-gsubgpos-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 74439d0aa10184451adc6c6469f5119be352ecbb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 22 19:02:29 2013 -0400

    Minor

 src/hb-ot-layout-gsubgpos-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 8b427c78efa988ed27a2a394146d73f59688707b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 22 10:57:05 2013 -0400

    [uniscribe] Sanitize font file

 src/hb-uniscribe.cc | 4 ++++
 1 file changed, 4 insertions(+)

commit 12ff69df21ac91ae21860db7000d9f9973d3da1a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 22 10:52:12 2013 -0400

    [uniscribe] Handle TTC when renaming font

 src/hb-uniscribe.cc | 31 ++++++++++++++++++-------------
 1 file changed, 18 insertions(+), 13 deletions(-)

commit 05bad3b8c25a89bc0f20f99f9215e492f48f03fe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 21 17:05:02 2013 -0400

    [uniscribe] Use OT::* types

 src/hb-open-type-private.hh |  10 ++++-
 src/hb-ot-name-table.hh     |   4 +-
 src/hb-uniscribe.cc         | 107
 +++++++++++++++++++++++---------------------
 3 files changed, 66 insertions(+), 55 deletions(-)

commit bdeea605fe597bff4430eaae3317189bb81ec76e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 21 16:22:10 2013 -0400

    [uniscribe] Move name generation into separate function

 src/hb-uniscribe.cc | 34 ++++++++++++++++++++++------------
 1 file changed, 22 insertions(+), 12 deletions(-)

commit 73f947e2a7bc5b29d731da2e9d1fafe958be839e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 21 16:16:35 2013 -0400

    [uniscribe] Use blob to pass data around

 src/hb-uniscribe.cc | 28 ++++++++++++++--------------
 1 file changed, 14 insertions(+), 14 deletions(-)

commit 8ac2e88deff3d069c19fd59d0fbbfb88a762b113
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 21 16:06:49 2013 -0400

    [uniscribe] Use unique font name

    When installing per-process fonts using AddFontMemResourceEx(),
    if a font with the same family name is already installed, sometimes
    that one gets used.  Which is problematic for us.  As such, we
    now mangle the font to install a new 'name' table with a unique
    name, which we then use to choose the font.

    Patch from Jonathan Kew.

 configure.ac        |   2 +-
 src/hb-uniscribe.cc | 136
 ++++++++++++++++++++++++++++++++++++++++++++--------
 2 files changed, 116 insertions(+), 22 deletions(-)

commit 8751de50831338ce550601c34c17d152ad89c1fd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 18 16:29:50 2013 -0400

    Followup fix for 3f9e2dced298c3d00f31b2dfc38685bb071a3a22

    During GSUB, if a ligation happens, subsequence context input matching
    matches the new indexing.  During GPOS however, the indices never
    change.  So just go one by one.

    Fixes 'dist' positioning with mmrtext.ttf and the following sequence:

      U+1014,U+1039,U+1011,U+1014,U+1039,U+1011,U+1014,U+1039,U+1011

    Reported by Jonathan Kew.

 src/hb-ot-layout-gsubgpos-private.hh | 8 ++++++++
 1 file changed, 8 insertions(+)

commit 2b78d67e9f38f77086fbd9c3fd6f1c8c73927a51
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 16 16:06:27 2013 -0400

    0.9.19

 NEWS         | 11 +++++++++++
 configure.ac |  2 +-
 2 files changed, 12 insertions(+), 1 deletion(-)

commit e509d35cf1160f1449bc736b9445cdf61ab81d06
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 11 14:56:45 2013 -0400

    [ft] hb_ft_get_glyph_from_name fails for the name of glyph id 0

    Based on patch from Jonathan Kew, as reported on the mailing list.

 src/hb-ft.cc | 9 +++++++++
 1 file changed, 9 insertions(+)

commit 29b596ac67806c44441e65f3ece227df0fe2bb63
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 8 08:37:15 2013 -0600

    [uniscribe] Fix buffer allocation

    Email from Jonathan Kew:

    My cygwin build kept aborting on certain test words when run with the
    uniscribe backend. Turned out this was caused by a bug in the
    allocation
    of scratch buffers in hb-uniscribe.cc.

    Commit 2a17f9568d9724e045d2c1d660e007f3acd747d9 introduced a new line

      ALLOCATE_ARRAY (SCRIPT_VISATTR, vis_attr, glyphs_size);

    but it failed to account for this in the computation of glyphs_size
    (the number of glyphs for which scratch buffer space is available),
    with the result that the vis_clusters array ends up overrunning the
    end of the scratch buffer and clobbering the beginning of the buffer's
    info[].

    AFAICS, the vis_attr array is not actually used, so the simple fix is
    to remove the line that allocates it. (If/when we -do- need to use
    vis_attr for something, we'll need to add another term to the earlier
    calculation of glyphs_size.)

    With this patch, the uniscribe backend runs reliably again.

    JK

 src/hb-uniscribe.cc | 1 -
 1 file changed, 1 deletion(-)

commit 9245e98742667dfffe06523e8051beda1bc04811
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 26 20:57:58 2013 -0400

    [Indic] Add Javanese config

    We should add for other scripts too, send me the virama codepoint
    and script name...

 src/hb-ot-shape-complex-indic.cc | 1 +
 1 file changed, 1 insertion(+)

commit 5f85c80a07dd2d18348824866bf4e984ac711a24
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 26 20:14:18 2013 -0400

    [OT] Collect requiredFeature only if features are not provided

    As per Werner's report on the list.

 src/hb-ot-layout.cc | 22 +++++++++++-----------
 1 file changed, 11 insertions(+), 11 deletions(-)

commit 3f9e2dced298c3d00f31b2dfc38685bb071a3a22
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 26 19:46:55 2013 -0400

    Fix contextual lookup recursion indexing

    See email thread "Skipping Control for Attaching Marks using OpenType"
    from earlier this month.

 src/hb-ot-layout-gsubgpos-private.hh | 10 ++--------
 1 file changed, 2 insertions(+), 8 deletions(-)

commit f5da11e0fa5adf8f782883dc5c30d8faaafc9c27
Merge: 79d1007a 89312b74
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 22 08:04:05 2013 -0700

    Merge pull request #3 from LogosBible/master

    Destroy lookups before blobs.

commit 89312b7417c0198a0635ca6b7e8ea11f6af2a4f8
Author: Bradley Grainger <bgrainger@gmail.com>
Date:   Fri Jun 21 15:02:18 2013 -0700

    Destroy lookups before blobs.

    'layout->gsub' may depend on data owned by 'layout->gsub_blob',
    so it must
    be deinitialized before the blob is destroyed.

 src/hb-ot-layout.cc | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 79d1007a501fd63c0ba4d51038c513e6b8b94740
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jun 13 19:01:07 2013 -0400

    If variation selector is not consumed by cmap, pass it on to GSUB

    This changes the semantics of get_glyph() callback and expect that
    callbacks return false if the requested variant is not available, and
    then we will call them back with variation_selector=0 and will retain
    the glyph for the selector in the glyph stream.

    Apparently most Mongolian fonts implement the Mongolian Variation
    Selectors using GSUB, not cmap.

    https://bugs.freedesktop.org/show_bug.cgi?id=65258

    Note that this doesn't fix the Mongolian shaping yet, because the way
    that's implemented is that the, say, 'init' feature ligates the letter
    and the variation-selector.  However, since currently the variation
    selector doesn't have the 'init' mask on, it will not be matched...

 src/hb-ft.cc                 |  3 +--
 src/hb-ot-shape-normalize.cc | 14 ++++++++++++--
 2 files changed, 13 insertions(+), 4 deletions(-)

commit c7a84917208528040aaf9ad0a9a0b26aabeabc9c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jun 6 20:17:32 2013 -0400

    Skip over multiple variation selectors in a row

 src/hb-ot-shape-normalize.cc | 6 ++++++
 1 file changed, 6 insertions(+)

commit 7235f33f9e5e031622a00a84f4b2e98f16803579
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jun 10 14:39:51 2013 -0400

    Fix misc warnings reported by cppcheck

    https://bugs.freedesktop.org/show_bug.cgi?id=65544

 src/hb-common.cc            |  2 +-
 src/hb-coretext.cc          |  3 ---
 src/hb-font-private.hh      | 17 +++++++++++------
 src/hb-private.hh           |  2 +-
 src/hb-shape.cc             |  2 +-
 test/api/test-font.c        |  1 -
 util/ansi-print.cc          |  1 +
 util/hb-ot-shape-closure.cc |  5 +++--
 util/hb-shape.cc            |  5 ++++-
 util/shape-consumer.hh      |  6 ++++--
 util/view-cairo.hh          |  6 ++++--
 11 files changed, 30 insertions(+), 20 deletions(-)

commit 570bcccd3f41b9aecd51765a401299833a6d8ebd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jun 10 13:56:51 2013 -0400

    Fix PKG_CHECK_MODULES usage

    Oops.

    Bug 65246 - Fix build without graphite2

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 270cfd7a9c01dfb1b1789929f020943ad63aca99
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jun 6 18:57:15 2013 -0400

    Fix PKG_CHECK_MODULES usage

    Bug 65246 - Fix build without graphite2

    If we don't provide ACTION-IF-NOT-FOUND, configure aborts if it can't
    find the libraries.  We handle that ourselves so we don't want the
    macro to abort.

 configure.ac | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

commit 2fd0e02706857bcaf61bf5151657eac96cfa73b9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jun 6 17:16:01 2013 -0400

    Minor

 src/Makefile.am | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

commit b4c5c52944a44ba863a22a53035ff561af7318ca
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Mon Jun 3 17:55:29 2013 +0800

    util/ansi-print.cc: Use fallback implementation for lround on MSVC

    Unfortuately Visual Studio (still) does not support the C99 function
    lround, so provide a fallback implementation for it.

 util/ansi-print.cc | 11 +++++++++++
 1 file changed, 11 insertions(+)

commit a4446b10bfe0a9e7236bf941fa69a96697939e11
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jun 3 18:39:14 2013 -0400

    Fix build for C89 compilers

 test/api/test-buffer.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 4ddf937242048c4a044ada4559e26664a0c09b48
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jun 3 18:36:26 2013 -0400

    Remove unnecessary stdint.h include

 src/hb-ucdn/ucdn.c | 1 -
 1 file changed, 1 deletion(-)

commit 93a04b8b5e6d8067cb925fdf532aadc24c1d4861
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Mon Jun 3 17:49:37 2013 +0800

    hb-uniscribe.cc: Re-enable build under Visual Studio

    -Declare hinstLib at the top of block
    -Fix the definitions of the typedefs of ScriptItemizeOpenType,
     ScriptShapeOpenType and ScriptPlaceOpenType

 src/hb-uniscribe.cc | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

commit 280e52ae95df0cbee0bb305f5354381bc1d563f4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 30 18:04:24 2013 -0400

    Fix ChangeLog regen

 Makefile.am | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit c1824daefa1253507636e4bfdf46374f835f10b3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 29 15:30:54 2013 -0400

    Update TODO

 TODO | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

commit 2966d3603259430800cb5880491d28a1c5ea2314
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 28 17:34:37 2013 -0400

    Fix test build

 test/api/Makefile.am | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 6873f6cc42aa1405e71be903bd0f39a7a15320ce
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 28 17:33:16 2013 -0400

    Minor

 TODO | 2 --
 1 file changed, 2 deletions(-)

commit 4014aa4e53bddb29d939a168bd733942d3683732
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 28 17:28:59 2013 -0400

    0.9.18

 NEWS         | 28 ++++++++++++++++++++++++++++
 configure.ac |  2 +-
 2 files changed, 29 insertions(+), 1 deletion(-)

commit d70be29831bb99e34fe18744129088f45d5b2023
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 28 17:23:56 2013 -0400

    Fix dist

 src/Makefile.am | 4 ++++
 1 file changed, 4 insertions(+)

commit 22ce0961742df0a213f2cc86ca3d5a72453c00b1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 28 17:18:30 2013 -0400

    Generate harfbuzz-icu.pc

    Currently it only works with ICU that has .pc files.  I'll
    wait till someone complains before fixing it for icu-config
    systems.

 Makefile.am            |  3 ---
 configure.ac           |  5 ++---
 harfbuzz.pc.in         | 11 -----------
 src/Makefile.am        | 13 +++++++++++++
 src/harfbuzz-icu.pc.in | 13 +++++++++++++
 src/harfbuzz.pc.in     | 11 +++++++++++
 6 files changed, 39 insertions(+), 17 deletions(-)

commit d9afa111330771461b6182ada9f4edd68bcfce77
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 28 15:27:40 2013 -0400

    Build hb-icu into libharfbuzz-icu.so

 src/Makefile.am      | 29 +++++++++++++++--------------
 src/hb-unicode.cc    |  2 +-
 test/api/Makefile.am |  1 +
 3 files changed, 17 insertions(+), 15 deletions(-)

commit 7d395c2a255a44fd0d65365ea9b525dba70c062c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 28 15:25:06 2013 -0400

    Minor

 test/api/test-c.c | 4 ++++
 1 file changed, 4 insertions(+)

commit 2a17f9568d9724e045d2c1d660e007f3acd747d9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 28 13:10:51 2013 -0400

    Bug 55494 - ScriptItemizeOpenType doesn't exists under Windows XP

    Fallback to older API if OpenType variants are not available.

 configure.ac        |  14 +--
 src/hb-uniscribe.cc | 322
 +++++++++++++++++++++++++++++++++++++++++++---------
 2 files changed, 271 insertions(+), 65 deletions(-)

commit f8087ffbadc83a15d59367ba82976eae675736a7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 27 19:43:48 2013 -0400

    Add --with-cairo

 configure.ac | 17 +++++++++++++++--
 1 file changed, 15 insertions(+), 2 deletions(-)

commit 82eddfe5d658ef791d6ef6a566401c50601dfb1c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 27 19:33:36 2013 -0400

    Add --with-freetype

    Defaults to auto.

 configure.ac | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

commit 5e25eb77a49e7f95b6a6d540b26d60d430f89d4c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 27 19:30:48 2013 -0400

    Default glib to auto again

 configure.ac | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit eb63e786f37468867c81707504128cf8a4016e5b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 27 19:29:09 2013 -0400

    Add --with-coretext

    Defaults to no.

 configure.ac | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

commit ab2af17bc6faa8394656e6e82948dc3e9f437626
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 27 19:27:43 2013 -0400

    Add --with-uniscribe

    Defaults to no.

 configure.ac | 55 +++++++++++++++++++++++++++++++++++++++----------------
 1 file changed, 39 insertions(+), 16 deletions(-)

commit 58db2c2542717858acbdf480b3f19a8aef4918cd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 27 19:10:33 2013 -0400

    Disable UCDN if glib is available

    We only want UCDN if we don't have any other Unicode provider.
    I'm going to remove ICU from the list of default Unicode providers
    as part of moving hb-icu into its own library.  As such, the only
    providers will be UCDN and glib.

 configure.ac | 3 +++
 1 file changed, 3 insertions(+)

commit ca65326cbd49b48792c4e3125af6c5006364f194
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 27 19:09:50 2013 -0400

    Minor

 configure.ac | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

commit 7ae14973ecb4614a83769d2bbd01f33d8474ffc0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 27 19:06:50 2013 -0400

    Disable icu_le shaper

    Will add a way to enable it later.

 configure.ac | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 7e6ebf76236cc5ea69302e68186bdf8166d04a98
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 27 19:05:23 2013 -0400

    Remove icu-config fallback for icu_le shaper

    Bug 64878 - compile error with ICU but not ICU

 configure.ac | 18 ------------------
 1 file changed, 18 deletions(-)

commit 932b7471479c639244051b4dbae678e7d47ae99f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 27 19:04:40 2013 -0400

    Bug 65053 - Add configure option to enable/disable ICU support

 configure.ac | 46 ++++++++++++++++++++++++++++------------------
 1 file changed, 28 insertions(+), 18 deletions(-)

commit cf2c1c7eb81b54a344ed5cf36d5fbd3cd297eed1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 27 18:54:30 2013 -0400

    Disable hb-old shaper

    Will add proper way to enable it later.

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 5a78d23f255a649353044af8e5df315f62907b7f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 27 18:47:58 2013 -0400

    Bug 65054 - Add configure option to enable/disable Graphite2

    Add --with-graphite2.  Defaults to off.

 configure.ac | 20 +++++++++++++++-----
 1 file changed, 15 insertions(+), 5 deletions(-)

commit 61e7775fa75c7c1bdc29a6992c8c215897364600
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 27 18:24:56 2013 -0400

    Remove hb-icu dependency from hb-icu-le shaper

 src/hb-icu-le.cc | 33 +++++++++++++++++++++++++++++----
 1 file changed, 29 insertions(+), 4 deletions(-)

commit 7e08f1258da229dfaf7e1c4b5c41e5bb83906cb0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 27 14:48:34 2013 -0400

    Don't zero advance of mark-non-mark ligatures

    If there's a mark ligating forward with non-mark, they were
    inheriting the GC of the mark and later get advance-zeroed.
    Don't do that if there's any non-mark glyph in the ligature.

    Sample test: U+1780,U+17D2,U+179F with Kh-Metal-Chrieng.ttf

    Also:
    Bug 58922 - Issue with mark advance zeroing in generic shaper

 src/hb-ot-layout-gsubgpos-private.hh | 4 ++++
 src/hb-ot-layout-private.hh          | 6 ++++++
 2 files changed, 10 insertions(+)

commit cf059ac69d10d9eb09f0d2a29b1bd989647bd800
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 24 15:28:11 2013 -0400

    [icu_le] Support non-BMP text

 src/hb-icu-le.cc | 35 ++++++++++++++++++++++++++++-------
 1 file changed, 28 insertions(+), 7 deletions(-)

commit a447c528e68cabc9ca6e24e2c436f3d605ef9aaa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 23 17:05:39 2013 -0400

    [icu_le] A bit better scaling

 src/hb-icu-le.cc | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

commit fb502a22787f4110472771ef771619342e64577a
Merge: b9408d24 9d9e72e9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 23 15:54:52 2013 -0400

    Merge commit '9d9e72e94e7914f82ce62a304e7242f79c13edaf'

commit b9408d24f3029f5287b17779235b1c750ff5158a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 23 15:43:02 2013 -0400

    [icu_le] Fix scaling

    Seems to work...

 src/hb-icu-le.cc                       |  2 ++
 src/hb-icu-le/PortableFontInstance.cpp | 23 +++++++++++++++--------
 src/hb-icu-le/PortableFontInstance.h   |  9 ++++++++-
 3 files changed, 25 insertions(+), 9 deletions(-)

commit 601526392dec5d8432f147c91658ba50ed6a4322
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 21 17:22:13 2013 -0400

    Copy stdint.h boilerplate to ucdn

 src/hb-ucdn/ucdn.h | 24 +++++++++++++++++++++++-
 1 file changed, 23 insertions(+), 1 deletion(-)

commit f1b02f4f3c0db9fbfa6747188429df828b000010
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 20 09:23:58 2013 -0400

    0.9.17

 NEWS         | 8 ++++++++
 configure.ac | 2 +-
 2 files changed, 9 insertions(+), 1 deletion(-)

commit d785fa0c45f7f25f5e5f352b933a5f6fa29be5c0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 20 09:18:52 2013 -0400

    Minor refactoring

 src/hb-ot-shape.cc | 54
 ++++++++++++++++++++++++++++--------------------------
 1 file changed, 28 insertions(+), 26 deletions(-)

commit 127daf15e0b2f509ebd29a104236c8b38884efb0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 20 09:11:35 2013 -0400

    Arabic mark width-zeroing regression

    Mozilla Bug 873902 - Display Arabic text with diacritics is bad
    https://bugzilla.mozilla.org/show_bug.cgi?id=873902

 src/hb-ot-shape-complex-arabic.cc  |  2 +-
 src/hb-ot-shape-complex-default.cc |  2 +-
 src/hb-ot-shape-complex-myanmar.cc |  2 +-
 src/hb-ot-shape-complex-private.hh |  6 ++++--
 src/hb-ot-shape-complex-thai.cc    |  2 +-
 src/hb-ot-shape.cc                 | 36
 ++++++++++++++++++++++++++++--------
 6 files changed, 36 insertions(+), 14 deletions(-)

commit fa3d0a0ce60a9fcf2b7f906dec916463b1319eda
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 14 15:30:55 2013 -0400

    Bug 64476 - Typo in hb_set_t.get_min()

    Fixes previous commit's test.

 src/hb-set-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit dfbd115e6c1a86a5f1b8d15200672f1e9410b5de
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 14 15:30:17 2013 -0400

    [test] Add test for hb_set_get_min() bug

    Failing now.

    Bug 64476 - Typo in hb_set_t.get_min()

 test/api/test-set.c | 4 ++++
 1 file changed, 4 insertions(+)

commit 9d9e72e94e7914f82ce62a304e7242f79c13edaf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 3 18:10:10 2013 -0400

    [OTLayout] Use is_inplace() when flipping buffers

 src/hb-ot-layout.cc | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

commit 45f3d980c9503bd94e64f6e3f67f97688347d00c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 3 17:49:44 2013 -0400

    [OTLayout] Merge / templateize apply_string()

 src/hb-ot-layout-gpos-table.hh | 25 ---------------
 src/hb-ot-layout-gsub-table.hh | 48 ----------------------------
 src/hb-ot-layout.cc            | 72
 ++++++++++++++++++++++++++++++++++++++++--
 3 files changed, 69 insertions(+), 76 deletions(-)

commit e015b8f2187d1102b9c34d1a63504e7b05ee20ee
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 3 17:34:29 2013 -0400

    [OTLayout] Minor

 src/hb-ot-layout-gpos-table.hh | 5 +++++
 1 file changed, 5 insertions(+)

commit 780cd930a974165d76dbf7a87701d11b7f15db06
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 3 17:33:16 2013 -0400

    [OTLayout] Minor

 src/hb-ot-layout-gpos-table.hh | 2 +-
 src/hb-ot-layout-gsub-table.hh | 2 +-
 src/hb-ot-layout.cc            | 4 ++--
 3 files changed, 4 insertions(+), 4 deletions(-)

commit 2e0c44f4bedd3e24c731c0e9e23358e9a4891a35
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 24 16:42:05 2013 -0400

    [OTLayout] Add is_inplace() method to GSUB

 src/hb-ot-layout-gpos-table.hh       |   8 +-
 src/hb-ot-layout-gsub-table.hh       |  58 ++++++++++++-
 src/hb-ot-layout-gsubgpos-private.hh | 158
 +++++++++++++++++++++++++++++++++++
 3 files changed, 222 insertions(+), 2 deletions(-)

commit bac1dd6a0ff4d4fae4254506d38ae662b7e9dda7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 2 18:52:24 2013 -0400

    [OTLayout] Refactor a bit more

 src/hb-ot-layout-gsubgpos-private.hh       |  10 +--
 src/hb-ot-layout-private.hh                |  26 ++++----
 src/hb-ot-layout.cc                        | 100
 ++++++++++++++---------------
 src/hb-ot-map-private.hh                   |   7 +-
 src/hb-ot-shape-complex-arabic-fallback.hh |   7 +-
 src/hb-ot-shape-fallback.cc                |   3 +-
 6 files changed, 78 insertions(+), 75 deletions(-)

commit d2c96819de9a7428b65ef0adf794416224221f36
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 2 18:18:24 2013 -0400

    Move code around

 src/hb-ot-layout.cc | 52
 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-map.cc    | 43 -------------------------------------------
 2 files changed, 52 insertions(+), 43 deletions(-)

commit 45fd9424c723f115ca98995b8f8a25185a6fc71d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 2 18:06:51 2013 -0400

    [OTLayout] Add hb_ot_layout_lookup_accelerator_t

 src/hb-ot-layout-private.hh                | 21 +++++++++++++++++--
 src/hb-ot-layout.cc                        | 33
 +++++++++++++++---------------
 src/hb-ot-shape-complex-arabic-fallback.hh | 10 +++++----
 3 files changed, 41 insertions(+), 23 deletions(-)

commit 76ea563673d24ae1673a5aa3a21da6014479d433
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat May 4 16:01:20 2013 -0400

    [OTLayout] Add note about collect_glyphs() and recursive lookups

 src/hb-ot-layout-gsubgpos-private.hh | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

commit a8bf0e91f18341e1e20f4e3341fc7dcdd0c990e1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 3 14:45:04 2013 -0400

    Add U+061C ARABIC LETTER MARK to Default_Ignorable

 src/hb-unicode-private.hh | 4 ++++
 1 file changed, 4 insertions(+)

commit 5d59f999204aedfc433ab4989664d875f96b0364
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 2 14:44:45 2013 -0400

    [OTLayout] Make MultipleSubst in-place for sequences of len=1

 src/hb-ot-layout-gsub-table.hh | 15 +++++++++++----
 1 file changed, 11 insertions(+), 4 deletions(-)

commit 54f84a6b8571ac7aaaa66f3eff562d23d69d7552
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 2 15:27:53 2013 -0400

    [OTLayout] Whitespace

 src/hb-ot-layout-gsub-table.hh | 56
 +++++++++++++++++++++---------------------
 1 file changed, 28 insertions(+), 28 deletions(-)

commit 3276c354daaff3acabecff11f8e4b5c54d53fc25
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 2 15:16:59 2013 -0400

    [OTLayout] Minor refactoring

 src/hb-ot-map-private.hh |  4 ++++
 src/hb-ot-map.cc         | 46
 +++++++++++++++++++++++++---------------------
 2 files changed, 29 insertions(+), 21 deletions(-)

commit ea86efa486a5076e9bf844239bccf86d67577f88
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 2 14:41:39 2013 -0400

    Minor

 src/hb-ot-map-private.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 8b63efb6f80b2e9b2de5ec6ab24d6e15826565cb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 2 14:29:32 2013 -0400

    Minor

 src/hb-buffer-private.hh | 2 ++
 1 file changed, 2 insertions(+)

commit 2265be0a620bc76ab65f12fedde67791beb51314
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 2 14:25:09 2013 -0400

    Minor

 src/hb-ot-map-private.hh   | 17 ++++++++++-------
 src/hb-ot-map.cc           |  2 ++
 src/hb-ot-shape-private.hh |  3 +--
 3 files changed, 13 insertions(+), 9 deletions(-)

commit e6f19af08717a6a63ad0b5bf4bf368778edc63f0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 2 13:59:46 2013 -0400

    Minor

 src/hb-set-private.hh | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

commit 6c15ddfe2b45383824b64058ae69939d002183a6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 30 11:34:00 2013 -0400

    Renamed DEBUG to something else

    Some infrastructures use DEBUG as a generic symbol.

 src/hb-buffer.cc  | 6 +++---
 src/hb-private.hh | 4 ++--
 2 files changed, 5 insertions(+), 5 deletions(-)

commit 00b93f6610f36d8d14ca65fb99864be6d5bdb1ea
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 29 13:48:49 2013 -0400

    Fix icu linking by requesting the library searchpath from icu-config

    This is not ideal as we don't like -L/usr/lib in our linker line.
    But this is only relevant to environments that don't have pkgconfig
    files for ICU...

    https://github.com/behdad/harfbuzz/pull/2

 configure.ac | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 03adf38b22a37216dffac50d075ea9c881f1a22d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 29 13:40:52 2013 -0400

    Make both old autoconf and new automake happy

    Sigh..

    Bug 64039 - undefined macro AM_PROG_AR

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ed79dff517bacfc87279079d5d42d079c21a0373
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Apr 21 15:39:25 2013 -0400

    Minor

 src/hb-ot-layout-gpos-table.hh | 5 -----
 1 file changed, 5 deletions(-)

commit 893f57b32f01da3411b5596d59170bc340e9fa39
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Apr 21 15:21:49 2013 -0400

    Minor renaming

 src/hb-ot-map-private.hh | 10 +++++-----
 src/hb-ot-map.cc         | 22 +++++++++++-----------
 2 files changed, 16 insertions(+), 16 deletions(-)

commit 8ac3c9c0b6b8e76bce282825b9bb706c0c78c2a6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Apr 21 15:19:38 2013 -0400

    Rename "pause" to "stage"

    The compile() function is starting to become illegible...

 src/hb-ot-map-private.hh | 24 ++++++++++++------------
 src/hb-ot-map.cc         | 38 +++++++++++++++++++-------------------
 2 files changed, 31 insertions(+), 31 deletions(-)

commit dd0641a432691f9b6186b081c38053858c8bc5c1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Apr 21 15:13:57 2013 -0400

    Minor

 src/hb-ot-map.cc | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 06a44e859328f5f1e2f6034e711b474116d22e22
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Apr 21 15:13:08 2013 -0400

    Remove unneeded code

    We always push a pause at the end such that each lookup falls
    in exactly
    one pause_map_t.  Now, only if I can find a better name for that...

 src/hb-ot-map-private.hh |  2 +-
 src/hb-ot-map.cc         | 12 +-----------
 2 files changed, 2 insertions(+), 12 deletions(-)

commit a408d2375aa2ad96b58e56aef18e5000daf2516b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 19 16:32:06 2013 -0400

    0.9.16

 NEWS         | 13 ++++++++++++-
 configure.ac |  2 +-
 2 files changed, 13 insertions(+), 2 deletions(-)

commit 8659c636087e433f56da458351e8b4d85fdb347c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 19 14:33:17 2013 -0400

    Hand-code bsearch in the hot inner loop.

    Saves another 3 / 4 percent with Amiri.

 src/hb-open-type-private.hh | 29 +++++++++++++++--------------
 1 file changed, 15 insertions(+), 14 deletions(-)

commit 797d76d07f80d796a825d850772087104e5a2575
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 18 19:04:12 2013 -0400

    Minor

 src/hb-ot-layout-common-private.hh | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit e4046080c5d785c8dbf9ec9e3478ab9acc83e479
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 17 23:49:54 2013 -0400

    [util] Unbreak --show-text / --show-unicode

 util/shape-consumer.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 0dc3a4e0349d28f387a3b4c60a2f51962742738e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 17 23:04:03 2013 -0400

    Obssesive optimization

    Not measurable by any means, but conceptually this is faster since
    the mask matches more often than the digest.

 src/hb-ot-layout-gpos-table.hh | 4 ++--
 src/hb-ot-layout-gsub-table.hh | 8 ++++----
 2 files changed, 6 insertions(+), 6 deletions(-)

commit f9a611026785a80baa4cbff31ad0847beb70ca9a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 17 19:01:49 2013 -0400

    Remove HB_DEBUG_SET_DIGESTS

    Wasn't correct with the new combiner.  I should add it back somehow,
    but for now the digests seem to be working very well...

 src/hb-set-private.hh | 16 +---------------
 src/hb-set.cc         | 14 --------------
 2 files changed, 1 insertion(+), 29 deletions(-)

commit f7466ee76f2bd3812209426e2c39fe517227406d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 17 18:20:44 2013 -0400

    Remove hb_set_digest_common_bits_t

    Was unused.

 src/hb-set-private.hh | 38 --------------------------------------
 1 file changed, 38 deletions(-)

commit 0d5798a137b52d9be7ef88c79e59f9bf01d54f3b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 17 18:19:21 2013 -0400

    Improve hb_set_digest_t

    Make Amiri rendering faster a whopping 45% again!  Speends up pretty
    much anything I tested.

 src/hb-set-private.hh | 28 +++++++++++++++++++++++-----
 1 file changed, 23 insertions(+), 5 deletions(-)

commit c7851efcd3a1e5317ab4ea57535cb755bace0848
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 17 17:45:39 2013 -0400

    Templatize hb_set_digest_lowest_bits_t filter

 src/hb-set-private.hh | 21 +++++++++++++++++----
 1 file changed, 17 insertions(+), 4 deletions(-)

commit 0edd0fd255790471118fae1fd7a1309a2b77cf62
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 17 17:26:56 2013 -0400

    Add comment

 src/hb-set-private.hh | 8 ++++++++
 1 file changed, 8 insertions(+)

commit b40f2c0372acbc51b13be5cda7dd013e74e3e11a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 16 23:21:38 2013 -0400

    Add hb_set_digest_combiner_t

 src/hb-set-private.hh | 33 ++++++++++++++++++++-------------
 1 file changed, 20 insertions(+), 13 deletions(-)

commit 02e5e583688999c4dc04f11b3924da65f99af7e3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 16 23:13:10 2013 -0400

    Speed up Speed up hb_set_digest_common_bits_t calcs

    Correctly this time.

 src/hb-set-private.hh | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

commit 893991fc9d2d3a57c4c148f3a9c3b98263cf3aed
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 16 21:50:33 2013 -0400

    Initialize set digests

    We were not initializing the digests properly and as a result
    they were
    being initialized to zero, making digest1 to never do any useful work.

    Speeds up Amiri shaping significantly.

 src/hb-ot-layout.cc                        | 6 ++++++
 src/hb-ot-shape-complex-arabic-fallback.hh | 4 +++-
 2 files changed, 9 insertions(+), 1 deletion(-)

commit 4d2813d3e980c8e6150caafa604a78cc44bf62a2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 16 21:57:21 2013 -0400

    Print set-digest hit ratio with HB_DEBUG_SET_DIGESTS

 src/hb-set-private.hh | 13 +++++++++++++
 src/hb-set.cc         | 13 +++++++++++++
 2 files changed, 26 insertions(+)

commit 1357c2dd120d005ceecfa83ed328d05dc634d7bc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 16 21:47:40 2013 -0400

    Revert "Speed up hb_set_digest_common_bits_t calcs"

    This reverts commit 3d1b66a35e1ab3be19335705f310b278d76d66d2.

    The calculations were buggy.  It's not worth optimizing right now.

 src/hb-set-private.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 2b712bba3f7c459653737dfa2f7d26f17f3b9f64
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 16 16:11:09 2013 -0400

    Fix typo in unused macro

 src/hb-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 50067e280f381918b8e90b26df9e7bf20f98f0bd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 11 16:31:01 2013 -0400

    [util] Add --num-iterations

    Useful for profiling shapers.

 util/options.cc        |  1 +
 util/options.hh        |  2 ++
 util/shape-consumer.hh | 15 +++++++++------
 3 files changed, 12 insertions(+), 6 deletions(-)

commit 08677c250767bfc2c0dd1fc934dea92984741291
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 11 14:45:58 2013 -0400

    [old] Speed up Unicode properties access in hb-old shaper

    Just to be sure it's not punishing the old shaper performance
    numbers.  Doesn't seem to have a measurable effect.

 src/hb-old/harfbuzz-arabic.c   | 44
 +++++++++++++++++++++---------------------
 src/hb-old/harfbuzz-external.h | 18 ++++++++---------
 src/hb-old/harfbuzz-greek.c    |  2 +-
 src/hb-old/harfbuzz-hebrew.c   |  2 +-
 src/hb-old/harfbuzz-indic.cpp  | 10 +++++-----
 src/hb-old/harfbuzz-shaper.cpp |  6 ++++--
 src/hb-old/harfbuzz-shaper.h   |  1 +
 7 files changed, 43 insertions(+), 40 deletions(-)

commit 36a661c0a03d958b95c9ea64a435b55bcd99c3d6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 11 13:38:37 2013 -0400

    [git.mk] Update

 git.mk | 33 ++++++++++++++++++++-------------
 1 file changed, 20 insertions(+), 13 deletions(-)

commit ef9e02eddfc9a37d50723e96839635d79191d849
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 9 14:06:54 2013 -0400

    Minor

 src/test.cc | 1 +
 1 file changed, 1 insertion(+)

commit 22e47456154ca0b8173268486e56ef3a0e1e7150
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 5 18:02:43 2013 -0400

    0.9.15

 NEWS         | 10 ++++++++++
 configure.ac |  2 +-
 2 files changed, 11 insertions(+), 1 deletion(-)

commit 4d4fc920496c95621d5bb4800282ea8c028cdde3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 5 17:58:25 2013 -0400

    [git.mk] Ignore ar-lib

 git.mk | 1 +
 1 file changed, 1 insertion(+)

commit 587e5753e088b4d0b82c74ddbde790a8369a7517
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 5 12:38:58 2013 -0400

    Add note re Hangul shaping

 src/hb-ot-shape-complex-private.hh | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

commit 269de14dda7a86a20917fa9ea6a5864929c41364
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 4 23:06:54 2013 -0400

    Don't compose Hangul jamo

    See thread "an issue regarding discrepancy between Korean and Unicode
    standards" on the mailing list for the rationale.  In short: Uniscribe
    doesn't, so fonts are designed to work without it.

 src/hb-ot-shape-complex-default.cc   |  6 ------
 src/hb-ot-shape-normalize-private.hh |  1 -
 src/hb-ot-shape-normalize.cc         | 11 +++++------
 3 files changed, 5 insertions(+), 13 deletions(-)

commit 1f970609850bb4999b94e1e11b764ab4279cbd38
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 4 15:02:03 2013 -0400

    Put back MemoryBarrier fallback implementation on MINGW32

    This almost reverts 2761e8a632c14353f286708898be8df6ebad7407,
    but only if under MINGW32, so it doesn't affect MSVC.

 src/hb-atomic-private.hh | 8 ++++++++
 1 file changed, 8 insertions(+)

commit f368ba4a9edec4e297616698097546e8e6c89e53
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 4 14:25:36 2013 -0400

    [Arabic] Zero marks by GDEF, not Unicode category

    Testing shows that this is closer to what Uniscribe does.

    Reported by Khaled Hosny:

    """
    commit 568000274c8edb5f41bc4f876ce21fcc8bdaeed8
    ...
    This commit is causing a regression with Amiri, the string
    “هَٰذ” with
    Uniscribe and HarfBuzz before this commit, gives:

            [uni0630.fina=3+965|uni0670.medi=0+600|uni064E=0@-256,0+0|uni0647.init=0+926]

    But now it gives:

            [uni0630.fina=3+965|uni0670.medi=0+0|uni064E=0@-256,0+0|uni0647.init=0+926]

    i.e. uni0670.medi is zeroed though it has a base glyph GDEF class.
    """

    The test case is U+0647,U+064E,U+0670,U+0630 with Amiri.

 src/hb-ot-shape-complex-arabic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 3b80674c50b8c3133848a4034f7106b2b9bfe224
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 4 12:06:46 2013 -0400

    Bug 63107 - FTBFS on ppc64: symbols marked with 'D' on powerpc64
    instead

 src/check-symbols.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 7148dc1a978610af25b4f490691a62d709c8c463
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 2 14:08:53 2013 -0400

    [graphite2] Don't crash if language is not set

    https://bugs.webkit.org/show_bug.cgi?id=113796

 src/hb-graphite2.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a88a62f70f87563725d47b9b6824565e5d6b78ab
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Mar 21 21:02:16 2013 -0400

    Minor

 src/hb-ot-shape-normalize.cc | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

commit 0a2b2a505b647f6b4802750c87cd9c5f0baaadef
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Mar 21 16:26:39 2013 -0400

    Remove gthread leftovers

    We don't use gthread anymore, remove leftovers.

 configure.ac         | 6 ------
 test/api/Makefile.am | 4 ++--
 test/api/hb-test.h   | 3 ---
 3 files changed, 2 insertions(+), 11 deletions(-)

commit b93de1ea085bfc0661ce3ad0e21fb5eba722c951
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Mar 21 16:25:20 2013 -0400

    Minor

 configure.ac | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

commit f872a17462a75a3493623747bf3a3fbe54556c7b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Mar 21 13:38:06 2013 -0400

    0.9.14

 NEWS         | 14 ++++++++++++++
 configure.ac |  2 +-
 2 files changed, 15 insertions(+), 1 deletion(-)

commit cc50bf5b13bfe88137fa7a42782872c40fb9aefb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Mar 19 06:59:40 2013 -0400

    Remove Hangul filler characters from Default_Ignorable chars

    See discussion on mailing list.

 src/hb-unicode-private.hh                                      |
 10 +++++++---
 .../texts/in-tree/shaper-default/script-hangul/misc/misc.txt   |  1 +
 2 files changed, 8 insertions(+), 3 deletions(-)

commit a8cf7b43fa795150ae3d42d64424bb6e0373d0b2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Mar 19 05:53:26 2013 -0400

    [Indic] Futher adjust ZWJ handling in Indic-like shapers

    After the Ngapi hackfest work, we were assuming that fonts
    won't use presentation features to choose specific forms
    (eg. conjuncts).  As such, we were using auto-joiner behavior
    for such features.  It proved to be troublesome as many fonts
    used presentation forms ('pres') for example to form conjuncts,
    which need to be disabled when a ZWJ is inserted.

    Two examples:

            U+0D2F,U+200D,U+0D4D,U+0D2F with kartika.ttf
            U+0995,U+09CD,U+200D,U+09B7 with vrinda.ttf

    What we do now is to never do magic to ZWJ during GSUB's main input
    match for Indic-style shapers.  Note that backtrack/lookahead
    are still
    matched liberally, as is GPOS.  This seems to be an acceptable
    compromise.

    As to the bug that initially started this work, that one needs to
    be fixed differently:

      Bug 58714 - Kannada u+0cb0 u+200d u+0ccd u+0c95 u+0cbe does not
      provide same results as Windows8
      https://bugs.freedesktop.org/show_bug.cgi?id=58714

    New numbers:

    BENGALI: 353689 out of 354188 tests passed. 499 failed (0.140886%)
    DEVANAGARI: 707305 out of 707394 tests passed. 89 failed (0.0125814%)
    GUJARATI: 366349 out of 366457 tests passed. 108 failed (0.0294714%)
    GURMUKHI: 60706 out of 60747 tests passed. 41 failed (0.067493%)
    KANNADA: 951030 out of 951913 tests passed. 883 failed (0.0927606%)
    KHMER: 299070 out of 299124 tests passed. 54 failed (0.0180527%)
    LAO: 53611 out of 53644 tests passed. 33 failed (0.0615167%)
    MALAYALAM: 1048102 out of 1048334 tests passed. 232 failed
    (0.0221304%)
    ORIYA: 42320 out of 42329 tests passed. 9 failed (0.021262%)
    SINHALA: 271666 out of 271847 tests passed. 181 failed (0.0665816%)
    TAMIL: 1091753 out of 1091754 tests passed. 1 failed (9.15957e-05%)
    TELUGU: 970555 out of 970573 tests passed. 18 failed (0.00185457%)
    TIBETAN: 208469 out of 208469 tests passed. 0 failed (0%)

 src/hb-ot-layout-gsubgpos-private.hh               | 30
 ++++++++--------------
 src/hb-ot-layout-private.hh                        |  4 +--
 src/hb-ot-layout.cc                                |  8 +++---
 src/hb-ot-map-private.hh                           |  8 +++---
 src/hb-ot-map.cc                                   | 18 ++++++-------
 src/hb-ot-shape-complex-arabic-fallback.hh         |  2 +-
 src/hb-ot-shape-complex-indic.cc                   | 30
 +++++++++++-----------
 src/hb-ot-shape-complex-myanmar.cc                 |  4 +--
 src/hb-ot-shape-complex-sea.cc                     |  4 +--
 src/hb-ot-shape-fallback.cc                        |  2 +-
 .../indic/script-bengali/misc/misc.txt             |  1 +
 .../indic/script-malayalam/misc/misc.txt           |  1 +
 12 files changed, 53 insertions(+), 59 deletions(-)

commit 8226fb56f131362db877dc4be6857c684b8fd022
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Mar 19 05:22:27 2013 -0400

    Allow disabling ICU by using a fake icu-config script

 configure.ac | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit a1f3e8ccbfad0d1148b905ae008ba63a26090cb9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Mar 11 20:18:49 2013 -0400

    [travis] Install libicu

 .travis.yml | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 14cfab52daa8d22b843110f32ca09af5bbc855a6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Mar 11 19:53:44 2013 -0400

    Add build system fallback to icu-config

    Ubuntu doesn't (or didn't until recently?) ship icu pkg-config
    files.  That's quite unfortunate.  Work around it.

    Bug 57608 - ICU Detection fallback for non-pkgconfig systems

 configure.ac | 37 +++++++++++++++++++++++++++++++++++++
 1 file changed, 37 insertions(+)

commit 190e19e6842875c7a487c66235300ee6b42fb5da
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Mar 9 20:30:22 2013 -0500

    [ft] Remove TODO items that I'm not going to fix

 src/hb-ft.cc | 7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)

commit 392ee97431b368ee74e1b521fd539b69d2efadfb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Mar 9 20:27:55 2013 -0500

    [ft] Remove TODO item re FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH

    That flag is redundant, deprecated, and ignored since April 2011.
    From FreeType git log:

    commit 8c82ec5b17d0cfc9b0876a2d848acc207a62a25a
    Author: Behdad Esfahbod <behdad@behdad.org>
    Date:   Thu Apr 21 08:21:37 2011 +0200

        Always ignore global advance.

        This makes FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH redundant,
        deprecated, and ignored.  The new behavior is what every
        major user
        of FreeType has been requesting.  Global advance is broken in many
        CJK fonts.  Just ignoring it by default makes most sense.

        * src/truetype/ttdriver.c (tt_get_advances),
        src/truetype/ttgload.c (TT_Get_HMetrics, TT_Get_VMetrics,
        tt_get_metrics, compute_glyph_metrics, TT_Load_Glyph),
        src/truetype/ttgload.h: Implement it.

        * docs/CHANGES: Updated.

 src/hb-ft.cc | 2 --
 1 file changed, 2 deletions(-)

commit c5d91f39802078fc6f6de71940739ec4d04eca07
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Mar 9 04:34:21 2013 -0500

    Add hb_auto_array_t

 src/hb-private.hh | 8 ++++++++
 1 file changed, 8 insertions(+)

commit ee5464d17fa4c59f5adaaa13dde70dd5264dbc64
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Mar 9 01:59:30 2013 -0500

    [OTLayout] Move code around

 src/hb-ot-layout-gpos-table.hh |  33 ++++++------
 src/hb-ot-layout-gsub-table.hh | 115
 +++++++++++++++++++++--------------------
 2 files changed, 75 insertions(+), 73 deletions(-)

commit 9c5a9ee967120c8a968a1160c420e03620d46c24
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Mar 9 01:55:04 2013 -0500

    [OTLayout] Rename process() to dispatch()

 src/hb-open-type-private.hh          |  2 +-
 src/hb-ot-layout-gpos-table.hh       | 80
 ++++++++++++++++++------------------
 src/hb-ot-layout-gsub-table.hh       | 78
 +++++++++++++++++------------------
 src/hb-ot-layout-gsubgpos-private.hh | 36 ++++++++--------
 4 files changed, 98 insertions(+), 98 deletions(-)

commit 2761e8a632c14353f286708898be8df6ebad7407
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Mar 7 20:51:30 2013 -0500

    [win32] Remove MemoryBarrier() fallback implementation

    I added these because the older mingw32 toolchain didn't have
    MemoryBarrier().  The newer mingw-w64 toolchain however has.
    As reported by John Emmas this was causing build failure with
    MSVC (on glib) because of inline issues.  But that reminded me
    that we may be taking this path even if the system implements
    MemoryBarrier as a function, which is a waste.  So, just remove
    it.

 src/hb-atomic-private.hh | 14 +-------------
 1 file changed, 1 insertion(+), 13 deletions(-)

commit ea11abfc5de8bc5cf651b37c9570593eed6a8f9b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 6 20:21:11 2013 -0500

    [build] Port to newer automake recommended syntax

 test/api/Makefile.am | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit c39def9bc71559d59325a2c3282c1cec4286b2ae
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 6 20:20:45 2013 -0500

    Move valgrind suppressions to the correct directory

 test/{ => api}/.valgrind-suppressions | 0
 1 file changed, 0 insertions(+), 0 deletions(-)

commit a8ac1d33c731f6200ee472ab6c37a80b72770564
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 6 20:05:34 2013 -0500

    [build] Add AM_PROG_AR

    Newer automake / libtools warns otherwise.

 configure.ac | 1 +
 1 file changed, 1 insertion(+)

commit 5594c2d112c295147ee69215a2ce9dfd99984aa0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 6 19:37:31 2013 -0500

    [FT] Just return if glyph name not found

    The fallback happens in higher level already.  No need to do here.

 src/hb-ft.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit fb7c182bf92142540bff1ad7fb82de0d115fb2b5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 6 00:53:24 2013 -0500

    [Indic] Minor

 src/hb-ot-shape-complex-indic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 8144936d072f94104242edf9e7aaa31d315b4094
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Mar 5 20:08:59 2013 -0500

    [Indic] Work around fonts with broken new-spec tables

    See comments, and this thread:

    http://lists.freedesktop.org/archives/harfbuzz/2013-March/002990.html

    Originally reported here:

    https://code.google.com/p/chromium/issues/detail?id=96143

    Doesn't change test suite numbers.

 src/hb-ot-shape-complex-indic.cc | 42
 +++++++++++++++++++++++++++-------------
 1 file changed, 29 insertions(+), 13 deletions(-)

commit dfb799f57572e8123035a42a30f93c7fc4d37692
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Mar 5 17:23:33 2013 -0500

    [travis] Oops.  Run make check, not make test!

 .travis.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 8bdce1cac1be9e79344c1f9a9811d98ed2e5c5fd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Mar 5 02:35:31 2013 -0500

    Run autogen.sh, not configure, in travis-ci

 .travis.yml | 1 +
 1 file changed, 1 insertion(+)

commit 5f705b437cb116275a8c20366e694d740bce715c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Mar 5 01:37:44 2013 -0500

    Add .travis.yml for continuous building with travis-ci.org

    Notifications sent to IRC channel and mailing list.

 .travis.yml | 12 ++++++++++++
 1 file changed, 12 insertions(+)

commit cd54d505d1a2467a67e5ff96fe0eb101b953b265
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Mar 4 21:29:38 2013 -0500

    Fix distcheck

 src/Makefile.am | 2 ++
 1 file changed, 2 insertions(+)

commit 22c625a490bbaac52ead2cd29ee49b170e6e9845
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Mar 4 20:56:15 2013 -0500

    [git.mk] Update to commit efc928222179576270c5910416d8055dd7a97896

        Move reusable list of files into variable definitions modules can
        reuse

 Makefile.am | 22 ++++------------------
 git.mk      | 59
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++---
 2 files changed, 60 insertions(+), 21 deletions(-)

commit 66f7b3509a121b8f3289ad4c4aed2b5b10a6de2e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Mar 4 18:52:12 2013 -0500

    Add libtool m4 macros to MAINTAINERCLEANFILES

 Makefile.am | 5 +++++
 1 file changed, 5 insertions(+)

commit 41732f1fe3ce856d8bb95850635034537b6ba047
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 27 20:40:54 2013 -0500

    [Indic] Help compiler put indic_features table in .rodata

    The overridden "or" operator was preventing the flag expression from
    being const, and putting the table in .data instead or .rodata.

 src/hb-ot-map-private.hh         |  2 ++
 src/hb-ot-shape-complex-indic.cc | 24 ++++++++++++------------
 2 files changed, 14 insertions(+), 12 deletions(-)

commit 778d7f844cb330289830c95431269db06ba1c969
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 27 18:47:26 2013 -0500

    [buffer] Better parse glyph names

 src/hb-buffer-deserialize-json.rl | 9 ++++++---
 src/hb-buffer-deserialize-text.rl | 5 ++++-
 2 files changed, 10 insertions(+), 4 deletions(-)

commit 20b817ac21147e0a8edbf23ef071c2f4ce6c2b95
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 27 18:39:37 2013 -0500

    [buffer] Implement buffer deserialization for format=json

    Using a ragel machine.

 src/Makefile.am                   |   2 +
 src/hb-buffer-deserialize-json.rl | 129
 ++++++++++++++++++++++++++++++++++++++
 src/hb-buffer-deserialize-text.rl |  52 +--------------
 src/hb-buffer-serialize.cc        |  45 +++++++++++--
 src/hb-private.hh                 |   6 +-
 src/hb-shape.cc                   |   2 -
 src/test-buffer-serialize.cc      |   4 +-
 7 files changed, 179 insertions(+), 61 deletions(-)

commit 847794e929831750e97525137ab5e285ccd1064e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 27 17:59:28 2013 -0500

    [buffer] Implement buffer deserialization for format=text

    Using a ragel machine.

 src/Makefile.am                   |   2 +
 src/hb-buffer-deserialize-text.rl | 169
 ++++++++++++++++++++++++++++++++++++++
 src/hb-buffer-private.hh          |   3 +-
 src/hb-buffer-serialize.cc        |  36 +++-----
 src/hb-buffer.cc                  |  13 ++-
 src/hb-buffer.h                   |   2 +-
 src/hb-private.hh                 |   5 +-
 src/hb-shape.cc                   |   9 +-
 src/test-buffer-serialize.cc      |  16 +++-
 9 files changed, 221 insertions(+), 34 deletions(-)

commit 4ee803b42a3baae4b0f295a07cb7ad591a538e4c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 27 16:09:55 2013 -0500

    [buffer] Fix serializing of buffer with invalid direction

 src/hb-buffer-serialize.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e54dd26300f50eb19907a9d39269a363279b3e07
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 27 13:01:02 2013 -0500

    [buffer] Start implementing buffer deserialization

 src/Makefile.am              |  12 ++++-
 src/hb-buffer-serialize.cc   |  64 ++++++++++++++++++++++--
 src/hb-buffer.h              |   2 +-
 src/test-buffer-serialize.cc | 114
 +++++++++++++++++++++++++++++++++++++++++++
 4 files changed, 187 insertions(+), 5 deletions(-)

commit bcc8f32b4c46cd73f591924c64a6f63df6eaf9e7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 27 12:02:42 2013 -0500

    [buffer] Minor

 src/hb-buffer-serialize.cc | 10 +++++++---
 src/hb-buffer.h            |  4 ++--
 2 files changed, 9 insertions(+), 5 deletions(-)

commit d3e14aafff60e1314d0ef66e42cdde6bf949bb66
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 27 11:06:36 2013 -0500

    [buffer] Move buffer serialization code to a new file

 Android.mk                 |   1 +
 src/Makefile.am            |   1 +
 src/hb-buffer-serialize.cc | 251
 +++++++++++++++++++++++++++++++++++++++++++++
 src/hb-buffer.cc           | 228 ----------------------------------------
 4 files changed, 253 insertions(+), 228 deletions(-)

commit 8da51112696ec8641d7dd9184b7ab1dd48458813
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 27 17:48:31 2013 -0500

    Minor

 src/hb-shape.cc | 2 ++
 1 file changed, 2 insertions(+)

commit 94789fd6012125acc8426dd88df97f03b0948ea5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 26 21:22:37 2013 -0500

    [Indic] Sort pre-base reordering consonants with post-forms

    Before, we were marking them as below-form for initial reordering.
    However, there is a rule that says "post consonants should follow
    below consonsnts" for base determination purposes.  Malayalam has
    port-form YA/VA, and RA is pre-base.  As such, for a sequence like
    YA,Virama,YA,Virama,RA, the correct base is at index 0.  But
    because the code was seeing RA as a below-base, it was stopping at
    the second YA as base, instead of jumping it as a post-base.

    By treating prebase-reordering consonants like post-forms, this
    is fixed.

    MALAYALAM went down from 351 to 265.  Other numbers didn't change:

    BENGALI: 353686 out of 354188 tests passed. 502 failed (0.141733%)
    DEVANAGARI: 707305 out of 707394 tests passed. 89 failed (0.0125814%)
    GUJARATI: 366262 out of 366457 tests passed. 195 failed (0.0532122%)
    GURMUKHI: 60706 out of 60747 tests passed. 41 failed (0.067493%)
    KANNADA: 950680 out of 951913 tests passed. 1233 failed (0.129529%)
    KHMER: 299074 out of 299124 tests passed. 50 failed (0.0167155%)
    LAO: 53611 out of 53644 tests passed. 33 failed (0.0615167%)
    MALAYALAM: 1048069 out of 1048334 tests passed. 265 failed
    (0.0252782%)
    ORIYA: 42320 out of 42329 tests passed. 9 failed (0.021262%)
    SINHALA: 271539 out of 271847 tests passed. 308 failed (0.113299%)
    TAMIL: 1091753 out of 1091754 tests passed. 1 failed (9.15957e-05%)
    TELUGU: 970555 out of 970573 tests passed. 18 failed (0.00185457%)
    TIBETAN: 208469 out of 208469 tests passed. 0 failed (0%)

 src/hb-ot-shape-complex-indic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6d69a2cec158061ef097c488d08813c9503824b8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 26 19:35:50 2013 -0500

    [tests] Add Malayalam tests frim cibu

 .../indic/script-malayalam/misc/MANIFEST           |   1 +
 .../indic/script-malayalam/misc/cibu.txt           | 188
 +++++++++++++++++++++
 2 files changed, 189 insertions(+)

commit 1edc6b97b67363d55cfb5914c991ae54d42a6440
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 26 15:01:45 2013 -0500

    Update Android.mk

 Android.mk | 3 +++
 1 file changed, 3 insertions(+)

commit 05d5d3cd63ba2fadfdb62190dd24ef80ee3df40c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 25 23:57:51 2013 -0500

    Fix "comparison between signed and unsigned" warnings

    Patch from Jonathan Kew.

 src/hb-open-type-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 07a52b62115f10caea5c2d174a4272eb9ddb2284
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 25 19:09:57 2013 -0500

    Give up sanitizing after 100 edit requests

    Such fonts are *definitely* really broken.  Give up.
    Limits time spent in sanitize for extremely / deliberately broken
    fonts.  For example, two fonts with these md5sum / names:

      9343f0a1b8c84b8123e7d201cae62ffd.ttf
      eb8c978547f09d368fc204194fb34688.ttf

    were spending over a second in sanitize!  Not anymore.

 src/hb-open-type-private.hh | 7 +++++++
 1 file changed, 7 insertions(+)

commit 29ff25481584e20a2fa39195f295c8eb4bf3bad0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 25 19:04:56 2013 -0500

    Add HB_DEBUG_VERBOSE

    Only affects the verbosity of function name printing right now.

 src/hb-private.hh | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit 05686b5f697ed40dd21b330d044c3c286461fb26
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 25 18:19:20 2013 -0500

    0.9.13

 NEWS         | 29 +++++++++++++++++++++++++++++
 configure.ac |  2 +-
 2 files changed, 30 insertions(+), 1 deletion(-)

commit 9e5ac7b8c02c86a4f28c79173a5237503eaa7115
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 25 17:54:10 2013 -0500

    Fix blob test to match c3ba49b6fa1865e8318926eaa6c0f2063d1053bb

 test/api/test-blob.c | 57
 ++++++++++++++++++++++++++++++++++++++++++++++------
 1 file changed, 51 insertions(+), 6 deletions(-)

commit c3ba49b6fa1865e8318926eaa6c0f2063d1053bb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 25 17:06:35 2013 -0500

    Always create sub-blobs in MEMORY_MODE_READONLY

    This fixes a design bug with sanitize and sub-blobs that can
    cause crashes.  Jonathan and I found and debugged this issue
    when we tested a corrupt font with the md5sum / filename:
    ea395483d37af0cb933f40689ff7b60a.  Two hours of intense
    debugging we found out that the font has overlapping GSUB/GPOS
    tables, and as such, sanitizing the second table can modify
    the first one, which can cause all kinds of undefined behavior.

    The correct way to fix this is to make sure sub-blobs are
    always created readonly, since we consider the parent blob
    to be a shared resource and can't modify it, even if it *is*
    writable.

    This essentially makes the READONLY_MAY_MAKE_WRITABLE mode
    unused...  Maybe we should simply remove / deprecate it.

 src/hb-blob.cc |  2 +-
 src/hb-blob.h  | 26 ++++++++++++++++++++++++++
 2 files changed, 27 insertions(+), 1 deletion(-)

commit 57542d7f411c71d9b8110ce6f64090b2c0f6a925
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 21 15:54:05 2013 -0500

    Minor

 src/hb-ot-layout-private.hh | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit d46606e119b48dcca375d6313abd0f93ba5d09c3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 21 15:39:57 2013 -0500

    Port TrueType-kerning to use skippy iterator

    It skips joiners and default ignorables now.  Skips marks too,
    but only
    if there is proper GDEF classes for marks.

 src/hb-ot-shape-fallback.cc | 50
 +++++++++++++++++++++++++--------------------
 1 file changed, 28 insertions(+), 22 deletions(-)

commit 722e8b857eafc52e07dee5d9b253b88ed5c5c8ed
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 21 15:37:51 2013 -0500

    Fixup previous commit

    Was not decreasing num_items.  Ouch!

 src/hb-ot-layout-gsubgpos-private.hh | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

commit ba87b8fc89bf745068ccd19264a2631ea0904846
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 21 15:23:39 2013 -0500

    Move code around

 src/hb-ot-shape-fallback-private.hh |  5 +++++
 src/hb-ot-shape-fallback.cc         | 40
 +++++++++++++++++++++++++++++++++++++
 src/hb-ot-shape.cc                  | 38
 +----------------------------------
 3 files changed, 46 insertions(+), 37 deletions(-)

commit 2b2a6e8944144755ab641f2842e36d9a847719f3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 21 15:07:03 2013 -0500

    [OTLayout] Correctly skip Default_Ignorable when match_func not set

    When a match_func was not set on the matcher_t object (ie. from GPOS),
    then the Default_Ignorables (including joiners) were never skipped.
    This meant that they were not skipped as they should during GPOS
    matching.  Fix that.

    A few Indic numbers have "regressed": BENGALI and DEVANAGARI went
    up from 290 and 58 respectively, but in both cases new results are
    superior to Uniscribe, as they apply GPOS when we weren't (and
    Uniscribe isn't) before.
    BENGALI: 353686 out of 354188 tests passed. 502 failed (0.141733%)
    DEVANAGARI: 707305 out of 707394 tests passed. 89 failed (0.0125814%)
    GUJARATI: 366262 out of 366457 tests passed. 195 failed (0.0532122%)
    GURMUKHI: 60706 out of 60747 tests passed. 41 failed (0.067493%)
    KANNADA: 950680 out of 951913 tests passed. 1233 failed (0.129529%)
    KHMER: 299074 out of 299124 tests passed. 50 failed (0.0167155%)
    LAO: 53611 out of 53644 tests passed. 33 failed (0.0615167%)
    MALAYALAM: 1047983 out of 1048334 tests passed. 351 failed
    (0.0334817%)
    ORIYA: 42320 out of 42329 tests passed. 9 failed (0.021262%)
    SINHALA: 271539 out of 271847 tests passed. 308 failed (0.113299%)
    TAMIL: 1091753 out of 1091754 tests passed. 1 failed (9.15957e-05%)
    TELUGU: 970555 out of 970573 tests passed. 18 failed (0.00185457%)
    TIBETAN: 208469 out of 208469 tests passed. 0 failed (0%)

 src/hb-ot-layout-gsubgpos-private.hh | 32
 ++++++++++++++++++++++----------
 1 file changed, 22 insertions(+), 10 deletions(-)

commit ff93ac8cb24cbc3d9dc1a2bfb0faa88950f4a507
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 21 14:51:40 2013 -0500

    Minor

 src/hb-ot-layout-gsubgpos-private.hh | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

commit e0486fc1affd3796fb8f664e2e7fc208f1d2106c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 19 00:58:10 2013 -0500

    [tests] Add Myanmar torture tests from Martin Hosken

 .../shaper-myanmar/script-myanmar/misc/MANIFEST    |  1 +
 .../shaper-myanmar/script-myanmar/misc/torture.txt | 23
 ++++++++++++++++++++++
 2 files changed, 24 insertions(+)

commit a3df9a7bf87aeba7a3d6110cd5e01a65bd0b16d0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 19 00:50:46 2013 -0500

    Minor

    Moving files around

 test/shaping/texts/in-tree/MANIFEST                                     |
 2 --
 test/shaping/texts/in-tree/shaper-default/MANIFEST                      |
 2 ++
 .../in-tree/{script-default => shaper-default/script-hangul}/MANIFEST
 | 0
 .../{script-default => shaper-default/script-hangul}/misc/MANIFEST
 | 0
 .../{shaper-hangul => shaper-default}/script-hangul/misc/misc.txt
 | 0
 .../script-hangul => shaper-default/script-tibetan}/MANIFEST            |
 0
 .../script-hangul => shaper-default/script-tibetan}/misc/MANIFEST
 | 0
 .../{script-default => shaper-default/script-tibetan}/misc/misc.txt
 | 0
 test/shaping/texts/in-tree/shaper-hangul/MANIFEST                       |
 1 -
 9 files changed, 2 insertions(+), 3 deletions(-)

commit b1f440759161cb5a54e1b1b910f3a8383b8e8472
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Feb 17 12:12:37 2013 -0500

    [SEA] Fix order of pre-base reordering Ra and left matras

    The code was confused because it was expecting left matra to have
    POS_PRE_M, like we do in the Myanmar shaper, but that is not what
    we were doing in this shaper.  Rewrite to rely on category only.

    Test case: U+AA06,U+AA34,U+AA2F

 src/hb-ot-shape-complex-sea.cc                              | 13
 +++++++------
 .../texts/in-tree/shaper-sea/script-cham/misc/misc.txt      |  1 +
 2 files changed, 8 insertions(+), 6 deletions(-)

commit 99fa9ea020f26ed2697f38a7690ee1e1b5d946c4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 15 11:47:24 2013 -0500

    Minor

 src/hb-ot-layout-gsub-table.hh | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

commit 27589620ba2dcf356fd7fa21cd80221a07803202
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 15 11:47:09 2013 -0500

    [OTLayout] Remove unused code

 src/hb-open-type-private.hh | 5 -----
 1 file changed, 5 deletions(-)

commit ebb77b9c5e357ff7c9badb0f4bf1c3a965c3e91d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 15 09:33:10 2013 -0500

    Remove TODO items that don't make sense

    The spec says those features need to be disabled by default.

 TODO | 2 --
 1 file changed, 2 deletions(-)

commit c2a1cdc4c4cc51f4680ebc4ec2c462cb660f9492
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 15 09:27:02 2013 -0500

    [Arabic] Fix shaping of left-joining 'Phags-Pa U+A872

    This is the first character in Unicode to have Arabic left-joining
    behavior.  Update the machine to recognize that.

    Test case: U+A840,U+A872,U+A840.

 src/hb-ot-shape-complex-arabic.cc | 40
 +++++++++++++++++++--------------------
 1 file changed, 19 insertions(+), 21 deletions(-)

commit 05ac87813d17d9ebbfa315eee3f80f25b53135c5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 15 09:26:41 2013 -0500

    [tests] Add Syriac Alaph shaping test cases

 .../shaper-arabic/script-syriac/misc/MANIFEST      |  1 +
 .../shaper-arabic/script-syriac/misc/alaph.txt     | 98
 ++++++++++++++++++++++
 2 files changed, 99 insertions(+)

commit c462b32dcb883a7aca066af24c4d28c7a2b7fa28
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 15 07:51:47 2013 -0500

    Disable automatic segment properties guessing

    Before, if one called hb_shape() without setting script, language, and
    direction on the buffer, hb_shape() was calling
    hb_buffer_guess_segment_properties() on the user's behalf to guess
    these.

    This is very dangerous, since any serious user of HarfBuzz must set
    these properly (specially important is direction).  So now, we don't
    guess properties by default.  People not setting direction will get
    an abort() now.  If the old behavior is desired (fragile, good for
    simple testing only), users can call
    hb_buffer_guess_segment_properties() on the buffer just before calling
    hb_shape().

 src/hb-fallback-shape.cc | 1 -
 src/hb-ot-shape.cc       | 2 --
 src/hb-shape.cc          | 2 --
 util/options.hh          | 1 +
 4 files changed, 1 insertion(+), 5 deletions(-)

commit 7abddbb47a489aaac8e76ac6e700cd815739b1d2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 15 07:46:57 2013 -0500

    Add assertions for a couple programmer errors

 src/hb-shape-plan.cc | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

commit 038c98f6866fe1177b04bd2ae3bb461b2f0fd1ed
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 15 07:41:07 2013 -0500

    Allow disabling of TrueType kerning

    Responds to the same feature tag that GPOS kerning does:
    'kern' for horizontal and 'vkrn' for vertical.

 TODO               |  2 --
 src/hb-ot-shape.cc | 55
 ++++++++++++++++++++++++++++++++++--------------------
 2 files changed, 35 insertions(+), 22 deletions(-)

commit 398238a2526d322eb79e255c24634a275473920f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 15 07:40:10 2013 -0500

    Fix partial disabling of default-on features

    Surprisingly, if user ever tried to turn a default feature off
    partially
    (say, disable liga for a range), the feature was being turned off
    globally!  Fixed now.

 src/hb-ot-map.cc | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

commit cb90b1bbe6d27ca6968b70d2dbfea7ab7fb73293
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 15 07:02:08 2013 -0500

    [OTLayout] Respect syllable boundaries for backtrack/lookahead
    matching

    Originally we meant to match backtrack/lookahead across syllable
    boundaries.  But a bug in the code meant that this was NOT done for
    backtrack.  We "fixed" that in
    2c7d0b6b80d412de3fddd443ed1a485ea1cbb03c,
    but that broke Myanmar shaping.

    We now believe that for Indic-like shapers (which is where syllables
    are
    used), all basic shaping forms should be fully contained within their
    syllables, so now we limit backtrack/lookahead matching to the
    syllable
    too.  Unbreaks Myanmar.

 src/hb-ot-layout-gsubgpos-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit ee9c3a17d0bf263c5eee479fd778db97cff8e189
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 15 06:22:26 2013 -0500

    Minor refactoring

 src/hb-ot-shape-complex-myanmar.cc | 36
 ++++++++++--------------------------
 src/hb-ot-shape-complex-sea.cc     | 37
 ++++++++++---------------------------
 src/hb-ot-shape.cc                 | 17 ++++++-----------
 3 files changed, 26 insertions(+), 64 deletions(-)

commit cfc507c5432e6327e8484b07b9e091212653bc92
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 14 10:40:12 2013 -0500

    [Indic-like] Disable automatic joiner handling for basic shaping
    features

    Not for Arabic, but for Indic-like scripts.  ZWJ/ZWNJ have special
    meanings in those scripts, so let font lookups take full control.

    This undoes the regression caused by automatic-joiners handling
    introduced two commits ago.

    We only disable automatic joiner handling for the "basic shaping
    features" of Indic, Myanmar, and SEAsian shapers.  The "presentation
    forms" and other features are still applied with automatic-joiner
    handling.

    This change also changes the test suite failure statistics, such that
    a few scripts show more "failures".  The most affected is Kannada.
    However, upon inspection, we believe that in most, if not all, of the
    new failures, we are producing results superior to Uniscribe.  Hard to
    count those!

    Here's an example of what is fixed by the recent joiner-handling
    changes:

      https://bugs.freedesktop.org/show_bug.cgi?id=58714

    New numbers, for future reference:

    BENGALI: 353892 out of 354188 tests passed. 296 failed (0.0835714%)
    DEVANAGARI: 707336 out of 707394 tests passed. 58 failed (0.00819911%)
    GUJARATI: 366262 out of 366457 tests passed. 195 failed (0.0532122%)
    GURMUKHI: 60706 out of 60747 tests passed. 41 failed (0.067493%)
    KANNADA: 950680 out of 951913 tests passed. 1233 failed (0.129529%)
    KHMER: 299074 out of 299124 tests passed. 50 failed (0.0167155%)
    LAO: 53611 out of 53644 tests passed. 33 failed (0.0615167%)
    MALAYALAM: 1047983 out of 1048334 tests passed. 351 failed
    (0.0334817%)
    ORIYA: 42320 out of 42329 tests passed. 9 failed (0.021262%)
    SINHALA: 271539 out of 271847 tests passed. 308 failed (0.113299%)
    TAMIL: 1091753 out of 1091754 tests passed. 1 failed (9.15957e-05%)
    TELUGU: 970555 out of 970573 tests passed. 18 failed (0.00185457%)
    TIBETAN: 208469 out of 208469 tests passed. 0 failed (0%)

 src/hb-ot-layout-gsubgpos-private.hh       | 35
 +++++++++++++++++++-----------
 src/hb-ot-layout-private.hh                |  6 +++--
 src/hb-ot-layout.cc                        | 10 +++++----
 src/hb-ot-map-private.hh                   | 12 ++++++----
 src/hb-ot-map.cc                           | 32
 +++++++++++++++++++++------
 src/hb-ot-shape-complex-arabic-fallback.hh |  2 +-
 src/hb-ot-shape-complex-indic.cc           | 29 +++++++++++++------------
 src/hb-ot-shape-complex-myanmar.cc         |  4 ++--
 src/hb-ot-shape-complex-sea.cc             |  4 ++--
 9 files changed, 85 insertions(+), 49 deletions(-)

commit 0b45479198d61d5135dad771e9c68408eb13f930
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 14 10:46:52 2013 -0500

    [OTLayout] Add fine-grained control over ZWJ matching

    Not used yet.  Next commit...

 src/hb-ot-layout-gsubgpos-private.hh | 10 ++++++++--
 src/hb-ot-layout-private.hh          | 11 +++++++++--
 2 files changed, 17 insertions(+), 4 deletions(-)

commit 607feb7cff0e50f8738d2e49ca463fc9d7d494de
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 14 07:43:13 2013 -0500

    [OTLayout] Ignore default-ignorables when matching GSUB/GPOS

    When matching lookups, be smart about default-ignorable characters.
    In particular:

    Do nothing specific about ZWNJ, but for the other default-ignorables:

    If the lookup in question uses the ignorable character in a sequence,
    then match it as we used to do.  However, if the sequence match will
    fail because the default-ignorable blocked it, try skipping the
    ignorable character and continue.

    The most immediate thing it means is that if Lam-Alef forms a
    ligature,
    then Lam-ZWJ-Alef will do to.  Finally!

    One exception: when matching for GPOS, or for backtrack/lookahead of
    GSUB, we ignore ZWNJ too.  That's the right thing to do.

    It certainly is possible to build fonts that this feature will result
    in undesirable glyphs, but it's hard to think of a real-world case
    that that would happen.

    This *does* break Indic shaping right now, since Indic Unicode has
    specific rules for what ZWJ/ZWNJ mean, and skipping ZWJ is breaking
    those rules.  That will be fixed in upcoming commits.

 src/hb-ot-layout-gpos-table.hh       |   1 +
 src/hb-ot-layout-gsub-table.hh       |   2 +-
 src/hb-ot-layout-gsubgpos-private.hh | 279
 ++++++++++++++++++++++++-----------
 src/hb-ot-layout-private.hh          |  45 ++++++
 src/hb-ot-shape-private.hh           |  44 ------
 5 files changed, 237 insertions(+), 134 deletions(-)

commit ec5448667b30ad662401c2b4f5fc0da524c013fd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 14 11:25:10 2013 -0500

    Add hb_ot_map_feature_flags_t

    Code cleanup.  No (intended) functional change.

 src/hb-ot-map-private.hh           | 29 +++++++++++++++++---
 src/hb-ot-map.cc                   | 24 ++++++++---------
 src/hb-ot-shape-complex-arabic.cc  |  4 +--
 src/hb-ot-shape-complex-indic.cc   | 55
 +++++++++++++++++++-------------------
 src/hb-ot-shape-complex-myanmar.cc |  4 +--
 src/hb-ot-shape-complex-sea.cc     |  2 +-
 src/hb-ot-shape.cc                 |  6 +++--
 7 files changed, 74 insertions(+), 50 deletions(-)

commit e7ffcfafb1108801ac504f18f820e497226bf07f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 14 11:05:56 2013 -0500

    Clean-up add_bool_feature

 src/hb-ot-map-private.hh           |  4 ++--
 src/hb-ot-shape-complex-arabic.cc  | 16 ++++++++--------
 src/hb-ot-shape-complex-default.cc |  2 +-
 src/hb-ot-shape-complex-indic.cc   |  8 ++++----
 src/hb-ot-shape-complex-myanmar.cc |  8 ++++----
 src/hb-ot-shape-complex-sea.cc     |  8 ++++----
 src/hb-ot-shape.cc                 | 10 +++++-----
 7 files changed, 28 insertions(+), 28 deletions(-)

commit e7562f53fe6a506d2c6d59d6688e4fa468bba462
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 14 11:05:36 2013 -0500

    Fix compile warnings for ragel-generated machines

 src/hb-ot-shape-complex-indic-machine.rl   | 2 +-
 src/hb-ot-shape-complex-myanmar-machine.rl | 2 +-
 src/hb-ot-shape-complex-sea-machine.rl     | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

commit 4e51df73a337f7232a7dfa85df78a4f19b24771b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 14 07:42:42 2013 -0500

    [OTLayout] Remove unused function

 src/hb-ot-layout-gsubgpos-private.hh | 5 -----
 1 file changed, 5 deletions(-)

commit 8820bb235b1f63e4d93c8a2f5c08b44d89e06b78
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 14 07:41:03 2013 -0500

    [OTLayout] Port apply_lookup to skippy_iter

 src/hb-ot-layout-gsubgpos-private.hh | 50
 +++++++++++++++++++++++++-----------
 1 file changed, 35 insertions(+), 15 deletions(-)

commit dfca269f069dae2f99990dac24da15d316eccb9f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 14 07:20:52 2013 -0500

    [OTLayout] Port ligate_input to skippy_iter

 src/hb-ot-layout-gsubgpos-private.hh | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 7e53415c2d8859e8b5948a2edb38c39a8f78b825
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 14 06:24:30 2013 -0500

    [OTLayout] Minor fix for apply_lookup()

    Should NOT change behavior, since first glyph is a match.

 src/hb-ot-layout-gsubgpos-private.hh | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

commit 6880f7e19d44c50e45ecb86d26381aad956d9acb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 13 12:17:25 2013 -0500

    [OTLayout] Make table type known to apply context

 src/hb-ot-layout-gsubgpos-private.hh       | 5 ++++-
 src/hb-ot-layout.cc                        | 4 ++--
 src/hb-ot-shape-complex-arabic-fallback.hh | 2 +-
 3 files changed, 7 insertions(+), 4 deletions(-)

commit 2c7d0b6b80d412de3fddd443ed1a485ea1cbb03c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 13 12:10:08 2013 -0500

    [OTLayou] Unbreak backtrack matching

    Was introduced by 28b9d502bb69a8045818d5f6113ded9c59a56bd7.

 src/hb-ot-layout-gsubgpos-private.hh | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

commit c074ebc466dcc9bcc0d8a5dd7e942dea974ff718
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 13 11:22:42 2013 -0500

    [OTLayout] Minor refactoring

 src/hb-ot-layout-gpos-table.hh       |  9 ++++++---
 src/hb-ot-layout-gsubgpos-private.hh | 30 +++++++++++++++++-------------
 2 files changed, 23 insertions(+), 16 deletions(-)

commit 407fc12466ef460d0edf11b89f0d04c4d724875f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 13 11:13:06 2013 -0500

    [OTLayout] Remove bogus caching of glyph property

 src/hb-ot-layout-gpos-table.hh       | 21 ++++++++-----------
 src/hb-ot-layout-gsub-table.hh       |  7 +++----
 src/hb-ot-layout-gsubgpos-private.hh | 40
 ++++++++++++++----------------------
 3 files changed, 26 insertions(+), 42 deletions(-)

commit 6b1e3502e23c110dd810f854ba021f83baab1548
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 13 11:02:54 2013 -0500

    Remember ZWNJ

    To be used in upcoming changes.

 src/hb-ot-shape-private.hh | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

commit 1f91c39677f840a1f630696d16d083060069abf5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 13 09:38:40 2013 -0500

    Indent

 src/hb-ot-shape-complex-indic.cc | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

commit a0cb9f33ee064628debe8e848094dfd661334640
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 13 09:26:55 2013 -0500

    [Indic] Improve base finding in final_reordering

    Fixes 5 Malayalam failures!

    MALAYALAM: 1048016 out of 1048334 tests passed. 318 failed
    (0.0303338%)

 src/hb-ot-shape-complex-indic.cc | 7 +++++++
 1 file changed, 7 insertions(+)

commit 126f39cd16cea87b2696f66467c83a585bd4c2cf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 13 08:29:21 2013 -0500

    Add more dot-reph tests

 .../shaper-indic/indic/script-malayalam/misc/dot-reph.txt      |
 10 ++++++++++
 1 file changed, 10 insertions(+)

commit f22b7e77783fa2f44365e0fe6413c4474c07048d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 13 07:32:46 2013 -0500

    [Indic] Track base position when reordering things

    Ouch, how did things ever work without this?!  The added test that
    has a
    dot-reph as well as a pre-base reordering Ra perfectly demonstrates
    the
    bug (tested with Nirmala font from Win8 for example).  Testing
    suggests
    that Win8 shaper has the *exact* same bug / behavior that we used to
    have.  Odd.

 src/hb-ot-shape-complex-indic.cc                                    |
 6 ++++++
 .../in-tree/shaper-indic/indic/script-malayalam/misc/dot-reph.txt   | 1 +
 2 files changed, 7 insertions(+)

commit bc11de144c0a7a95fa0945aa7f053d8117af282a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 13 05:59:06 2013 -0500

    [SEA] Don't zero any mark advances

    Keep the logic simple, easier to explain to font developers.

 src/hb-ot-shape-complex-sea.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0291a6528685f1f593707655943fb2360579cb9e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 13 05:57:24 2013 -0500

    Further adjust mark advance zeroing

    This is a followup to 568000274c8edb5f41bc4f876ce21fcc8bdaeed8.
    Looks like in the Latin shaper, Uniscribe zeroes all Unicode NSM
    advances *after* GPOS, not before.  Match that.

    Can be tested using DejaVu Sans Mono, since that font has GPOS
    rules to zero the mark advances on its own.

 src/hb-ot-shape.cc | 33 +++++++++++++++++++++++----------
 1 file changed, 23 insertions(+), 10 deletions(-)

commit 85c51ec2e1d518019e32801ae38659c74fc20d80
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 12 18:17:39 2013 -0500

    [Indic] Fix Eyelash Ra with old Devanagari spec

 src/hb-ot-shape-complex-indic.cc | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

commit cc5f24cde079b451799562b3af7ce06d932cbe6b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 12 18:17:12 2013 -0500

    [tests] Add tests for Devanagary Eyelash Ra

    Currently broken with Sanskrit 2003 font.

 .../texts/in-tree/shaper-indic/indic/script-devanagari/misc/MANIFEST   |
 1 +
 .../in-tree/shaper-indic/indic/script-devanagari/misc/eyelash.txt      |
 3 +++
 2 files changed, 4 insertions(+)

commit 63e48bc33b68f940c351af623a55a4cf650db102
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 12 17:57:49 2013 -0500

    [Indic] Apply 'blwf' before 'half'

    This reverts 167b625d988b74572d6b2f646c285b666b650d49.  It didn't
    matter before, but that's going to change with next commit.

 src/hb-ot-shape-complex-indic.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 70d656571194d2bd32671244530edbe159722cec
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 12 18:01:21 2013 -0500

    [Indic] Apply 'vatu' before 'cjct'

    This essentially reverts 1d6846db9ebf84561bb30a4e48c6c43184914099,
    but that commit is from way back when.  We should be better
    following the spec order now again.

 src/hb-ot-shape-complex-indic.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 64bb2ae857cfda35dd71c7f1e962722069674ec6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 12 16:29:25 2013 -0500

    Didn't mean to push this out

    Ouch!

 test/shaping/hb_test_tools.py | 1 -
 1 file changed, 1 deletion(-)

commit f9b660534c269d2257d6b5e8ec2173ee71668f2f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 12 16:13:56 2013 -0500

    [Myanmar] Use master Indic table for syllable data

 src/hb-ot-shape-complex-myanmar.cc | 144
 +++++++++----------------------------
 test/shaping/hb_test_tools.py      |   1 +
 2 files changed, 35 insertions(+), 110 deletions(-)

commit f60793e854393c32337a483c5d1700bf17d767fd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 12 15:45:59 2013 -0500

    [tests] Add Cham sample

 test/shaping/texts/in-tree/shaper-sea/script-cham/misc/misc.txt | 1 +
 1 file changed, 1 insertion(+)

commit e2aab4b5db88c368c11cee81368b9ad41399e585
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 12 15:35:32 2013 -0500

    Improve checks for setmode()

    As reported by Jonathan, OS X has setmode() that is something other
    than what setmode() is on Win32.  So, limit invocation to Windows
    platforms only.

 configure.ac    | 4 ++--
 util/options.cc | 4 ++--
 util/options.hh | 2 +-
 3 files changed, 5 insertions(+), 5 deletions(-)

commit a6c1e040e594faeefd61b456ef995c7886cdea78
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 12 15:31:58 2013 -0500

    Improve check for Windows platforms

    Instead of checking for compiler, check for platform.

 src/hb-atomic-private.hh | 2 +-
 src/hb-mutex-private.hh  | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 9e1f80ab3eea4a74cdaa6a390e4925a479ece1c5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 12 15:28:21 2013 -0500

    [SEA] Treat Consonant_Final like Consonant_Medial

 src/hb-ot-shape-complex-indic-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit bab02d339f39ed5168daaef9461227f78e596a2f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 12 15:26:45 2013 -0500

    Rename HB_OT_INDIC_OPTIONS env var to HB_OPTIONS

    The Myanmar shaper now respects the uniscribe-bug-compatibility
    option too.

 src/hb-common.cc                   | 20 ++++++++++++--
 src/hb-ot-shape-complex-indic.cc   | 53
 ++++----------------------------------
 src/hb-ot-shape-complex-myanmar.cc |  7 ++---
 src/hb-private.hh                  | 29 +++++++++++++++++++++
 4 files changed, 54 insertions(+), 55 deletions(-)

commit 3a83d33ec0b1be6f5992816ff5ebb0f43c8dff00
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 12 12:14:10 2013 -0500

    Add South-East Asian shaper

    Handles Tai Tham, Cham, and New Tai Lue for now.

 src/Makefile.am                                    |  12 +-
 src/gen-indic-table.py                             |   9 +-
 src/hb-ot-shape-complex-indic-private.hh           | 241 +------------
 ...table.hh => hb-ot-shape-complex-indic-table.cc} |   9 +-
 src/hb-ot-shape-complex-indic.cc                   | 239 ++++++++++++
 src/hb-ot-shape-complex-myanmar.cc                 |   2 +-
 src/hb-ot-shape-complex-private.hh                 |  28 +-
 src/hb-ot-shape-complex-sea-machine.rl             | 102 ++++++
 src/hb-ot-shape-complex-sea.cc                     | 400
 +++++++++++++++++++++
 test/shaping/texts/in-tree/MANIFEST                |   1 +
 .../in-tree/shaper-indic/south-east-asian/MANIFEST |   1 -
 test/shaping/texts/in-tree/shaper-myanmar/MANIFEST |   1 +
 test/shaping/texts/in-tree/shaper-sea/MANIFEST     |   3 +
 .../script-cham}/MANIFEST                          |   0
 .../script-cham}/misc/MANIFEST                     |   0
 .../in-tree/shaper-sea/script-cham/misc/misc.txt   |   1 +
 .../in-tree/shaper-sea/script-new-tai-lue/MANIFEST |   1 +
 .../shaper-sea/script-new-tai-lue/misc/MANIFEST    |   1 +
 .../script-new-tai-lue/misc/misc.txt               |   0
 .../in-tree/shaper-sea/script-tai-tham/MANIFEST    |   1 +
 .../shaper-sea/script-tai-tham/misc/MANIFEST       |   1 +
 .../shaper-sea/script-tai-tham/misc/misc.txt       |   2 +
 22 files changed, 792 insertions(+), 263 deletions(-)

commit fb960212063016656dfaba83f072c81d1efc3202
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 12 10:33:58 2013 -0500

    Minor test reshufflings

 test/shaping/texts/in-tree/MANIFEST
 | 1 +
 .../{shaper-indic/south-asian/script-tibetan => script-default}/MANIFEST
 | 0
 .../south-asian/script-tibetan => script-default}/misc/MANIFEST
 | 0
 .../south-asian/script-tibetan => script-default}/misc/misc.txt
 | 0
 test/shaping/texts/in-tree/shaper-indic/MANIFEST
 | 1 -
 test/shaping/texts/in-tree/shaper-indic/south-asian/MANIFEST
 | 1 -
 test/shaping/texts/in-tree/shaper-indic/south-east-asian/MANIFEST
 | 1 -
 .../texts/in-tree/shaper-indic/south-east-asian/script-thai/MANIFEST
 | 1 -
 .../in-tree/shaper-indic/south-east-asian/script-thai/misc/MANIFEST
 | 0
 9 files changed, 1 insertion(+), 4 deletions(-)

commit 5676d5d52784e16068ae483103d59111a8081854
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 12 10:31:14 2013 -0500

    [Indic] Make sure New Tai Lue works!

 src/hb-ot-shape-complex-private.hh                           | 12
 ++++++++----
 .../texts/in-tree/shaper-indic/south-east-asian/MANIFEST     |  1 +
 .../south-east-asian/script-new-tai-lue/MANIFEST             |  1 +
 .../south-east-asian/script-new-tai-lue/misc/MANIFEST        |  1 +
 .../south-east-asian/script-new-tai-lue/misc/misc.txt        |  1 +
 5 files changed, 12 insertions(+), 4 deletions(-)

commit 568000274c8edb5f41bc4f876ce21fcc8bdaeed8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 12 09:44:57 2013 -0500

    Adjust mark advance-width zeroing logic for Myanmar

    Before, we were zeroing advance width of attached marks for
    non-Indic scripts, and not doing it for Indic.

    We have now three different behaviors, which seem to better
    reflect what Uniscribe is doing:

      - For Indic, no explicit zeroing happens whatsoever, which
        is the same as before,

      - For Myanmar, zero advance width of glyphs marked as marks
        *in GDEF*, and do that *before* applying GPOS.  This seems
        to be what the new Win8 Myanmar shaper does,

      - For everything else, zero advance width of glyphs that are
        from General_Category=Mn Unicode characters, and do so
        before applying GPOS.  This seems to be what Uniscribe does
        for Latin at least.

    With these changes, positioning of all tests matches for Myanmar,
    except for the glitch in Uniscribe not applying 'mark'.  See preivous
    commit.

 src/hb-ot-layout-gpos-table.hh     | 12 ++++--------
 src/hb-ot-layout-private.hh        |  3 +--
 src/hb-ot-layout.cc                |  4 ++--
 src/hb-ot-shape-complex-arabic.cc  |  2 +-
 src/hb-ot-shape-complex-default.cc |  2 +-
 src/hb-ot-shape-complex-indic.cc   |  2 +-
 src/hb-ot-shape-complex-myanmar.cc |  2 +-
 src/hb-ot-shape-complex-private.hh |  9 ++++++++-
 src/hb-ot-shape-complex-thai.cc    |  2 +-
 src/hb-ot-shape.cc                 | 31 +++++++++++++++++++++++++++++--
 10 files changed, 49 insertions(+), 20 deletions(-)

commit 99749ca8e0c4c8dbea4620f07c4d0e6d1515cc65
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 12 09:44:35 2013 -0500

    [Myanmar] Add note re Uniscribe NOT applying 'mark'

 src/hb-ot-shape-complex-myanmar.cc | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

commit b8427801381180da9611b2e3e0f0b3514274de81
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 11 17:02:17 2013 -0500

    Minor

 src/hb-atomic-private.hh | 2 +-
 src/hb-mutex-private.hh  | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 419c933ed1b5d97c7561546536ef5810a7b0ebd0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 11 16:16:16 2013 -0500

    [Myanmar] Fix handling of Punctuation and Symbol types

    Testing with "clusters" now on par with testing without them.  15
    failures both.

 src/hb-ot-shape-complex-myanmar.cc | 12 ++++++++++++
 1 file changed, 12 insertions(+)

commit 0572c1410a9cb0ac5dd5dc84a8034698cc5c4892
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 11 16:06:02 2013 -0500

    [Myanmar] Fixup handling of joiners and GB characters

 src/hb-ot-shape-complex-myanmar-machine.rl |  6 ++----
 src/hb-ot-shape-complex-myanmar.cc         | 19 +++++++++++++++++--
 2 files changed, 19 insertions(+), 6 deletions(-)

commit 1c8654ead41ca746d577549c92d2a41c594ab639
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 11 14:27:02 2013 -0500

    [Myanmar] Prevent reordering between Asat and Dot below

    Implemented as a hack for now.  Myanmar failures down from 23 to 15.

    MYANMAR: 1123868 out of 1123883 tests passed. 15 failed (0.00133466%)

    The remaining 15 cases are all where the syllable is wrong according
    to
    the OpenType spec.  We insert dottedcircle.  Uniscribe fails to
    do that,
    but it also fails to reorder the prebase-reordering medial-Ra.  So it
    gets it wrong.

 src/hb-unicode-private.hh | 3 +++
 1 file changed, 3 insertions(+)

commit bed687f886b8def06642ad986648e9149a935add
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 11 14:24:03 2013 -0500

    Shuffle test data around

 test/shaping/texts/in-tree/MANIFEST
 | 1 +
 test/shaping/texts/in-tree/shaper-indic/south-east-asian/MANIFEST
 | 1 -
 .../in-tree/shaper-indic/south-east-asian/script-thai/misc/MANIFEST
 | 1 -
 .../south-east-asian => shaper-myanmar}/script-myanmar/MANIFEST
 | 0
 .../south-east-asian => shaper-myanmar}/script-myanmar/misc/MANIFEST
 | 0
 .../south-east-asian => shaper-myanmar}/script-myanmar/misc/misc.txt
 | 0
 .../south-east-asian => shaper-myanmar}/script-myanmar/misc/utn11.txt
 | 0
 test/shaping/texts/in-tree/shaper-thai/script-thai/misc/MANIFEST
 | 1 +
 .../south-east-asian => shaper-thai}/script-thai/misc/misc.txt
 | 0
 9 files changed, 2 insertions(+), 2 deletions(-)

commit 98628cac9f733f2674d6409954cddb7d0634c233
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 11 13:36:23 2013 -0500

    Add Win8-style Myanmar shaper

    Myanmar failures down from 51% to 0.00204648%!

    MYANMAR: 1123860 out of 1123883 tests passed. 23 failed (0.00204648%)

 src/Makefile.am                            |  14 +-
 src/hb-ot-shape-complex-indic.cc           |   2 -
 src/hb-ot-shape-complex-myanmar-machine.rl | 127 ++++++
 src/hb-ot-shape-complex-myanmar.cc         | 599
 +++++++++++++++++++++++++++++
 src/hb-ot-shape-complex-private.hh         |   5 +-
 5 files changed, 740 insertions(+), 7 deletions(-)

commit 1df56449586bd32275a6fa69dcadd5fb77a84f82
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 11 14:17:54 2013 -0500

    Minor

 src/hb-ot-shape-complex-indic.cc | 3 ---
 1 file changed, 3 deletions(-)

commit 54f7b4d9ec13f8454aa298534da318c023fa3c63
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 11 13:27:17 2013 -0500

    [OTLayout] Respect lookup-flags skipping over non-mark glyphs

    Before, when matching ligatures, we never skipping over base / liga
    glyphs even if that was what the LookupFlags asked for.

    Fixed now.  We carefully reviewed all instances of this, and
    tested with
    Amiri as well as some Indic scripts, and are confident that this
    should
    NOT break anyone's fonts.  It's also how Uniscribe does it, from what
    we can tell.

 src/hb-ot-layout-gpos-table.hh       |  2 +-
 src/hb-ot-layout-gsubgpos-private.hh | 25 ++++++++++---------------
 2 files changed, 11 insertions(+), 16 deletions(-)

commit 9082efc4aacb34de8574d6a4a3c037987df58bd8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 11 13:14:15 2013 -0500

    [OTLayout] s/mark_skipping/skipping/

    In aticipation of upcoming changes.

 src/hb-ot-layout-gpos-table.hh       | 12 ++++++------
 src/hb-ot-layout-gsubgpos-private.hh | 28 ++++++++++++++--------------
 2 files changed, 20 insertions(+), 20 deletions(-)

commit 9621e0ba294c9cc6d458bbf632e63e92fda71e10
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 11 06:58:27 2013 -0500

    [Indic] Fix bug introduced in 8b217f5ac54aa0dcbba2dd6d59aa89dde33e56c2

    Was breaking reph formation logic when the Ra is the only consonant.
    Devanagari regression fixed.  Down to 57 failures again.  Ouch.

 src/hb-ot-shape-complex-indic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6e74c64211b6aaac48bae8c87f9420d8dc03fd93
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 11 06:50:17 2013 -0500

    Improve normalization heuristic

    Before, for most scripts, we were not trying to recompose two
    characters
    if the second one had ccc=0.  That fails for Myanmar where U+1026
    decomposes to U+1025,U+102E, both of which have ccc=0.  However, we do
    want to try to recompose those.  We now check whether the second is a
    mark, using general category instead.

    At the same time, remove optimization that was conflicting with this.

    [Let the Ngapi hackfest begin!]

 src/hb-ot-shape-normalize.cc | 39 +++++++++++++--------------------------
 1 file changed, 13 insertions(+), 26 deletions(-)

commit 614242efb043f2ed78916377138d456279a20a54
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 6 23:45:27 2013 -0500

    Revert "Include config.h.in in tree"

    This reverts commit 01013a0f5c58d5d54a37e5b4d6692e0bbd4baf80.

    Conflicts:
            config.h.in

    Same argument as previous commit.

 Makefile.am |   1 +
 config.h.in | 153
 ------------------------------------------------------------
 2 files changed, 1 insertion(+), 153 deletions(-)

commit adff3778155facb7b149ce66ab7d573368e048de
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 6 23:43:27 2013 -0500

    Revert "[Indic] Import ragel-generated Indic machine in git"

    This reverts commit fab7a71f110ed646745d54b23284537c50058c21.

    Conflicts:
            src/hb-ot-shape-complex-indic-machine.hh

    Keeping that generated file in-tree causes problems with processes
    like
    tinderbox  that automatically fetch and build harfbuzz.  It's harder
    to
    bootstrap harfbuzz now (as was previously), but I'm willing to
    give this
    another chance and see how it goes.

 autogen.sh                               |    6 +
 src/Makefile.am                          |    1 +
 src/hb-ot-shape-complex-indic-machine.hh | 1443
 ------------------------------
 3 files changed, 7 insertions(+), 1443 deletions(-)

commit 5898fa94d12b19686f649104bd6efe8daa1ba0c9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 6 15:29:07 2013 -0500

    Don't use $(ENV)

    As reported by Peter Breitenlohner:

    I think this is a very bad idea because ENV is used to specify
    a startup
    file to be read by some/all shells.

 test/api/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 52d66c26a2102bd1a49463b8e8f04612598f8ac1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 4 23:31:24 2013 -0500

    Add color-tests automake option

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9de5f98f363d96f308adc33f1c2286e5c33117de
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 4 23:28:22 2013 -0500

    Bug 60035 - intermittent make install failure on hb-version.h

 src/Makefile.am | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

commit 6c1e8b614cfd6ed016fba6bf20af1e422e79eb71
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 4 23:24:16 2013 -0500

    Bug 59637 - check-exported-symbols.sh & check-internal-symbols.sh
    fail on mips/mipsel

 src/check-symbols.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit bafdf3d983dcc277d6e7e322277c0bb25b41a173
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 4 23:06:50 2013 -0500

    Merge check-internal-symbols.sh and check-exported-symbols.sh

 src/Makefile.am                                    |  3 +-
 src/check-internal-symbols.sh                      | 34
 ----------------------
 ...{check-exported-symbols.sh => check-symbols.sh} | 16 ++++++++--
 3 files changed, 14 insertions(+), 39 deletions(-)

commit ceeae30f47b9d628484ae398bc38f3f60ee8eab4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 31 19:27:36 2013 -0500

    Really fix setmode this time

    Thanks to Khaled for spotting it.

 util/options.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 7cba8a673b4b436a737fc4ffe85dc84ddd2bf41f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 31 18:37:10 2013 -0500

    Fixup previous commit

    Now, it looks like this breaks Cygwin again.  Have to figure out
    what's
    going on.

 util/options.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit bc76449f51f20491a4540b4f240f5a3e0dcb20fe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 31 18:18:05 2013 -0500

    Use setmode() instead of _setmode()

    Looks like Cygwin / MSVC declare it that way, and it still works on
    MinGW32 cross.

 config.h.in     | 6 +++---
 configure.ac    | 2 +-
 util/options.cc | 2 +-
 util/options.hh | 2 +-
 4 files changed, 6 insertions(+), 6 deletions(-)

commit e9171af55cc6a402eb20db4ea74c86a0b1e70e85
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 29 22:45:00 2013 -0500

    Bug 60053 - hb-common.cc:181:6: warning: ‘void free_langs()’
    defined but not used

 src/hb-common.cc | 2 +-
 src/hb-ft.cc     | 2 +-
 src/hb-shape.cc  | 2 +-
 src/hb-shaper.cc | 2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

commit 09b5393874e56fcfd63a92d28e6c1c2ddeee0942
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 18 17:10:47 2013 -0600

    0.9.12

 NEWS         | 7 +++++++
 configure.ac | 2 +-
 2 files changed, 8 insertions(+), 1 deletion(-)

commit eb45c0a2fbaeeb34e77a2935934e8d1302728ec8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 16 22:07:50 2013 -0600

    Minor

 src/hb-ot-layout.cc | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

commit 52c8d1226f3509276b11a1fadbd29e5363c0ecd7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 14 13:51:46 2013 -0600

    Minor

 src/hb-blob.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f88d3bd7e407d332bb04688344c54756d24128c9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 14 00:33:58 2013 -0600

    Fix build with Sun compiler

 src/hb-blob.cc | 3 +++
 1 file changed, 3 insertions(+)

commit 08b29c08094097f1c23ec53b10084bc390cea833
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 14 00:32:12 2013 -0600

    Revert "Minor"

    This reverts commit 0a492357016bc9a614d2a726f2006c10af68ca58.

    Enables code on more compilers.

 src/hb-warning.cc | 33 ++++++++++++++++++++++++++++++---
 1 file changed, 30 insertions(+), 3 deletions(-)

commit e78463211e7d85f237bd55afab7e8e5dae42346c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 14 00:27:21 2013 -0600

    Fix linking with non-gcc compilers

 configure.ac    | 2 ++
 src/Makefile.am | 6 +++++-
 2 files changed, 7 insertions(+), 1 deletion(-)

commit de649f07f1f8fdeb998a0b049759f4f7363e25d2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 14 00:26:43 2013 -0600

    Fix residuals from fontconfig changes

 src/hb-atomic-private.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit cf81fb3624466b9df2250b58b27a92187c5b5b5c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 10 09:06:34 2013 -0600

    0.9.11

 NEWS         | 14 ++++++++++++++
 configure.ac |  2 +-
 2 files changed, 15 insertions(+), 1 deletion(-)

commit 2dcb333f52492018816f0d5d67a47634a612e49c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 10 01:17:59 2013 -0600

    Add atomic ops for Solaris

    Based on fontconfig patch from Raimund Steger.

 config.h.in              |  5 ++++-
 configure.ac             | 27 +++++++++++++++++++++++++--
 src/hb-atomic-private.hh | 12 ++++++++++++
 3 files changed, 41 insertions(+), 3 deletions(-)

commit 69fd6e157c7ec83a5d5d8731fc14675ce4509b09
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 10 00:03:36 2013 -0600

    Fix crasher during multi-thread shaper data creation

    Sample crash:

    0  _hb_graphite2_shaper_face_data_destroy (data=0xffffffffffffffff)
        at ../../src/hb-graphite2.cc:129
    1  0x00007ffff4271d7d in hb_graphite2_shaper_face_data_ensure (
        face=<optimized out>) at ../../src/hb-shaper-list.hh:35
    2  hb_shape_plan_plan (shaper_list=<optimized out>,
    num_user_features=0,
        user_features=0x0, shape_plan=0xf7b490) at
        ../../src/hb-shaper-list.hh:35
    3  hb_shape_plan_create (face=<optimized out>, props=<optimized out>,
        user_features=0x0, num_user_features=0, shaper_list=<optimized
        out>)
        at ../../src/hb-shape-plan.cc:108
    4  0x00007ffff4272c93 in hb_shape_plan_create_cached (face=0x10cf2b0,
        props=0x11980d8, user_features=0x0, num_user_features=<optimized
        out>,
        shaper_list=0x0) at ../../src/hb-shape-plan.cc:283

 src/hb-shaper-private.hh | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit ecd454b3cd75050e0c95e1d2aa55744559338ec8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 8 18:09:46 2013 -0600

    [Indic] In old-spec shaping, don't move viramas around if seq ends
    with one

    For example: u0c9a u0ccd u0c9a u0ccd with Lohit.  See:

    https://bugs.freedesktop.org/show_bug.cgi?id=59118

 src/hb-ot-shape-complex-indic.cc                                   |
 7 ++++---
 .../texts/in-tree/shaper-indic/indic/script-kannada/misc/misc.txt  | 1 +
 2 files changed, 5 insertions(+), 3 deletions(-)

commit e95e031b5682809488cc965883e15404cb9cfb6a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 8 16:15:46 2013 -0600

    [GPOS] If an Anchor offset is NULL, return false

    If in a MarkPos table, a base has no anchor for a particular mark
    class,
    return NULL such that the subsequent subtables get a chance at it.

    Test case:
    hb-shape ./EBGaramond12-Regular.otf ἂ --features="ss20","smcp"

 src/hb-open-type-private.hh    | 14 ++++++++++++--
 src/hb-ot-layout-gpos-table.hh | 10 ++++++++--
 2 files changed, 20 insertions(+), 4 deletions(-)

commit e5dbf39900fa63051f64cc447a6742665cbee339
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 7 17:34:24 2013 -0600

    Bug 58638 - Building fails with ICU due to not passing required flags

 configure.ac | 1 +
 1 file changed, 1 insertion(+)

commit 1172dc736280566426eb6dade1a886b2a0ca9aa4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 7 16:46:37 2013 -0600

    Rename hb_buffer_clear() to hb_buffer_clear_contents()

    The previous name was clashing with harfbuzz.old.  There are systems
    that need to link both...

    Clash-free now again.

 src/hb-buffer.cc       | 2 +-
 src/hb-buffer.h        | 2 +-
 test/api/test-buffer.c | 2 +-
 util/options.hh        | 2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

commit 7b912c1936c3e8a7df27a30782ca127d0a83822d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 4 01:25:27 2013 -0600

    Remove a few unnecessary const's

    Apparently helps with MSVC compilation.

 src/hb-ot-layout-gsubgpos-private.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 34e6c3e3e452bdf6f93df565a70453a6e74d4c6e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 3 00:14:24 2013 -0600

    0.9.10

 NEWS         | 24 ++++++++++++++++++++++++
 configure.ac |  2 +-
 2 files changed, 25 insertions(+), 1 deletion(-)

commit f0c82410dbe800cb6429ba4aa7cfd9f5a11cc70c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 3 00:07:16 2013 -0600

    [OTLayout] Always collect default language system in collect_lookups

    Not sure if this is the most desired behavior.  It's the most easily
    defined though.

 src/hb-ot-layout.cc | 7 +++++++
 1 file changed, 7 insertions(+)

commit 15e9e4e1ddaad655988144e7a56a765e8adf8782
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 3 00:04:40 2013 -0600

    [OTLayout] Fix feature iteration in collect_lookups

    Previous logic was just wrong.

 src/hb-ot-layout.cc | 46 ++++++++++++++++++++++++++++++++--------------
 1 file changed, 32 insertions(+), 14 deletions(-)

commit 733e8c0d7bf0765884f2cc953c8edcd7ab7fb49b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 3 00:00:23 2013 -0600

    [OTLayout] Whitespace

 src/hb-ot-layout.cc | 82
 ++++++++++++++++++++++++++++++++++++++++++++---------
 1 file changed, 68 insertions(+), 14 deletions(-)

commit d37ae38047bee12639741af9bb083b857fab950d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 2 23:57:36 2013 -0600

    [OTLayout] Handle required_feature_index in collect_lookups

 src/hb-ot-layout.cc | 8 ++++++++
 1 file changed, 8 insertions(+)

commit 11fba79ee9383eb995ddf7eb924dd64c67e2df63
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 2 23:36:37 2013 -0600

    [OTLayout] Fix various introspection issues with ClassDef's

    As reported by Jonathan Kew.

 src/hb-ot-layout-gsubgpos-private.hh | 19 +++++++++++++++----
 1 file changed, 15 insertions(+), 4 deletions(-)

commit e81aff9ef785be28751aab1fcd484af550656181
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 2 23:22:54 2013 -0600

    [tests] Finish test-set.c

    All passing now.

 test/api/test-set.c | 373
 +++++++++++++++++++++-------------------------------
 1 file changed, 149 insertions(+), 224 deletions(-)

commit 7b1b720a8da69b68b775ce17104a40d55401b7ef
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 2 23:02:59 2013 -0600

    Protect sets in-error from further modication

    Fixes test-set.c

 src/hb-set-private.hh | 13 +++++++++++++
 1 file changed, 13 insertions(+)

commit 8165f2765b93e99577ecc79b7956ae38c614bc78
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 2 22:50:36 2013 -0600

    [tests] Start adding tests for hb-set.h

    Fails now.  Fixing.

 TODO                  |   2 -
 src/hb-set-private.hh |   6 +
 src/hb-set.cc         |   9 +-
 src/hb-set.h          |   3 +
 test/api/Makefile.am  |   1 +
 test/api/test-set.c   | 312
 ++++++++++++++++++++++++++++++++++++++++++++++++++
 6 files changed, 330 insertions(+), 3 deletions(-)

commit b9d28f696c433b94c5ffbad8d7c87cf3acff4056
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 2 22:49:58 2013 -0600

    [tests] Add set object to test-object.c

 test/api/test-object.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

commit 11d2956553f0d4a0086166a04ffc352fcfacf56e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 2 17:41:27 2013 -0600

    Minor

 src/hb-atomic-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 596740db04e7c1dadae0d8be6e401089fcaffc2d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 19:41:04 2012 -0500

    [Indic] Insert dottedcircle after a lone Malayalam dot-reph

 src/hb-ot-shape-complex-indic-machine.hh | 1617
 ++++++++++++++++--------------
 src/hb-ot-shape-complex-indic-machine.rl |    2 +-
 src/hb-ot-shape-complex-indic.cc         |   13 +-
 3 files changed, 881 insertions(+), 751 deletions(-)

commit 3cdce6497b2b9aeb2841bf077daa9dd9b196429d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 16:54:22 2012 -0500

    Remove TODO that I don't intend to fix

 TODO | 1 -
 1 file changed, 1 deletion(-)

commit 6f69fa283e0a488da811df78bc83c41ed248b688
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 16:51:15 2012 -0500

    Minor

 src/hb-shape.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f4abcbfc628718bb276363746440df06e7658f6e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 16:48:51 2012 -0500

    Minor

 src/hb-buffer.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 4a765f092d71bb4adeb468c004987a9121d39db5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 16:48:47 2012 -0500

    Minor

 util/hb-shape.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9815a88111072aa51e78e258c5f660993b47d4df
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 16:46:53 2012 -0500

    [util] List supported output formats in --help output

 util/hb-shape.cc     | 6 +++---
 util/helper-cairo.cc | 2 +-
 util/helper-cairo.hh | 1 +
 util/options.cc      | 9 ++++++++-
 util/options.hh      | 5 ++++-
 util/view-cairo.hh   | 2 +-
 6 files changed, 18 insertions(+), 7 deletions(-)

commit f95a87b7b813f588c7910ad4785ee68bb452e864
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 16:35:28 2012 -0500

    [util] List supported output formats in hb-view

 TODO                 |  1 -
 util/helper-cairo.cc | 30 +++++++++++++++++++++++++++++-
 2 files changed, 29 insertions(+), 2 deletions(-)

commit 6bad092aa87bc3e6bbf0b9faf07693e6ebbe55f2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 16:01:52 2012 -0500

    [util] Default to "text" output format in hb-shape

    If you say:

      hb-shape font.ttf text --output-file out.txt

    This was previously failing:

      Unknown output format `txt'; supported formats are: TEXT / JSON

    Now we simply fallback to TEXT if no explicit format was requested.

 util/hb-shape.cc | 11 ++++++++---
 util/options.hh  |  5 +++++
 2 files changed, 13 insertions(+), 3 deletions(-)

commit 8b217f5ac54aa0dcbba2dd6d59aa89dde33e56c2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 15:48:32 2012 -0500

    [Indic] Reorder Malayalam dot-reph to after base

    Test sequence is simple: U+0D4E,U+0D15.  The doth-reph should be
    reordered to after the Ka.

    https://bugzilla.redhat.com/show_bug.cgi?id=799565

 src/hb-ot-shape-complex-indic.cc                            | 13
 ++++++++++---
 .../shaper-indic/indic/script-malayalam/misc/MANIFEST       |  1 +
 .../shaper-indic/indic/script-malayalam/misc/dot-reph.txt   |  1 +
 3 files changed, 12 insertions(+), 3 deletions(-)

commit 742c4ee97e1311e000ebcdf9f33361c4dc6400a4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 15:35:03 2012 -0500

    Minor

 src/hb-ot-shape-complex-indic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 94afeb6ebe27534fc80d7173cc6f67375c3aaca6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 21 11:54:50 2012 -0500

    Add Android.mk

 Android.mk  | 74
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 Makefile.am |  1 +
 2 files changed, 75 insertions(+)

commit d16ddbcbbee39b07a028776995c635119fe3cd98
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 20 01:02:36 2012 -0500

    Add build confirmation notice to configure

 configure.ac | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

commit e24d8dab749a1a796e7484e18572da5f7a733bd4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 19 15:23:02 2012 -0500

    [TODO] Remove done items

 TODO | 7 -------
 1 file changed, 7 deletions(-)

commit 044d38527664d933c18c751c38fcf6fb4b5f888e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 19 13:00:16 2012 -0500

    Bug 58498 - Tests fail with gold linker on ARM

 src/check-exported-symbols.sh | 2 +-
 src/check-internal-symbols.sh | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit b68b86daf1a8478b86aeae44a8c39a606ed873cb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 18 20:39:40 2012 -0500

    Use C++ linker if ICU is disabled

    Bug 54948 - Undefined symbols: "operator delete(void*)" "operator
    new(unsigned long)" "___cxa_pure_virtual"

 src/Makefile.am | 4 ++++
 1 file changed, 4 insertions(+)

commit 1ffd23cb47a61465d52a7aeebb9c1b676e7c9a7e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 17 23:29:15 2012 -0500

    [OTLayout] Limit alternate-location FeatureParams to 'size' feature

 src/hb-ot-layout-common-private.hh | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

commit efe252e6000558f78075adadb2a3dba25ab67c04
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 17 23:21:05 2012 -0500

    [OTLayout] Fix 'size' featureParams implementation

    Looks at alternate location now.

 src/hb-ot-layout-common-private.hh | 133
 ++++++++++++++++++++++++++++---------
 src/hb-ot-layout.cc                |  93 ++++----------------------
 2 files changed, 117 insertions(+), 109 deletions(-)

commit e77b4425746ac9eb407ca4e742d962f1955971b4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 17 18:42:59 2012 -0500

    [OTLayout] Fix tracing

 src/hb-open-type-private.hh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 9b54562d63f1a9e0e5b33d71c32bd1588759ebf1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 17 13:55:36 2012 -0500

    [OTLayout] Towards correct FeatureParams handling

 src/hb-open-type-private.hh        |  8 +++++++-
 src/hb-ot-layout-common-private.hh | 25 +++++++++++++++++++++++--
 2 files changed, 30 insertions(+), 3 deletions(-)

commit 87e43b7f2be25840748f920ca33ff553833da45f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 14 17:48:23 2012 -0500

    [OTLayout] Wire tag and list start all the way to Feature

    To fix FeatureParam issues.  No actual fix yet, just plumbing.

 src/hb-ot-layout-common-private.hh | 16 ++++++++++++----
 1 file changed, 12 insertions(+), 4 deletions(-)

commit 85bc44b90a19c6a669ed567a9cd8513448600afe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 12 11:38:49 2012 -0500

    [OTLayout] More 'size' feature sanity checking

    We still don't look for the old incorrect place of the featureParams.
    I'll wait till someone actually complains about it...

 src/hb-ot-layout.cc | 99
 ++++++++++++++++++++++++++++++++++++++++++-----------
 1 file changed, 79 insertions(+), 20 deletions(-)

commit 0bae50a36f3022f9bb6b2c001c191eeaaa4ef954
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 11 16:01:31 2012 -0500

    [OTLayout] Add FeatureParamsCharacterVariants struct

    No API yet.

 src/hb-ot-layout-common-private.hh | 52
 +++++++++++++++++++++++++++++++++++---
 1 file changed, 49 insertions(+), 3 deletions(-)

commit bd61bc13ea8ff350ada5449b2cfeb612e66ecafa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 11 16:00:43 2012 -0500

    [OTLayout] Add UINT24 type

 src/hb-open-type-private.hh | 33 ++++++++++++++++++++++-----------
 src/hb-private.hh           |  4 ++++
 2 files changed, 26 insertions(+), 11 deletions(-)

commit 9cf7f9d4f61741932570afbefdee5edf61f79ae4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 11 14:31:13 2012 -0500

    Make test-size-params write size in points

 src/test-size-params.cc | 18 ++++--------------
 1 file changed, 4 insertions(+), 14 deletions(-)

commit 372fe2b67b1757e809bf33e1e9055a00c5bed304
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 11 14:30:57 2012 -0500

    [OTLayout] Make hb_ot_layout_get_size_params() do some checks

 src/hb-ot-layout.cc | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

commit 875a5cbc9c37f4264241c43b80afad2628eab749
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 11 14:17:01 2012 -0500

    [OTLayout] Change hb_ot_layout_get_params() API

    And add implementation for StylisticSet UINameID.  No API yet.

 src/hb-ot-layout-common-private.hh | 85
 ++++++++++++++++++++++++++++++++++++--
 src/hb-ot-layout.cc                | 28 +++++++++----
 src/hb-ot-layout.h                 |  8 +++-
 src/test-size-params.cc            |  9 +++-
 4 files changed, 115 insertions(+), 15 deletions(-)

commit 5e7e52ddf2b0c4fbc9d933d24336100368d39a5c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 10 17:44:22 2012 -0500

    [uniscribe] Enable Uniscribe backend only if it has
    ScriptShapeOpenType()

    Bug 55494 - ScriptItemizeOpenType doesn't exists under Windows XP

 config.h.in  |  6 ------
 configure.ac | 14 +++++++++++++-
 2 files changed, 13 insertions(+), 7 deletions(-)

commit d41c0c955b8ad9b52191ca47e1f3b1bfe606deb1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 10 16:41:20 2012 -0500

    Update config template

 config.h.in | 4 ----
 1 file changed, 4 deletions(-)

commit c48a04e5ea899b82465a0f3f2cfdcffb3bf38f61
Author: John Ralls <jralls@ceridwen.fremont.ca.us>
Date:   Mon Dec 10 16:24:24 2012 -0500

    [coretext] Better test for CoreText

    Instead of checking for ApplicationServices.h, which is present in all
    versions of MacOSX, check for CTFontRef, a CoreText basic type.

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0e9f0f3e5f16a45951423a1229af42dc2fd798c3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 10 15:25:21 2012 -0500

    Fix atomic ops on iOS

    Patch from John Ralls.

 src/hb-atomic-private.hh | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

commit 5f9569c1391c65d7addff363ad6e5ec9b087f01a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 10 13:38:42 2012 -0500

    Make older MSVC happy

 src/hb-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 071d5b831e6de5f3b24160dc77b139cb040ab886
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 10 00:57:00 2012 -0500

    Work around missing OSAtomicCompareAndSwapPtrBarrier() on OS X 10.4

    Not sure how to handle iOS.

 src/hb-atomic-private.hh | 11 +++++++++++
 1 file changed, 11 insertions(+)

commit e923e6487b25ab86f6f629af480b291e8e5407b5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 9 19:39:40 2012 -0500

    [coretext] Fixed typo

    Oops.  Thanks Khaled for catching this.

 src/hb-coretext.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9a8395824bf51c2ff2cfe0887ecad52b3d2c02e2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 9 18:47:36 2012 -0500

    [coretext] Add hb_coretext_face_get_cg_font()

    Not sure if it's useful, but it was missing.

 src/hb-coretext.cc | 20 ++++++++++++++------
 src/hb-coretext.h  |  3 +++
 2 files changed, 17 insertions(+), 6 deletions(-)

commit 86112356885fde32163882b6c9dd19a494304f7a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 9 18:47:09 2012 -0500

    [coretext] Remove hack around GlyphID

    We not namespace our types, so the hack is not needed anymore.

 src/hb-coretext.cc | 4 ----
 1 file changed, 4 deletions(-)

commit 8e58459aeb949591bb5bca340ef9bdd5cfd54e47
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 9 18:45:47 2012 -0500

    [graphite2] "Update to new API"

    Part of patch from Martin Hosken.  I believe he knows what he's doing
    :).

 src/hb-graphite2.cc | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)

commit a5a4ab3846ef06769784e6469d76eace35e68805
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 9 18:44:41 2012 -0500

    [graphite2] Add hb_graphite2_face_get_gr_face and
    hb_graphite2_font_get_gr_font

    Based on patch from Martin Hosken.  I believe it returns NULL if the
    font doesn't have graphite tables, but have not tested.

 src/hb-graphite2.cc | 14 ++++++++++++++
 src/hb-graphite2.h  |  8 +++++++-
 2 files changed, 21 insertions(+), 1 deletion(-)

commit 737ba156442f723d126c7c58c73729786b67c17a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 9 18:43:03 2012 -0500

    [graphite2] Preload all tables

    Part of patch from Martin Hosken.

 src/hb-graphite2.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0ae6dbf1b4de8a0326b8a2f201597427cecfb6db
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 9 18:37:38 2012 -0500

    Minor

 src/hb-uniscribe.cc | 32 ++++++++++++++++----------------
 1 file changed, 16 insertions(+), 16 deletions(-)

commit 3fe5c159d3532f8ce8a85d217a00681225dd8ed1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 9 18:20:19 2012 -0500

    Remove excess return

    Oops!

 src/hb-uniscribe.cc | 1 -
 1 file changed, 1 deletion(-)

commit ba2d543004573e8e4e56df70b7fe2a66a42bc83f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Dec 8 19:28:41 2012 -0500

    Update OT language tags

    Patch from Roozbeh Pournader.

 src/hb-ot-tag.cc | 212
 +++++++++++++++++++++++++++++--------------------------
 1 file changed, 110 insertions(+), 102 deletions(-)

commit aba38173c6b464c2884b73ef6cd4577d4efcebbc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 5 19:54:48 2012 -0500

    Minor

 src/hb-ot-tag.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 61865745e35eb60aeb59968e7826e37059090780
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 5 19:42:10 2012 -0500

    Fix test with gold linker

    Bug 57633 - Symbol tests should ignore __bss_start, _edata, _end

 src/check-exported-symbols.sh | 2 +-
 src/check-internal-symbols.sh | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit b71b0bd9ee64feadd7289e195bc58f6361ce707a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 5 19:20:31 2012 -0500

    [Indic] Add link to Sinhala split matra section of the Sinhala spec

 src/hb-ot-shape-complex-indic.cc | 5 +++++
 1 file changed, 5 insertions(+)

commit 9a34a50daac3563464e0031f377e85f0c704f2d6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 5 19:18:18 2012 -0500

    Fix build with C++11

 util/options.cc | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 0beb66e3a61ae8bb1fa66e54b1ff1abb2f8711e9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 5 18:46:04 2012 -0500

    Fix warnings

 src/hb-fallback-shape.cc                   | 10 +++++-----
 src/hb-glib.cc                             |  2 +-
 src/hb-icu-le.cc                           |  6 +++---
 src/hb-old.cc                              | 14 +++++++-------
 src/hb-open-type-private.hh                |  4 +---
 src/hb-ot-layout-gsubgpos-private.hh       | 24 ++++++++++++------------
 src/hb-ot-shape-complex-arabic-fallback.hh |  4 ++--
 src/hb-ot-shape-complex-arabic.cc          |  2 +-
 src/hb-ot-shape-complex-indic-machine.hh   |  2 +-
 src/hb-ot-shape-complex-indic-machine.rl   |  2 +-
 src/hb-ot-shape-complex-indic.cc           |  6 +++---
 src/hb-ot-shape-complex-thai.cc            |  2 +-
 src/hb-ot-shape-fallback.cc                |  4 ++--
 src/hb-private.hh                          |  8 ++++----
 src/hb-ucdn.cc                             | 27
 +++++++++++++++------------
 src/hb-utf-private.hh                      |  4 ++--
 16 files changed, 61 insertions(+), 60 deletions(-)

commit c6408a1009d2370fbdcfa694898819d99d53c3df
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 5 17:36:52 2012 -0500

    0.9.9

 NEWS         | 8 ++++++++
 configure.ac | 2 +-
 2 files changed, 9 insertions(+), 1 deletion(-)

commit 130bb3f6144afe5c88bb5b4e4c98e7cba03b1e26
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 5 16:49:47 2012 -0500

    Rename VOID and void_t to have HarfBuzz prefix

    Fixes build on Windows.  Ouch!

 src/hb-ot-layout-gsubgpos-private.hh | 22 +++++++++++-----------
 src/hb-private.hh                    | 12 ++++++------
 2 files changed, 17 insertions(+), 17 deletions(-)

commit 4a350d0eb25db60d95638664c892d4c8dacf050b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 4 17:13:09 2012 -0500

    [OTLayout] Reuse context in collect_glyphs() recursion

 src/hb-ot-layout-gsubgpos-private.hh | 19 +++++++++++++++----
 1 file changed, 15 insertions(+), 4 deletions(-)

commit 8303593ba1db06e402eab52df47f21f13049112d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 4 17:08:41 2012 -0500

    Minor

    Use pointers instead of references, in preparation for upcoming
    change.

 src/hb-ot-layout-gpos-table.hh       | 28 +++++++++++++-------------
 src/hb-ot-layout-gsub-table.hh       | 30 ++++++++++++++--------------
 src/hb-ot-layout-gsubgpos-private.hh | 38
 ++++++++++++++++++------------------
 3 files changed, 48 insertions(+), 48 deletions(-)

commit 1bcfa06d1173f219809542a7380ce77f1c907bec
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 4 16:58:09 2012 -0500

    [OTLayout] Don't recurse in collect_glyphs() for GPOS

 src/hb-ot-layout-gpos-table.hh       | 2 +-
 src/hb-ot-layout-gsubgpos-private.hh | 4 ++++
 2 files changed, 5 insertions(+), 1 deletion(-)

commit b5e04c7dc6b78e311d1a14f1f808fac76a64c889
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 4 15:57:02 2012 -0500

    [ucdn] Match upstream changes

 src/hb-ucdn/ucdn.c | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

commit a52f51b21635c626f6e5ccdba505c4df19bcff2c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 4 15:43:38 2012 -0500

    0.9.8

 NEWS         | 16 ++++++++++++++++
 configure.ac |  2 +-
 2 files changed, 17 insertions(+), 1 deletion(-)

commit 7babfe5a7904c26060c5b8441ca1bf23e1444f35
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 4 00:35:54 2012 +0200

    Move object mutext into the user-data array

    We are not using it for anything lse it seems.

 src/hb-common.cc         | 12 ++----------
 src/hb-object-private.hh | 24 ++++++++++--------------
 2 files changed, 12 insertions(+), 24 deletions(-)

commit a1900114770952778563dd6f3bc79334b0ca8df5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 4 00:29:35 2012 +0200

    Remove unused functions

 src/hb-object-private.hh | 20 --------------------
 1 file changed, 20 deletions(-)

commit 88b7564183ae1cf59500b13c7e48756fe200c7cd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 2 19:14:29 2012 +0200

    "Update" to Unicode 6.2.0 tables

    Nothing changed...

 src/hb-ot-shape-complex-arabic-table.hh |  4 ++--
 src/hb-ot-shape-complex-indic-table.hh  | 12 ++++++------
 2 files changed, 8 insertions(+), 8 deletions(-)

commit 4ab99fb8c363cfc6a4f5952e69a19757f0cab344
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 30 15:02:04 2012 +0200

    Minor

 src/hb-ot-layout.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6748b96d27477b35dd69129e55d861259d66bf9f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 30 12:02:21 2012 +0200

    Minor

 src/hb-ot-layout.cc | 1 -
 1 file changed, 1 deletion(-)

commit 624933f67642997ee0a46d5acea285362e837142
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 30 11:46:35 2012 +0200

    Add Persian test cases from Mehran Mehr

 test/shaping/texts/in-tree/shaper-arabic/script-arabic/MANIFEST   | 1 +
 .../in-tree/shaper-arabic/script-arabic/language-persian/MANIFEST | 1 +
 .../shaper-arabic/script-arabic/language-persian/mehran.txt       |
 8 ++++++++
 3 files changed, 10 insertions(+)

commit 0f3f5299047e3cfc4d1202fee83d484b871279ad
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 30 09:06:59 2012 +0200

    Add test-size-params

    Eventually this will become part of a yet-to-be-written hb-ot cmdline
    tool.

 src/Makefile.am         | 10 ++++-
 src/test-size-params.cc | 98
 +++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 107 insertions(+), 1 deletion(-)

commit 8465a05a89742295d4b009a9b4442eb0a899fd80
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 30 08:46:43 2012 +0200

    Fix hb_buffer_guess_segment_properties() for empty buffer

    Was causing assertion failure in shape_plan().

 src/hb-buffer.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit e75943de803f571b7ad2cf2f777119753a209656
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 30 08:38:24 2012 +0200

    [OTLayout] Fix collect_glyphs() recursion in ContextFormat3

 src/hb-ot-layout-gsubgpos-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 3038ae6adbb61e55d6c665dea0c5271e0c9f0ed8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 30 08:24:13 2012 +0200

    [OTLayout] Minor

 src/hb-ot-layout-gpos-table.hh | 4 ----
 src/hb-ot-layout-gsub-table.hh | 4 ----
 src/hb-ot-layout.cc            | 4 ++--
 3 files changed, 2 insertions(+), 10 deletions(-)

commit 0dff11f6bfbda444a153ca75ff2b947f94e9b3c5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 30 08:14:20 2012 +0200

    [OTLayout] Look for any 'size' feature, not only in DFLT script

    The old code doesn't work with all fonts, as Khaled has reported.

 src/hb-ot-layout.cc | 14 +++++---------
 1 file changed, 5 insertions(+), 9 deletions(-)

commit e9ad71dee845407da74ccacfbb53ad7ededf07fd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 30 08:10:26 2012 +0200

    [OTLayout] Rename hb_ot_layout_position_get_size() to
    hb_ot_layout_get_size_params()

 src/hb-ot-layout.cc | 4 ++--
 src/hb-ot-layout.h  | 7 ++++---
 2 files changed, 6 insertions(+), 5 deletions(-)

commit f18ff5a84d9fe859c40a7a0c9a207cb40df0e84a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 30 08:07:06 2012 +0200

    [OTLayout] Return correct value from recursion

    Commit 4c4e8f0e754b79ac6190d21878eaaf0b790c7579 broke contextual
    lookups
    by making the recurse() function always return false.

    Reported by Khaled.  Test case: لا in Amiri.

 src/hb-ot-layout-gsubgpos-private.hh | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

commit f54cce3c6a0432268ce159dbe6c5c6b7f583b87a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 26 14:02:31 2012 +0200

    [OTLayout] Implement 'size' feature

 src/hb-ot-layout-common-private.hh | 36
 ++++++++++++++++++++++++++++++++++--
 src/hb-ot-layout.cc                | 31 +++++++++++++++++++++++++++++++
 src/hb-ot-layout.h                 |  5 +++++
 3 files changed, 70 insertions(+), 2 deletions(-)

commit 2dc1141d7d0a9f5818862b09d6b9cfe0a27f1fc1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 19:16:34 2012 -0500

    [OTLayout] Remove operator() from ClassDef

 src/hb-ot-layout-common-private.hh   | 2 --
 src/hb-ot-layout-gpos-table.hh       | 4 ++--
 src/hb-ot-layout-gsubgpos-private.hh | 8 ++++----
 3 files changed, 6 insertions(+), 8 deletions(-)

commit b67881b171a7cf865af58df146da52fc1e27b160
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 19:13:55 2012 -0500

    [OTLayout] Remove operator() from Coverage

 src/hb-ot-layout-common-private.hh   |  2 --
 src/hb-ot-layout-gdef-table.hh       |  4 ++--
 src/hb-ot-layout-gpos-table.hh       | 24 ++++++++++++------------
 src/hb-ot-layout-gsub-table.hh       | 24 ++++++++++++------------
 src/hb-ot-layout-gsubgpos-private.hh | 16 ++++++++--------
 5 files changed, 34 insertions(+), 36 deletions(-)

commit a88e7160217b9f44e4e5b4b814d0ca98c457ee40
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 02:31:02 2012 -0500

    [OTLayout] Implement hb_ot_layout_collect_lookups()

    Untested.

 src/hb-ot-layout.cc | 97
 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-layout.h  |  4 +--
 2 files changed, 98 insertions(+), 3 deletions(-)

commit 1ea375da446bf68f705a70ce4a480db9fb9d13f3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 02:05:52 2012 -0500

    [OTLayout] Only collect output glyphs during recursion in
    collect_glyphs()

 src/hb-ot-layout-gsubgpos-private.hh | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit f1b12781d279a73b5754afee31e930b5cd87aac6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 01:55:34 2012 -0500

    [OTLayout] Implement ChainContext collect_glyphs()

    All of collect_glyphs() complete and untested now.

 src/hb-ot-layout-gsubgpos-private.hh | 103
 ++++++++++++++++++++++++++++++++---
 1 file changed, 96 insertions(+), 7 deletions(-)

commit cdd756b9f40665a201f5c4e65a87b9a27c390601
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 01:38:41 2012 -0500

    [OTLayout] Implement GPOS collect_glyphs()

 src/hb-ot-layout-gpos-table.hh | 95
 +++++++++++++++++++++++++++++++++++++++++-
 src/hb-ot-layout.cc            |  9 ++--
 2 files changed, 99 insertions(+), 5 deletions(-)

commit 4c4e8f0e754b79ac6190d21878eaaf0b790c7579
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 01:13:20 2012 -0500

    [OTLayout] Reuse apply context for recursion

 src/hb-ot-layout-gpos-table.hh       | 7 ++++++-
 src/hb-ot-layout-gsub-table.hh       | 7 ++++++-
 src/hb-ot-layout-gsubgpos-private.hh | 8 ++++----
 3 files changed, 16 insertions(+), 6 deletions(-)

commit 53a69f49e58ef4c4226958e0496fc22455ee6c87
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 24 01:03:05 2012 -0500

    [OTLayout] Remove unused members

 src/hb-ot-layout-gsubgpos-private.hh | 3 ---
 1 file changed, 3 deletions(-)

commit d0a5233785eb327c4080432f597fe470a1046af3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 23 18:54:59 2012 -0500

    [OTLayout] Implement Context::collect_glyphs()

 src/hb-ot-layout-gsubgpos-private.hh | 122
 +++++++++++++++++++++++++++++++----
 1 file changed, 111 insertions(+), 11 deletions(-)

commit 26514d51b6669f092d9ccb7523443a5ece74169a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 23 18:13:48 2012 -0500

    [OTLayout] More collect_glyphs()

 src/hb-ot-layout-gpos-table.hh       |  6 ++---
 src/hb-ot-layout-gsub-table.hh       | 32 +++++++++++++++-------
 src/hb-ot-layout-gsubgpos-private.hh | 51
 ++++++++++++++++++++++++++++++++----
 3 files changed, 71 insertions(+), 18 deletions(-)

commit c6fb843f2a1c26322c6f4c85d1589f01a9e7a2ef
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 23 18:04:08 2012 -0500

    [OTLayout] Templatize process_recurse_func

 src/hb-ot-layout-gpos-table.hh | 10 ++++++++++
 src/hb-ot-layout-gsub-table.hh |  8 +++++---
 2 files changed, 15 insertions(+), 3 deletions(-)

commit 9b34677f362fb0ef5a7cb8a284a9e06d1a4cc03b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 23 17:55:40 2012 -0500

    [OTLayout] Clean up closure() a bit

 src/hb-ot-layout-gsub-table.hh       | 29 ++++++++++++++---------------
 src/hb-ot-layout-gsubgpos-private.hh |  7 ++++---
 src/hb-ot-layout.cc                  |  6 +++++-
 3 files changed, 23 insertions(+), 19 deletions(-)

commit adf7758a27a11fb1a8a14a2673867589437d22a3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 23 17:32:00 2012 -0500

    Improve debug log format in presence of templates

 src/hb-private.hh | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit 2c53bd3c3ec4f81eff126c5bf84b7f2ddf2f0fef
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 23 17:29:05 2012 -0500

    [OTLayout] Start porting sanitize() to process()

 src/hb-open-type-private.hh          | 12 +++++++++++-
 src/hb-ot-layout-gsubgpos-private.hh |  8 ++++----
 2 files changed, 15 insertions(+), 5 deletions(-)

commit f48ec0e83432c038b50d9715a38ba1469e82e1e4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 23 17:23:41 2012 -0500

    [OTLayout] Add process() tracing

 src/hb-ot-layout-gpos-table.hh       | 60
 ++++++++++++++++++++----------------
 src/hb-ot-layout-gsub-table.hh       | 51 +++++++++++++++++-------------
 src/hb-ot-layout-gsubgpos-private.hh | 17 +++++-----
 3 files changed, 72 insertions(+), 56 deletions(-)

commit ed2e13594479c6ed7909401509962ea2f03f9a6e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 23 17:10:40 2012 -0500

    [OTLayout] More Extension templatizing

 src/hb-ot-layout-gpos-table.hh       | 11 -----------
 src/hb-ot-layout-gsub-table.hh       | 11 -----------
 src/hb-ot-layout-gsubgpos-private.hh | 12 ++++++++++--
 3 files changed, 10 insertions(+), 24 deletions(-)

commit 7dddd4e72bc35be962d93dc1b76c7e26c63aaa6d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 23 17:04:55 2012 -0500

    [OTLayout] More templatizing Extension

 src/hb-ot-layout-gpos-table.hh       |  7 +------
 src/hb-ot-layout-gsub-table.hh       |  9 ++-------
 src/hb-ot-layout-gsubgpos-private.hh | 10 +++++++++-
 3 files changed, 12 insertions(+), 14 deletions(-)

commit 653eeb26450053b731b46346606931f5ae88db72
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 23 16:57:36 2012 -0500

    Make Extension a template

 src/hb-ot-layout-gpos-table.hh       | 11 +----------
 src/hb-ot-layout-gsub-table.hh       | 11 +----------
 src/hb-ot-layout-gsubgpos-private.hh |  7 +++++++
 3 files changed, 9 insertions(+), 20 deletions(-)

commit 08f1eede1bbc01ece2adf89847614a0670e50443
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 23 16:51:43 2012 -0500

    Minor

 src/hb-ot-layout-gpos-table.hh | 19 ++-----------------
 src/hb-ot-layout-gsub-table.hh | 19 ++-----------------
 2 files changed, 4 insertions(+), 34 deletions(-)

commit 2c9d6485a1f89c11f84e720d3c7978dc11a5039a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 23 16:49:19 2012 -0500

    More tracing fixup

 src/hb-private.hh | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

commit a1733db1c6ff40aae71fa142a12b1fea7b53dd37
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 23 16:40:04 2012 -0500

    [OTLayout] Start adding process() tracing

 src/hb-ot-layout-gsubgpos-private.hh | 44
 +++++++++++++++++++++++++++---------
 src/hb-private.hh                    |  6 +++--
 2 files changed, 37 insertions(+), 13 deletions(-)

commit 73c18ae1b982a4e65086afe5177afa79e721e2c0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 23 15:34:11 2012 -0500

    Cleanup

 src/hb-ot-layout-gsubgpos-private.hh | 16 ++++------------
 1 file changed, 4 insertions(+), 12 deletions(-)

commit be218c688cbb037a99c8c64bb835f3c980040c0b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 23 15:32:14 2012 -0500

    Pass this object to trace macros

 src/hb-open-file-private.hh          |  10 +--
 src/hb-open-type-private.hh          |  34 +++++-----
 src/hb-ot-head-table.hh              |   2 +-
 src/hb-ot-hhea-table.hh              |   2 +-
 src/hb-ot-hmtx-table.hh              |   2 +-
 src/hb-ot-layout-common-private.hh   |  36 +++++------
 src/hb-ot-layout-gdef-table.hh       |  20 +++---
 src/hb-ot-layout-gpos-table.hh       |  80 +++++++++++------------
 src/hb-ot-layout-gsub-table.hh       | 122
 +++++++++++++++++------------------
 src/hb-ot-layout-gsubgpos-private.hh | 100 ++++++++++++++--------------
 src/hb-ot-maxp-table.hh              |   2 +-
 src/hb-ot-name-table.hh              |   6 +-
 12 files changed, 208 insertions(+), 208 deletions(-)

commit 902cc8aca0b3ff25eeee50b3a84d729e31731ef3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 23 15:06:59 2012 -0500

    [OTLayout] Start unbreaking tracing

 src/hb-open-type-private.hh          | 37
 +++++++++++++++++++++---------------
 src/hb-ot-layout-gsubgpos-private.hh | 37
 +++++++++++++++++++++++++-----------
 src/hb-private.hh                    | 30 +++++++++++++++++++----------
 3 files changed, 68 insertions(+), 36 deletions(-)

commit dabe698fcbeb02911128b17aa8e3b2d864795960
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 23 14:21:35 2012 -0500

    Minor

 src/hb-open-type-private.hh          |  5 -----
 src/hb-ot-layout-gsubgpos-private.hh | 10 ++++------
 src/hb-private.hh                    | 27 +++++++++++++++++++++++++--
 3 files changed, 29 insertions(+), 13 deletions(-)

commit c779d82b2fc801eec0d349a106c0e860448fcf4e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 23 14:07:24 2012 -0500

    Fix warnings

 src/hb-ot-layout-gpos-table.hh       | 2 --
 src/hb-ot-layout-gsub-table.hh       | 8 +++-----
 src/hb-ot-layout-gsubgpos-private.hh | 2 +-
 src/hb-private.hh                    | 2 +-
 4 files changed, 5 insertions(+), 9 deletions(-)

commit 81822528efc63d867cb2343a8ff7af64fac1c70d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 23 13:27:16 2012 -0500

    Minor

 src/hb-open-type-private.hh          | 6 ++++++
 src/hb-ot-layout-gsubgpos-private.hh | 3 ---
 2 files changed, 6 insertions(+), 3 deletions(-)

commit 1d67ef980f35ae30d4f8975f65ee07b8cc5deeea
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 16:47:53 2012 -0500

    Move code around

 src/hb-ot-layout-gsubgpos-private.hh | 44
 ++++++++++++++++++------------------
 1 file changed, 22 insertions(+), 22 deletions(-)

commit ec35a72a44301934b8f123ab2833f59d8c875a09
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 16:05:59 2012 -0500

    [OTLayout] Port apply() operator to process() template

 src/hb-ot-layout-gpos-table.hh       | 117
 ++++-------------------------------
 src/hb-ot-layout-gsub-table.hh       | 108
 +++-----------------------------
 src/hb-ot-layout-gsubgpos-private.hh |  99 +++++++++++++----------------
 src/hb-ot-layout.cc                  |   2 +-
 4 files changed, 65 insertions(+), 261 deletions(-)

commit 2005fa5340fc528c32dc2af945ad2431964a47d2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 14:38:10 2012 -0500

    [OTLayout] Port would_apply() and get_coverage() to process()
    templates

 src/hb-ot-layout-gpos-table.hh       | 175
 +++++++++++--------------------
 src/hb-ot-layout-gsub-table.hh       | 198
 ++++++++++++-----------------------
 src/hb-ot-layout-gsubgpos-private.hh |  76 +++++---------
 3 files changed, 156 insertions(+), 293 deletions(-)

commit 44fc237b53ebfbaf8a539de16ad735d2c6afc52b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 21 23:33:13 2012 -0500

    [OTLayout] Port closure() to process() template

 src/hb-ot-layout-gsub-table.hh       | 297
 ++++++++---------------------------
 src/hb-ot-layout-gsubgpos-private.hh | 209 ++++++++++++------------
 src/hb-ot-layout.cc                  |  10 +-
 3 files changed, 171 insertions(+), 345 deletions(-)

commit 5be86b1bb4fbb37b50a1e2798df0c9a3a528b6b2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 16:26:22 2012 -0500

    [ucdn] Make data tables const!

 src/hb-ucdn/ucdn.c           | 16 ++++++++--------
 src/hb-ucdn/unicodedata_db.h | 28 ++++++++++++++--------------
 2 files changed, 22 insertions(+), 22 deletions(-)

commit 7c5b7fe686c9163afe2f31fbeac6f8c8512f5516
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 22 14:15:08 2012 -0500

    Fix hb_shape_plan_get_shaper()

 src/hb-shape-plan.cc | 1 +
 1 file changed, 1 insertion(+)

commit 4c8963576573483269b327c6465f6ec99f489e05
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 21 01:20:56 2012 -0500

    0.9.7

 NEWS         | 86
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 configure.ac |  2 +-
 2 files changed, 87 insertions(+), 1 deletion(-)

commit ac064a2db2b7a010d99527e183145286215aea81
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 21 01:14:19 2012 -0500

    Rename hb_set_population() to hb_set_get_population()

 src/hb-set.cc | 2 +-
 src/hb-set.h  | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 16c914c2a6efeb6999054333985b1f711e33cf94
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 21 01:04:15 2012 -0500

    [Indic] One more try at unbreaking Khmer fonts

    See comments and discussion on the list.

 src/hb-ot-shape-complex-private.hh | 16 ++++++++++------
 1 file changed, 10 insertions(+), 6 deletions(-)

commit e8cfdd7fa8d0fb66e0a261f3547e5824897e5131
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 16 19:07:06 2012 -0800

    Start implementing collect_glyphs() operation

    Not functional yet.

 src/hb-ot-layout-gsub-table.hh       | 185
 +++++++++++++++++++++++++++++++++++
 src/hb-ot-layout-gsubgpos-private.hh |  57 +++++++++++
 src/hb-ot-layout.cc                  |  29 ++++++
 src/hb-ot-layout.h                   |   4 +-
 4 files changed, 272 insertions(+), 3 deletions(-)

commit 7d52e6601f0e695690cd168a288466746cf25300
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 16 18:49:54 2012 -0800

    Whitespace

 src/hb-coretext.cc                   |  32 +++++-----
 src/hb-icu-le.cc                     |   2 +-
 src/hb-old.cc                        |  10 ++--
 src/hb-open-file-private.hh          |   2 +-
 src/hb-open-type-private.hh          |   2 +-
 src/hb-ot-head-table.hh              |   2 +-
 src/hb-ot-hhea-table.hh              |   2 +-
 src/hb-ot-hmtx-table.hh              |   2 +-
 src/hb-ot-layout-common-private.hh   |   2 +-
 src/hb-ot-layout-gdef-table.hh       |   2 +-
 src/hb-ot-layout-gpos-table.hh       |   2 +-
 src/hb-ot-layout-gsub-table.hh       |   2 +-
 src/hb-ot-layout-gsubgpos-private.hh |   2 +-
 src/hb-ot-maxp-table.hh              |   2 +-
 src/hb-ot-name-table.hh              |   2 +-
 src/hb-ot-shape-complex-default.cc   | 109
 ++++++++++++++++++-----------------
 src/hb-tt-font.cc                    |   2 +-
 17 files changed, 87 insertions(+), 92 deletions(-)

commit 51bb498b7b07bff4a447405b72f09b68d07a3e95
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 16 14:08:05 2012 -0800

    Minor

 src/hb-ot-shape.cc | 1 +
 1 file changed, 1 insertion(+)

commit 89ca8eeb83fedde06727d386369a0a39d410f12b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 16 13:53:40 2012 -0800

    Implement hb_ot_layout_get_glyphs_in_class()

 src/hb-ot-layout-common-private.hh | 24 ++++++++++++++++++++++++
 src/hb-ot-layout-gdef-table.hh     |  2 ++
 src/hb-ot-layout.cc                |  8 ++++++++
 src/hb-ot-layout.h                 |  5 ++---
 4 files changed, 36 insertions(+), 3 deletions(-)

commit 5a08ecf9200a6ac9b4ebb7ec5c13dcb42d8820ce
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 16 13:34:29 2012 -0800

    Implement hb_ot_layout_get_glyph_class()

 src/hb-ot-layout-gdef-table.hh       | 10 +++++-----
 src/hb-ot-layout-gpos-table.hh       |  8 ++++----
 src/hb-ot-layout-gsub-table.hh       |  2 +-
 src/hb-ot-layout-gsubgpos-private.hh | 10 +++++-----
 src/hb-ot-layout-private.hh          | 10 +++++++++-
 src/hb-ot-layout.cc                  |  6 ++++++
 src/hb-ot-layout.h                   | 14 ++++++--------
 src/hb-ot-shape.cc                   |  4 ++--
 8 files changed, 38 insertions(+), 26 deletions(-)

commit f9edd5d56bd219625f5b16b23eac53b4c4a8b194
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 16 13:23:37 2012 -0800

    Implement hb_shape_plan_get_shaper()

    Untested.

 src/hb-shape-plan-private.hh | 1 +
 src/hb-shape-plan.cc         | 7 +++++++
 src/hb-shape-plan.h          | 4 +---
 3 files changed, 9 insertions(+), 3 deletions(-)

commit 43b653150081a2f9dc6b7481229ac4cd952575dc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 16 13:12:35 2012 -0800

    [Indic] Another try to unbreak Sinhala split matras

    Just read the comments...

 src/hb-ot-shape-complex-indic.cc                   | 43
 ++++++++++++++++++----
 .../indic/script-sinhala/misc/MANIFEST             |  1 +
 .../indic/script-sinhala/misc/split-matras.txt     |  4 ++
 3 files changed, 40 insertions(+), 8 deletions(-)

commit 977f1740ace730dcdff8221a17f2a592c2ec7c74
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 16 13:10:07 2012 -0800

    Unbreak tests

 src/hb-ot-layout.h  | 14 +++++++-------
 src/hb-shape-plan.h |  2 +-
 2 files changed, 8 insertions(+), 8 deletions(-)

commit eba312c8d1b2bbe8cb9b6414e843e78d2c521aa4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 16 12:39:23 2012 -0800

    Plumbing to get shape plan and font into complex decompose function

    So we can handle Sinhala split matras smartly...  Coming soon.

 src/hb-ot-shape-complex-default.cc   |  6 ++--
 src/hb-ot-shape-complex-indic.cc     | 14 ++++-----
 src/hb-ot-shape-complex-private.hh   | 16 +++++------
 src/hb-ot-shape-normalize-private.hh | 22 ++++++++++++--
 src/hb-ot-shape-normalize.cc         | 56
 ++++++++++++++----------------------
 src/hb-ot-shape.cc                   |  2 +-
 6 files changed, 61 insertions(+), 55 deletions(-)

commit 3f82f8ff07a9d16a7c047129658c1bbedfdb5436
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 15 18:45:31 2012 -0800

    Rename hb_buffer_guess_properties() to
    hb_buffer_guess_segment_properties()

 src/hb-buffer-private.hh | 2 +-
 src/hb-buffer.cc         | 6 +++---
 src/hb-buffer.h          | 2 +-
 src/hb-fallback-shape.cc | 2 +-
 src/hb-ot-shape.cc       | 2 +-
 src/hb-shape.cc          | 2 +-
 6 files changed, 8 insertions(+), 8 deletions(-)

commit f30641038ba96e83950729b1bd9d86d2e98e46c5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 15 18:39:46 2012 -0800

    Bunch of independent changes (ouch)

    API additions:

            hb_segment_properties_t
            HB_SEGMENT_PROPERTIES_DEFAULT
            hb_segment_properties_equal()
            hb_segment_properties_hash()

            hb_buffer_set_segment_properties()
            hb_buffer_get_segment_properties()

            hb_ot_layout_glyph_class_t

            hb_shape_plan_t
            hb_shape_plan_create()
            hb_shape_plan_create_cached()
            hb_shape_plan_get_empty()
            hb_shape_plan_reference()
            hb_shape_plan_destroy()
            hb_shape_plan_set_user_data()
            hb_shape_plan_get_user_data()
            hb_shape_plan_execute()

            hb_ot_shape_plan_collect_lookups()

    API changes:

            Rename hb_ot_layout_feature_get_lookup_indexes() to
            hb_ot_layout_feature_get_lookups().

    New header file:

            hb-shape-plan.h

    And a bunch of prototyped but not implemented stuff.  Coming soon.
    (Tests fail because of the prototypes right now.)

 src/Makefile.am              |   2 +-
 src/hb-buffer-private.hh     |  37 ---------------
 src/hb-buffer.cc             |  45 +++++++++++++++++-
 src/hb-buffer.h              |  47 +++++++++++++++++--
 src/hb-ot-layout-private.hh  |   8 ----
 src/hb-ot-layout.cc          |  12 ++---
 src/hb-ot-layout.h           | 108
 ++++++++++++++++++++++++++++++++++++++++---
 src/hb-ot-map-private.hh     |   2 +-
 src/hb-ot-map.cc             |  15 +++---
 src/hb-ot-shape-private.hh   |  11 ++++-
 src/hb-ot-shape.cc           |  52 ++++++++++++++-------
 src/hb-ot.h                  |   1 +
 src/hb-shape-plan-private.hh |   3 +-
 src/hb-shape-plan.cc         |  23 +++++++--
 src/hb-shape-plan.h          |  50 +++++++++++++-------
 src/hb-shaper-private.hh     |   2 -
 src/hb-shaper.cc             |   2 +-
 src/hb.h                     |   1 +
 18 files changed, 304 insertions(+), 117 deletions(-)

commit 75da37dcb17aacc0be6bb006683a84aa31155938
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 15 18:39:23 2012 -0800

    Minor

 util/hb-ot-shape-closure.cc | 24 ++++++++++++------------
 1 file changed, 12 insertions(+), 12 deletions(-)

commit e05a999495e6575f7cebd7f35db087d964f11ef6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 15 16:23:21 2012 -0800

    Add hb_face_[sg]et_glyph_count()

 src/hb-font-private.hh |  9 +++++++++
 src/hb-font.cc         | 29 ++++++++++++++++++++++++++++-
 src/hb-font.h          |  7 +++++++
 3 files changed, 44 insertions(+), 1 deletion(-)

commit aec89de5641fbe1c3031d63dd5f40ec99bf2a538
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 15 16:15:42 2012 -0800

    Add / modify set API a bit

 src/hb-ot-shape.cc          |  2 +-
 src/hb-set-private.hh       | 35 ++++++++++++++++--
 src/hb-set.cc               | 86
 ++++++++++++++++++++++++++++++---------------
 src/hb-set.h                | 55 +++++++++++++++++++----------
 util/hb-ot-shape-closure.cc |  2 +-
 5 files changed, 128 insertions(+), 52 deletions(-)

commit c54599ad269380c7aa28d885fcfd660fc2c10a7b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 15 16:14:23 2012 -0800

    Minor

 src/hb-buffer.cc | 2 +-
 src/hb-buffer.h  | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

commit d1aa143ca434fe272de21d2002768c83387b583b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 15 15:38:08 2012 -0800

    [Thai] Remove U+0E2C from "AC" consonants

    WinXP doesn't include it.

 src/hb-ot-shape-complex-thai.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 362a990b2246f5448ecb9d600761f710aea7d42d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 15 14:57:31 2012 -0800

    Rename hb_ot_layout_would_substitute_lookup() and
    hb_ot_layout_substitute_closure_lookup()

    To match upcoming API.

 src/hb-ot-layout-private.hh      | 2 +-
 src/hb-ot-layout.cc              | 8 ++++----
 src/hb-ot-layout.h               | 4 ++--
 src/hb-ot-map.cc                 | 2 +-
 src/hb-ot-shape-complex-indic.cc | 2 +-
 src/test-would-substitute.cc     | 2 +-
 6 files changed, 10 insertions(+), 10 deletions(-)

commit a4bef84e375b090c1bc7e4221b8e0ee435dfcbba
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 15 13:29:51 2012 -0800

    [util] Make hb-shape err if output-format is not understood

    And list supported formats.

 util/hb-shape.cc | 6 ++++++
 1 file changed, 6 insertions(+)

commit 3cec819d39e45470d03085bb6fa132882cc85943
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 15 13:15:39 2012 -0800

    Make the OT shaper default, even if CoreText or Uniscribe is enabled

 src/hb-shaper-list.hh | 15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)

commit 072ae7a982bf640804eee0b41525e7c328806bf5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 15 13:14:12 2012 -0800

    Add hb_buffer_serialize_list_formats()

 src/hb-buffer.cc | 6 ++++++
 src/hb-buffer.h  | 3 +++
 2 files changed, 9 insertions(+)

commit f9edf1672511c3bcc3796cc79578ffea43b2bda1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 15 12:14:09 2012 -0800

    Add buffer serialization / deserialization API

    Two output formats for now: TEXT, and JSON.  For example:

      hb-shape --output-format=json

    Deserialization API is added, but not implemented yet.

 src/hb-buffer.cc | 222
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-buffer.h  |  42 +++++++++++
 util/hb-shape.cc |  21 +++++-
 util/options.cc  |  57 +++++---------
 util/options.hh  |   7 +-
 5 files changed, 304 insertions(+), 45 deletions(-)

commit fd0de881f4fc004da6f36d50a91d0e62f8eb4d8c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 15 10:47:14 2012 -0800

    Avoid C++ undefined behavior

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

 src/hb-open-type-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit f41dc2d35b23220d59d38990bb66f1cbd66a55b3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 15 10:36:43 2012 -0800

    Fix undefined behavior in Indic dottedcircle

    Chromium Issue 158998:  Conditional jump in harfbuzz-ng
    http://code.google.com/p/chromium/issues/detail?id=158998

 src/hb-ot-shape-complex-indic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 1eb3e94fe99a072ce422e60ac4d4d89ef489b08a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 14 17:25:03 2012 -0800

    [Thai] Implement PUA-based fallback shaping

    As explained here:

      http://linux.thai.net/~thep/th-otf/shaping.html

    Our output now matches Uniscribe for old fonts (eg. XP Tahoma) with no
    Thai GSUB table.

 src/hb-ot-shape-complex-thai.cc | 217
 ++++++++++++++++++++++++++++++++++++++++
 1 file changed, 217 insertions(+)

commit 851784f8372004e0a40b698c0cdc2d7db8629aa2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 14 16:24:05 2012 -0800

    Improve shaper selection

 src/hb-ot-map-private.hh           |  8 ++++----
 src/hb-ot-map.cc                   |  6 ++++--
 src/hb-ot-shape-complex-indic.cc   |  2 +-
 src/hb-ot-shape-complex-private.hh | 13 ++++++++-----
 src/hb-ot-shape-complex-thai.cc    | 24 ++++++++++++++++++++++--
 5 files changed, 39 insertions(+), 14 deletions(-)

commit f3584d3a3a627e38dfd7769975a670db340d2a48
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 14 15:55:17 2012 -0800

    Add test cases for Thai PUA shaping

 .../texts/in-tree/shaper-thai/script-thai/misc/MANIFEST       |  1 +
 .../in-tree/shaper-thai/script-thai/misc/pua-shaping.txt      |
 11 +++++++++++
 2 files changed, 12 insertions(+)

commit 43f04a7456419153cb03e610a825056a47824780
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 14 15:51:54 2012 -0800

    Move Thai shaper into a separate file

 src/Makefile.am                                    |   3 +-
 ...plex-misc.cc => hb-ot-shape-complex-default.cc} | 114
 -----------------
 src/hb-ot-shape-complex-thai.cc                    | 141
 +++++++++++++++++++++
 3 files changed, 143 insertions(+), 115 deletions(-)

commit ba82325b7a6311b787ae47f41a56964e2f2cba9f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 14 15:36:53 2012 -0800

    Add note re 'Phags-pa letter U+A872, which is Joining_Type=L

 src/hb-ot-shape-complex-arabic.cc | 1 +
 1 file changed, 1 insertion(+)

commit d469fadce8290c7dda559c5927dd19df65f91c1a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 14 15:07:36 2012 -0800

    [Indic] Exchange abort() for assert()

 src/hb-ot-shape-complex-indic.cc | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit 0f80a89de99293ddbf0b8b815fe360677d057e38
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 14 15:05:19 2012 -0800

    Don't route Kharoshthi through the Indic shaper

    It's a simple, right-to-left, script.

 src/hb-ot-shape-complex-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e67072bb179a5c17db04075de74215597fb43c82
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 14 15:00:53 2012 -0800

    [Indic] Handle overstruck matra position

 src/hb-ot-shape-complex-indic-private.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 7e99e4f0740e47efda5882604954cb7d12700a4b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 14 14:09:46 2012 -0800

    Reposition Lao marks

    Lao marks are center-aligned, unlike Thai ones.

 src/hb-ot-shape-fallback.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 865745b5b87236651f5663cae3461db9cb505eed
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 14 13:48:26 2012 -0800

    Don't do fallback positioning for Indic and Thai shapers

 src/hb-ot-shape-complex-arabic.cc  |  1 +
 src/hb-ot-shape-complex-indic.cc   |  1 +
 src/hb-ot-shape-complex-misc.cc    |  2 ++
 src/hb-ot-shape-complex-private.hh |  1 +
 src/hb-ot-shape.cc                 | 20 +++++---------------
 5 files changed, 10 insertions(+), 15 deletions(-)

commit 981748cb2e9b48b77177b19ec1f972cab7afda89
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 14 13:38:16 2012 -0800

    [Indic] If Khmer fonts have a 'liga' feature, use generic shaper

    Seems to produce more coherent results than trying the Indic shaper on
    them.  I'm looking at you, Kh-* fonts...

 src/hb-ot-shape-complex-private.hh | 21 +++++++++++++++++----
 1 file changed, 17 insertions(+), 4 deletions(-)

commit 6b19fa48621dbf36d471d5005f6ae20df350954f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 14 11:38:50 2012 -0800

    Adjust diff rule for the new hb-shape output format

 test/shaping/hb_test_tools.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit dde5506fd963e3cec27c3389bb1fc092f86d1e06
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 14 11:37:04 2012 -0800

    [Indic] Don't move virama with left matra

    This is important for the Sinhala U+0DDA split matra since it
    decomposes
    to U+0DD9,U+0DCA where U+0DD9 is a left matra and U+0DCA is the
    virama.
    We don't want to move the virama with the left matra.
    TEST: U+0D9A,U+0DDA

    Note that we were already doing this in the Uniscribe bug
    compatibility
    mode.  We now do it all the time.

 src/hb-ot-shape-complex-indic.cc | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

commit 82c4d9880a2cd321f6426888511c5f0318f96ad5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 14 10:56:02 2012 -0800

    Add Sinhala test case for split matra U+0DDA

 .../texts/in-tree/shaper-indic/indic/script-sinhala/misc/misc.txt
 | 1 +
 1 file changed, 1 insertion(+)

commit d04b12853167d756a8cccaf4154f0fd894bce6de
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 14 10:53:10 2012 -0800

    Fix test

 test/api/test-buffer.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 92f9bfed42f720c1fd78e795845542661aaf4f8a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 13 16:50:45 2012 -0800

    Minor

 src/hb-buffer.h | 26 ++++++++++++++------------
 1 file changed, 14 insertions(+), 12 deletions(-)

commit 66ac2ff32e24f0d5658ca172147613081a133847
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 13 16:26:32 2012 -0800

    API change: Remove "mask" from hb_buffer_add()

    I don't expect anybody using hb_buffer_add(), so this shouldn't break
    anyone's code.

 src/hb-buffer-private.hh | 1 -
 src/hb-buffer.cc         | 8 +++-----
 src/hb-buffer.h          | 1 -
 3 files changed, 3 insertions(+), 7 deletions(-)

commit 407f80d62589774f845ef1a6a0a7d841b09d57c6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 13 15:33:27 2012 -0800

    [util] Add --bot / --eot / --preserve-default-ignorables

 util/options.cc |  3 +++
 util/options.hh | 12 ++++++++++++
 2 files changed, 15 insertions(+)

commit 78d41d8d69142ae95928b51215c0c0c5e3f5b3f0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 13 15:15:09 2012 -0800

    Minor

 util/options.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 321f73c16efa0730c96e001d65268f4927a0f735
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 13 15:12:24 2012 -0800

    [util] Add --text-before and --text-after to hb-shape / hb-view

    Use with Arabic, for example, to see the effect on joining.

 util/hb-ot-shape-closure.cc |  4 +++-
 util/main-font-text.hh      |  2 +-
 util/options.cc             |  2 ++
 util/options.hh             | 18 ++++++++++++++++--
 util/shape-consumer.hh      |  6 ++++--
 5 files changed, 26 insertions(+), 6 deletions(-)

commit e13f8d280bafc6a6b6e31e2eee587660b8333c56
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 13 15:12:06 2012 -0800

    Fix UTF-8 backward iteration

    Ouch!

 src/hb-utf-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 5669a6cf418f3a8b9281c36e9d662d843be80433
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 13 15:11:51 2012 -0800

    [Arabic] Fix post-context handling

    Ouch!

 src/hb-ot-shape-complex-arabic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0c7df2222862122ebbdc8665a21d6771ef5e0252
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 13 14:42:35 2012 -0800

    Add buffer flags

    New API:

            hb_buffer_flags_t

            HB_BUFFER_FLAGS_DEFAULT
            HB_BUFFER_FLAG_BOT
            HB_BUFFER_FLAG_EOT
            HB_BUFFER_FLAG_PRESERVE_DEFAULT_IGNORABLES

            hb_buffer_set_flags()
            hb_buffer_get_flags()

    We use the BOT flag to decide whether to insert dottedcircle if the
    first char in the buffer is a combining mark.

    The PRESERVE_DEFAULT_IGNORABLES flag prevents removal of characters
    like
    ZWNJ/ZWJ/...

 src/hb-buffer-private.hh          |  1 +
 src/hb-buffer.cc                  | 18 ++++++++++++++++++
 src/hb-buffer.h                   | 13 +++++++++++++
 src/hb-ot-shape-complex-arabic.cc | 40
 ++++++++++++++++++++-------------------
 src/hb-ot-shape.cc                |  9 ++++++---
 test/api/test-buffer.c            |  9 +++++++++
 6 files changed, 68 insertions(+), 22 deletions(-)

commit 1c7e55511a870f2689680ca8f977e00879f3b3e3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 13 14:42:22 2012 -0800

    Minor fix

    Ouch

 src/hb-shape.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c8d4f8b0fe56ce909e3ca07f8a30cb4fb940868b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 13 14:10:19 2012 -0800

    Minor

 test/api/test-object.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 82ecaff736e245e117d70b6ec1497508c6eb08d2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 13 13:57:52 2012 -0800

    Add hb_buffer_clear()

    Which is like _reset(), but does NOT clear unicode-funcs.

 src/hb-buffer-private.hh |  1 +
 src/hb-buffer.cc         | 15 +++++++++++++++
 src/hb-buffer.h          |  4 ++++
 test/api/test-buffer.c   | 22 +++++++++++++++++++++-
 4 files changed, 41 insertions(+), 1 deletion(-)

commit da43a92b04929e93356ae393803ef101154d2267
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 13 13:48:26 2012 -0800

    0.9.6

 NEWS         | 28 ++++++++++++++++++++++++++++
 configure.ac |  2 +-
 2 files changed, 29 insertions(+), 1 deletion(-)

commit 0736915b8ed789a209205fec762997af3a8af89c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 13 12:35:35 2012 -0800

    [Indic] Decompose Sinhala split matras the way old HarfBuzz /
    Pango did

    Had to do some refactoring to make this happen...

    Under uniscribe bug compatibility mode, we still plit them
    Uniscrie-style, but Jonathan and I convinced ourselves that there
    is no
    harm doing this the Unicode way.  This change makes that happen, and
    unbreaks free Sinhala fonts.

 src/hb-ot-shape-complex-arabic.cc    |   2 +
 src/hb-ot-shape-complex-indic.cc     |  74 +++++++++-
 src/hb-ot-shape-complex-misc.cc      | 133 ++++++++++++++++-
 src/hb-ot-shape-complex-private.hh   |  28 +++-
 src/hb-ot-shape-normalize-private.hh |   6 +-
 src/hb-ot-shape-normalize.cc         | 278
 ++++++++++-------------------------
 src/hb-ot-shape.cc                   |   5 +-
 7 files changed, 312 insertions(+), 214 deletions(-)

commit c8149ca85ed97112778590bc9f090f3ee0254100
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 13 11:07:20 2012 -0800

    [hb-shape] Adjust postioning output format

    1. If there is any offset (x or y), print out both x and y offsets.

    2. Always print out the advance in the major direction of the buffer.
    Ie. even for zero-advance glyphs, print a "+0".  This is more
    intuitive.

 util/options.cc | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

commit 6fd5335622087e87739684f581aa9f88635ff970
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 18:42:18 2012 -0800

    [Indic] Update auto-generated Indic machine to reflect previous commit

 src/hb-ot-shape-complex-indic-machine.hh | 1126
 +++++++++++++++---------------
 1 file changed, 567 insertions(+), 559 deletions(-)

commit 9cac1338c4bc3e9034cbfa104291ed0329debefe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 18:41:22 2012 -0800

    [Indic] Allow Consonant_Medial's after Consonant's

    Mostly affects Myanmar, but also Tai Tham, Javanese, and Cham.  The
    latter three are untested (no fonts!).

 src/hb-ot-shape-complex-indic-machine.rl | 3 ++-
 src/hb-ot-shape-complex-indic-private.hh | 7 ++++---
 2 files changed, 6 insertions(+), 4 deletions(-)

commit d187099cbab8e75f870a2bc9c23b6a1cf226905e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 18:38:06 2012 -0800

    [Indic] Categorize Myanmar "tone marks" as nuktas

 src/hb-ot-shape-complex-indic-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 8173f23f3f16972c2e8e0a120724533100acfda2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 18:37:20 2012 -0800

    [Indic] Add config for Myanmar

 src/hb-ot-shape-complex-indic.cc | 2 ++
 1 file changed, 2 insertions(+)

commit 9e92978c8aa3d3cdab4d20c81698c56adbb3dbdd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 18:36:10 2012 -0800

    [Indic] Route "new" Myanmar tag through the Indic shaper

    Windows 8 adds a Myanmar shaper using the 'mym2' tag.  Route that
    through the Indic shaper.  It's still very broken, but at least this
    does NOT break old-style Myanmar shaping using the generic shaper.

 src/hb-ot-shape-complex-private.hh | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

commit 5ab3855f8106158ee7e68797e8c35e63e9216e5d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 18:27:42 2012 -0800

    Choose shaper based on chosen OT script tag

    For Arabic and Indic shapers, if the font doesn't have a script system
    for the script, use default shaper.

    Make an exception for Arabic script since we have fallback logic for
    that one.

 src/hb-ot-map-private.hh           |  4 ++++
 src/hb-ot-shape-complex-private.hh | 11 +++++++++--
 2 files changed, 13 insertions(+), 2 deletions(-)

commit 9b37b4c5800b158f61602d2aba8a01349e24d251
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 18:23:38 2012 -0800

    Make planner available to complex shaper choosing logic

 src/hb-ot-shape-complex-private.hh | 4 ++--
 src/hb-ot-shape.cc                 | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

commit 6fddf2d7397411bba8a23ac535e8b851495d3105
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 17:57:24 2012 -0800

    Refactoring ot-map building to make chosen script available earlier

 src/hb-ot-map-private.hh   | 13 ++++++++----
 src/hb-ot-map.cc           | 51
 ++++++++++++++++++++++++++--------------------
 src/hb-ot-shape-private.hh |  4 ++--
 3 files changed, 40 insertions(+), 28 deletions(-)

commit f17ed8116e7b6429af3fa60bb43d5f4fac66eae3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 17:48:26 2012 -0800

    Minor TODO

 TODO | 2 ++
 1 file changed, 2 insertions(+)

commit de796a6fb98f4deda276caa82266b7c830978e0b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 17:27:51 2012 -0800

    Add "new" Myanmar OT Script tag

    Windows 8 added support for Myanmar shaping using the "mym2"
    script tag,
    even though Windows never supported the old "mymr" tag.

 src/hb-ot-tag.cc       | 2 ++
 test/api/test-ot-tag.c | 1 +
 2 files changed, 3 insertions(+)

commit 27f52dc3f6bbb97594a44f27b180aed73d9e5608
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 16:54:03 2012 -0800

    Add Myanmar tests from UTN#11

 .../south-east-asian/script-myanmar/misc/MANIFEST  |  1 +
 .../south-east-asian/script-myanmar/misc/utn11.txt | 34
 ++++++++++++++++++++++
 2 files changed, 35 insertions(+)

commit e9334ce97bb7f1de87fb211bb5a8168033629b14
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 14:57:02 2012 -0800

    Break build when ragel is needed and missing

 src/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit dba186711e3f5e723f917b7104e849c4c525d3b8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 14:48:33 2012 -0800

    [Indic] Make more room in the table

    To be used in upcoming commits.

 src/hb-ot-shape-complex-indic-private.hh | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit c4be9917438c45b972ec76dc68409014110f0837
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 14:27:33 2012 -0800

    Typo

 src/hb-ot-shape-complex-indic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 56be677781736bbedc80df6f6aaa2b5f0bc4041c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 14:09:40 2012 -0800

    [Indic] Port 'pref' logic to look into font tables

    ...instead of using a hardcoded list of Ra characters.

 src/hb-ot-shape-complex-indic.cc | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit f2c0f59043c93c225274fc0c8177077d16c89d61
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 14:02:02 2012 -0800

    [Indic] Port reph handling logic to look into font features

    ...instead of using a hardcoded list of Ra characters.

 src/hb-ot-shape-complex-indic.cc | 48
 +++++++++++++++++++++++++---------------
 1 file changed, 30 insertions(+), 18 deletions(-)

commit 43149afbc0007ea075a7017c0e56056c3c0f3614
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 13:34:17 2012 -0800

    Route MEETEI_MAYEK through the Indic shaper

    Since it has a couple of left-"matras".

 src/hb-ot-shape-complex-private.hh | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

commit d0905c3400085f9c0901c558ba1b81b5039510e4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 13:02:20 2012 -0800

    Minor

 src/hb-ot-head-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 365f27ab5ba025bf1be6a882ed213c695cbfed7e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 11:16:57 2012 -0800

    Work around older compilers

    As reported on the list:

    I am seeing a similar problem building harfbuzz 0.9.5 with Apple gcc
    4.0.1 on OS X 10.5 Leopard:

    hb-ot-layout-common-private.hh:406: error: 'struct
    OT::CoverageFormat1::Iter' is private
    hb-ot-layout-common-private.hh:646: error: within this context
    hb-ot-layout-common-private.hh:500: error: 'struct
    OT::CoverageFormat2::Iter' is private
    hb-ot-layout-common-private.hh:647: error: within this context
    make[4]: *** [libharfbuzz_la-hb-ot-layout.lo] Error 1

    Also reported as happening with MSVC 2005.

 src/hb-ot-layout-common-private.hh | 6 ++++++
 1 file changed, 6 insertions(+)

commit 6b389ddc3623d042ded4731f4d62dc354002fdd0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 11:02:56 2012 -0800

    [Indic] Don't apply 'liga'

    Uniscribe doesn't.  And some fonts abuse this feature to get Indic
    shaping working in non-complex applications like Adobe's apps.

    No change in numbers:

    BENGALI: 353897 out of 354188 tests passed. 291 failed (0.0821598%)
    DEVANAGARI: 707337 out of 707394 tests passed. 57 failed (0.00805774%)
    GUJARATI: 366440 out of 366457 tests passed. 17 failed (0.00463902%)
    GURMUKHI: 60704 out of 60747 tests passed. 43 failed (0.0707854%)
    KANNADA: 951046 out of 951913 tests passed. 867 failed (0.0910798%)
    KHMER: 299074 out of 299124 tests passed. 50 failed (0.0167155%)
    LAO: 53611 out of 53644 tests passed. 33 failed (0.0615167%)
    MALAYALAM: 1048011 out of 1048334 tests passed. 323 failed
    (0.0308108%)
    ORIYA: 42320 out of 42329 tests passed. 9 failed (0.021262%)
    SINHALA: 271666 out of 271847 tests passed. 181 failed (0.0665816%)
    TAMIL: 1091754 out of 1091754 tests passed. 0 failed (0%)
    TELUGU: 970557 out of 970573 tests passed. 16 failed (0.00164851%)
    TIBETAN: 208469 out of 208469 tests passed. 0 failed (0%)

 src/hb-ot-shape-complex-indic.cc | 2 ++
 1 file changed, 2 insertions(+)

commit d05ac7dc3f2949e85f1fe996315b31b7aae370fe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 10:26:50 2012 -0800

    Fix hb-ft glyph name for broken fonts that return empty glyph names

 src/hb-ft.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 3bc22eb7b843c77706bb13fc332009097f247813
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 12 10:07:28 2012 -0800

    Minor

 util/options.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 4899801155cc0fef7a8aa58c33ac2d30ba34bcc3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 8 15:08:26 2012 -0800

    U+A872 PHAGS-PA SUPERFIXED LETTER RA is "Right"-Joining

 src/hb-ot-shape-complex-arabic.cc | 3 +++
 1 file changed, 3 insertions(+)

commit 22a685836a59d1c02914761c02d3852810b83ec5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 5 15:20:10 2012 -0800

    Adjust Mongolian shaping

    For U+1880..U+1886 Uniscribe thinks they are non-joining.
    For U+1887 Uniscribe thinks it's joining, but looks wrong to me.
    For now, match Uniscribe.

 src/hb-ot-shape-complex-arabic.cc | 3 +++
 1 file changed, 3 insertions(+)

commit e6b86c8519f894bf7fe18d5c143276521fcacece
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 5 15:18:49 2012 -0800

    Add test for non-joining Mongolian letters

    For U+1880..U+1886 Uniscribe thinks they are non-joining.
    For U+1887 Uniscribe thinks it's joining, but looks wrong to me.

 .../texts/in-tree/shaper-arabic/script-mongolian/misc/MANIFEST    | 1 +
 .../in-tree/shaper-arabic/script-mongolian/misc/non-joining.txt   |
 8 ++++++++
 2 files changed, 9 insertions(+)

commit c26a52fbe62e5ba4d0e1e2ba13bfb6ceb3f773dc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 4 16:48:45 2012 -0800

    Minor

 src/hb-ot-shape-fallback.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f60d3ed35d94f1adcfd73ca05d03d7e81fb5de03
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 4 16:44:47 2012 -0800

    Minor

 src/hb-set-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f5e55754f962184d2fb7dcab837cdba56e8c7731
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 2 13:53:18 2012 -0700

    Add Tifinagh test data

 test/shaping/texts/in-tree/shaper-default/MANIFEST            |  2 ++
 .../texts/in-tree/shaper-default/script-tifinagh/MANIFEST     |  1 +
 .../in-tree/shaper-default/script-tifinagh/misc/MANIFEST      |  1 +
 .../in-tree/shaper-default/script-tifinagh/misc/misc.txt      |
 11 +++++++++++
 4 files changed, 15 insertions(+)

commit 10a33296e674ee84b9ed2df25cf373de7d020b8d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 2 13:38:55 2012 -0700

    Minor

 src/hb-ot-tag.cc | 2 ++
 1 file changed, 2 insertions(+)

commit c21498afd857e78230f761ee5c9e73adece89dd0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 2 10:21:26 2012 -0700

    Add Mongolian and 'Phags-pa joining test cases

 test/shaping/texts/in-tree/shaper-arabic/MANIFEST          |  1 +
 .../in-tree/shaper-arabic/script-mongolian/misc/misc.txt   |  3 +++
 .../texts/in-tree/shaper-arabic/script-phags-pa/MANIFEST   |  1 +
 .../in-tree/shaper-arabic/script-phags-pa/misc/MANIFEST    |  1 +
 .../in-tree/shaper-arabic/script-phags-pa/misc/misc.txt    | 14
 ++++++++++++++
 5 files changed, 20 insertions(+)

commit 3ba7bc14ea652d27639f34109e51a497a678a54a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 1 20:05:04 2012 -0700

    Implement 'Phags-pa shaping

    Through the Arabic shaper.  It's similar to Mongolian.

 src/hb-ot-shape-complex-arabic.cc  | 15 ++++++++++++---
 src/hb-ot-shape-complex-private.hh |  4 +---
 2 files changed, 13 insertions(+), 6 deletions(-)

commit 431bef2e16c7888ca3960f5797432d3a20903550
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 1 16:26:01 2012 -0700

    Minor build fix

 test/api/Makefile.am | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

commit da70111ab234e8b740ce6fb1789a1809fbec0c44
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 31 13:45:30 2012 -0700

    Don't clear buffer pre-context if no new context is being provided

    Patch from Jonathan Kew.

    Part of fixing:

    Mozilla Bug 801410 - avoid inserting dotted-circle for run-initial
    Unicode combining characters in "simple" scripts such as Latin

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

 src/hb-buffer.cc | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

commit 0bc7a38463bfb37f12efeb1b8cb2024cf4a347bc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 29 22:02:45 2012 -0700

    [OT] Fix ReverseChainingSubst

    We should make it clear that we don't want output buffer in this case,
    otherwise buffer->backtrack_len() would be wrong.

 src/hb-buffer-private.hh       |  1 +
 src/hb-buffer.cc               | 13 +++++++++++++
 src/hb-ot-layout-gsub-table.hh |  1 +
 3 files changed, 15 insertions(+)

commit 2616689d159024d2b1cb1e68f9936b2129bf9be6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 29 21:51:56 2012 -0700

    More tracing fixups

 src/hb-ot-layout-gsubgpos-private.hh | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

commit 937f8d3871863b8b1ed1d8900cf41999d92ba30f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 29 21:49:33 2012 -0700

    [Arabic] Enable dlig and mset for Arabic

    That's what the spec says, and what Uniscribe does.

 src/hb-ot-shape-complex-arabic.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 911ed096980630fd4a37bf2024036daae13a6056
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 29 19:42:19 2012 -0700

    Ignore gid0 in test results

 test/shaping/hb_test_tools.py | 1 +
 1 file changed, 1 insertion(+)

commit bc513add7999baf32f126ceebbd318105ee66985
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 29 19:03:55 2012 -0700

    Add missing TRACE_RETURN

 src/hb-ot-layout-gsubgpos-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 10b88d89ef1efcfddbbfabd3669399b472c8a900
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 29 18:18:24 2012 -0700

    Add Ethiopic test case

    This sequence: U+120B,U+135F,U+120B with the Nyala font from Win7
    exposes a GPOS bug in Uniscribe, in that the positioned mark is
    wrongly
    moved as a result a following kern.

    This is the one "failure" in the Ethiopic test suite :-).

    ETHIOPIC: 118900 out of 118901 tests passed. 1 failed (0.000841036%)

 test/shaping/texts/in-tree/shaper-default/script-ethiopic/MANIFEST      |
 1 +
 test/shaping/texts/in-tree/shaper-default/script-ethiopic/misc/MANIFEST |
 1 +
 test/shaping/texts/in-tree/shaper-default/script-ethiopic/misc/misc.txt |
 1 +
 3 files changed, 3 insertions(+)

commit 88d3c98e309e14c3115825d1d8d40d0b3eec2d97
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 29 16:27:02 2012 -0700

    [Indic] Position pre-base reordering Ra after Chillus in Malayalam

    The logic for pre-base reordering follows the left matra logic.
    We had an exception for Malayalam/Tamil in the left matra
    repositioning
    which was not reflected in pre-base reordering.

    Malayalam failures down from 337 to 323.

    BENGALI: 353996 out of 354285 tests passed. 289 failed (0.0815727%)
    DEVANAGARI: 707339 out of 707394 tests passed. 55 failed (0.00777502%)
    GUJARATI: 366489 out of 366506 tests passed. 17 failed (0.0046384%)
    GURMUKHI: 60769 out of 60809 tests passed. 40 failed (0.0657797%)
    KANNADA: 951086 out of 951913 tests passed. 827 failed (0.0868777%)
    KHMER: 299106 out of 299124 tests passed. 18 failed (0.00601757%)
    LAO: 53611 out of 53644 tests passed. 33 failed (0.0615167%)
    MALAYALAM: 1048011 out of 1048334 tests passed. 323 failed
    (0.0308108%)
    ORIYA: 42320 out of 42329 tests passed. 9 failed (0.021262%)
    SINHALA: 271726 out of 271847 tests passed. 121 failed (0.0445103%)
    TAMIL: 1091837 out of 1091837 tests passed. 0 failed (0%)
    TELUGU: 970558 out of 970573 tests passed. 15 failed (0.00154548%)
    TIBETAN: 208469 out of 208469 tests passed. 0 failed (0%)

 src/hb-ot-shape-complex-indic.cc | 35 +++++++++++++++++++++--------------
 1 file changed, 21 insertions(+), 14 deletions(-)

commit 21bf796954678d02f136709cade43adef6f8f42b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 29 14:21:09 2012 -0700

    Add missed file

 src/hb-ucdn/COPYING | 13 +++++++++++++
 1 file changed, 13 insertions(+)

commit 01013a0f5c58d5d54a37e5b4d6692e0bbd4baf80
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 29 10:56:04 2012 -0700

    Include config.h.in in tree

    I typically don't like including generating files in tree.
    But like to
    make an exception for this, since this forms the canonical list of
    options one would need to go through when building with alternative
    build systems.

 Makefile.am |   1 -
 config.h.in | 160
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 160 insertions(+), 1 deletion(-)

commit 02ed52169ad3bb48f4989f721b0c6572e064a712
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 21:26:19 2012 -0700

    Improve license information

 COPYING                   | 2 ++
 src/hb-icu-le/COPYING     | 2 ++
 src/hb-icu-le/Makefile.am | 2 +-
 src/hb-ucdn/Makefile.am   | 2 +-
 src/hb-ucdn/README        | 7 +++++++
 5 files changed, 13 insertions(+), 2 deletions(-)

commit 4c1d9244617e472464722e64d2cdbc1f9e8827f6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 20:27:25 2012 -0700

    Minor

 src/hb-icu-le.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 38b015e57ffa75d3b078a368c23685beb7c3f946
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 20:11:47 2012 -0700

    Fix hb_buffer_set_length(buffer, 0)

    Was causing invalid realloc()s.

 src/hb-buffer.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b7115b63be72e109b51f538ba581aed1017b2d55
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 20:11:42 2012 -0700

    Add XXX

 src/hb-icu-le.cc | 1 +
 1 file changed, 1 insertion(+)

commit 71ee1f24503cd066ffc1a36cc5dd9a3c1d1a6dfd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 28 19:18:11 2012 -0700

    Port to ICU LayoutEngine C API

    Incidentally, this makes it not crash with icu-le-hb anymore...
    I'm not smart / stupid enough to spend two more days debugging C++
    linking issues, and this is ABI-stable at least.

 src/hb-icu-le.cc | 31 ++++++++++++++++---------------
 1 file changed, 16 insertions(+), 15 deletions(-)

commit 0144f05e57088b30ac894cdae8b04b265d4dfbe7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 26 13:48:06 2012 -0700

    Remove unused members

 src/hb-icu-le/PortableFontInstance.h | 3 ---
 1 file changed, 3 deletions(-)

commit cf3afd8979b1db76d437f428cbd51cb363e0d18e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 25 16:32:54 2012 -0700

    Rename and revamp is_zero_width() to be is_default_ignorable()

    That's really the logic desired.  Except that MONGOLIAN VOWEL
    SEPARATOR
    is not default_ignorable but it really should be.  Reported to
    Unicode.

    Based on suggestion from Konstantin Ritt.

 src/hb-fallback-shape.cc   |  2 +-
 src/hb-ot-shape-private.hh |  4 +--
 src/hb-ot-shape.cc         |  2 +-
 src/hb-unicode-private.hh  | 90
 +++++++++++++++++++++++++++++-----------------
 4 files changed, 62 insertions(+), 36 deletions(-)

commit a724139e641bf1592b1ff786a75a9de2ea8163cf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 24 14:02:15 2012 -0700

    Update TODO

 TODO | 14 ++++++++++----
 1 file changed, 10 insertions(+), 4 deletions(-)

commit 13c058472913b7b6d689f9022226079da65420b0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 14 18:37:09 2012 -0500

    0.9.5

 NEWS         | 23 +++++++++++++++++++++++
 configure.ac |  2 +-
 2 files changed, 24 insertions(+), 1 deletion(-)

commit fecdfa95daf4916695f23e7dab89ab363be11b89
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 7 17:19:58 2012 -0400

    Fixup hb_ot_shape_closure()

    Broke it when merged cmap mapping and normalizer.  Ouch!

 src/hb-ot-shape.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2d1dcb3ce3354c2d5e2b4d1d291beb8d23cdea22
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 7 17:13:46 2012 -0400

    Mark debug message functions static

 src/hb-private.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 9947bd6daffb5ec76b67536575e7617ba4f10b1e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 2 20:44:43 2012 -0400

    Update UCDN to upstream commit
    3f159c87824230b59af56e40e2db32caf6afa51a

    - Unicode 6.2.0 goodness,
    - Unassigned codepoints now have correct properties.  Passes test
    suite.

 src/hb-ucdn/unicodedata_db.h | 1966
 ++++++++++++++++++++++--------------------
 1 file changed, 1036 insertions(+), 930 deletions(-)

commit 32dbfcf763d1ae497d3c95de986a83441331678f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 2 17:42:13 2012 -0400

    Fix visibility of UCDN symbols

 src/hb-ucdn.cc     |  2 --
 src/hb-ucdn/ucdn.h | 19 +++++++++++++++++++
 2 files changed, 19 insertions(+), 2 deletions(-)

commit 3f33f0d1f2603f22e86adffe3c3836136ba5e5fd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 2 16:03:18 2012 -0400

    Import UCDN into source tree

    https://github.com/grigorig/ucdn

 configure.ac                 |   11 +-
 src/Makefile.am              |    7 +
 src/hb-ucdn.cc               |  207 ++
 src/hb-ucdn/Makefile.am      |   18 +
 src/hb-ucdn/README           |   33 +
 src/hb-ucdn/ucdn.c           |  282 +++
 src/hb-ucdn/ucdn.h           |  290 +++
 src/hb-ucdn/unicodedata_db.h | 4648
 ++++++++++++++++++++++++++++++++++++++++++
 src/hb-unicode.cc            |    3 +
 9 files changed, 5498 insertions(+), 1 deletion(-)

commit 0e292eb2a2abbac152eeea2060e58b7a66449745
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 2 14:59:00 2012 -0400

    Remove Glib thread-safety support

    Now that we have pthread detection in configure, we don't need Glib
    anymore.  Glib will only be a Unicode data provider.

 configure.ac             |  8 ++++----
 src/hb-atomic-private.hh | 13 -------------
 src/hb-mutex-private.hh  | 20 --------------------
 3 files changed, 4 insertions(+), 37 deletions(-)

commit 66efe896483c58f3ef9bd218c02bb7ea604f68ee
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 2 14:55:32 2012 -0400

    Check for pthreads

 configure.ac    | 7 +++++++
 src/Makefile.am | 5 +++++
 2 files changed, 12 insertions(+)

commit 10a8162dddb8b39ae130fe5bb7d1819471fa7e06
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 2 14:46:34 2012 -0400

    Add ax_pthread.m4

 m4/ax_pthread.m4 | 309
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 309 insertions(+)

commit 8ac34bc6ff1d0646503a45659b1846d8cf9c0603
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 2 14:46:04 2012 -0400

    Add pkg.m4 to git repo

 m4/pkg.m4 | 157
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 157 insertions(+)

commit c7afac0aa6e51e6a49ebf13f72537398698c9e49
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 2 14:44:47 2012 -0400

    Add AC_CONFIG_MACRODIR

 Makefile.am  | 2 ++
 configure.ac | 2 ++
 2 files changed, 4 insertions(+)

commit f2eb3fa9dca8d21fae20c9b9dddad3245df74a05
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 25 21:35:35 2012 -0400

    [OT] Only insert dottedcircle if at the beginning of paragraph

    If the first char in the run is a combining mark, but there is text
    before the run, don't insert dottedcircle.

    Part of addressing:
    https://bugzilla.redhat.com/show_bug.cgi?id=858736

 src/hb-ot-shape.cc | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

commit bdc2fc8294da7f374701aafe9f5a82d60633946f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 25 21:32:35 2012 -0400

    [Arabic] Respect Arabic joining from neighboring context

    Now we respect Arabic joining across runs.

 src/hb-ot-shape-complex-arabic.cc | 31 +++++++++++++++++++++++++++++--
 1 file changed, 29 insertions(+), 2 deletions(-)

commit 05207a79e0ae1769c5feaebe3fd99bdf9cfcf834
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 25 17:44:53 2012 -0400

    [buffer] Save pre/post textual context

    To be used for a variety of purposes.  We save up to five characters
    in each direction.  No public API changes, everything is taken care
    of already.  All clients need to do is to call hb_buffer_add_utf* with
    the full text + segment info (or at least some context) instead of
    just passing in the segment.

    Various operations (hb_buffer_reset, hb_buffer_set_length,
    hb_buffer_add*) automatically reset the relevant contexts.

 src/hb-buffer-private.hh | 13 ++++++++++++-
 src/hb-buffer.cc         | 44
 ++++++++++++++++++++++++++++++++++++++++----
 src/hb-buffer.h          |  2 +-
 3 files changed, 53 insertions(+), 6 deletions(-)

commit 89ac39dbbe028e6379f64392f2e590e3f1fdd847
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 25 13:59:24 2012 -0400

    Add hb_utf_prev()

 src/hb-utf-private.hh | 71
 +++++++++++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 69 insertions(+), 2 deletions(-)

commit 70ea4ac6887c7057113d714a98e55738b6196562
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 25 12:30:16 2012 -0400

    Slightly optimize UTF-8 parsing

 src/hb-utf-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 4445e5e2ecc257a5d0fa2f2715bb7181a47346da
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 25 12:26:12 2012 -0400

    [buffer] Cleanup / optimize UTF-16 parsing a bit

 src/hb-utf-private.hh | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

commit 1f66c3c1a0eb869c0d85a015235313177e0cec62
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 25 11:42:16 2012 -0400

    Add hb_utf_strlen()

    Speeds up UTF-8 parsing by calling strlen().

 src/hb-buffer.cc      | 13 ++-----------
 src/hb-utf-private.hh | 22 ++++++++++++++++++++++
 2 files changed, 24 insertions(+), 11 deletions(-)

commit 7f19ae7b9f806a2e35206b2ad41651c5f80b2537
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 25 11:22:28 2012 -0400

    [buffer] Templatize UTF handling

    Also move UTF routines into a separate file, to be reused from shapers
    that need it.

 src/Makefile.am       |   1 +
 src/hb-buffer.cc      | 157
 +++++++++++++-------------------------------------
 src/hb-utf-private.hh | 113 ++++++++++++++++++++++++++++++++++++
 3 files changed, 155 insertions(+), 116 deletions(-)

commit 0e0a4da9b7677a09e00d27313236e1f333864dd6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 25 11:09:04 2012 -0400

    [buffer] Towards template'izing different UTF adders

 src/hb-buffer.cc | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

commit 7d37280600c157f3c4eae8746e99511702a58e8f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 25 11:04:41 2012 -0400

    Minor

 src/hb-buffer.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 54d5da4ee9d902ff36473cec558137eef8f23825
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 25 10:50:41 2012 -0400

    Remove unused indic.cc

 src/Makefile.am |  6 +-----
 src/indic.cc    | 51 ---------------------------------------------------
 2 files changed, 1 insertion(+), 56 deletions(-)

commit fab7a71f110ed646745d54b23284537c50058c21
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 24 21:51:13 2012 -0400

    [Indic] Import ragel-generated Indic machine in git

    I don't expect ragel to be creating too much noise in its generated
    output, and including this in-tree helps users right now.  We can
    revisit this later if it proved to be too much trouble.

 autogen.sh                               |    6 -
 src/Makefile.am                          |    1 -
 src/hb-ot-shape-complex-indic-machine.hh | 1314
 ++++++++++++++++++++++++++++++
 3 files changed, 1314 insertions(+), 7 deletions(-)

commit 20a840c7cd08069720050782b4533cde505df09a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 24 20:23:00 2012 -0400

    Use a C++ linker on Windows

    On Windows we don't care whether or not we link to libstdc++.
    Seems to fix build with mingw32 on msys, as reported by Werner.

 src/Makefile.am | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit eb7669a38072b66eef3bd905a93c4815bef3f0e5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 18 19:42:06 2012 -0400

    Better autofoo

 src/Makefile.am | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

commit d00f7d83750258eff915a3826700c4819e63e481
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 17 20:59:09 2012 -0400

    Fix dependencies

 src/Makefile.am | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 811eefe225d20b20f1de20c6e62a0ebd6d89102a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 10 09:56:27 2012 -0400

    Return NULL, not false

    Oh well...

 src/hb-open-type-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 166b5cf7ec2d37fb54a909c437ccdec1edaf37aa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 7 14:55:07 2012 -0400

    [Indic] Find syllables before any features are applied

    With FreeSerif, it seems that the 'ccmp' feature does ligature
    substituttions.  That was then causing syllable match failures.
    We now
    find syllables before any features have been applied.

    Test sequence: U+0D9A,U+0DCA,U+200D,U+0DBB,U+0DCF

 src/hb-ot-shape-complex-indic-machine.rl           |  4 +-
 src/hb-ot-shape-complex-indic.cc                   | 56
 +++++++++++++++-------
 .../indic/script-sinhala/misc/misc.txt             |  1 +
 3 files changed, 43 insertions(+), 18 deletions(-)

commit 96fdc04e5c6daafce3d45e7508418e4db94df44c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 6 22:26:16 2012 -0400

    Add hb_buffer_[sg]et_content_type

    And hb_buffer_content_type_t and enum values.

 TODO                     |  1 +
 src/hb-buffer-private.hh |  2 ++
 src/hb-buffer.cc         | 34 ++++++++++++++++++++++++++++++++++
 src/hb-buffer.h          | 14 ++++++++++++++
 src/hb-shape.cc          |  5 +++++
 5 files changed, 56 insertions(+)

commit e30ebd2794b37bd8ec716a258d5cb017fb1dfadc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 6 22:09:06 2012 -0400

    Add hb_feature_to/from_string()

 TODO             |   4 +-
 src/hb-common.cc |   9 +++
 src/hb-common.h  |   6 +-
 src/hb-shape.cc  | 168
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-shape.h   |  13 +++++
 util/options.cc  | 132 ++-----------------------------------------
 6 files changed, 201 insertions(+), 131 deletions(-)

commit f67917161bbe317a33d6407fbc62ebffcafe7154
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 6 17:22:31 2012 -0400

    [OT] Do per-ligature-component fallback mark positioning

    With this in place, you can remove GDEF/GSUB/GPOS tables from Arabic
    fonts and still get per-component marks positioned on
    oh-yeah-fallback-formed LAM-ALEF ligatures with marks in between
    the LAM
    and ALEF.

    Now *that*'s pretty cool, if a bit anachronistic...

 src/hb-ot-shape-fallback.cc | 43
 ++++++++++++++++++++++++++++++++++++-------
 1 file changed, 36 insertions(+), 7 deletions(-)

commit 525c6855783a018d52867b9ece2ee90868ff1f91
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 6 16:02:07 2012 -0400

    [OT] Make fallback mark positioning more robust

    ...with clusters spanning multiple base characters.

 src/hb-ot-shape-fallback.cc | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

commit 5d502443f5a07cbd0aa860dd71a0fa4ea8b6ff9f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 6 15:29:29 2012 -0400

    [old] Clear offset array

 src/hb-old.cc | 3 +++
 1 file changed, 3 insertions(+)

commit 9433c218b4853442dd9ad53d0588a837a33dbf1e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 6 14:27:15 2012 -0400

    [OT] Simplify fallback positioning condition

 src/hb-ot-shape-fallback.cc | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 028a1706f898bfcee0d14acfba47ebe1de09f0c4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 6 14:25:48 2012 -0400

    Refactor common macro

 src/hb-ot-shape-fallback.cc  | 5 +----
 src/hb-ot-shape-normalize.cc | 5 +----
 src/hb-ot-shape.cc           | 5 +----
 src/hb-unicode-private.hh    | 9 +++++++++
 4 files changed, 12 insertions(+), 12 deletions(-)

commit 07cfbe21b511056d5c3c75cbfe84e4e982c3e8fb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 6 01:16:39 2012 -0400

    [OT] Streamline Arabic fallback shaping table

 src/gen-arabic-table.py                    |   6 +-
 src/hb-ot-shape-complex-arabic-fallback.hh |   2 +-
 src/hb-ot-shape-complex-arabic-table.hh    | 266
 ++++++++++++++---------------
 3 files changed, 137 insertions(+), 137 deletions(-)

commit 82f6b6f388b801a1483854cb56a2cadbb94e0f2b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 6 01:12:50 2012 -0400

    Minor

 src/hb-ot-shape-complex-arabic-fallback.hh | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

commit fabd3113a98c5f4114f48920fa7ea38bd65a8d32
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 5 22:19:28 2012 -0400

    [OT] Port Arabic fallback shaping to synthetic GSUB

    All of init/medi/fina/isol and rlig implemented.

    Let there be dragons... ⻯

 src/Makefile.am                            |   1 +
 src/hb-open-type-private.hh                |  69 +++++---
 src/hb-ot-layout-common-private.hh         |   9 +-
 src/hb-ot-layout-gsub-table.hh             |  11 +-
 src/hb-ot-map-private.hh                   |   6 +
 src/hb-ot-map.cc                           |   1 +
 src/hb-ot-shape-complex-arabic-fallback.hh | 252
 +++++++++++++++++++++++++++++
 src/hb-ot-shape-complex-arabic.cc          | 158 ++++++------------
 src/hb-ot-shape.cc                         |   7 +-
 src/hb-private.hh                          |  11 +-
 10 files changed, 369 insertions(+), 156 deletions(-)

commit f0b8ed1b6dd9f1d2b9084c101a6fc5dee0cc22a8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 5 17:32:57 2012 -0400

    [Indic] Allow "H,ZWJ,M"

    Uniscribe accepts a Halant,ZWJ before matras.  Allow that.

    BENGALI down from 295 to 291
    DEVANAGARI down from 69 to 57
    GUJARATI down from 19 to 17
    KANNADA down from 871 to 867
    MALAYALAM down from 340 to 337
    TELUGU down from 20 to 16

    Currently at:

    BENGALI: 353897 out of 354188 tests passed. 291 failed (0.0821598%)
    DEVANAGARI: 707337 out of 707394 tests passed. 57 failed (0.00805774%)
    GUJARATI: 366440 out of 366457 tests passed. 17 failed (0.00463902%)
    GURMUKHI: 60704 out of 60747 tests passed. 43 failed (0.0707854%)
    KANNADA: 951046 out of 951913 tests passed. 867 failed (0.0910798%)
    KHMER: 299077 out of 299124 tests passed. 47 failed (0.0157125%)
    LAO: 53611 out of 53644 tests passed. 33 failed (0.0615167%)
    MALAYALAM: 1047997 out of 1048334 tests passed. 337 failed
    (0.0321462%)
    ORIYA: 42320 out of 42329 tests passed. 9 failed (0.021262%)
    SINHALA: 271666 out of 271847 tests passed. 181 failed (0.0665816%)
    TAMIL: 1091754 out of 1091754 tests passed. 0 failed (0%)
    TELUGU: 970557 out of 970573 tests passed. 16 failed (0.00164851%)
    TIBETAN: 208469 out of 208469 tests passed. 0 failed (0%)

 src/hb-ot-shape-complex-indic-machine.rl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 4ed717ef61813fa16cf74f2874848e9feb81568f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 5 17:21:17 2012 -0400

    [Indic] Relax grammar

    Now that we insert dotted-circle, tests break more easily when
    our indic
    machine breaks.

    In particular, a few Devanagari tests were having sequences like
    "C,H,ZWJ,N", and because of the ZWJ the Nukta does NOT get reordered
    to
    before the Halant as the grammar used to expect...  Fixup.

    Another case is as simple as "C,ZWJ,SM".

    Fixes 10 out of 79 failures:

    DEVANAGARI: 707325 out of 707394 tests passed. 69 failed (0.00975411%)

 src/hb-ot-shape-complex-indic-machine.rl | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit aa7141efe49991a1160489106984e95163fe2ab8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 5 15:54:21 2012 -0400

    [Indic] Fix Khmer syllable-final coeng-consonant

    Brings down Khmer failures from 162 to 47.

    KHMER: 299077 out of 299124 tests passed. 47 failed (0.0157125%)

    Also rebaselined some of the test files that had only-inherited lines.
    Removing those, the stats are:

    BENGALI: 353893 out of 354188 tests passed. 295 failed (0.0832891%)
    DEVANAGARI: 707315 out of 707394 tests passed. 79 failed (0.0111678%)
    GUJARATI: 366438 out of 366457 tests passed. 19 failed (0.00518478%)
    GURMUKHI: 60704 out of 60747 tests passed. 43 failed (0.0707854%)
    KANNADA: 951042 out of 951913 tests passed. 871 failed (0.0915%)
    KHMER: 299077 out of 299124 tests passed. 47 failed (0.0157125%)
    LAO: 53611 out of 53644 tests passed. 33 failed (0.0615167%)
    MALAYALAM: 1047994 out of 1048334 tests passed. 340 failed
    (0.0324324%)
    ORIYA: 42320 out of 42329 tests passed. 9 failed (0.021262%)
    SINHALA: 271666 out of 271847 tests passed. 181 failed (0.0665816%)
    TAMIL: 1091754 out of 1091754 tests passed. 0 failed (0%)
    TELUGU: 970553 out of 970573 tests passed. 20 failed (0.00206064%)
    TIBETAN: 208469 out of 208469 tests passed. 0 failed (0%)

    Still some regressions, but some of the more egregious cases are
    addressed.

 src/hb-ot-shape-complex-indic-machine.rl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit efb8d3eb713bca7cbfca41380a012bdb4d380e5c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 5 15:50:47 2012 -0400

    Fixup test failure reporting

    After we implemented dotted-circle, we were still ignoring any tests
    that had dottedcircle in it for any of the shapers.  That meant
    that if
    we wrongly outputted dottedcircle, the test was being ignored.  Ouch!

    Fixing that shows regressions across the board.  Most are Uniscribe
    bugs: NOT inserting dotted-circle when it should.  Some are arou
    machine bugs.  This is in fact a nice way to catch Indic-machine
    deficiencies and when I fix the regressions, our clusters should be
    much closer to Uniscribe.  For now, we regressed from:

    BENGALI: 353997 out of 354285 tests passed. 288 failed (0.0812905%)
    DEVANAGARI: 707339 out of 707394 tests passed. 55 failed (0.00777502%)
    GUJARATI: 366489 out of 366506 tests passed. 17 failed (0.0046384%)
    GURMUKHI: 60769 out of 60809 tests passed. 40 failed (0.0657797%)
    KANNADA: 951086 out of 951913 tests passed. 827 failed (0.0868777%)
    KHMER: 299106 out of 299124 tests passed. 18 failed (0.00601757%)
    LAO: 53611 out of 53644 tests passed. 33 failed (0.0615167%)
    MALAYALAM: 1048104 out of 1048416 tests passed. 312 failed
    (0.0297592%)
    ORIYA: 42320 out of 42329 tests passed. 9 failed (0.021262%)
    SINHALA: 271747 out of 271847 tests passed. 100 failed (0.0367854%)
    TAMIL: 1091837 out of 1091837 tests passed. 0 failed (0%)
    TELUGU: 970558 out of 970573 tests passed. 15 failed (0.00154548%)
    TIBETAN: 208469 out of 208469 tests passed. 0 failed (0%)

    To:

    BENGALI: 353990 out of 354285 tests passed. 295 failed (0.0832663%)
    DEVANAGARI: 707315 out of 707394 tests passed. 79 failed (0.0111678%)
    GUJARATI: 366447 out of 366506 tests passed. 59 failed (0.016098%)
    GURMUKHI: 60707 out of 60809 tests passed. 102 failed (0.167738%)
    KANNADA: 951042 out of 951913 tests passed. 871 failed (0.0915%)
    KHMER: 298962 out of 299124 tests passed. 162 failed (0.0541581%)
    LAO: 53611 out of 53644 tests passed. 33 failed (0.0615167%)
    MALAYALAM: 1048074 out of 1048416 tests passed. 342 failed
    (0.0326206%)
    ORIYA: 42320 out of 42329 tests passed. 9 failed (0.021262%)
    SINHALA: 271666 out of 271847 tests passed. 181 failed (0.0665816%)
    TAMIL: 1091835 out of 1091837 tests passed. 2 failed (0.000183178%)
    TELUGU: 970553 out of 970573 tests passed. 20 failed (0.00206064%)
    TIBETAN: 208469 out of 208469 tests passed. 0 failed (0%)

    Investigating.

 test/shaping/hb_test_tools.py | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

commit 27bd55bd2ca599d501f10c2fae81861137517e46
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 5 15:11:14 2012 -0400

    [Indic] Tamil does not have half-forms either

    The Win7 Tamil font does not realy on this behavior, but the WinXP
    version does.  Handle Tamil like Malayalam: Matras always move to
    before base.

    WinXP Tamil failures went down from 168964 (15.4752%) to 167
    (0.0152953%) (two orders of magnitude reduction!).

    Included in this is a minor fixup that actually fixed a few tests
    with non-Tamil too.  Numbers at:

    BENGALI: 353997 out of 354285 tests passed. 288 failed (0.0812905%)
    DEVANAGARI: 707339 out of 707394 tests passed. 55 failed (0.00777502%)
    GUJARATI: 366489 out of 366506 tests passed. 17 failed (0.0046384%)
    GURMUKHI: 60769 out of 60809 tests passed. 40 failed (0.0657797%)
    KANNADA: 951086 out of 951913 tests passed. 827 failed (0.0868777%)
    KHMER: 299106 out of 299124 tests passed. 18 failed (0.00601757%)
    LAO: 53611 out of 53644 tests passed. 33 failed (0.0615167%)
    MALAYALAM: 1048104 out of 1048416 tests passed. 312 failed
    (0.0297592%)
    ORIYA: 42320 out of 42329 tests passed. 9 failed (0.021262%)
    SINHALA: 271747 out of 271847 tests passed. 100 failed (0.0367854%)
    TAMIL: 1091837 out of 1091837 tests passed. 0 failed (0%)
    TELUGU: 970558 out of 970573 tests passed. 15 failed (0.00154548%)
    TIBETAN: 208469 out of 208469 tests passed. 0 failed (0%)

 src/hb-ot-shape-complex-indic.cc | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit 87b75d0a4aa03fe7a03e3bf7baf8ece131aec1bb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 4 23:06:38 2012 -0400

    [OT] Allow adding features with fallback implementation

 src/hb-ot-map-private.hh | 7 ++++---
 src/hb-ot-map.cc         | 6 ++++--
 2 files changed, 8 insertions(+), 5 deletions(-)

commit 1d3947a6bda6986c9c7d993589053051c119cc81
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 4 22:42:17 2012 -0400

    Minor

 src/hb-ot-layout-gpos-table.hh | 2 +-
 src/hb-ot-layout-gsub-table.hh | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit b3b89b66586897a69b410ef02e7434691de84ae6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 4 21:13:17 2012 -0400

    [OT] Add SubstLookup serialize API

 src/hb-ot-layout-common-private.hh |  2 +-
 src/hb-ot-layout-gsub-table.hh     | 65
 +++++++++++++++++++++++++++++++++++++-
 2 files changed, 65 insertions(+), 2 deletions(-)

commit 715e03bc21d6adaa8e1f647235843839dc47dad1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 4 20:10:17 2012 -0400

    Minor

 src/hb-open-type-private.hh | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

commit 652d1e0d64e47313ead2fc8318d1236f0e0d80ca
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 4 20:00:44 2012 -0400

    [OT] Start adding Lookup-level serialize API

 src/hb-ot-layout-common-private.hh | 20 +++++++++++++++++++-
 1 file changed, 19 insertions(+), 1 deletion(-)

commit a930c68e9c50aade78c1eb0eef075c9c117e4ef6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 4 18:17:57 2012 -0400

    [OT] More serialize.  Implements all basic GSUB subtables

 src/hb-open-type-private.hh        |  53 +++++++++++++++-
 src/hb-ot-layout-common-private.hh |   8 ++-
 src/hb-ot-layout-gsub-table.hh     | 125
 +++++++++++++++++++++++++++++--------
 3 files changed, 156 insertions(+), 30 deletions(-)

commit 1b38b4e817d871b9549be65af6030bd0eea7f775
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 4 18:17:21 2012 -0400

    Minor

 src/hb-ot-layout-gsub-table.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit f7e81ce0b882aa942ae33c787e741c5e8e5a0173
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 4 15:32:37 2012 -0400

    0.9.4

 NEWS         | 18 ++++++++++++++++++
 configure.ac |  2 +-
 2 files changed, 19 insertions(+), 1 deletion(-)

commit 2bd9fe359839a653f7caae534bf768af1735f155
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 4 15:15:19 2012 -0400

    Refactor

 src/hb-ot-layout-gpos-table.hh       |  7 ++-----
 src/hb-ot-layout-gsub-table.hh       | 16 +++++-----------
 src/hb-ot-layout-gsubgpos-private.hh | 13 +++----------
 src/hb-ot-layout.cc                  | 23 +++++++++++++++++------
 src/hb-ot-shape-complex-arabic.cc    |  4 +---
 5 files changed, 28 insertions(+), 35 deletions(-)

commit a5ddd9e31cd7906c4b559aa5b2fafdae4b9c8935
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 4 14:55:00 2012 -0400

    [OT] Really fix possible NULL dereference this time

 src/hb-ot-layout-gsubgpos-private.hh | 8 ++++----
 src/hb-ot-layout.cc                  | 6 +++---
 src/hb-ot-shape-complex-arabic.cc    | 4 +++-
 3 files changed, 10 insertions(+), 8 deletions(-)

commit 29416833584d7831ece84aaeada6f5ebba7828c0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 3 23:31:14 2012 -0400

    [OT] Implement serialize() for AlternateSubst

 src/hb-ot-layout-gsub-table.hh | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)

commit 1f07e3382a1608b054cbf88b89fef74f6c485434
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 3 23:28:34 2012 -0400

    [OT] Implement serialize() for MultiSubst

 src/hb-open-type-private.hh    | 10 ++++++++++
 src/hb-ot-layout-gsub-table.hh | 43
 ++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 53 insertions(+)

commit 4912030dfba740c822e200d33cbb5c6dbbeaf79e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 3 20:58:03 2012 -0400

    Minor

 src/hb-open-type-private.hh    | 4 ++--
 src/hb-ot-layout-gsub-table.hh | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

commit f8fa2b5cf67b02d74514dec7885d03de73ec7349
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 3 20:19:46 2012 -0400

    Fix possible NULL dereference

    As reported by Kenichi Ishibashi.

 src/hb-ot-layout-gsubgpos-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 4b312fb288faa383a2c5bd3be0428f0e58e02699
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Sep 1 21:56:06 2012 -0400

    [OT] Remove serialize alignment

    Will reintroduce in a different way when we actually need it.

 src/hb-open-type-private.hh | 24 +++++++++++-------------
 1 file changed, 11 insertions(+), 13 deletions(-)

commit c61be03d6df122f18eebda3b29e42c9e768d45b9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Sep 1 21:43:38 2012 -0400

    [OT] A bit more serialize

 src/hb-open-type-private.hh        | 14 +++++++++++++
 src/hb-ot-layout-common-private.hh |  2 +-
 src/hb-ot-layout-gsub-table.hh     | 43
 ++++++++++++++++++++++++++++++++++++--
 3 files changed, 56 insertions(+), 3 deletions(-)

commit abcc5ac1fde1c493e4055dd2f27b8aade7713156
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Sep 1 21:30:17 2012 -0400

    [OT] Improve serialize syntax

    For some definition of improvement...

 src/hb-open-type-private.hh    | 6 ++++--
 src/hb-ot-layout-gsub-table.hh | 3 +--
 2 files changed, 5 insertions(+), 4 deletions(-)

commit bc5be24014371ceb811b9ffd37062ede63d87bb1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Sep 1 20:48:22 2012 -0400

    [OT] Restart work on serialize()

 src/hb-open-type-private.hh        | 39 ++++++++++++++++++------
 src/hb-ot-layout-common-private.hh | 61
 +++++++++++++++++++-------------------
 src/hb-ot-layout-gsub-table.hh     | 13 ++++++++
 3 files changed, 73 insertions(+), 40 deletions(-)

commit 6912e476dd92639c3ddf07ca51c8d4a262c8b3a5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Sep 1 20:38:45 2012 -0400

    [OT] Insert dotted-circle for run-initial marks

    Unfortunately if the font has GPOS and 'mark' feature does
    not position mark on dotted-circle, our inserted dotted-circle
    will not get the mark repositioned to itself.  Uniscribe cheats
    here.

    If there is no GPOS however, the fallback positioning kicks in
    and sorts this out.

    I'm not willing to address the first case.

 src/hb-ot-shape.cc | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

commit 1d581ec384bc1780995e32e1c44103af57596eda
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Sep 1 20:06:26 2012 -0400

    [OT] Fallback-position ccc=0 Thai / Lao marks

    Not perfect, but so is fallback positioning in 2012...

 src/hb-ot-shape-fallback.cc | 56
 +++++++++++++++++++++++++++++++++++++--------
 1 file changed, 46 insertions(+), 10 deletions(-)

commit 3992b5ec4cb43d114d87ff7ee2b992bcf819c9cd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Sep 1 19:20:41 2012 -0400

    Move code around

 src/hb-ot-shape-fallback-private.hh |  5 ++++
 src/hb-ot-shape-fallback.cc         | 46
 +++++++++++++++++++++++++------------
 src/hb-ot-shape-private.hh          |  6 +++++
 src/hb-ot-shape.cc                  |  4 ++++
 4 files changed, 46 insertions(+), 15 deletions(-)

commit b85800f9de8976a7418ef9df467d3080c6ab0199
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 31 18:12:01 2012 -0400

    [Indic] Implement dotted-circle insertion for broken clusters

    No panic, we reeally insert dotted circle when it's absolutely broken.

    Fixes most of the dotted-circle cases against Uniscribe. (for
    Devanagari
    fixes 80% of them, for Khmer 70%; the rest look like Uniscribe being
    really bogus...)

    I had to make a decision.  Apparently Uniscribe adds one dotted circle
    to each broken character.  I tried that, but that goes wrong
    easily with
    split matras.  So I made it add only one dotted circle to an entire
    broken syllable tail.  As in: "if there was a dotted circle here, this
    would have formed a correct cluster."  That works better for split
    stuff, and I like it more.

 src/hb-buffer-private.hh                 |  1 +
 src/hb-buffer.cc                         | 10 +++++
 src/hb-ot-shape-complex-indic-machine.rl |  4 +-
 src/hb-ot-shape-complex-indic-private.hh |  2 +-
 src/hb-ot-shape-complex-indic.cc         | 67
 +++++++++++++++++++++++++++++---
 src/hb-ot-shape-normalize-private.hh     |  1 +
 src/hb-ot-shape-normalize.cc             | 11 +++---
 7 files changed, 83 insertions(+), 13 deletions(-)

commit 327d14ef188396006d54af976506ab6f8bb2869a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 31 16:49:34 2012 -0400

    [Indic] Start adding dotted-circle instrastructure

 src/hb-ot-shape-complex-indic-machine.rl | 19 +++++++------
 src/hb-ot-shape-complex-indic.cc         | 46
 +++++++++++++++++++++++++++++---
 2 files changed, 51 insertions(+), 14 deletions(-)

commit 1be368e96fb7de8c77bf992874e0d5bd6b272ebe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 31 16:29:17 2012 -0400

    Minor

 src/hb-buffer-private.hh | 16 +++++++++++++++-
 src/hb-buffer.cc         | 15 ---------------
 2 files changed, 15 insertions(+), 16 deletions(-)

commit 784f29d061a2939562eca0c4943feb01174aee00
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 31 14:06:26 2012 -0400

    Minor

 src/hb-ot-shape.cc | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

commit 5a7f18767a87a3f07269d0814f984a98f86ab852
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 30 22:53:29 2012 -0400

    [OT] Better fallback-position Thai / Lao ccc!=0 marks

 src/hb-ot-shape-fallback.cc | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 9f2348de58f0f85593027378169bc03c4dd64e59
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 29 21:08:59 2012 -0400

    [OT] Add serialize() for Coverage

 src/hb-open-type-private.hh        | 34 +++++++++++++++++----
 src/hb-ot-layout-common-private.hh | 62
 ++++++++++++++++++++++++++++++++++++++
 2 files changed, 90 insertions(+), 6 deletions(-)

commit e901b954c6ec44ac3ae7fb3c326e6e7a40718e4b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 29 20:26:08 2012 -0400

    [OT] Start adding serialize() API

 src/hb-open-type-private.hh | 77
 +++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 77 insertions(+)

commit 965c280de09b49d711cb78d629da321c802084de
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 29 13:59:16 2012 -0400

    Add HB_BUFFER_ASSERT_VAR

    To be used in places we access buffer vars...

 src/hb-buffer-private.hh |  3 +++
 src/hb-buffer.cc         | 16 ++++++++++++++++
 2 files changed, 19 insertions(+)

commit 0ccf9b64736559a230425fd131c9eb8aa3048221
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 29 11:53:26 2012 -0400

    Move code around

 src/hb-ot-shape.cc | 21 ++++++++++-----------
 1 file changed, 10 insertions(+), 11 deletions(-)

commit 2fcbbdb41a322f54b61d9ce983ab54434504c5ed
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 29 11:11:54 2012 -0400

    Port Arabic fallback ligating to share code with GSUB

    This will eventually allow us to skip marks, as well as (fallback)
    attach marks to ligature components of fallback-shaped Arabic.
    That would be pretty cool.  I kludged GDEF props in, so mark-skipping
    works, but the produced ligature id/components will be cleared later
    by substitute_start() et al.

    Perhaps using a synthetic table for Arabic fallback shaping was
    a better
    idea.  The current approach has way too many layering violations...

 src/hb-ot-layout-gsubgpos-private.hh |  4 ++
 src/hb-ot-shape-complex-arabic.cc    | 72
 ++++++++++++++++++++++++------------
 src/hb-ot-shape.cc                   |  4 +-
 3 files changed, 56 insertions(+), 24 deletions(-)

commit 5e399a8a45bddb49e06e2ca39df1ed04398c0aff
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 29 10:40:49 2012 -0400

    Minor

 src/hb-ot-layout-gsub-table.hh       | 1 -
 src/hb-ot-layout-gsubgpos-private.hh | 1 -
 2 files changed, 2 deletions(-)

commit a177d027d1d0ad9539e30ed75d8652e0e8da20ff
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 28 23:18:22 2012 -0400

    [GSUB] Move ligation logic over

 src/hb-ot-layout-gsub-table.hh       | 78
 ++++-------------------------------
 src/hb-ot-layout-gsubgpos-private.hh | 80
 ++++++++++++++++++++++++++++++++++++
 2 files changed, 89 insertions(+), 69 deletions(-)

commit 191fa885d9e0a2dce92dd8727cddd18495e62409
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 28 22:58:55 2012 -0400

    [GSUB] Merge Ligature and context input matching

    Looks better now...

 TODO                                 |  4 --
 src/hb-ot-layout-gsub-table.hh       | 71
 +++++++-----------------------------
 src/hb-ot-layout-gsubgpos-private.hh | 29 ++++++++++++++-
 3 files changed, 40 insertions(+), 64 deletions(-)

commit 93814ca7dc2a7251f861c1c47ba155ba6e6bdf19
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 28 22:24:51 2012 -0400

    Start converging Ligature and match_input

 src/hb-ot-layout-gsub-table.hh       | 58
 +++++++++++++++++----------------
 src/hb-ot-layout-gsubgpos-private.hh | 62
 ++++++++++++++++++++++++++++--------
 2 files changed, 78 insertions(+), 42 deletions(-)

commit 2eef71737ea29ffadbb5a2be4a898b44f53f66ac
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 28 19:16:38 2012 -0400

    [hb-icu-le] Add visbility

 src/hb-icu-le/FontTableCache.h         |  6 +++++-
 src/hb-icu-le/PortableFontInstance.cpp | 39
 ----------------------------------
 src/hb-icu-le/PortableFontInstance.h   |  7 ++++--
 src/hb-icu-le/cmaps.cpp                |  2 +-
 src/hb-icu-le/cmaps.h                  |  5 ++++-
 src/hb-icu-le/letest.h                 | 14 ++++++++++++
 src/hb-icu-le/sfnt.h                   |  6 +++++-
 7 files changed, 34 insertions(+), 45 deletions(-)

commit d59e28e49204ed609d8a1bf3c0f21ab5fc178337
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 28 19:08:36 2012 -0400

    Minor

 src/Makefile.am           | 6 +++++-
 src/check-libstdc++.sh    | 2 +-
 src/check-static-inits.sh | 4 ++--
 3 files changed, 8 insertions(+), 4 deletions(-)

commit af169d2813ff8075288cd4a7811f0715e4fea3da
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 28 19:08:22 2012 -0400

    Minor

 src/hb-icu-le/PortableFontInstance.h | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 52ff2681d88886e2165ced397966ba29c2073583
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 28 18:03:35 2012 -0400

    Use VisualStudio-style atomic intrinsics on mingw32

 src/hb-atomic-private.hh | 25 ++++++++++++++++++-------
 1 file changed, 18 insertions(+), 7 deletions(-)

commit 7c8e844d92aa604fc4b396343721ea90eb83adb8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 28 17:57:49 2012 -0400

    Use namespace for OpenType tables

    Avoids USHORT, SHORT, ULONG, LONG clashes with Windows API.

 src/hb-font.cc                       | 12 ++---
 src/hb-open-file-private.hh          |  4 ++
 src/hb-open-type-private.hh          |  9 ++--
 src/hb-ot-head-table.hh              |  4 ++
 src/hb-ot-hhea-table.hh              |  5 ++
 src/hb-ot-hmtx-table.hh              |  6 +++
 src/hb-ot-layout-common-private.hh   |  5 ++
 src/hb-ot-layout-gdef-table.hh       |  4 ++
 src/hb-ot-layout-gpos-table.hh       |  4 ++
 src/hb-ot-layout-gsub-table.hh       |  4 ++
 src/hb-ot-layout-gsubgpos-private.hh |  4 ++
 src/hb-ot-layout-private.hh          | 12 +++--
 src/hb-ot-layout.cc                  | 91
 ++++++++++++++++++------------------
 src/hb-ot-maxp-table.hh              |  4 ++
 src/hb-ot-name-table.hh              |  4 ++
 src/hb-uniscribe.cc                  |  8 ++--
 src/main.cc                          |  2 +
 17 files changed, 117 insertions(+), 65 deletions(-)

commit dc5df5af6b349c3d9e4ab876864d9dec8096401f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 28 16:31:23 2012 -0400

    Revert "Minor"

    This reverts commit 3e0a03978b91994bb7fa7922593cbdfc50878dfc.

    I know remember why that line is there :).

 src/hb-ot-shape-complex-arabic.cc | 1 +
 1 file changed, 1 insertion(+)

commit 3e0a03978b91994bb7fa7922593cbdfc50878dfc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 27 17:10:02 2012 -0400

    Minor

 src/hb-ot-shape-complex-arabic.cc | 1 -
 1 file changed, 1 deletion(-)

commit 667218a5b134728863a318c73070f4e323590bbd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 27 17:00:44 2012 -0400

    Minor

 src/hb-ot-shape-fallback.cc | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

commit 30dd62251fcd04c2cbaa9b979d47ddbf62c6d460
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 27 16:54:34 2012 -0400

    Only fallback-position glyphs if we have the ccc

    Previously, ccc=0 Thai / Lao marks were being
    mispositioned.  Don't touch them.

 src/hb-ot-shape-fallback.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e1ba62811a61afb046d349e578cd141363c7fb34
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 27 16:28:05 2012 -0400

    Center unknown marks horizontally

 src/hb-ot-shape-fallback.cc | 1 +
 1 file changed, 1 insertion(+)

commit a4e75e4128751bb902117abc1a59dce4f2147672
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 27 15:54:15 2012 -0400

    Minor

 test/shaping/hb_test_tools.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 23b0e9d7dc801e11640979af3c2b00649a519bb1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 26 14:30:18 2012 -0400

    [Indic] Fix switch

    D'oh.  Was working by pure chance :)).

 src/hb-ot-shape-complex-indic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ae4d4e1de6b4512576080e95896383887b30982f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 26 14:27:44 2012 -0400

    Bug 53815 - CoreText backend doesn't link

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ec0e46376a2afec4ff7606f95582b0ec49c2a44a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 24 00:44:53 2012 -0400

    Remove TODO items

 TODO | 4 ----
 1 file changed, 4 deletions(-)

commit 56e878ab875ff06d74702145e380e198be967bd6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 24 00:41:51 2012 -0400

    [graphite2] Cleanup scratch buffer allocation

 src/hb-graphite2.cc | 77
 ++++++++++++++++++++++++++++++-----------------------
 1 file changed, 44 insertions(+), 33 deletions(-)

commit 2f7586c6229096143ca0a96712a27416ee0d3c85
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 23 23:59:55 2012 -0400

    [icu-le] Implement icu layout engine shaper

 configure.ac          |   2 +-
 src/hb-icu-le.cc      | 113
 +++++++++++++++++++++++++++++++++++++++++++++-----
 src/hb-icu-le/cmaps.h |   1 -
 src/hb-shaper-list.hh |   4 ++
 4 files changed, 108 insertions(+), 12 deletions(-)

commit ba7f6c3797e5b440557bacd9b666bf09713dca76
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 23 21:52:44 2012 -0400

    [icu-le] Hook up to hb_face_t

 src/hb-icu-le.cc                       |  17 +++-
 src/hb-icu-le/FontTableCache.cpp       |  34 ++++----
 src/hb-icu-le/FontTableCache.h         |   9 ++-
 src/hb-icu-le/PortableFontInstance.cpp | 144
 +++------------------------------
 src/hb-icu-le/PortableFontInstance.h   |  21 ++---
 src/hb-icu-le/README                   |   1 +
 6 files changed, 57 insertions(+), 169 deletions(-)

commit e96bb36995b2a5321b4d32bb11906e1701aaf115
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 23 21:37:51 2012 -0400

    [icu-le] Actually use the FontTableCache

 src/hb-icu-le/PortableFontInstance.cpp | 25 ++++++++-----------------
 1 file changed, 8 insertions(+), 17 deletions(-)

commit 7d242364ea647f655a7092bda25f9a10774c57f5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 23 21:23:41 2012 -0400

    [icu-le] Start adding a icu-layout-engine backend

    Import PortableFontInstance and add shaper stub.

 configure.ac                           |   9 +
 src/Makefile.am                        |   8 +
 src/hb-icu-le.cc                       | 111 ++++++++
 src/hb-icu-le/FontTableCache.cpp       |  91 +++++++
 src/hb-icu-le/FontTableCache.h         |  41 +++
 src/hb-icu-le/Makefile.am              |  25 ++
 src/hb-icu-le/PortableFontInstance.cpp | 436
 ++++++++++++++++++++++++++++++++
 src/hb-icu-le/PortableFontInstance.h   | 117 +++++++++
 src/hb-icu-le/README                   |   2 +
 src/hb-icu-le/cmaps.cpp                | 200 +++++++++++++++
 src/hb-icu-le/cmaps.h                  |  85 +++++++
 src/hb-icu-le/letest.h                 |  49 ++++
 src/hb-icu-le/license.html             |  51 ++++
 src/hb-icu-le/sfnt.h                   | 449
 +++++++++++++++++++++++++++++++++
 14 files changed, 1674 insertions(+)

commit b5584ee4be46b47e1678acf28426970a6d670b4f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 23 16:26:07 2012 -0400

    [Indic] For old-spec, match non-zero context

    Fixes consonant-position with old-spec Malayalam.  Uniscribe seem
    to be
    doing this.  Fixes below-base La (eg. Pa,H,La) with AnjaliNewLipi.ttf.
    Doesn't regress new-spec or other scripts.

 src/hb-ot-shape-complex-indic.cc | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

commit d9b204d3d24cde165167714728bf380267903d6a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 23 16:22:28 2012 -0400

    [GSUB] Allow non-zero-context matching in would_apply()

    To be used in the next patch.

 src/hb-ot-layout-gsubgpos-private.hh |  6 ++++--
 src/hb-ot-layout-private.hh          |  3 ++-
 src/hb-ot-layout.cc                  | 14 ++++++++------
 src/hb-ot-layout.h                   |  7 ++++---
 src/hb-ot-map.cc                     | 12 ++----------
 src/hb-ot-shape-complex-indic.cc     |  2 +-
 src/test-would-substitute.cc         |  2 +-
 7 files changed, 22 insertions(+), 24 deletions(-)

commit 1f2bb172fe9a173ecfd61054f1fdd850943ef059
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 23 16:10:37 2012 -0400

    Revert "[Indic/GSUB] Ignore context when matching would_apply()"

    This reverts commit 24dd4e56743c6ce5e01cb710ca9e01b3e527af58.

    Oops.  My bad.  The change _regressed_ Malayalam test suite, not
    improved it.  I'll redo it, differentiating between old-spec and
    new-spec cases.

 src/hb-ot-layout-gsubgpos-private.hh | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

commit 24dd4e56743c6ce5e01cb710ca9e01b3e527af58
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 23 15:47:10 2012 -0400

    [Indic/GSUB] Ignore context when matching would_apply()

    The MS Indic specs say "...all classifications are determined
    ... using
    context-free substitutions."  However, testing shows that MS's
    Malayalam
    shapers (both old and new), "match" even if there is no zero-context
    rule.
    We follow.

    Fixes below-base La (eg. Pa,H,La) with AnjaliNewLipi.ttf (old spec).
    Moreover, test suite Malayalam failures are down to 312 from 875!  No
    change in other scripts.

    Current numbers:

    BENGALI: 353996 out of 354285 tests passed. 289 failed (0.0815727%)
    DEVANAGARI: 707339 out of 707394 tests passed. 55 failed (0.00777502%)
    GUJARATI: 366489 out of 366506 tests passed. 17 failed (0.0046384%)
    GURMUKHI: 60769 out of 60809 tests passed. 40 failed (0.0657797%)
    KANNADA: 951086 out of 951913 tests passed. 827 failed (0.0868777%)
    KHMER: 299106 out of 299124 tests passed. 18 failed (0.00601757%)
    LAO: 53611 out of 53644 tests passed. 33 failed (0.0615167%)
    MALAYALAM: 1047541 out of 1048416 tests passed. 875 failed
    (0.0834592%)
    ORIYA: 42320 out of 42329 tests passed. 9 failed (0.021262%)
    SINHALA: 271726 out of 271847 tests passed. 121 failed (0.0445103%)
    TAMIL: 1091837 out of 1091837 tests passed. 0 failed (0%)
    TELUGU: 970558 out of 970573 tests passed. 15 failed (0.00154548%)
    TIBETAN: 208469 out of 208469 tests passed. 0 failed (0%)

 src/hb-ot-layout-gsubgpos-private.hh | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

commit 6732d62e78b13842ead9549c97bede25c73976cb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 23 15:19:45 2012 -0400

    [Indic] Implement pre-base reordering Ra for old-spec Malayalam

    Fixes Pa,H,Ra sequence with AnjaliNewLipi.ttf.

 src/hb-ot-shape-complex-indic.cc | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

commit 80cd92326f8a3f48a7821e720e8ecb2072e73286
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 23 12:06:14 2012 -0400

    [Indic] Only apply basic features per-syllable

    Free up syllables and let features work across syllables for the
    presentation forms features and GPOS.

    Fixed:
    - 1 GURMUKHI test (remains 40)
    - 12 KHMER tests (remains 18)
    - 11 SINHALA tests (remains 121)

    Regresses:
    - 5 MALAYALAM tests (up to 312)

    Current numbers:

    BENGALI: 353996 out of 354285 tests passed. 289 failed (0.0815727%)
    DEVANAGARI: 707339 out of 707394 tests passed. 55 failed (0.00777502%)
    GUJARATI: 366489 out of 366506 tests passed. 17 failed (0.0046384%)
    GURMUKHI: 60769 out of 60809 tests passed. 40 failed (0.0657797%)
    KANNADA: 951086 out of 951913 tests passed. 827 failed (0.0868777%)
    KHMER: 299106 out of 299124 tests passed. 18 failed (0.00601757%)
    LAO: 53611 out of 53644 tests passed. 33 failed (0.0615167%)
    MALAYALAM: 1048104 out of 1048416 tests passed. 312 failed
    (0.0297592%)
    ORIYA: 42320 out of 42329 tests passed. 9 failed (0.021262%)
    SINHALA: 271726 out of 271847 tests passed. 121 failed (0.0445103%)
    TAMIL: 1091837 out of 1091837 tests passed. 0 failed (0%)
    TELUGU: 970558 out of 970573 tests passed. 15 failed (0.00154548%)
    TIBETAN: 208469 out of 208469 tests passed. 0 failed (0%)

 src/hb-ot-shape-complex-indic.cc | 4 ++++
 1 file changed, 4 insertions(+)

commit df5d5c68f3a5cab17bf4a429802a1a1a834c3456
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 23 09:33:30 2012 -0400

    Whitespace

 src/hb-ot-layout-gpos-table.hh | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

commit 7fe00d15da20193ca94a8ead9aee60df24074a9e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 18 13:59:46 2012 -0400

    Release 0.9.3

 NEWS         | 16 ++++++++++++++++
 configure.ac |  2 +-
 2 files changed, 17 insertions(+), 1 deletion(-)

commit 7068e534c4ef7ed2eb7ef8e1370fd4a449556ce8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 18 13:56:10 2012 -0400

    Fix ChangeLog generation rule

 Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2f1747ed7d28148807ad07eb8e22db3ab5c54966
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 16 11:46:46 2012 -0400

    Add comment

 src/hb-ot-shape-complex-arabic.cc | 4 ++++
 1 file changed, 4 insertions(+)

commit bd08d5d126aa878d1dbf7bfd4b1a764c170cd9ad
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 16 11:35:50 2012 -0400

    [OT] Fix Arabic shaper OOB access

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

 src/hb-ot-shape-complex-arabic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b161bfc4f6f2db0edea780b95b798ff7b559cf33
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 16 08:09:44 2012 -0400

    [configure] Cleanup check for ICU

    Check for upstream-provided 'icu-uc' pkgconfig package.

 configure.ac | 21 +--------------------
 1 file changed, 1 insertion(+), 20 deletions(-)

commit daf0731865f91da960446928667d4095bde471ea
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 16 07:32:59 2012 -0400

    [ICU] Fix includes

    As reported by Steven Loomis, including uversion.h works everywhere.

 src/hb-icu.cc | 6 ------
 1 file changed, 6 deletions(-)

commit a67ba9c0fe6798a3500af9f4acee8d678f5144ee
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 15 18:52:17 2012 -0400

    Whitespace

 src/hb-old/Makefile.am | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 9fe76051f7003d6b6a10486c5595bf1a4dbf5fe6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 15 17:24:28 2012 -0400

    [NEWS] Fix date

    Oops!

 NEWS | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 45c1383cc7315f89c23c0ed388b99e87224884e7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 14 09:33:18 2012 -0400

    Minor

 src/hb-coretext.cc       | 8 ++++----
 src/hb-fallback-shape.cc | 8 ++++----
 src/hb-graphite2.cc      | 8 ++++----
 src/hb-uniscribe.cc      | 8 ++++----
 4 files changed, 16 insertions(+), 16 deletions(-)

commit 4ac4c6f2e12ddc8bf5e750671321458218b6e0c8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 13 10:52:52 2012 -0400

    Fix ICU build with older ICUs

 src/hb-icu.cc | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

commit 883cbf5ed79d2b60191f803a5ee3f3e4496f3441
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 12 17:11:27 2012 -0400

    Minor

 contrib/README | 2 ++
 1 file changed, 2 insertions(+)

commit b7a4d37d0b162f2222b65d09b9271b8c636086f8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 11 21:32:23 2012 -0400

    minor

 configure.ac | 2 ++
 1 file changed, 2 insertions(+)

commit d5045a5f4017631a4660f985fe451c5a64c42ca0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 11 21:26:25 2012 -0400

    [ICU] Use new normalizer2 compose/decompose API

    It's considerably faster than the fallback implementation we had
    previously!

 src/hb-buffer.cc          |  9 +++---
 src/hb-glib.cc            | 26 +++++++---------
 src/hb-icu.cc             | 75
 +++++++++++++++++++++++++++++++++++++----------
 src/hb-unicode-private.hh | 13 ++------
 src/hb-unicode.cc         | 35 ++++++++++++++++++++--
 src/hb-warning.cc         |  8 -----
 6 files changed, 110 insertions(+), 56 deletions(-)

commit 2b73a1f112c489c2553743c08dc03cd89f60cb2d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 11 19:17:54 2012 -0400

    Add TODO

 TODO | 1 +
 1 file changed, 1 insertion(+)

commit 9f9f04c2229227bb0712166e824157bbbf5cef80
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 11 18:34:13 2012 -0400

    [OT] Unbreak Thai shaping and fallback Arabic shaping

    The merger of normalizer and glyph-mapping broke shapers that
    modified text stream.  Unbreak them by adding a new preprocess_text
    shaping stage that happens before normalizing/cmap and disallow
    setup_mask modification of actual text.

 src/hb-ot-shape-complex-arabic.cc  | 42
 ++++++++++++++++++++++++++++----------
 src/hb-ot-shape-complex-indic.cc   |  1 +
 src/hb-ot-shape-complex-misc.cc    | 12 ++++++-----
 src/hb-ot-shape-complex-private.hh | 15 +++++++++++---
 src/hb-ot-shape.cc                 |  3 +++
 5 files changed, 54 insertions(+), 19 deletions(-)

commit e9f28a38f54b98fa59f9159ccaaa3be6027e1378
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 11 18:20:28 2012 -0400

    [OT] Add shape_plan to Arabic shaper

 src/hb-ot-shape-complex-arabic.cc | 82
 +++++++++++++++++++++++++--------------
 1 file changed, 53 insertions(+), 29 deletions(-)

commit 344cc56698a8c84c4c1a05a71d829e5171aa3a60
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 11 17:36:23 2012 -0400

    Add TODO

 TODO | 4 ++++
 1 file changed, 4 insertions(+)

commit daf13afb0801740dcc7900c4af190e24b80a05c0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 10 16:38:44 2012 -0400

    [OT] Implement fallback mark positioning for "double" combining marks

 src/hb-ot-shape-fallback.cc | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

commit d345313104d9e3c8a8533ccdebd74e0648d0bee3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 10 16:34:04 2012 -0400

    [OT] Fix fallback mark positioning with left-to-right text

    Ouch!

 src/hb-ot-shape-fallback.cc | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

commit e297ee4acd6f9d950f8542fc6ad71fd580b69284
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 10 14:49:37 2012 -0400

    Bump version to 0.9.2

    A *real* release this time, with NEWS, ChangeLog, etc.

 AUTHORS      |   8 ++++
 COPYING      |   9 ++--
 Makefile.am  |  13 +++---
 NEWS         | 136
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 THANKS       |   7 +++
 configure.ac |   4 +-
 6 files changed, 165 insertions(+), 12 deletions(-)

commit 6efe1200b97cefe019857b0b5951a4a87deeb02b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 10 13:49:32 2012 -0400

    Bump version to 0.9.1

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 206ab6057303273590a3d005660e075bdcee0f5f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 10 09:06:30 2012 -0400

    [test] Move around

 test/shaping/texts/in-tree/shaper-arabic/script-arabic/MANIFEST         |
 2 +-
 .../texts/in-tree/shaper-arabic/script-arabic/language-urdu/MANIFEST    |
 1 +
 .../shaper-arabic/script-arabic/{ => language-urdu}/crulp/MANIFEST
 | 0
 .../script-arabic/{ => language-urdu}/crulp/ligatures/2grams.txt
 | 0
 .../script-arabic/{ => language-urdu}/crulp/ligatures/3grams.txt
 | 0
 .../script-arabic/{ => language-urdu}/crulp/ligatures/4grams.txt
 | 0
 .../script-arabic/{ => language-urdu}/crulp/ligatures/5grams.txt
 | 0
 .../script-arabic/{ => language-urdu}/crulp/ligatures/6grams.txt
 | 0
 .../script-arabic/{ => language-urdu}/crulp/ligatures/7grams.txt
 | 0
 .../script-arabic/{ => language-urdu}/crulp/ligatures/8grams.txt
 | 0
 .../script-arabic/{ => language-urdu}/crulp/ligatures/LICENSE
 | 0
 .../script-arabic/{ => language-urdu}/crulp/ligatures/MANIFEST
 | 0
 .../script-arabic/{ => language-urdu}/crulp/ligatures/README            |
 0
 .../script-arabic/{ => language-urdu}/crulp/ligatures/SOURCES
 | 0
 14 files changed, 2 insertions(+), 1 deletion(-)

commit 7a484c601e0958533eb85a6902296733c39537fe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 10 09:05:29 2012 -0400

    [test] Add Urdu ligature sequences from CRULP

 .../in-tree/shaper-arabic/script-arabic/MANIFEST   |    1 +
 .../shaper-arabic/script-arabic/crulp/MANIFEST     |    1 +
 .../script-arabic/crulp/ligatures/2grams.txt       |  601 ++
 .../script-arabic/crulp/ligatures/3grams.txt       | 3415 +++++++++++
 .../script-arabic/crulp/ligatures/4grams.txt       | 6316
 ++++++++++++++++++++
 .../script-arabic/crulp/ligatures/5grams.txt       | 5029
 ++++++++++++++++
 .../script-arabic/crulp/ligatures/6grams.txt       | 1542 +++++
 .../script-arabic/crulp/ligatures/7grams.txt       |  354 ++
 .../script-arabic/crulp/ligatures/8grams.txt       |   26 +
 .../script-arabic/crulp/ligatures/LICENSE          |    3 +
 .../script-arabic/crulp/ligatures/MANIFEST         |    7 +
 .../script-arabic/crulp/ligatures/README           |   16 +
 .../script-arabic/crulp/ligatures/SOURCES          |    4 +
 13 files changed, 17315 insertions(+)

commit f4cb4762986a28634fa7de9b706f9d37859b881e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 10 03:51:44 2012 -0400

    [OT] Slightly adjust normalizer

    The change is very subtle.  If we have a single-char cluster that
    decomposes to three or more characters, then try recomposition, in
    case the farther mark may compose with the base.

 src/hb-ot-shape-normalize.cc | 81
 +++++++++++++++++++++++++++++---------------
 1 file changed, 54 insertions(+), 27 deletions(-)

commit 07d682806349aee81f53114778ce0beb23909ed7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 10 03:28:50 2012 -0400

    Minor

 src/hb-ot-shape-normalize.cc | 25 ++++++++-----------------
 src/hb-ot-shape.cc           |  2 +-
 2 files changed, 9 insertions(+), 18 deletions(-)

commit b00321ea78793d9b3592b5173a9800e6322424fe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 9 22:33:32 2012 -0400

    [OT] Avoid calling get_glyph() twice

    Essentially move the glyph mapping to normalization process.
    The effect on Devanagari is small (but observable).  Should be more
    observable in simple text, like ASCII.

 src/hb-ot-shape-normalize-private.hh |  2 +
 src/hb-ot-shape-normalize.cc         | 76
 +++++++++++++++++++++++++-----------
 src/hb-ot-shape.cc                   | 44 ++++++++++-----------
 3 files changed, 77 insertions(+), 45 deletions(-)

commit 12c0875eafa4bd92db650e5acca046d99594d1e6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 9 22:00:53 2012 -0400

    [OT] Remove redundant check

 src/hb-ot-shape.cc | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

commit 5c60b70c89b4e0a6512d9fd1ab5394dd76feb742
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 9 21:58:07 2012 -0400

    [OT] More code shuffling around

    Preparing for merging map_glyphs() and normalize().

 src/hb-ot-shape.cc | 167
 +++++++++++++++++++++++++++--------------------------
 1 file changed, 86 insertions(+), 81 deletions(-)

commit cd0c6e148f6d078b364370cb2f808b793b921be2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 9 21:48:55 2012 -0400

    Shuffle buffer variable allocations around

    To room for more allocations, coming.

 src/hb-ot-layout-private.hh              | 6 +++---
 src/hb-ot-shape-complex-arabic.cc        | 2 +-
 src/hb-ot-shape-complex-indic-private.hh | 4 ++--
 src/hb-ot-shape-complex-private.hh       | 5 ++---
 src/hb-ot-shape-private.hh               | 4 ++--
 5 files changed, 10 insertions(+), 11 deletions(-)

commit 8d1eef3f32fb539de2a72804fa3834acc18daab5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 9 21:31:52 2012 -0400

    Minor

 src/hb-ot-shape-normalize.cc | 50
 +++++++++++++++++++++++++++-----------------
 1 file changed, 31 insertions(+), 19 deletions(-)

commit 56c9e7c004e802ddcb8c704346026f1d7a812f9f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 9 21:12:30 2012 -0400

    Fill out combining class resetting for fallback shaping
    Thai/Lao/Tibetan

 src/hb-ot-shape-fallback.cc | 38 +++++++++++++++++++++++++++++++++++++-
 src/hb-unicode-private.hh   |  7 ++++---
 src/hb-unicode.cc           |  2 +-
 3 files changed, 42 insertions(+), 5 deletions(-)

commit a321e1d51e0e7fa02738410e8d6e77c841bc6b13
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 9 18:30:34 2012 -0400

    Revert "Reject lookups with no subTable"

    This reverts commit 30ec9002d84e8b49290e782e6192069821ffa942.

    See previous commit.

 src/hb-ot-layout-common-private.hh | 1 -
 1 file changed, 1 deletion(-)

commit 2eaf482b371034ce6ebfaedee98049b036fd3493
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 9 18:30:05 2012 -0400

    Revert "[GSUB/GPOS] Reject Context/ChainContext lookups with zero
    input"

    This reverts commit 0981068b75710397f08e0d2d776a0a2ea68d7117.

    I was confused.  Even if we access coverage[0] unconditionally,
    we don't
    need bound checks since the array machinary already handles that.

 src/hb-ot-layout-gsubgpos-private.hh | 2 --
 1 file changed, 2 deletions(-)

commit a02d86484be870615297abfc7be9f94645434762
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 8 18:04:29 2012 -0400

    Add check-exported-symbols.sh

    And misc linking fixes.

 src/Makefile.am                  |  1 +
 src/check-exported-symbols.sh    | 40
 ++++++++++++++++++++++++++++++++++++++++
 src/check-internal-symbols.sh    |  2 +-
 src/hb-ot-shape-complex-indic.cc |  2 +-
 src/hb-ot-shape.cc               |  6 +++---
 5 files changed, 46 insertions(+), 5 deletions(-)

commit 4c8ac4f47e95d2b266b2f64e75c55af8233b6b91
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 8 17:44:19 2012 -0400

    Misc minor fixes

 src/check-internal-symbols.sh |  10 +--
 src/hb-font-private.hh        |  29 +++++++-
 src/hb-font.cc                |  63 +++++++---------
 src/hb-font.h                 |   2 +-
 src/hb-graphite2.cc           |   4 +-
 src/hb-old.cc                 |   2 +-
 src/hb-ot-layout.cc           |   6 +-
 src/hb-ot-shape-fallback.cc   |  10 +--
 src/hb-ot-shape.cc            |   2 +-
 src/hb-shape-plan.cc          |   2 +-
 src/hb-shape-plan.h           |   2 +-
 src/hb-tt-font.cc             | 166
 +-----------------------------------------
 12 files changed, 72 insertions(+), 226 deletions(-)

commit 560d68af8168d1baff607b9616a3590af70fe9ec
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 8 17:16:01 2012 -0400

    Use a export-file for Windows builds

    Apparently even that doesn't make check-internal-symbols.sh happy with
    mingw32.  Going to disable that for DLLs again, but hopefully the
    export-file is doing *something*.

 configure.ac    | 14 +++++++++++++-
 src/Makefile.am | 22 +++++++++++++++++++++-
 src/hb-buffer.h |  4 ++--
 3 files changed, 36 insertions(+), 4 deletions(-)

commit f8751cf8e0a16125d63a88da65fdbfa76a19453f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 8 17:15:44 2012 -0400

    [hb-old] speed-up build

 src/hb-old/harfbuzz-external.h | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 5f4c52867ce67faa15f5d26b59c18c8d068e9261
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 8 16:53:37 2012 -0400

    Minor

 src/hb-ot-layout.h | 1 -
 1 file changed, 1 deletion(-)

commit fe2b8a7777ab1c84980424ede713cb0d6701f987
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 8 15:27:14 2012 -0400

    Minor

 TODO | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 7e7d245b332306949a19c628bacd920717434769
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 8 15:23:48 2012 -0400

    Make default_language threadsafe

 src/hb-common.cc | 15 +++++----------
 1 file changed, 5 insertions(+), 10 deletions(-)

commit 06b192c458010c847362d809673209c87ea29949
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 8 15:23:45 2012 -0400

    Minor

 src/hb-common.h | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 37191ede7583fdb864db32a8f4d90956657926c7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 8 14:59:09 2012 -0400

    Minor

 src/hb-common.h | 4 ++--
 src/hb-icu.h    | 1 -
 2 files changed, 2 insertions(+), 3 deletions(-)

commit 6d9a329a8a0f11f4b175e407de59c55924de1ef6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 8 14:48:41 2012 -0400

    Adjust a couple source checks

 src/check-internal-symbols.sh |  4 ++--
 src/check-static-inits.sh     | 10 ++++++++--
 2 files changed, 10 insertions(+), 4 deletions(-)

commit 9c929abdcfef44c0193a2917b20981df37ade21c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 8 14:33:37 2012 -0400

    Minor renaming

 src/Makefile.am                                                   |
 4 ++--
 ...sition-fallback-private.hh => hb-ot-shape-fallback-private.hh} |
 8 ++++----
 src/{hb-ot-shape-position-fallback.cc => hb-ot-shape-fallback.cc} |
 4 ++--
 src/hb-ot-shape.cc                                                |
 4 ++--
 4 files changed, 10 insertions(+), 10 deletions(-)

commit 801298b590effd768607bb532dc83c73ba65d16b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 8 14:26:36 2012 -0400

    Fix cast

    https://bugs.freedesktop.org/show_bug.cgi?id=53233

 src/hb-buffer-private.hh | 10 ++++++----
 src/hb-shape-plan.cc     |  4 ++--
 2 files changed, 8 insertions(+), 6 deletions(-)

commit 21756934a15e31dc243e2b6d80adec5752477652
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 8 01:20:45 2012 -0400

    [OT] Implement fallback positioning

    Implemented for Arabic, Hebrew, and generic marks.
    Activated if no GPOS table present.

 src/hb-font.h                        |   3 +-
 src/hb-ft.cc                         |   3 +-
 src/hb-old.cc                        |   2 +-
 src/hb-ot-shape-position-fallback.cc | 237
 ++++++++++++++++++++++++++++++++++-
 src/hb-unicode-private.hh            |  81 ++++++++++++
 src/hb-unicode.cc                    | 107 ++++++----------
 6 files changed, 356 insertions(+), 77 deletions(-)

commit fb56e7628362a73e20f7f0b49fe31e802dc01f4f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 7 23:44:47 2012 -0400

    [hb-old] Fix warnings

 src/hb-old/harfbuzz-shaper.cpp | 2 ++
 1 file changed, 2 insertions(+)

commit affaf8a0e5aa38e5820455f789eebf916e02eb7b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 7 22:41:38 2012 -0400

    [OT] Start adding fallback positioning

    Used when there is no GPOS.

 src/Makefile.am                              |  2 ++
 src/hb-ot-shape-position-fallback-private.hh | 39 +++++++++++++++++++++++
 src/hb-ot-shape-position-fallback.cc         | 47
 ++++++++++++++++++++++++++++
 src/hb-ot-shape.cc                           | 23 +++-----------
 4 files changed, 93 insertions(+), 18 deletions(-)

commit 7e4920fd1577987bf6804f67765e22a84983e057
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 7 22:32:23 2012 -0400

    Minor

 src/hb-ot-shape.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 472f229a63f0d1bb21b02179ef430b7698df8f12
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 7 22:25:24 2012 -0400

    [GSUB] Generalize would_apply()

    Fixes logic also, where before we were always matching if
    glyphs_len==1
    and a ligature started with the glyph.

 src/hb-ot-layout-gsub-table.hh       | 26 ++++++++++++++++++++-----
 src/hb-ot-layout-gsubgpos-private.hh | 37
 ++++++++++++++++++------------------
 src/hb-ot-layout.cc                  |  3 +--
 3 files changed, 40 insertions(+), 26 deletions(-)

commit 6f3a300138f659020c21c3e08b7981c78df5f332
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 7 22:13:25 2012 -0400

    Add hb_font_glyph_from/to_string

 src/hb-font-private.hh       | 43
 +++++++++++++++++++++++++++++++++++++++++++
 src/hb-font.cc               | 24 ++++++++++++++++++++----
 src/hb-font.h                | 11 +++++++++++
 src/hb-private.hh            | 16 ++++++++++++++++
 src/test-would-substitute.cc | 11 ++++++++++-
 util/options.cc              |  2 +-
 6 files changed, 101 insertions(+), 6 deletions(-)

commit eb56f6ae96260c5b4bcd4e1dfb7ab733a230f3a8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 7 21:44:25 2012 -0400

    Minor

 src/hb-mutex-private.hh | 1 +
 src/hb-uniscribe.cc     | 1 +
 src/hb-uniscribe.h      | 2 ++
 3 files changed, 4 insertions(+)

commit f4e48adcdd4315ce09e755f87a0f801d88194f42
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 7 21:12:49 2012 -0400

    [OT] Apply 'rclt' feature in horizontal mode

    'rclt' is "Required Contextual Forms" being proposed by Microsoft.
    It's like 'calt', but supposedly always on.  We apply 'calt' anyway,
    and now apply this too.

 src/hb-ot-shape.cc | 1 +
 1 file changed, 1 insertion(+)

commit b1914b8bd08ecdea79930dda7e3bb2ae9e6134a1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 7 16:57:48 2012 -0400

    Fix warnings

 src/hb-icu.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 0f8881d6bbf6cd59938315eeff9b71cfc736aa4e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 7 16:57:02 2012 -0400

    More refactoring

 src/hb-ot-shape-normalize.cc | 161
 +++++++++++++++++++++++++++++++++++++++++-
 src/hb-unicode-private.hh    | 164
 +------------------------------------------
 2 files changed, 162 insertions(+), 163 deletions(-)

commit 428dfcab6634ff264570a0a5d715efb8048c3db5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 7 16:51:48 2012 -0400

    Minor refactoring

 src/hb-ot-shape-normalize.cc | 27 +++++++++++++++++++++++----
 1 file changed, 23 insertions(+), 4 deletions(-)

commit 61f41849af6ff9edf8b55cf9610066d1bfb4a8df
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 7 16:45:27 2012 -0400

    Add Hebrew presentation forms shaping

    Lifted from https://bugzilla.mozilla.org/show_bug.cgi?id=728866

 src/hb-unicode-private.hh | 121
 +++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 120 insertions(+), 1 deletion(-)

commit 32d71dc13317b322e2c5de00d767b2cb15fddd8b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 7 14:11:16 2012 -0400

    [Graphite] Minor

 src/hb-graphite2.cc | 60
 +++++++++++++++++++++++++----------------------------
 1 file changed, 28 insertions(+), 32 deletions(-)

commit 030ac5022e8a43b9329c26e72527bafc582ef44b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 7 13:01:12 2012 -0400

    Remove enum trailing comma

    ...again.

 src/hb-ot-shape-normalize-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 368b4e7649f9bc8c6bebf7c7ff03c9b9ec425a25
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 6 23:06:04 2012 -0400

    Minor

 src/hb-font.cc | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit ade7459ea7c75b4f33f7cfa43dd5bdfa0c18d6d5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 6 19:42:47 2012 -0700

    [util] Fix leaks

 src/hb-graphite2.cc | 18 ++++++++++++++----
 util/options.cc     |  2 +-
 util/options.hh     |  2 +-
 3 files changed, 16 insertions(+), 6 deletions(-)

commit 2fef993460dcfd94c92ab35413bdde18ad2b0ceb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 6 19:35:04 2012 -0700

    [Graphite] Fix graphite2 backend with RTL text

    Patch from Martin Hosken.

 src/hb-graphite2.cc | 33 ++++++++++++++++++---------------
 1 file changed, 18 insertions(+), 15 deletions(-)

commit e4992e13e19877a73ea05fc1d31005a262c685ad
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 6 19:25:39 2012 -0700

    [Graphite] Port graphite2 backend to new shaper infrastructure

 src/hb-graphite2.cc   | 234
 +++++++++++++++++++++++---------------------------
 src/hb-graphite2.h    |   2 +-
 src/hb-shaper-list.hh |   2 +-
 3 files changed, 109 insertions(+), 129 deletions(-)

commit 66591ececfba9791de06c814f5f30131e95e5fd2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 6 17:07:19 2012 -0700

    Remove unnecessary lifecycle bits

    We already set recount to INVALID when destroying.
    This block was not necessary.

 src/hb-font.cc | 3 ---
 1 file changed, 3 deletions(-)

commit e3320ecc1b5a7eaccc7c9370b2d1b76850f054be
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 6 11:44:10 2012 -0700

    Fix compiler warnings

 configure.ac | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

commit 167b625d988b74572d6b2f646c285b666b650d49
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 5 21:16:26 2012 -0700

    [Indic] Minor, move 'blwf' after 'half'

    We don't apply them together anyway.  Should not make any difference
    right now.

 src/hb-ot-shape-complex-indic.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 048e3b596fb7fccd3fb5f48de98b6b67788f774a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 4 18:04:57 2012 -0700

    Speed up hb_set_digest_lowest_bits_t calcs

 src/hb-set-private.hh | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

commit 3d1b66a35e1ab3be19335705f310b278d76d66d2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 4 17:42:28 2012 -0700

    Speed up hb_set_digest_common_bits_t calcs

 src/hb-set-private.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit bdc48a879a1900138d8caaa8d90fb9fe1e768d1d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 4 17:08:38 2012 -0700

    Enlarge glyph_name buffer

    Lohit Devanagari has a glyph named:
    u0924_u094D.half_u0930_u094D.blwf.vatu

 util/options.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 25326c2359b0a3e25222b94acd142bc36eff78a4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 4 16:43:18 2012 -0700

    Rewrite ARRAY_LENGTH as a template function

    Such it wouldn't apply to pointers accidentally.

 src/hb-ot-shape-complex-arabic-table.hh | 4 ++--
 src/hb-private.hh                       | 9 ++++++---
 2 files changed, 8 insertions(+), 5 deletions(-)

commit 8ba8042821e4581fe4e87419e58c823520441205
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 3 18:54:54 2012 -0700

    [Indic] Fix consonant position font lookup logic

    Oops.  I broken this badly and the test suite did not notice.  That
    worries me.  Have to investigate.

 src/hb-ot-shape-complex-indic.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit abd0c05f1f7f0546593bb2f1c4d59db12cb32e46
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 3 18:45:05 2012 -0700

    Minor

 src/test-would-substitute.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 46ee108ef80f5d4675899862698a8c34d8fcfab5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 3 18:21:13 2012 -0700

    Fix leak

 src/hb-shape-plan.cc | 2 ++
 1 file changed, 2 insertions(+)

commit 71baea0062da4d7f143d62da38492a0813814e49
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 3 17:40:07 2012 -0700

    [OT] Use general-category, not GDEF class, to decide to zero mark
    advances

    At this point, the GDEF glyph synthesis looks pointless.  Not that I
    have many fonts without GDEF lying around.

    As for mark advance zeroing when GPOS not available, that also
    is being
    replaced by proper fallback mark positioning soon.

 src/hb-ot-shape.cc | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

commit 3a7e137a68ec8f723dc3afa89c918ca2df7ff6bf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 3 17:23:40 2012 -0700

    Dn't use gint

 src/hb-glib.cc | 4 ++--
 src/hb-icu.cc  | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

commit 11b0e20ba42bf0b17133c3e1087732802bb4f230
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 2 14:21:40 2012 -0400

    [Indic] Add per-script configuration tables

    This concludes the Indic shape_plan work.  May do for Arabic also...

 src/hb-ot-shape-complex-indic-private.hh |  16 +-
 src/hb-ot-shape-complex-indic.cc         | 309
 +++++++++++++++----------------
 2 files changed, 159 insertions(+), 166 deletions(-)

commit 85fc6c483f6d734febbe39270e84701a651f01f1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 2 12:21:44 2012 -0400

    [Indic] Move more stuff to the shape_plan

    Almost done.  Need to add per-script static tables.

 src/hb-ot-shape-complex-indic-machine.rl |   4 +-
 src/hb-ot-shape-complex-indic.cc         | 216
 ++++++++++++++++---------------
 2 files changed, 116 insertions(+), 104 deletions(-)

commit 914ffaa40fcca020f65bacdd709421e9047afd83
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 2 11:03:39 2012 -0400

    [Indic] Move more repeated work into shape_plan

 src/hb-ot-shape-complex-indic.cc | 63
 ++++++++++++++++++++++++++--------------
 1 file changed, 42 insertions(+), 21 deletions(-)

commit a8c6da90f4c6e8d27a3a1b758a55476776d9f750
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 2 10:46:34 2012 -0400

    [OT] Add per-complex-shaper shape_plan data

    Hookup some Indic data to it.  More to come.

 src/hb-ot-shape-complex-arabic.cc  |   2 +
 src/hb-ot-shape-complex-indic.cc   | 128
 ++++++++++++++++++++++---------------
 src/hb-ot-shape-complex-misc.cc    |   4 ++
 src/hb-ot-shape-complex-private.hh |  16 ++++-
 src/hb-ot-shape-private.hh         |   1 +
 src/hb-ot-shape.cc                 |  23 +++++--
 6 files changed, 113 insertions(+), 61 deletions(-)

commit 8bb5deba9630d35878eb6edb4643ecfabf99f15f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 2 10:07:58 2012 -0400

    [OT] Pipe shape_plan down to pause_callbacks

 src/hb-ot-map-private.hh                 |  8 ++---
 src/hb-ot-map.cc                         | 11 ++++---
 src/hb-ot-shape-complex-indic-machine.rl |  4 +--
 src/hb-ot-shape-complex-indic.cc         | 50
 +++++++++++++++-----------------
 src/hb-ot-shape-private.hh               |  6 ++++
 src/hb-ot-shape.cc                       | 28 ++++++++++--------
 6 files changed, 57 insertions(+), 50 deletions(-)

commit 3e38c0f2886c38d2f0a9d80a97a36edf2479d2c7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 2 09:44:18 2012 -0400

    More massaging

 src/hb-ot-map-private.hh          | 20 ++++++++------------
 src/hb-ot-map.cc                  | 17 ++++++++---------
 src/hb-ot-shape-complex-arabic.cc |  8 ++++----
 src/hb-ot-shape-complex-indic.cc  | 18 +++++++-----------
 4 files changed, 27 insertions(+), 36 deletions(-)

commit 16c6a27b4bffc19026944c7bea9cf0a3a8ff1d8f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 2 09:38:28 2012 -0400

    [OT] Port complex_shaper to planner/plan

 src/hb-ot-shape-complex-arabic.cc  | 17 ++++++++---------
 src/hb-ot-shape-complex-indic.cc   | 19 ++++++++-----------
 src/hb-ot-shape-complex-misc.cc    | 20 ++++++++------------
 src/hb-ot-shape-complex-private.hh | 32 +++++++++++---------------------
 src/hb-ot-shape-private.hh         | 14 +++++++++++---
 src/hb-ot-shape.cc                 |  9 +++++----
 6 files changed, 51 insertions(+), 60 deletions(-)

commit 5393e3a62ba09fd7bcf3767b36225c8f49badb9d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 2 09:24:35 2012 -0400

    [OT] Minor refactoring

 src/hb-ot-map.cc           |  4 ----
 src/hb-ot-shape-private.hh | 26 ++++++++++++++++++++++++++
 src/hb-ot-shape.cc         | 26 ++------------------------
 src/hb-shape-plan.cc       |  2 ++
 src/hb-shape.cc            |  2 --
 5 files changed, 30 insertions(+), 30 deletions(-)

commit 24eacf17c801c66a2d466e8ae02b73f501a26b25
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 2 08:42:11 2012 -0400

    [Indic] Move consonant-position-setting into initial_reordering()

 src/hb-ot-shape-complex-indic.cc | 65
 +++++++++++++++++++++-------------------
 1 file changed, 35 insertions(+), 30 deletions(-)

commit afbcc24be01a64bdb5c05c63880269145fa1d3c8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 2 08:36:40 2012 -0400

    [GSUB] Wire the font, not just the face, down to substitute()

    We need the font for glyph lookup during GSUB pauses in Indic shaper.
    Could perhaps be avoided, but at this point, we don't mean to support
    separate substitute()/position() entry points (anymore), so there is
    no point in not providing the font to GSUB.

 src/hb-ot-layout-gsub-table.hh       | 13 +++++--------
 src/hb-ot-layout-gsubgpos-private.hh |  7 ++-----
 src/hb-ot-layout-private.hh          |  6 +++---
 src/hb-ot-layout.cc                  | 18 +++++++++---------
 src/hb-ot-map-private.hh             | 15 ++++++---------
 src/hb-ot-map.cc                     |  8 ++++----
 src/hb-ot-shape-complex-indic.cc     |  8 ++++----
 src/hb-ot-shape.cc                   |  6 +++---
 8 files changed, 36 insertions(+), 45 deletions(-)

commit b0e6a26a10ccca70ebc88a9e158a89ccfab0add5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 2 08:11:14 2012 -0400

    [OT] Hide some API

    It was impossible to meaningfully use them from the outside these
    days.

 src/hb-ot-layout-private.hh | 40 ++++++++++++++++++++++++++++++++--------
 src/hb-ot-layout.cc         | 20 --------------------
 src/hb-ot-layout.h          | 34 ----------------------------------
 src/hb-ot-map.cc            |  8 ++++----
 4 files changed, 36 insertions(+), 66 deletions(-)

commit 305246744ed178f116e01498b7f9d1af6950ca30
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 2 08:08:04 2012 -0400

    Minor

 src/hb-ot-layout-gsubgpos-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 8ef3d53255ae9fbb0e46c22909e50009d1e7eeb0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 2 07:53:18 2012 -0400

    [Indic] More refactoring of consonant position peeking in the font

    To be moved to initial_reordering next...

 src/hb-ot-shape-complex-indic.cc | 59
 ++++++++++++++++++++++++++++------------
 1 file changed, 41 insertions(+), 18 deletions(-)

commit 3eb6f81fd3f1e56679eec10d08f5e2303121753f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 2 07:37:46 2012 -0400

    [Indic] Refactor

    Move all the logic that needs to eventually move into the indic table
    into hb-ot-shape-complex-indic-private.hh.

 src/hb-ot-shape-complex-indic-private.hh | 210
 ++++++++++++++++++++++++++++
 src/hb-ot-shape-complex-indic.cc         | 227
 ++-----------------------------
 2 files changed, 218 insertions(+), 219 deletions(-)

commit 3614ba242fc7d338761acdda365a134706035b6d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 2 07:13:55 2012 -0400

    [Indic] Rename

 src/hb-ot-shape-complex-indic.cc | 40
 +++++++++++++++++++++-------------------
 1 file changed, 21 insertions(+), 19 deletions(-)

commit 610e5e8f713bb2a68939b72cb2b801a7aaede4f9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 2 05:27:46 2012 -0400

    [Indic] Streamline feature would_apply()

    Comes with some 10% speedup for Devanagari even!

 src/hb-ot-map-private.hh         | 85
 +++++++++++++++++++++++++---------------
 src/hb-ot-map.cc                 | 18 ++++-----
 src/hb-ot-shape-complex-indic.cc | 85
 +++++++++++++++++++++++-----------------
 3 files changed, 110 insertions(+), 78 deletions(-)

commit 1d002048d5afcd45abbb09fdf0419f13b2e2265c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 2 05:01:11 2012 -0400

    [Indic] Minor

 src/hb-ot-shape-complex-indic-private.hh | 16 --------
 src/hb-ot-shape-complex-indic.cc         | 64
 +++++++++++++++++++++-----------
 2 files changed, 43 insertions(+), 37 deletions(-)

commit 6f7611375521c6d285a9aa763f2ea5cb44cd0d39
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 2 04:00:31 2012 -0400

    [GSUB/GPOS] Check array size before accessing digests

 src/hb-ot-layout-private.hh |  3 +++
 src/hb-ot-layout.cc         | 32 ++++++++++++++++----------------
 2 files changed, 19 insertions(+), 16 deletions(-)

commit 22148b8c4af3ed296d96e969cdd47bac97b32307
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 2 03:51:51 2012 -0400

    Use Coverage digests in would_apply

 src/hb-ot-layout-gsub-table.hh       | 1 +
 src/hb-ot-layout-gsubgpos-private.hh | 6 +++++-
 src/hb-ot-layout.cc                  | 4 ++--
 3 files changed, 8 insertions(+), 3 deletions(-)

commit 6c459c8fef85bc44f45d7b58c28a34abfb2c33fc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 2 03:45:53 2012 -0400

    Minor

 src/hb-ot-layout-gpos-table.hh       | 2 +-
 src/hb-ot-layout-gsub-table.hh       | 4 ++--
 src/hb-ot-layout-gsubgpos-private.hh | 4 ++--
 3 files changed, 5 insertions(+), 5 deletions(-)

commit e2b8d75fa6e847ecf5c040f4e1e16a565c5d8aaf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 1 22:17:48 2012 -0400

    Use wider set digests on 64-bit archs

 src/hb-set-private.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 0120ce9679aab3ac936aeb18f6709529eef000a4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 1 21:56:35 2012 -0400

    [GSUB/GPOS] Remove unused get_coverage() methods

 src/hb-ot-layout-gpos-table.hh | 11 -----------
 src/hb-ot-layout-gsub-table.hh | 11 -----------
 2 files changed, 22 deletions(-)

commit 1336ecdf8e4e9879b96b26ecfbf5c9ba6c49e2b9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 1 21:46:36 2012 -0400

    [GSUB/GPOS] Use Coverage digests as gatekeeper

    Gives me a good 10% speedup for the Devanagari test case.  Less so
    for less lookup-intensive tests.

    For the Devanagari test case, the false positive rate of the GSUB
    digest
    is 4%.

 src/hb-ot-layout-gpos-table.hh       | 30 +++++++++---------------------
 src/hb-ot-layout-gsub-table.hh       | 35
 ++++++++++++-----------------------
 src/hb-ot-layout-gsubgpos-private.hh |  8 ++++++--
 src/hb-ot-layout-private.hh          |  4 ++++
 src/hb-ot-layout.cc                  | 29 +++++++++++++++++++++++++----
 5 files changed, 56 insertions(+), 50 deletions(-)

commit a878c58a8fc1500986d713b2bcedfeb90a0087b0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 1 21:18:54 2012 -0400

    [GSUB/GPOS] Add add_coverage()

 src/hb-ot-layout-gpos-table.hh | 18 ++++++++++++++++++
 src/hb-ot-layout-gsub-table.hh | 18 ++++++++++++++++++
 2 files changed, 36 insertions(+)

commit 60a3035ac5ec8227e4cc0e6708732bb139c9e0b8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 1 21:06:27 2012 -0400

    Add hb_set_digest_t

    Implement two set digests, and one that combines the two.

 src/hb-set-private.hh | 95
 +++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 95 insertions(+)

commit c8accf1dd2d92cc4f714393eb0ea46f69bb182a6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 1 21:05:57 2012 -0400

    [OT] Templatize Coverage::add_coverage()

 src/hb-ot-layout-common-private.hh | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

commit 8fbfda920e0b3bb4ab7afb732826026964b79be9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 1 19:03:46 2012 -0400

    Inline font getters

 src/hb-fallback-shape.cc          |  21 ++--
 src/hb-font-private.hh            | 204
 ++++++++++++++++++++++++++++++++++++++
 src/hb-font.cc                    | 129 ++++--------------------
 src/hb-graphite2.cc               |   6 +-
 src/hb-old.cc                     |  10 +-
 src/hb-ot-layout-gdef-table.hh    |   2 +-
 src/hb-ot-layout-gpos-table.hh    |   2 +-
 src/hb-ot-shape-complex-arabic.cc |   4 +-
 src/hb-ot-shape-complex-indic.cc  |   6 +-
 src/hb-ot-shape-normalize.cc      |  12 +--
 src/hb-ot-shape.cc                |  47 +++++----
 11 files changed, 277 insertions(+), 166 deletions(-)

commit 6adf417bc15d4524e280b284e3accd1ae647662e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 1 18:07:42 2012 -0400

    Use a lookup table for modified_combining_class

 src/hb-unicode-private.hh |  10 ++-
 src/hb-unicode.cc         | 213
 +++++++++++++++++++++++++++++++---------------
 src/hb-unicode.h          |   4 +
 3 files changed, 157 insertions(+), 70 deletions(-)

commit 208f70f0553d73d2908b21b9552298029482a8b9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 1 17:13:10 2012 -0400

    Inline Unicode callbacks internally

 src/hb-buffer.cc                |   2 +-
 src/hb-fallback-shape.cc        |   2 +-
 src/hb-old.cc                   |   2 +-
 src/hb-ot-shape-complex-misc.cc |   2 +-
 src/hb-ot-shape-normalize.cc    |  13 +++--
 src/hb-ot-shape-private.hh      |   6 +--
 src/hb-ot-shape.cc              |   4 +-
 src/hb-unicode-private.hh       | 112
 ++++++++++++++++++++--------------------
 src/hb-unicode.cc               |   5 +-
 9 files changed, 73 insertions(+), 75 deletions(-)

commit 7470315a3e782aa6192bbe64f7a3944266fb1521
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 1 17:01:59 2012 -0400

    Move unicode accessors around

 src/hb-unicode-private.hh | 73
 ++++++++++++++++++++++++++++++++++++++++++++++-
 src/hb-unicode.cc         | 65 ++++-------------------------------------
 2 files changed, 78 insertions(+), 60 deletions(-)

commit 21fdcee00125b6e1c09f0bed3064d16ccd3a7a5d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 1 16:23:44 2012 -0400

    Add hb_unicode_combining_class_t

 src/hb-common.h           |  38 +-------------
 src/hb-glib.cc            |   4 +-
 src/hb-icu.cc             |   4 +-
 src/hb-unicode-private.hh |   2 +-
 src/hb-unicode.cc         |  11 ++--
 src/hb-unicode.h          | 124
 +++++++++++++++++++++++++++++++++++++++++++++-
 6 files changed, 134 insertions(+), 49 deletions(-)

commit 84186a64004e5dcd2ce98b564d0e0a09aa5d68b2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 1 13:32:39 2012 -0400

    Add commentary on the compatibility decomposition in the normalizer

 src/hb-ot-shape-normalize.cc | 18 +++++++++++++++---
 1 file changed, 15 insertions(+), 3 deletions(-)

commit 0834d952017a04c6f4599e574cb75ecf3ca27d3b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 1 00:21:09 2012 -0400

    [hb-old] Adjust mark positioning parameters

    Fallback mark positioning works now...  With hb-ft and hb-view /
    hb-shape at least.

 src/hb-old.cc                  | 10 +++++-----
 src/hb-old/harfbuzz-shaper.cpp |  1 +
 2 files changed, 6 insertions(+), 5 deletions(-)

commit 4ca743dfb8e09f9fa525061c7f1144d55f72effb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 1 00:03:41 2012 -0400

    [old] Implement fontMetrics

 src/hb-old.cc | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

commit 1e7d860613032e40a3f90e2caa2ee5ac44ab8c8c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 31 23:41:06 2012 -0400

    [GPOS] Adjust mark advance-width zeroing logic

    If there is no GPOS, zero mark advances.

    If there *is* GPOS and the shaper requests so, zero mark advances for
    attached marks.

    Fixes regression with Tibetan, where the font has GPOS, and marks a
    glyph as mark where it shouldn't get zero advance.

 src/hb-ot-layout-gpos-table.hh     | 14 ++++++++------
 src/hb-ot-layout.cc                |  4 ++--
 src/hb-ot-layout.h                 |  3 ++-
 src/hb-ot-shape-complex-arabic.cc  |  2 +-
 src/hb-ot-shape-complex-indic.cc   |  2 +-
 src/hb-ot-shape-complex-misc.cc    |  4 ++--
 src/hb-ot-shape-complex-private.hh |  2 +-
 src/hb-ot-shape.cc                 |  6 ++----
 8 files changed, 19 insertions(+), 18 deletions(-)

commit a8842e4a448efb30f3f2f3c628d6dc4824829726
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 31 23:10:11 2012 -0400

    Remove some TODO items

 TODO            | 27 ---------------------------
 src/hb-shape.cc |  2 ++
 2 files changed, 2 insertions(+), 27 deletions(-)

commit 2bc3b9a616cedbc56ff4a915f9e3439ff3a6bf13
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 31 23:08:25 2012 -0400

    [OT] Zero mark advances if the shaper desires so

    Enabled for all shapers except for Indic.

 src/hb-ot-shape-complex-arabic.cc  |  1 +
 src/hb-ot-shape-complex-indic.cc   |  1 +
 src/hb-ot-shape-complex-misc.cc    |  2 ++
 src/hb-ot-shape-complex-private.hh |  2 ++
 src/hb-ot-shape.cc                 | 15 +++++++++++++++
 5 files changed, 21 insertions(+)

commit 5fecd8b0355894ceda14b3d3c654f20c3d5e77f4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 31 22:48:38 2012 -0400

    [OT] Synthesize glyph classes

 TODO               |  2 --
 src/hb-ot-shape.cc | 20 ++++++++++++++++++--
 2 files changed, 18 insertions(+), 4 deletions(-)

commit 03b09214c073ce37eeb8af5218942c85b2d393df
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 31 22:43:58 2012 -0400

    [GSUB] Minor

 src/hb-ot-layout-gsub-table.hh | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit f0fc1df8fc949739b68d55948741016081b69c3a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 31 22:43:32 2012 -0400

    [hb-old] Implement getGlyphMetrics()

    Still working on it.

 src/hb-old.cc | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

commit 378d279bbf692195c4654e312dae854ab3be04cf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 31 21:36:16 2012 -0400

    Implement Unicode compatibility decompositions

    Based on patch from Philip Withnall.
    https://bugs.freedesktop.org/show_bug.cgi?id=41095

 src/hb-glib.cc               | 30 +++++++++++++++++++++++++
 src/hb-icu.cc                | 36 +++++++++++++++++++++++++++++-
 src/hb-ot-shape-normalize.cc | 53
 +++++++++++++++++++++++++++++---------------
 src/hb-unicode-private.hh    |  1 +
 src/hb-unicode.cc            | 27 +++++++++++++++++++++-
 src/hb-unicode.h             | 37 ++++++++++++++++++++++++++++++-
 test/api/hb-test.h           |  1 +
 test/api/test-unicode.c      | 50
 +++++++++++++++++++++++++++++++++++++++++
 8 files changed, 214 insertions(+), 21 deletions(-)

commit 321ec29cc270e7e66a529696b70b2caac553c95f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 31 21:10:16 2012 -0400

    Remove unused function

 src/hb-ot-shape-complex-indic.cc | 7 -------
 1 file changed, 7 deletions(-)

commit 69cc492dc120847ed00cae65ec958593ebf550c5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 31 14:51:36 2012 -0400

    [buffer] Minor

 src/hb-buffer-private.hh |  3 ++-
 src/hb-buffer.cc         | 24 ++++++++++++------------
 2 files changed, 14 insertions(+), 13 deletions(-)

commit 693918ef8541014a5ef7dfb91c6ea0ae36d9c368
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 30 21:08:51 2012 -0400

    [OT] Streamline complex shaper enumeration

    Add a shaper class struct.

 src/hb-ot-shape-complex-arabic.cc    |  37 ++++----
 src/hb-ot-shape-complex-indic.cc     |  47 ++++++---
 src/hb-ot-shape-complex-misc.cc      |  67 ++++++-------
 src/hb-ot-shape-complex-private.hh   | 179
 ++++++++++-------------------------
 src/hb-ot-shape-normalize-private.hh |   4 +-
 src/hb-ot-shape-private.hh           |   2 +-
 src/hb-ot-shape.cc                   |  16 ++--
 7 files changed, 143 insertions(+), 209 deletions(-)

commit c2e42c3db691515f3a458eb4c71fe1e6439d5620
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 30 19:54:50 2012 -0400

    Minor

 src/hb-ot-layout-gpos-table.hh       | 2 +-
 src/hb-ot-layout-gsub-table.hh       | 4 ++--
 src/hb-ot-layout-gsubgpos-private.hh | 8 ++++----
 src/hb-ot-layout-private.hh          | 4 ++--
 4 files changed, 9 insertions(+), 9 deletions(-)

commit 03f67bc012f42131b36083a23efc78e1b04b828c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 30 19:47:53 2012 -0400

    More refactoring glyph class access

 src/hb-ot-layout-gpos-table.hh       |   2 +-
 src/hb-ot-layout-gsub-table.hh       |   2 +-
 src/hb-ot-layout-gsubgpos-private.hh | 154
 +++++++++++++++++------------------
 3 files changed, 76 insertions(+), 82 deletions(-)

commit 300c7307eb7943ba7416b672345506be1e27c6ba
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 30 19:37:44 2012 -0400

    [OT] Don't crash if no GDEF available

 src/hb-ot-layout-gsubgpos-private.hh | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

commit 3dcbdc2125c04c173f29f04922fc031929893f4e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 30 19:31:17 2012 -0400

    Minor

 src/hb-ot-layout.cc | 15 +++++----------
 1 file changed, 5 insertions(+), 10 deletions(-)

commit 05bd1b63426e07d1df7a1b40bf845dc94ab995a8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 30 19:30:01 2012 -0400

    [GSUB/GPOS] Move glyph props matching around

 src/hb-ot-layout-gpos-table.hh       |  11 ++--
 src/hb-ot-layout-gsub-table.hh       |  18 +++---
 src/hb-ot-layout-gsubgpos-private.hh |  99
 +++++++++++++++++++++++++++++----
 src/hb-ot-layout-private.hh          |  12 ----
 src/hb-ot-layout.cc                  | 104
 +++--------------------------------
 src/hb-ot-layout.h                   |  12 ++--
 src/hb-ot-shape.cc                   |  10 ++--
 7 files changed, 127 insertions(+), 139 deletions(-)

commit 2fca1426ca06cabbe8f027f2dc9dee9c27560c76
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 30 18:46:41 2012 -0400

    [GSUB] Don't erase glyph classes if GDEF does not have glyph classes

 src/hb-ot-layout-gsubgpos-private.hh | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit fd42257f8c45ff8e036e1c3eb1a788a101be7ead
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 30 18:40:27 2012 -0400

    Minor

 src/hb-ot-layout.cc | 29 +++++------------------------
 1 file changed, 5 insertions(+), 24 deletions(-)

commit 7fbbf86efe675e4c038dfc5985c24bbc544620cd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 30 18:36:42 2012 -0400

    [GSUB] Minor

 src/hb-ot-layout-gsub-table.hh       | 2 +-
 src/hb-ot-layout-gsubgpos-private.hh | 6 ++++++
 2 files changed, 7 insertions(+), 1 deletion(-)

commit 713914d3203109a8e9213f5a1d3b384730703ce9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 30 17:54:38 2012 -0400

    [Uniscribe] Clean up a bit

 src/hb-uniscribe.cc | 17 +++++------------
 1 file changed, 5 insertions(+), 12 deletions(-)

commit 301168dae77a63ee25adfb26ce2b54a708f83791
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 30 17:48:04 2012 -0400

    [CoreText] Port to shape_plan infrastructure

 src/hb-coretext.cc | 161
 ++++++++++++++++++++++++++---------------------------
 1 file changed, 80 insertions(+), 81 deletions(-)

commit 6cdfd14bb19d60ac3d6b20ff611408432254f273
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 30 17:22:17 2012 -0400

    Fix build on Mac

 src/hb-ot-layout-gsub-table.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 7e34601dededd521bcef15111e39293df3d0d13d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 30 14:53:41 2012 -0400

    Unbreak Hangul jamo composition

    When we removed the separate Hangul shaper, the specific normalization
    preference of Hangul was lost.  Fix that.  Also, the Thai shaper was
    copied from Hangul, so had the fully-composed normalization behavior,
    which was unnecessary.  So, fix that too.

 src/hb-ot-shape-complex-arabic.cc  |  2 +-
 src/hb-ot-shape-complex-indic.cc   |  4 +---
 src/hb-ot-shape-complex-misc.cc    | 12 +++++++++---
 src/hb-ot-shape-complex-private.hh |  9 ++++-----
 src/hb-ot-shape.cc                 |  4 +++-
 5 files changed, 18 insertions(+), 13 deletions(-)

commit 7afb14407e59dfeaa79c33aca1ffa60e7982e349
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 30 13:54:46 2012 -0400

    [Indic] Recategorize Telugu length marks

    Fixes 8 more Telugu tests.  Failures at 15 (0.00154548%).

 src/hb-unicode.cc |  8 ++++++++
 src/indic.cc      | 11 ++++++++---
 2 files changed, 16 insertions(+), 3 deletions(-)

commit 70b3dc327232b20051b36397aa2b196ab8c62397
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 30 12:40:18 2012 -0400

    Add Hebrew test

 .../texts/in-tree/shaper-default/script-hebrew/misc/diacritics.txt
 | 1 +
 1 file changed, 1 insertion(+)

commit f2377155e35c15919af4d7db21b6edc6783146b6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 30 10:50:57 2012 -0400

    [hb-old] Fix misc leaks

    Backport (forward-port?!) from upstream:

    commit 3ab7b37bdebf0f8773493a1fee910b151c4de30f
    Author: Behdad Esfahbod <behdad@behdad.org>
    Date:   Mon Jul 30 10:50:22 2012 -0400

        Fix misc leaks

        https://bugs.freedesktop.org/show_bug.cgi?id=31992
        https://bugs.freedesktop.org/show_bug.cgi?id=31993
        https://bugs.freedesktop.org/show_bug.cgi?id=31994
        https://bugs.freedesktop.org/show_bug.cgi?id=31995

 src/hb-old/harfbuzz-arabic.c  | 12 +++++++++---
 src/hb-old/harfbuzz-gpos.c    |  6 +++---
 src/hb-old/harfbuzz-gsub.c    |  6 +++---
 src/hb-old/harfbuzz-tibetan.c |  1 +
 4 files changed, 16 insertions(+), 9 deletions(-)

commit 3f4764bb56bb7e42ba8859f1905810bd2f998838
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 30 10:06:42 2012 -0400

    Don't lock user_data set during destruction if empty

 src/hb-private.hh | 5 +++++
 1 file changed, 5 insertions(+)

commit 4ba647eecf0f70917ac4229af1f2dd3c62fcb7d5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 30 09:53:06 2012 -0400

    Fix leak

 src/hb-ot-shape.cc | 2 ++
 1 file changed, 2 insertions(+)

commit f860366456d9e59b139a940da6d89c3c4fb9e96e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 30 02:38:39 2012 -0400

    [OT] Gain back some lost speed

 src/hb-ot-layout-private.hh        | 27 +++++++++++++++-
 src/hb-ot-layout.cc                | 63
 ++++++++++++++++++++++++++++++++++----
 src/hb-ot-map-private.hh           | 26 +++-------------
 src/hb-ot-map.cc                   | 35 +++++++++++++++------
 src/hb-ot-shape-complex-indic.cc   |  2 +-
 src/hb-ot-shape-complex-private.hh |  5 ---
 6 files changed, 114 insertions(+), 44 deletions(-)

commit 11f4c87d01924cac43bf40044f67838440e19e42
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 30 02:36:46 2012 -0400

    [OT] Remove hb_ot_layout_ensure()

    I didn't like it from the beginning.

 src/hb-ot-layout.cc | 9 +++++----
 src/hb-ot-layout.h  | 5 -----
 2 files changed, 5 insertions(+), 9 deletions(-)

commit 578e42182b9b9cf15b4c5426fae36e224160cbd7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 30 02:35:07 2012 -0400

    Minor

 src/hb-ot-layout-private.hh | 2 --
 src/hb-ot-layout.cc         | 1 -
 2 files changed, 3 deletions(-)

commit a973b5ce86051e8ef0d20df362db1a50488842ab
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 30 01:46:34 2012 -0400

    [GSUB] Further adjustments to mark-attachment vs ligation interaction

    The d1d69ec52e75a78575b620a1c456d528b6078170 change broke Kannada
    badly,
    since it was ligating consonants, pushing matra out, and then ligating
    with the matra.  Adjust for that.  See comments.

 src/hb-ot-layout-gsub-table.hh                                |
 11 ++++++++---
 .../in-tree/shaper-indic/indic/script-kannada/misc/misc.txt   |  1 +
 2 files changed, 9 insertions(+), 3 deletions(-)

commit 0aef425e25e2c58445157057f17ef18f695c5240
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 30 00:55:15 2012 -0400

    [GSUB] Minor

 src/hb-ot-layout-gpos-table.hh | 15 ++++++---------
 1 file changed, 6 insertions(+), 9 deletions(-)

commit d1d69ec52e75a78575b620a1c456d528b6078170
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 30 00:51:47 2012 -0400

    [GSUB] Don't ligate glyphs attached to different components of
    ligatures

    This concludes the mark-attachment vs ligating interaction fixes
    (for now).

 src/hb-ot-layout-gsub-table.hh | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

commit 4751dec8be05883483fd5f6b474ebd22583ae566
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 30 00:42:07 2012 -0400

    Minor

 src/hb-ot-layout-private.hh | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

commit f24bcfbed1f3b4f4f6311246bd870f73ad6ba750
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 30 00:39:00 2012 -0400

    Minor

 src/hb-ot-layout-gsub-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit fe20c0f84f5ff518dc471bf22ac5a83ef079eb69
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 30 00:00:59 2012 -0400

    [GSUB] Fix mark component stuff when ligatures form ligatures!

    See comments.

    Fixes https://bugzilla.gnome.org/show_bug.cgi?id=437633

 src/hb-ot-layout-gsub-table.hh       | 117
 +++++++++++++++++++++++------------
 src/hb-ot-layout-gsubgpos-private.hh |   8 ---
 src/hb-ot-layout-private.hh          |   8 +--
 3 files changed, 79 insertions(+), 54 deletions(-)

commit 2ec3ba46a3c24469096e901750e38f6ee555479a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 29 22:02:24 2012 -0400

    [GSUB/GPOS] Minor

    Start squeezing more out of lig_id/lig_comp.

 src/hb-ot-layout-gsub-table.hh |  6 +++---
 src/hb-ot-layout-private.hh    | 35 +++++++++++++++++++++++++++++++----
 2 files changed, 34 insertions(+), 7 deletions(-)

commit ef6e9cec3399e4f63f4b662abd77cf6d4683e8a3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 29 21:35:22 2012 -0400

    Fixup bb0e4ba3e9c5a407fc5d73c914e429d24d336380

 src/hb-shape-plan.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit cb3d34063154bf164c61eeba41c6166b0bd304fb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 29 20:37:38 2012 -0400

    [GSUB] Don't set new lig_id on mark ligatures

    If two marks form a ligature, retain their previous lig_id, such that
    the mark ligature can attach to ligature components...

    Fixes https://bugzilla.gnome.org/show_bug.cgi?id=676343

    In fact, I noticed that we should not let ligatures form between
    glyphs
    coming from different components of a previous ligature.  For example,
    if the sequence is: LAM,SHADDA,LAM,FATHA,HEH, the LAM,LAM,HEH form a
    ligature, putting SHADDA and FATHA next to eachother.  However,
    it would
    be wrong to ligate them.  Uniscribe has this bug also.

 src/hb-ot-layout-gsub-table.hh | 18 ++++++++++++++----
 1 file changed, 14 insertions(+), 4 deletions(-)

commit 97a201becf936f62046914b568e5763e27ee936e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 29 20:31:36 2012 -0400

    Add Arabic tests for mark ligature component attachments

 .../script-arabic/misc/diacritics/MANIFEST             |  1 +
 .../misc/diacritics/ligature-components.txt            | 18
 ++++++++++++++++++
 2 files changed, 19 insertions(+)

commit a15b70a81a609f024083cb04f9819483f4d5cab7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 29 20:09:22 2012 -0400

    [hb-old] Fix cluster formation in RTL

    Unlike Uniscribe, hb-old returns glyphs in logical order, so the logic
    does not need to duplicated for RTL.

 src/hb-old.cc | 12 +++---------
 1 file changed, 3 insertions(+), 9 deletions(-)

commit 8a7e70ef65952fc16b8c1d5f1126c94d9d81e755
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 29 19:56:54 2012 -0400

    [Minor]

 src/test.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit bb0e4ba3e9c5a407fc5d73c914e429d24d336380
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 29 17:34:14 2012 -0400

    Minor

 src/hb-shape-plan.cc         | 2 +-
 src/test-would-substitute.cc | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit a00ad60bc0fe74bf0e11d73da563239f3392f351
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jul 28 21:16:08 2012 -0400

    [Uniscribe] Remove hb_uniscribe_font_ensure()

    Wasn't a huge fan of putting the burden on the user.  Just remove
    it and
    do what we've got to do transparently.

 src/hb-uniscribe.cc | 6 +++++-
 src/hb-uniscribe.h  | 4 ----
 2 files changed, 5 insertions(+), 5 deletions(-)

commit 5d874d566fe5d2cc4cfaf02c79b663d8a626ca1e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jul 28 21:05:25 2012 -0400

    [GPOS] Fix mark-to-mark positioning when one of the marks is
    a ligature

    This commit: a3313e54008167e415b72c780ca7b9cda958d07e broke
    MarkMarkPos
    when one of the marks itself is a ligature.  That regressed 26 Tibetan
    tests (up from zero!).  Fix that.  Tibetan back to zero.

 src/hb-ot-layout-gpos-table.hh                     | 27
 ++++++++++++++++------
 src/hb-ot-layout-private.hh                        |  5 ++--
 test/shaping/texts/in-tree/shaper-indic/MANIFEST   |  1 +
 .../indic/script-sinhala/misc/MANIFEST             |  1 +
 .../in-tree/shaper-indic/south-asian/MANIFEST      |  1 +
 .../south-asian/script-tibetan/MANIFEST            |  1 +
 .../south-asian/script-tibetan/misc/MANIFEST       |  1 +
 .../south-asian/script-tibetan/misc/misc.txt       |  1 +
 8 files changed, 29 insertions(+), 9 deletions(-)

commit 338fe662b50f9309bf0050dd99becb644874195b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jul 28 18:53:01 2012 -0400

    [GSUB] Minor

 src/hb-ot-layout-gsub-table.hh | 33 ++++++++++++++++-----------------
 1 file changed, 16 insertions(+), 17 deletions(-)

commit e6f7479fe34fb4a7cada61d84c2ed70d1fd565c8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jul 28 18:34:58 2012 -0400

    [GSUB] Simplify would-apply

 src/hb-ot-layout-gsub-table.hh       | 71
 +++---------------------------------
 src/hb-ot-layout-gsubgpos-private.hh | 24 +++---------
 2 files changed, 11 insertions(+), 84 deletions(-)

commit dadede012e4841f9fcb70d514fdc752f3ea4663d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jul 28 18:03:20 2012 -0400

    Minor

 src/hb-ot-layout-common-private.hh | 7 +++----
 src/hb-ot-layout-gpos-table.hh     | 2 +-
 src/hb-ot-layout-gsub-table.hh     | 2 +-
 3 files changed, 5 insertions(+), 6 deletions(-)

commit 0b99429ead05ae32b3c210cb499af401b02770a9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jul 28 17:31:01 2012 -0400

    [GSUB/GPOS] Add get_coverage() and use it to speed up main loop

    And use it to speed up the hotspot by checking coverage directly in
    the main loop, not 10 functions deep in.

    Gives me a solid 20% boost with Indic test suite.  Less so for less
    lookup-intensive scenarios.

    Remove the "fast_path" hack from before.

 src/hb-ot-layout-gpos-table.hh       | 179
 ++++++++++++++++++++++++++++++-----
 src/hb-ot-layout-gsub-table.hh       | 166
 ++++++++++++++++++++++++++------
 src/hb-ot-layout-gsubgpos-private.hh |  26 +++++
 3 files changed, 321 insertions(+), 50 deletions(-)

commit 30ec9002d84e8b49290e782e6192069821ffa942
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jul 28 17:25:20 2012 -0400

    Reject lookups with no subTable

 src/hb-ot-layout-common-private.hh | 1 +
 1 file changed, 1 insertion(+)

commit 0981068b75710397f08e0d2d776a0a2ea68d7117
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jul 28 17:01:59 2012 -0400

    [GSUB/GPOS] Reject Context/ChainContext lookups with zero input

 src/hb-ot-layout-gsubgpos-private.hh | 2 ++
 1 file changed, 2 insertions(+)

commit 2f87cebe1062c7007021ebd05c1664e60da80825
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 27 04:02:38 2012 -0400

    Implement shape_plan caching

    Should give us some performance boost.

 TODO                     |   4 ++
 src/hb-buffer-private.hh |  30 ++++++++++++++
 src/hb-font-private.hh   |   6 +++
 src/hb-font.cc           |  15 ++++++-
 src/hb-shape-plan.cc     | 100
 +++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-shape-plan.h      |   7 ++++
 src/hb-shape.cc          |   2 +-
 7 files changed, 162 insertions(+), 2 deletions(-)

commit e9eb9503e97044222f843daacfa47e26e51312b7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 27 03:16:22 2012 -0400

    Add default_shaper_list to shape_plan

 src/hb-shape-plan-private.hh | 1 +
 src/hb-shape-plan.cc         | 2 ++
 2 files changed, 3 insertions(+)

commit 3b7c4e270694ed962e2a2839e44f2a59c26b326c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 27 03:12:23 2012 -0400

    Don't fail choosing shaper on planning failure

    Shapers have a chance to reject a font in face shaper_data creation.
    No need to allow failing during planning.

 src/hb-shape-plan.cc | 17 ++++++-----------
 1 file changed, 6 insertions(+), 11 deletions(-)

commit cfe9882610489e1b917e09a74dfbf6bbba2e4a57
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 27 03:06:30 2012 -0400

    Add hb_ot_layout_ensure() and hb_uniscribe_font_ensure()

 src/hb-ot-layout.cc      |  7 +++++++
 src/hb-ot-layout.h       |  6 ++++++
 src/hb-shape-plan.cc     | 22 ++--------------------
 src/hb-shaper-private.hh | 18 ++++++++++++++++++
 src/hb-uniscribe.cc      | 11 +++++++++++
 src/hb-uniscribe.h       |  4 ++++
 6 files changed, 48 insertions(+), 20 deletions(-)

commit c5b668fb9239c912d2448280a7176e331ebc9181
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 27 02:49:39 2012 -0400

    Choose one shaper per plan

 src/hb-shape-plan-private.hh |  2 +-
 src/hb-shape-plan.cc         | 19 +++++++++----------
 2 files changed, 10 insertions(+), 11 deletions(-)

commit e82061e8db922f0ddbefd5a184ee2f9f967b9a05
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 27 02:29:32 2012 -0400

    Move ot shaper completely to shape_plan

 src/hb-ot-shape-private.hh |   6 --
 src/hb-ot-shape.cc         | 181
 +++++++++++++++++++++------------------------
 src/hb-uniscribe.cc        |   2 +-
 3 files changed, 84 insertions(+), 105 deletions(-)

commit ea278d3895fe0c92801d692cd71d8d9f1de7c048
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 27 02:12:28 2012 -0400

    Partially switch ot shaper to shape_plan

 src/hb-buffer-private.hh       |  1 +
 src/hb-buffer.cc               |  1 -
 src/hb-font-private.hh         |  2 --
 src/hb-font.cc                 | 22 ++++++++++++++--------
 src/hb-ot-layout-gpos-table.hh |  2 +-
 src/hb-ot-layout-gsub-table.hh |  4 ++--
 src/hb-ot-layout-private.hh    |  1 +
 src/hb-ot-layout.cc            |  9 ++++++---
 src/hb-ot-shape.cc             |  3 ++-
 src/hb-shape-plan.cc           | 11 +++++++++++
 src/hb-shaper-private.hh       |  3 ++-
 11 files changed, 40 insertions(+), 19 deletions(-)

commit b6b7ba1313bf686e6ed567183466104c90504a67
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 27 01:26:11 2012 -0400

    Switch old and uniscribe backends to shape_plan

 src/hb-old.cc                 |  80 ++------------------------
 src/hb-shape.cc               |   5 ++
 src/hb-shaper-impl-private.hh |   3 +-
 src/hb-shaper-private.hh      |   4 --
 src/hb-uniscribe.cc           | 130
 ++++++++++++------------------------------
 5 files changed, 48 insertions(+), 174 deletions(-)

commit c32c096a429da3e64896cf42ff5ab8c775d3c2ec
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 27 01:13:53 2012 -0400

    Switch to shape_plan

    Not optimized yet.  Eats babies.  And no shaper uses the shape_plan.

 src/hb-shape-plan.cc | 37 +++++++++++++++++++++++++++++++++++--
 src/hb-shape-plan.h  |  8 ++++++++
 src/hb-shape.cc      | 27 ++++-----------------------
 3 files changed, 47 insertions(+), 25 deletions(-)

commit 5b95c148cc485f79fd7018bc4520b4cb5f728a18
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 26 23:46:53 2012 -0400

    Start implementing shape_plan

 src/hb-fallback-shape.cc     |  4 ++-
 src/hb-font-private.hh       |  4 +++
 src/hb-old.cc                |  4 ++-
 src/hb-ot-shape.cc           |  4 ++-
 src/hb-shape-plan-private.hh |  7 ++++
 src/hb-shape-plan.cc         | 76
 ++++++++++++++++++++++++++++++++++++++++++--
 src/hb-shape.cc              |  4 +++
 src/hb-shaper-private.hh     |  4 +--
 src/hb-uniscribe.cc          |  4 ++-
 9 files changed, 103 insertions(+), 8 deletions(-)

commit bd26b4d21f59312805d294f46f15182adbcc47da
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 26 22:05:39 2012 -0400

    Minor

 src/Makefile.am              |   1 +
 src/hb-fallback-shape.cc     |   3 +-
 src/hb-old.cc                |   3 +-
 src/hb-ot-shape.cc           |   3 +-
 src/hb-shape-plan-private.hh |   2 +-
 src/hb-shape-plan.cc         |   2 +
 src/hb-shape.cc              |  98 ++++----------------------------------
 src/hb-shaper-private.hh     |  16 ++++++-
 src/hb-shaper.cc             | 109
 +++++++++++++++++++++++++++++++++++++++++++
 src/hb-uniscribe.cc          |   3 +-
 10 files changed, 145 insertions(+), 95 deletions(-)

commit 027857d0412477fb4427dcb8a8c45287c272e143
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 26 17:34:25 2012 -0400

    Start adding a unified shaper access infrastructure

    Add global shape_plan.  Unused so far.

 src/Makefile.am                                    |  15 +-
 src/hb-coretext-private.hh                         |  42 -----
 src/hb-coretext.cc                                 |   6 +-
 src/hb-fallback-shape.cc                           |  62 ++++++-
 src/hb-font-private.hh                             |  12 ++
 src/hb-font.cc                                     |  15 +-
 src/hb-old.cc                                      | 109 +++++++++---
 src/hb-ot-shape-private.hh                         |   8 -
 src/hb-ot-shape.cc                                 |  60 ++++++-
 ...aphite2-private.hh => hb-shape-plan-private.hh} |  28 +++-
 src/hb-shape-plan.cc                               |  85 ++++++++++
 ...b-fallback-shape-private.hh => hb-shape-plan.h} |  39 +++--
 src/hb-shape.cc                                    |  48 +-----
 ...scribe-private.hh => hb-shaper-impl-private.hh} |  20 ++-
 src/{hb-old-private.hh => hb-shaper-list.hh}       |  30 ++--
 src/hb-shaper-private.hh                           |  81 +++++++++
 src/hb-uniscribe.cc                                | 186
 +++++++++++++--------
 17 files changed, 608 insertions(+), 238 deletions(-)

commit fa2dfcd560444d8c54b6349ee106134d3536f79b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 26 16:06:16 2012 -0400

    Fix visibility warnings with MinGW32

 src/hb-old/harfbuzz-global.h | 17 +++++++++++------
 src/hb-old/harfbuzz-impl.h   |  6 +++++-
 2 files changed, 16 insertions(+), 7 deletions(-)

commit ac2085d4b391b0a72473ecac3dd6c22efe66833f
Author: Jonathan Kew <jfkthame@gmail.com>
Date:   Thu Jul 26 15:58:45 2012 -0400

    [CoreText] Ensure cluster indices in output buffer are non-decreasing.

    Does not provide Uniscribe-compatible results, but should at least
    avoid
    breaking hb-view due to out-of-order cluster values.

    For RTL runs, ensure cluster values are non-increasing (instead of
    non-decreasing).

 src/hb-coretext.cc | 37 +++++++++++++++++++++++++++++++++++++
 1 file changed, 37 insertions(+)

commit 441d3bb7de311d54b9f0a5210344f9a96e97e153
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 26 12:01:12 2012 -0400

    Minor

 src/hb-coretext.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 2e7f223054d310695bdb3498b2b2b5d17b6cce78
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 25 19:30:15 2012 -0400

    [hb-old] Fix Arabic cursive positioning

    Backporting from upstream:

    commit b847f24ce855d24f6822bcd9c0006905e81b94d8
    Author: Behdad Esfahbod <behdad@behdad.org>
    Date:   Wed Jul 25 19:29:16 2012 -0400

        [arabic] Fix Arabic cursive positioning

        This was clearly broken in testing.  Who knows...  Fixes for me.
        Test with a Nastaleeq font, or with Arabic Typesetting.

        Backporting from Chromium.

 src/hb-old/harfbuzz-shaper.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9550a8c4e8b4e28be60d38c27d59253846ff9569
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 25 19:22:57 2012 -0400

    [hb-old] Fixup not-enough-space handling

 src/hb-old.cc | 15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)

commit 91e721ea8693205f4f738bca97a5055ee75cf463
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 25 19:20:34 2012 -0400

    [hb-old] Fix clusters

    Unlike its "documentation", hb-old's log_clusters are, well, indeed
    logical, not visual.  Fixup.  Adapted / copied from hb-uniscribe.

 src/hb-old.cc                | 51
 ++++++++++++++++++++++++++++++++++----------
 src/hb-old/harfbuzz-shaper.h |  1 +
 src/hb-uniscribe.cc          |  5 +++--
 3 files changed, 44 insertions(+), 13 deletions(-)

commit a3313e54008167e415b72c780ca7b9cda958d07e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 25 18:37:51 2012 -0400

    [GPOS] Fix MarkMarkPos applied to results of MultipleSubst

    This was broken as a result of
    7b84c536c10ab90ed96a033d88e9ad232d46c5b8.
    As Khaled reported, MarkMark positioning was broken with glyphs
    resulting from a MultipleSubst.  Fixed.  Test with the ALLAH character
    in Amiri.

 src/hb-ot-layout-gpos-table.hh | 10 +++++-----
 src/hb-ot-layout-private.hh    | 23 +++++++++++++++++++++--
 2 files changed, 26 insertions(+), 7 deletions(-)

commit 35bdab3cf1f0836807160e3ce93766c321b32e8c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 25 11:59:52 2012 -0400

    Minor

 src/hb-unicode-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 8fe4c7405b922cf0f936a46a9baedf4885b05254
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 24 21:05:12 2012 -0400

    [hb-old] Add HarfBuzz.old shaper

    Choose using shaper name "old".

 configure.ac           |   8 +
 src/Makefile.am        |  14 +-
 src/hb-old-private.hh  |  40 +++
 src/hb-old.cc          | 369 ++++++++++++++++++++++++
 src/hb-old/.gitignore  |   7 -
 src/hb-old/Makefile.am |   2 +
 src/hb-old/Makefile.in | 762
 -------------------------------------------------
 src/hb-shape.cc        |   8 +-
 8 files changed, 436 insertions(+), 774 deletions(-)

commit 5e1987005eb1b9af7a4d3d9f90c5768d8cc80015
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 24 19:53:55 2012 -0400

    [hb-old] Define Unicode funcs in terms of new HarfBuzz

 src/hb-old/Makefile.am         |   4 +
 src/hb-old/Makefile.in         | 182
 ++++++++++++++++++++++++++++++++++++-----
 src/hb-old/harfbuzz-external.h | 100 +++++++++++++---------
 3 files changed, 224 insertions(+), 62 deletions(-)

commit 4a31166b2853c1ec052844140e114158f47c2355
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 24 19:49:48 2012 -0400

    [hb-old] Shovel out the line-breaking / word-segmentation stuff

 src/hb-old/Makefile.am               |  10 +-
 src/hb-old/Makefile.in               |  13 +-
 src/hb-old/harfbuzz-external.h       |  66 ------
 src/hb-old/harfbuzz-indic.cpp        |  26 ---
 src/hb-old/harfbuzz-khmer.c          |  25 ---
 src/hb-old/harfbuzz-myanmar.c        |  28 ---
 src/hb-old/harfbuzz-shaper-private.h |  12 --
 src/hb-old/harfbuzz-shaper.cpp       | 403
 +++--------------------------------
 src/hb-old/harfbuzz-shaper.h         |  31 ---
 src/hb-old/harfbuzz-thai.c           | 111 ----------
 src/hb-old/harfbuzz-tibetan.c        |  26 ---
 src/hb-old/harfbuzz.c                |  32 ---
 12 files changed, 33 insertions(+), 750 deletions(-)

commit 0bcbe88cf313117f739b98a11dbe698b75784e9d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 24 19:38:24 2012 -0400

    [hb-old] Add visibility attributes

 src/hb-old/harfbuzz-global.h | 10 ++++++----
 src/hb-old/harfbuzz-impl.h   |  2 +-
 2 files changed, 7 insertions(+), 5 deletions(-)

commit 6a9d43c3178c920672a84382ca3797e3c478b2b0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 24 19:21:22 2012 -0400

    [hb-old] Remove unused header file

 src/hb-old/harfbuzz-shape.h | 199
 --------------------------------------------
 1 file changed, 199 deletions(-)

commit fb47209c5b3aa992faf18d1a3f78b9d7682cf62f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 24 19:20:19 2012 -0400

    [hb-old] Rename hb_buffer_* to HB_Buffer_*

 src/hb-old/harfbuzz-buffer.c   | 22 +++++++++++-----------
 src/hb-old/harfbuzz-buffer.h   |  8 ++++----
 src/hb-old/harfbuzz-shaper.cpp |  8 ++++----
 3 files changed, 19 insertions(+), 19 deletions(-)

commit 1512a7357513b72e2a07dda706a176bb23d694e9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 24 19:16:56 2012 -0400

    [hb-old] Start adding HarfBuzz-old as a new backend

 configure.ac                         |    1 +
 src/Makefile.am                      |    5 +
 src/hb-old/.gitignore                |    7 +
 src/hb-old/COPYING                   |   24 +
 src/hb-old/Makefile.am               |   56 +
 src/hb-old/Makefile.in               |  631 ++++
 src/hb-old/README                    |    7 +
 src/hb-old/harfbuzz-arabic.c         | 1144 +++++++
 src/hb-old/harfbuzz-buffer-private.h |  107 +
 src/hb-old/harfbuzz-buffer.c         |  383 +++
 src/hb-old/harfbuzz-buffer.h         |  102 +
 src/hb-old/harfbuzz-external.h       |  151 +
 src/hb-old/harfbuzz-gdef-private.h   |  135 +
 src/hb-old/harfbuzz-gdef.c           | 1163 +++++++
 src/hb-old/harfbuzz-gdef.h           |  140 +
 src/hb-old/harfbuzz-global.h         |  118 +
 src/hb-old/harfbuzz-gpos-private.h   |  729 ++++
 src/hb-old/harfbuzz-gpos.c           | 6094
 ++++++++++++++++++++++++++++++++++
 src/hb-old/harfbuzz-gpos.h           |  155 +
 src/hb-old/harfbuzz-greek.c          |  447 +++
 src/hb-old/harfbuzz-gsub-private.h   |  483 +++
 src/hb-old/harfbuzz-gsub.c           | 4329 ++++++++++++++++++++++++
 src/hb-old/harfbuzz-gsub.h           |  148 +
 src/hb-old/harfbuzz-hangul.c         |  268 ++
 src/hb-old/harfbuzz-hebrew.c         |  187 ++
 src/hb-old/harfbuzz-impl.c           |   84 +
 src/hb-old/harfbuzz-impl.h           |  131 +
 src/hb-old/harfbuzz-indic.cpp        | 1894 +++++++++++
 src/hb-old/harfbuzz-khmer.c          |  667 ++++
 src/hb-old/harfbuzz-myanmar.c        |  539 +++
 src/hb-old/harfbuzz-open-private.h   |  102 +
 src/hb-old/harfbuzz-open.c           | 1433 ++++++++
 src/hb-old/harfbuzz-open.h           |  288 ++
 src/hb-old/harfbuzz-shape.h          |  199 ++
 src/hb-old/harfbuzz-shaper-all.cpp   |   37 +
 src/hb-old/harfbuzz-shaper-private.h |  171 +
 src/hb-old/harfbuzz-shaper.cpp       | 1338 ++++++++
 src/hb-old/harfbuzz-shaper.h         |  294 ++
 src/hb-old/harfbuzz-stream-private.h |   81 +
 src/hb-old/harfbuzz-stream.c         |  114 +
 src/hb-old/harfbuzz-stream.h         |   51 +
 src/hb-old/harfbuzz-thai.c           |  111 +
 src/hb-old/harfbuzz-tibetan.c        |  274 ++
 src/hb-old/harfbuzz.c                |   32 +
 src/hb-old/harfbuzz.h                |   38 +
 45 files changed, 24892 insertions(+)

commit 478fd0529b868b22905a9dedf331ac7cc9721723
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 24 17:09:01 2012 -0400

    Minor

 src/hb-unicode-private.hh | 27 ++++++++++++++-------------
 1 file changed, 14 insertions(+), 13 deletions(-)

commit 8979a7f6f2b44ade4c0198a31ae08561b35ce009
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 24 17:03:55 2012 -0400

    [Mongolian] Remove Mongolian Vowel Separator at the end of shaping

    Results match Uniscribe now.

 src/hb-unicode-private.hh | 3 +++
 1 file changed, 3 insertions(+)

commit aa6d849838d5231465ae1a25a4dd5ea1e9380ff9
Author: Jonathan Kew <jfkthame@gmail.com>
Date:   Tue Jul 24 15:52:32 2012 -0400

    [CoreText] Add basic Core Text backend for comparison with our
    native shaping

    Does not attempt to handle clusters in a Uniscribe- or
    HarfBuzz-compatible way;
    just returns the original string indexes that CT maintains. These
    may even be
    out-of-order in the case of reordrant glyphs.

 configure.ac               |  12 ++
 src/Makefile.am            |   7 +
 src/hb-coretext-private.hh |  42 ++++++
 src/hb-coretext.cc         | 323
 +++++++++++++++++++++++++++++++++++++++++++++
 src/hb-coretext.h          |  43 ++++++
 src/hb-shape.cc            |   6 +
 6 files changed, 433 insertions(+)

commit ec8d2494694275dfbbac2dd0d33ca2894b0463d6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 24 15:40:37 2012 -0400

    Make data members of various OpenType structs protected instead
    of private

    Should fix warnings generated when building with
    -Wunused-private-field.
    Based on patch from Jonathan Kew.

 src/hb-open-file-private.hh          |  8 +++---
 src/hb-ot-head-table.hh              |  2 +-
 src/hb-ot-hhea-table.hh              |  2 +-
 src/hb-ot-hmtx-table.hh              |  2 +-
 src/hb-ot-layout-common-private.hh   | 14 ++++++-----
 src/hb-ot-layout-gdef-table.hh       | 20 +++++++--------
 src/hb-ot-layout-gpos-table.hh       | 48
 ++++++++++++++++++------------------
 src/hb-ot-layout-gsub-table.hh       | 30 +++++++++++-----------
 src/hb-ot-layout-gsubgpos-private.hh | 32 ++++++++++++------------
 src/hb-ot-maxp-table.hh              |  2 +-
 src/hb-ot-name-table.hh              |  2 +-
 11 files changed, 82 insertions(+), 80 deletions(-)

commit 97aa0b738a33b73a3f9763dd2950f2dd39f596ed
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 24 15:02:34 2012 -0400

    Minor const correctness shuffling

 src/hb-shape.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 6411e74caf23af7b0545f1fe54d19a1c8da895e8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 24 13:48:49 2012 -0400

    [Indic] Reposition Gurmukhi top matras to after post

    The font is forming a post-base consonant in some samples, and
    Uniscribe
    positions top matra on the post-base.  Do the same.

    Gurmukhi failures down from 59 to 41 (0.0674242%).

 src/hb-ot-shape-complex-indic.cc                                        |
 2 +-
 .../texts/in-tree/shaper-indic/indic/script-gurmukhi/misc/misc.txt      |
 1 +
 2 files changed, 2 insertions(+), 1 deletion(-)

commit c3f769ba09df319fa69d04f68c57444f95eceee6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 24 13:26:32 2012 -0400

    [Indic] Ignore Uniscribe output containing two zero-width space glyphs

    Uniscribe is buggy and sometimes /eats/ a mark next to a non-joiner.
    Most of Malayalam failures where actually hitting this bug.

    Ignore test output with two zero-width space glyphs.  This is a hack
    until we build up the test suite infrastructure better.

    Bengali went down by 9, Devanagari by 2, Kannada by 130, Malayalm down
    from 1197 to 307, Sinhala down by 16, Telugu down by 26.  New stats:

    BENGALI: 353996 out of 354285 tests passed. 289 failed (0.0815727%)
    DEVANAGARI: 693573 out of 693628 tests passed. 55 failed (0.00792932%)
    GUJARATI: 366489 out of 366506 tests passed. 17 failed (0.0046384%)
    GURMUKHI: 60750 out of 60809 tests passed. 59 failed (0.0970251%)
    KANNADA: 951086 out of 951913 tests passed. 827 failed (0.0868777%)
    KHMER: 299094 out of 299124 tests passed. 30 failed (0.0100293%)
    MALAYALAM: 1048109 out of 1048416 tests passed. 307 failed
    (0.0292823%)
    ORIYA: 42320 out of 42329 tests passed. 9 failed (0.021262%)
    SINHALA: 271715 out of 271847 tests passed. 132 failed (0.0485567%)
    TAMIL: 1091837 out of 1091837 tests passed. 0 failed (0%)
    TELUGU: 970550 out of 970573 tests passed. 23 failed (0.00236973%)

 test/shaping/hb_test_tools.py                                           |
 1 +
 .../texts/in-tree/shaper-indic/indic/script-malayalam/misc/misc.txt     |
 2 ++
 2 files changed, 3 insertions(+)

commit 65c43accdc4d2082282d5cedba8514b8df0c18a2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 24 03:36:47 2012 -0400

    [Indic] Better position left-matra in Malayalam

    Just put it before base, which is what's expected.

    Malayalam failures down from 1559 to 1197 (0.114172%).

    BENGALI: 353988 out of 354285 tests passed. 297 failed (0.0838308%)
    DEVANAGARI: 693571 out of 693628 tests passed. 57 failed (0.00821766%)
    GUJARATI: 366489 out of 366506 tests passed. 17 failed (0.0046384%)
    GURMUKHI: 60750 out of 60809 tests passed. 59 failed (0.0970251%)
    KANNADA: 950956 out of 951913 tests passed. 957 failed (0.100534%)
    KHMER: 299094 out of 299124 tests passed. 30 failed (0.0100293%)
    MALAYALAM: 1047219 out of 1048416 tests passed. 1197 failed
    (0.114172%)
    ORIYA: 42320 out of 42329 tests passed. 9 failed (0.021262%)
    SINHALA: 271699 out of 271847 tests passed. 148 failed (0.0544424%)
    TAMIL: 1091837 out of 1091837 tests passed. 0 failed (0%)
    TELUGU: 970524 out of 970573 tests passed. 49 failed (0.00504856%)

 src/hb-ot-shape-complex-indic.cc                   | 41
 +++++++++++++++-------
 .../indic/script-malayalam/misc/misc.txt           |  1 +
 2 files changed, 29 insertions(+), 13 deletions(-)

commit 88f413b56f2858d149e2fc067685aeecaea779ca
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 24 03:04:36 2012 -0400

    [Indic] Implement Reph+Ya-Phalaa interaction

    The sequence Ra,H,Ya in Bengali is ambigious and Unicode encoded
    that to
    get Ya-Phalaa, one would place ZWJ before Halant.  Ie. a ZWJ,H
    sequence
    requests subjoining, while a H,ZWJ requests Half form.  Implement
    that.

    Bengali failures go down from 377 to 297 (0.0838308%).
    Gujarati is down by 4 to 17 (0.0046384%).
    Kannada is down by 226 to 957 (0.100534%).

    Current status:

    BENGALI: 353988 out of 354285 tests passed. 297 failed (0.0838308%)
    DEVANAGARI: 693571 out of 693628 tests passed. 57 failed (0.00821766%)
    GUJARATI: 366489 out of 366506 tests passed. 17 failed (0.0046384%)
    GURMUKHI: 60750 out of 60809 tests passed. 59 failed (0.0970251%)
    KANNADA: 950956 out of 951913 tests passed. 957 failed (0.100534%)
    KHMER: 299094 out of 299124 tests passed. 30 failed (0.0100293%)
    MALAYALAM: 1046857 out of 1048416 tests passed. 1559 failed
    (0.148701%)
    ORIYA: 42320 out of 42329 tests passed. 9 failed (0.021262%)
    SINHALA: 271699 out of 271847 tests passed. 148 failed (0.0544424%)
    TAMIL: 1091837 out of 1091837 tests passed. 0 failed (0%)
    TELUGU: 970524 out of 970573 tests passed. 49 failed (0.00504856%)

 src/hb-ot-shape-complex-indic.cc                               |
 10 ++++++++--
 .../in-tree/shaper-indic/indic/script-bengali/misc/reph.txt    |  4 ++++
 2 files changed, 12 insertions(+), 2 deletions(-)

commit dff0ece11d61978c04e839501f179a5c3077f340
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 24 02:30:38 2012 -0400

    [Indic] Limit matras to 4 per syllable

    Also limit joiners.

    This limits our syllable length to a constant, and is
    closer to what Uniscribe does anyway.

    Two Devanagari tests regressed, but who cares about tests with 20
    joiners in a row?!  Devanagari at 57 (0.00821766%) now.

 src/hb-ot-shape-complex-indic-machine.rl | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 330b329c8905a37ca88c556dea82c70d74c77458
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 24 02:25:26 2012 -0400

    [Indic] Unmark U+17D1 KHMER SIGN VIRIAM to NOT be a Virama

    Fixes another 1 Khmer failure.  Down to 30 (0.0100293%) now.

 src/hb-ot-shape-complex-indic.cc                                        |
 2 ++
 .../in-tree/shaper-indic/south-east-asian/script-khmer/misc/misc.txt    |
 1 +
 2 files changed, 3 insertions(+)

commit 6824a7194e01b77eddb95bd95a9b32e219140912
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 24 02:22:18 2012 -0400

    [Indic] Recategorize Khmer various signs as top matras

    Khmer failures down from 39 to 31 (0.0103636%).

 src/hb-ot-shape-complex-indic.cc | 23 ++++++++++-------------
 1 file changed, 10 insertions(+), 13 deletions(-)

commit d90b8e841e0068a601c96ab184d18b0f48eec9d1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 24 02:10:20 2012 -0400

    [Indic] Reposition Khmer prebase-reordering Ra around split matras

    In Khmer coeng model, a V,Ra can go *after* matras.  If it goes
    after a
    split matra, it should be reordered to *before* the left part of
    such matra.

    Khmer failures down from 136 to 39 (0.0130381%).

 src/hb-ot-shape-complex-indic.cc                            | 13
 +++++++++++++
 .../south-east-asian/script-khmer/misc/misc.txt             |  4 ++++
 2 files changed, 17 insertions(+)

commit 0afb84c12567ac35adac657bf8be29999b8c5a50
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 24 01:44:47 2012 -0400

    [Indic] Fix minor bug in pre-base Ra positioning

 src/hb-ot-shape-complex-indic.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 7573799126e812a047daa5f64121ec959866b3c8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 24 01:32:07 2012 -0400

    [Indic] Position Khmer U+17CE

    Fixes another 6 Khmer failures.  Now at 136 (0.0454661%).

 src/hb-ot-shape-complex-indic.cc                                    |
 6 ++++++
 .../shaper-indic/south-east-asian/script-khmer/misc/misc.txt        | 1 +
 2 files changed, 7 insertions(+)

commit 8d00e8d0e7d10f823e6975fecaffb9d557b1a99a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 24 01:04:18 2012 -0400

    [Indic] Don't reposition Khmer Bindu

    Khmer Bindu doesn't like to move to syllable end.  Leave it where it
    was.

    Brings down Khmer failures from 510 to 142 (0.047572%).

 src/hb-ot-shape-complex-indic.cc | 2 ++
 1 file changed, 2 insertions(+)

commit 2278eefcdb3dd0d492b9d07176fbecc1f0516bb7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 24 00:26:43 2012 -0400

    [Indic] In Sinhala, form forced Reph even if no other consonant found

    Fixes another 10 Sinhala failures.  Down to 148 (0.0544424%).

 src/hb-ot-shape-complex-indic.cc                               |
 10 +++++-----
 .../in-tree/shaper-indic/indic/script-sinhala/misc/misc.txt    |  1 +
 2 files changed, 6 insertions(+), 5 deletions(-)

commit 71fd5e80ad06c8e85a1112cc89e129d6cd03f82c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 24 00:21:16 2012 -0400

    [Indic] Further adjust base algorithm for Sinhala

    Apparently if there is C,V,ZWJ,C, the first C will be base, but if
    it's C,ZWJ,V,C, the second one will be.

    Note that Uniscribe implements this differently, by breaking
    syllable in
    the case of C,ZWJ,V,C and putting the first consonant in one syllable
    and the rest in the next syllable.

    Sinhala failures down from 208 to 158 (0.0581209%).  No changes to
    Khmer.

 src/hb-ot-shape-complex-indic.cc                              |
 11 +++++++----
 .../in-tree/shaper-indic/indic/script-sinhala/misc/misc.txt   |  3 +++
 2 files changed, 10 insertions(+), 4 deletions(-)

commit 73d71cc527d28fd5519c5d965c272ea1fb149a0e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 24 00:09:12 2012 -0400

    [Indic] End Vowel-based syllable at ZWJ

    One Devanagari test regressed, plus 10 Malayalam (at 1545 now).

    Fixed 120 Sinhala failures.  Now at 208 (0.0765136%).

 src/hb-ot-shape-complex-indic-machine.rl                                |
 2 +-
 .../texts/in-tree/shaper-indic/indic/script-sinhala/misc/misc.txt       |
 1 +
 2 files changed, 2 insertions(+), 1 deletion(-)

commit 34c215036f5fcdc7599b1ab0591b56dbb3811902
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 23 23:51:29 2012 -0400

    [Indic] Improve Sinhala base algorithm and reph positioning

    Sinhala does not have half forms.  And most (all?) consonants can be
    base, except when preceded by ZWJ, which would request a subjoined
    form.
    Hence switch the base algorithm to categorize with Khmer, start search
    at start, and stop at a ZWJ.

    Also, mark all pos=base consonants after base to be subjoined.  Mark
    base itself to have pos=base.

    Finally, adjust Sinhala's reph position to after-main.

    Brings down Sinhala failures from 455 to 328 (0.120656%).

 src/hb-ot-shape-complex-indic.cc                       | 18
 +++++++++++++++++-
 .../shaper-indic/indic/script-sinhala/misc/misc.txt    |  1 +
 2 files changed, 18 insertions(+), 1 deletion(-)

commit 2ec934c6c25423e7af20d909a9c698a149808ea9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 23 23:49:04 2012 -0400

    [Indic] Change "unknown" position to end of syllable

 src/hb-ot-shape-complex-indic-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b70021f7c81a0ed08475b14b07291f662cd9f905
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 23 20:18:17 2012 -0400

    When removing zero-width marks, don't remove ligatures

    If a mark ligated, it probably should NOT be removed.

 src/hb-ot-shape.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 49c5ec51444f27f33e1eb6aa1959c61b08fa89c0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 23 20:14:13 2012 -0400

    Minor refactoring

 src/hb-ot-layout-gsubgpos-private.hh | 32
 --------------------------------
 src/hb-ot-layout-private.hh          | 35
 +++++++++++++++++++++++++++++++++++
 src/hb-ot-shape-complex-indic.cc     |  2 +-
 3 files changed, 36 insertions(+), 33 deletions(-)

commit c3e6fdc3791168cf2b4c9412e751f187d58faa42
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 23 20:11:42 2012 -0400

    [Indic] Improve check on ligatures

    Only skip actual ligatures, not marks in-between ligature components.

 src/hb-ot-layout-gsubgpos-private.hh | 5 +++++
 src/hb-ot-shape-complex-indic.cc     | 2 +-
 2 files changed, 6 insertions(+), 1 deletion(-)

commit 771a8f50289e8fa458cfc3cd84f73a380ce98077
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 23 20:07:50 2012 -0400

    [Indic] exclude ligatures when matching on Indic category

    If, say, a H,ZWJ,C ligature was formed, we don't want the code
    to detec
    that as a Halant.  So, ignore ligatures when matching category in
    final_reordering.

    Sinhala failures down from 514 to 455 (0.167374%).

 src/hb-ot-shape-complex-indic.cc                   | 41
 ++++++++++++----------
 .../indic/script-sinhala/misc/misc.txt             |  1 +
 2 files changed, 23 insertions(+), 19 deletions(-)

commit d1af9e82e5309158ed334ab8e21f3a3b64b9540f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 23 19:55:35 2012 -0400

    [GSUB/GPOS] Const correctness

 src/hb-ot-layout-gsubgpos-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit baacd090df97610e3f6d1b2a110dc67b6c6f9f5c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 23 19:51:48 2012 -0400

    [Indic] Minor refactoring

 src/hb-ot-shape-complex-indic.cc | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

commit c7c4de2fb9bba216e37875d79815eef55c0acc01
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 23 18:25:02 2012 -0400

    [Indic] Remove syllable length check before sorting

    We now limit syllable lengths in the machine.  No need to match here.

 src/hb-ot-shape-complex-indic.cc | 2 --
 1 file changed, 2 deletions(-)

commit 9fa052733eb93a3ce1205f63ff8f74cb295cbe99
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 23 18:19:17 2012 -0400

    [Indic] Limit syllables to at most five consonants

    Seems to be about what Uniscribe does.  Not exactly.  But close
    enough.
    More consonants will start a new cluster.

    A few scripts went way down in failures.  In particular:

      - Devanagari failures went down from 490 to 56.
      - Telugu went down from 113 to 49.

    Other scripts went down slightly or didn't change.  New numbers:

    BENGALI: 353908 out of 354285 tests passed. 377 failed (0.106412%)
    DEVANAGARI: 693572 out of 693628 tests passed. 56 failed (0.00807349%)
    GUJARATI: 366485 out of 366506 tests passed. 21 failed (0.00572978%)
    GURMUKHI: 60750 out of 60809 tests passed. 59 failed (0.0970251%)
    KANNADA: 950730 out of 951913 tests passed. 1183 failed (0.124276%)
    KHMER: 298613 out of 299124 tests passed. 511 failed (0.170832%)
    MALAYALAM: 1046881 out of 1048416 tests passed. 1535 failed
    (0.146411%)
    ORIYA: 42320 out of 42329 tests passed. 9 failed (0.021262%)
    SINHALA: 271333 out of 271847 tests passed. 514 failed (0.189077%)
    TAMIL: 1091837 out of 1091837 tests passed. 0 failed (0%)
    TELUGU: 970524 out of 970573 tests passed. 49 failed (0.00504856%)

    Some of the remaining Telugu and Devanagari issues seem to be
    Uniscribe
    eating Anusvara when placed before a non-joiner.  Ouch!

 src/hb-ot-shape-complex-indic-machine.rl | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 093cd583263a5d427e3377b31585043fb55d2557
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 23 14:04:42 2012 -0400

    [Thai] Fix SARA AM handling

    Oops, thinko.

 src/hb-ot-shape-complex-misc.cc | 6 +++---
 src/hb-private.hh               | 4 ++--
 2 files changed, 5 insertions(+), 5 deletions(-)

commit 42848453bf260b456b46a07f066e31b8c3aac2f1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 23 13:52:07 2012 -0400

    [Thai] Reorder U+0E3A THAI VOWEL SIGN PHINTHU

    Uniscribe reorders U+0E3A to be after U+0E38 and U+0E39.  We do
    that by
    modifying the ccc for U+0E3A.

    Fixes the two remaining Thai failures (see previous commit).

 src/hb-ot-shape-complex-misc.cc                          |  7 +++++++
 src/hb-unicode.cc                                        |  6 ++++++
 .../texts/in-tree/shaper-thai/script-thai/misc/MANIFEST  |  1 +
 .../in-tree/shaper-thai/script-thai/misc/phinthu.txt     | 16
 ++++++++++++++++
 4 files changed, 30 insertions(+)

commit 4a7f4f3e56f8f7640ae7337aa1b3324f31e0d4ab
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 23 13:15:33 2012 -0400

    [Thai] Adjust SARA AM reordering to match Uniscribe

    Adjust the list of marks before SARA AM that get the reordering
    treatment.  Also adjust cluster formation to match Uniscribe.

    With Wikipedia test data, now I see:

      - For Thai, with the Angsana New font from Win7, I see 54
      failures out
        of over 4M tests  (0.00129107%).  Of the 54, two are legitimate
        reordering issues (fix coming soon), and the other 52 are simply
        Uniscribe using a zero-width space char instead of an unknown
        character for missing glyphs.  No idea why.  The missing-glyph
        sequences include one that is a Thai character followed by
        an Arabic
        Sokun.  Someone confused it with Nikhahit I assume!

      - For Lao, with the Dokchampa font from Win7, 33 tests fail out of
        54k (0.0615167%).  All seem to be insignificant mark positioning
        with two marks on a base.  Have to investigate.

 src/hb-ot-shape-complex-misc.cc                    | 42
 +++++++++++++---------
 src/hb-private.hh                                  |  6 ++++
 test/shaping/texts/in-tree/shaper-thai/MANIFEST    |  1 +
 .../texts/in-tree/shaper-thai/script-lao/MANIFEST  |  1 +
 .../in-tree/shaper-thai/script-lao/misc/MANIFEST   |  1 +
 .../shaper-thai/script-lao/misc/sara-am.txt        | 20 +++++++++++
 .../shaper-thai/script-thai/misc/sara-am.txt       | 18 +++++++++-
 7 files changed, 72 insertions(+), 17 deletions(-)

commit 2cc933aff97916e5d0fe42883f40f0879f848e25
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 23 08:22:55 2012 -0400

    [Indic] Fix cluster formation with left-matras and conjunct forms

    Test case was: <U+0D15,U+0D4D,U+0D15,U+0D4A>.

 src/hb-ot-shape-complex-indic.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit e6b01a878cd2e63cb675e7e0c6ac4d83a8c10f37
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 23 00:11:26 2012 -0400

    [Indic] Further streamline cluster formation

    This should address all possible cluster misformations that I had in
    mind.

 src/hb-ot-shape-complex-indic.cc | 21 ++++++++++-----------
 1 file changed, 10 insertions(+), 11 deletions(-)

commit 7b2a7dadd6c616bbfe1d8358700cab9cee88e584
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 22 23:58:55 2012 -0400

    [Indic] Merge clusters before sorting

    This should fix any instabilities in cluster formation that we were
    speculating may happen with surrounding syllables.  Or most of it
    perhaps.

 src/hb-ot-shape-complex-indic.cc | 4 ++++
 1 file changed, 4 insertions(+)

commit abb3239ef92cc5dccb4638806d7ae9868b9ac9b3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 22 23:55:19 2012 -0400

    [Indic] Update clusters for left-matra even if matra didn't move

    Fixes crashes reported with left matra under
    non-uniscribe-bug-compatibilty mode.

 src/hb-ot-shape-complex-indic.cc | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

commit 60554f14d8dca208721f0da8b69d84b92819c54f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 22 23:23:56 2012 -0400

    [Indic] Merge in Malayalam tests

    From:
    http://silpa.org.in/pub/tests/hb/ml/ml-harfbuzz-testdata.txt

 .../indic/script-malayalam/misc/misc.txt           | 94
 +++++++++++-----------
 1 file changed, 46 insertions(+), 48 deletions(-)

commit 5c7081770c7a611bbe79b451b7b86dec4fa6395d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 22 23:20:27 2012 -0400

    [Indic] Add extensive Sinhala tests

    Generated by:
    http://git.savannah.gnu.org/cgit/sinhala.git/plain/utils/gen-unicode-sinhala.py

 .../indic/script-sinhala/misc/extensive.txt        | 4390
 ++++++++++++++++++++
 1 file changed, 4390 insertions(+)

commit 2efe4707b1b449962f6e161716477d9775456c46
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 22 23:17:59 2012 -0400

    [Indic] Add Sinhala tests

    Merge tests from:
    http://git.savannah.gnu.org/cgit/sinhala.git/plain/patches/icu-sinhala-rendering.txt

 .../indic/script-sinhala/misc/misc.txt             | 26
 ++++++++++++++++++++--
 1 file changed, 24 insertions(+), 2 deletions(-)

commit 3d4c111b7a13700b2f7a0b087eb3992283295f21
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 20 19:34:39 2012 -0400

    Add a test case

 .../texts/in-tree/shaper-indic/indic/script-bengali/misc/misc.txt
 | 1 +
 1 file changed, 1 insertion(+)

commit 92a1ad7bef9efb456ab87bd63818cfbed7da3f6f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 20 18:38:27 2012 -0400

    [Indic] Stop searching for base if a post form is found before
    below form

    Improves Bengali and Gurmukhi.  Malayalam regressed a bit.  We will
    deal
    with that later.

 src/hb-ot-shape-complex-indic.cc | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 4c450c703f8e4618c587bcd7ef46dcc1f2c7947b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 20 18:13:04 2012 -0400

    [Indic] Recompose Bengali Ya,Nukta

    This is a bunch of hacks for now.

    Improves Bengali a bit.

 src/hb-ot-shape-complex-indic.cc | 4 ++--
 src/hb-unicode.cc                | 8 ++++++++
 2 files changed, 10 insertions(+), 2 deletions(-)

commit e9c0f152a38cb2e76650a3e43f7fdcda266af696
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 20 17:05:46 2012 -0400

    [Uniscribe] Fix script fallback

    Gurmukhi failures half now.  Others changed slightly.

 src/hb-uniscribe.cc | 34 ++++++++++++++--------------------
 1 file changed, 14 insertions(+), 20 deletions(-)

commit 5791f329159c9863317e2b507514c29321be31a7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 20 16:26:55 2012 -0400

    [Indic] Allow a ZWNJ after SM's

    Malayalam failures go way down.  Other scripts benefitted slightly
    too.
    Sinhala had one or two test regressions, but...

 src/hb-ot-shape-complex-indic-machine.rl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 34ae336f3fae93ef9372881d545c817bce383041
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 20 16:17:28 2012 -0400

    [Indic] Improve Reph AfterMain positioning

    Fixes 20 out of 48 failing Oriya tests.  Failure rate down to
    0.066% now.

 src/hb-ot-shape-complex-indic.cc | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit bdd080431a40bc941ece3230f338b94a46bd12a2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 20 16:03:09 2012 -0400

    [Indic] Reposition Oriya Candrabindu

    Oriya failures down from 0.65% to 0.20%.

 src/hb-ot-shape-complex-indic.cc                                        |
 1 +
 .../shaping/texts/in-tree/shaper-indic/indic/script-oriya/misc/MANIFEST |
 1 +
 .../texts/in-tree/shaper-indic/indic/script-oriya/misc/bindu.txt        |
 2 ++
 3 files changed, 4 insertions(+)

commit 5f0eaaad129ff04d56b8756bebf19fbc242718c9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 20 15:47:24 2012 -0400

    [Indic] Fix base search in final_reordering

    Fixes most Malayalam failures.  Down from 1.6% to 0.38% now.  Fixes a
    few more in other scripts too.

 src/hb-ot-shape-complex-indic.cc | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

commit 81202bd860e4034c18d9f80c5a4f33d9f48463a3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 20 15:10:02 2012 -0400

    [Indic] Don't attach SM/VD to other characters

 src/hb-ot-shape-complex-indic-private.hh |  3 +++
 src/hb-ot-shape-complex-indic.cc         | 38
 ++++++++++++++++++--------------
 2 files changed, 24 insertions(+), 17 deletions(-)

commit efb4ad735691837a52447bedc1a66a87d0d9af51
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 20 14:27:38 2012 -0400

    Fix compiler warnings

    If x is not constant, we cannot ASSERT_STATIC on it.

 src/hb-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f31d97e44eeb6fb141f3de928e27e033fc7b1f47
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 20 14:13:35 2012 -0400

    [Indic] Form Telugu Reph out of Ra,Virama,ZWJ

    Apparently this was approved in Feb 2012.  No font yet.

 src/hb-ot-shape-complex-indic-private.hh | 2 +-
 src/hb-ot-shape-complex-indic.cc         | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

commit 2e193b240ec85cab0d4e2f8a375c5a7f0ef99985
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 20 14:02:35 2012 -0400

    [Indic] Don't split U+0AC9

    Althought IndicMatraCategory.txt classifies it as Top_And_Right matra,
    it does not have Unicode decomposition, and Uniscribe does not do
    anything special about it either.

    Gujarati failures down from 0.672% to 0.0130966%.

 src/hb-unicode.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 30c3d5e9fc61b49c2c6ad4e744300edd6f3e0261
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 20 13:56:32 2012 -0400

    [Indic] Simplify Uniscribe cluster emulation

    Now that we break syllables on Halant,ZWNJ, this code can be
    simplified.

 src/hb-ot-shape-complex-indic.cc | 11 ++---------
 1 file changed, 2 insertions(+), 9 deletions(-)

commit decf6ffca475fe01ff3151b7641f629f031137d2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 20 13:51:31 2012 -0400

    [Indic] Minor!

 src/hb-ot-shape-complex-indic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9e4f94a72cea6d65a6a7ba5a47db92e00dbfbb91
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 20 13:48:03 2012 -0400

    [Indic] Break syllables at Halant,ZWNJ

    That's really what Uniscribe does, and explains a lot of pecularities
    of
    Halant,ZWNJ before the base.

    Sent Telugu from 1% failures to 0.03%.  Improved Kannada and Malayalam
    slightly.  Fixed half of Bengali, and did NOT break anything!

 src/hb-ot-shape-complex-indic-machine.rl | 5 +++--
 src/hb-ot-shape-complex-indic.cc         | 5 ++---
 2 files changed, 5 insertions(+), 5 deletions(-)

commit 2c372b80f6befad69e216e3f218b38640b8cc044
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 20 13:37:48 2012 -0400

    [Indic] Better check for applying 'init'

    Specifically, don't apply 'init' if previous char is a joiner.

    Fixes some more of Bengali.

 src/hb-ot-shape-complex-indic.cc | 9 +--------
 src/hb-private.hh                | 3 ++-
 2 files changed, 3 insertions(+), 9 deletions(-)

commit 34a7440b7c6c6e53394ddbdbedaad57b23f85105
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 20 12:32:59 2012 -0400

    [GPOS] Don't zero mark advances

    Fixes more of Telugu, Kannada, and Oriya.

    May break things (outside Indic...), but we cannot think of any
    font relying
    on this immediately.

 src/hb-ot-layout-gpos-table.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 8ed248de77e5d2ed978e55c0ce1a11727bc9e34c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 20 11:42:24 2012 -0400

    [Indic] Minor

 src/hb-ot-shape-complex-indic.cc | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit d0e68dbd0b9fc9a42c4280d01c8ffd9c5015d550
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 20 11:25:41 2012 -0400

    [Indic] Implement reph positioning step 5

    Not tuned, just copied from step 2.  Fixes another 0.5% of Kannada
    failures.  1% to go.

 src/hb-ot-shape-complex-indic.cc | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

commit a9e45c32e4a0d6da33c52f8427aa694e57f52eb9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 20 11:04:15 2012 -0400

    [Indic] Don't let ZWNJ at the end of syllable affect base search

    Fixes a few Devanagari, half of remaining Kannada failures,
    quarter for
    Telugu, and others slightly improved or unchanged.

 src/hb-ot-shape-complex-indic.cc | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit 20b68e699f73e6ce046c0ec143d40b3d6d48e06b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 20 10:47:46 2012 -0400

    [Indic] Apply 'cjct' globally

    Fixes 5 Devanagari failures, and no regressions.

 src/hb-ot-shape-complex-indic.cc | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

commit 51e764de441072e7c9f67de23e8ed717b9b8957d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 20 10:30:24 2012 -0400

    [Indic] Unbreak old scriptures

    Brings down failures with Lohit-Telugu from 57% to 1.40%.

 src/hb-ot-shape-complex-indic.cc | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 900cf3d449bf36d4f8b1474590cae925fef48fc8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 20 10:18:23 2012 -0400

    Minor

 src/hb-ot-shape-complex-indic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 87cd63266e73af316b250573ef57388a0bcc9133
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 19 21:17:48 2012 -0400

    [Indic] Recategorize some Kannada right matras

    Kannada failures down from 3.5% to 2.93%.

 src/hb-ot-shape-complex-indic.cc                                   | 2 +-
 .../texts/in-tree/shaper-indic/indic/script-kannada/misc/MANIFEST  | 1 +
 .../shaper-indic/indic/script-kannada/misc/right-matras.txt        |
 7 +++++++
 3 files changed, 9 insertions(+), 1 deletion(-)

commit 3604d64ced909ade91998d294a7b4b2ee14d47aa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 19 21:13:04 2012 -0400

    [Indic] Recategorize GURMUKHI ADDAK

    It's not in IndicSyllabicCategory.txt.  Fixes most of Gurmukhi
    failures.
    Failures down from 7.7% to 0.222%!

 src/hb-ot-shape-complex-indic.cc | 1 +
 1 file changed, 1 insertion(+)

commit 89328581236a53ec16508b95db54c7e5315b178f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 19 21:02:38 2012 -0400

    Minor

 src/hb-ot-layout-gsubgpos-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 47ef931f13778b894090139a64238a5ab9ac1154
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 19 20:52:44 2012 -0400

    [buffer] Make sure out_info = info during GPOS

 src/hb-buffer.cc | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

commit ae63cf206291befe3920adfe015e6cd0961580e5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 19 20:45:41 2012 -0400

    Print line number during return when tracing

 src/hb-private.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 5249f3aee108b0f41770d137e63a625f594418e7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 19 20:30:22 2012 -0400

    [Indic] Unbreak Khmer

    For Khmer, all consonants are subjoining.  No need to look in
    the font.
    We were looking in the wrong order anyway.

 src/hb-ot-shape-complex-indic.cc | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit e0475345d5d7db8dbc8b554beedfa2435c5d7fd1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 19 20:24:14 2012 -0400

    [Indic] Apply 'akhn' globally

    Fixes 1.5% more failures for Telugu, 2% for Kannada.
    Breaks one test in Devanagari.

 src/hb-ot-shape-complex-indic.cc | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit c87bcddb10752b407c0471ee5ac4de6f1b00b711
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 19 20:03:25 2012 -0400

    [Indic] Add failing test for Kannada

 .../texts/in-tree/shaper-indic/indic/script-kannada/misc/misc.txt
 | 1 +
 1 file changed, 1 insertion(+)

commit fa247ebe524f92fa95d344ba912f704262879c13
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 19 19:52:19 2012 -0400

    [Indic] Better position U+0CD5

    Fixes another 5% of Kannada failures.

 src/hb-ot-shape-complex-indic.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit f055442716ec7543ed156d4789955b19c11a5255
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 19 16:20:21 2012 -0400

    [Indic] Lookup consonant position in the font

    Fixes most failures of Oriya, and improves others a bit.

 src/hb-ot-map-private.hh                 |  13 ++--
 src/hb-ot-shape-complex-indic-private.hh | 105
 -------------------------------
 src/hb-ot-shape-complex-indic.cc         |  63 +++++++++++++------
 3 files changed, 54 insertions(+), 127 deletions(-)

commit 74d1d88781e91866a52e27f391e34df03b313442
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 19 16:14:23 2012 -0400

    [GSUB] Fix would_apply() for LigatureSubst

 src/hb-ot-layout-gsub-table.hh | 1 +
 1 file changed, 1 insertion(+)

commit 787f7d1e9ba9ad038f24e5a1063d12c7d169ad37
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 19 15:29:13 2012 -0400

    [TODO] Minor

 TODO | 2 ++
 1 file changed, 2 insertions(+)

commit be73a5f9368136ecbdb211b96516ad0c554c8201
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 19 14:59:15 2012 -0400

    Add src/test-would-substitute tool

 src/Makefile.am              |   6 +-
 src/test-would-substitute.cc |  94 ++++++++++++++++++++++++++++++
 src/test.cc                  | 132
 +++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 231 insertions(+), 1 deletion(-)

commit e72b360ac6381b549249b8836fa3e70b909d3437
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 19 14:35:23 2012 -0400

    Refactor / finish would_apply() operation

    Untested.

 src/hb-ot-layout-gpos-table.hh       |   6 +-
 src/hb-ot-layout-gsub-table.hh       | 126 +++++++++----------
 src/hb-ot-layout-gsubgpos-private.hh | 233
 ++++++++++++++++++++++++++++++++++-
 src/hb-ot-layout.cc                  |  11 ++
 src/hb-ot-layout.h                   |   7 ++
 5 files changed, 308 insertions(+), 75 deletions(-)

commit 8c973ebf0f59abb5ee920edd5d64e23d8e47ad75
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 19 13:25:08 2012 -0400

    [Indic] Implement per-script matra positioning

    Following what the spec says.

    Brings down Telugu failures from 40% to 3.75%, and Kannada failures
    from
    44% to 10%.  Does NOT affect other scripts' test results.

 src/hb-ot-shape-complex-indic-private.hh |  2 +-
 src/hb-ot-shape-complex-indic.cc         | 40
 +++++++++++++++++++++++++++++---
 src/hb-unicode.cc                        |  2 +-
 3 files changed, 39 insertions(+), 5 deletions(-)

commit 8bb32458f95f13f66688e0811cc91f1bfffb867d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 19 12:59:06 2012 -0400

    [Indic] More refactoring

 src/hb-ot-shape-complex-indic-private.hh |  9 ++---
 src/hb-ot-shape-complex-indic.cc         | 65
 ++++++++++++++++++++++++--------
 2 files changed, 54 insertions(+), 20 deletions(-)

commit 9ccc6382ba43760167c134c18c1c4ada4b8c3f22
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 19 12:32:16 2012 -0400

    [Indic] Minor refactoring

 src/hb-ot-shape-complex-indic.cc | 127
 ++++++++++++++++++++++-----------------
 1 file changed, 71 insertions(+), 56 deletions(-)

commit f83aaa3133de5d807be267a100d6a200e8db9017
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 19 12:23:23 2012 -0400

    [Indic] Minor

 src/hb-ot-shape-complex-indic-private.hh | 42
 ++++++++++++++++++++------------
 1 file changed, 26 insertions(+), 16 deletions(-)

commit be8b9f5f715f6fb36b98bd33c3303f79cc068f8a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 19 12:11:12 2012 -0400

    [Indic] Start refactoring different matra positions per script

 src/hb-ot-shape-complex-indic-private.hh | 36
 +++++++++++++++++++-------------
 src/hb-ot-shape-complex-indic.cc         |  4 ++--
 2 files changed, 24 insertions(+), 16 deletions(-)

commit deeb540a74f8d394db273145b17bf385d14d01bb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 19 11:30:48 2012 -0400

    [test] Ignore tests with DOTTED CIRCLE in the output

 test/shaping/hb_test_tools.py | 4 ++++
 1 file changed, 4 insertions(+)

commit b01d9b3d90e892341ee4463f2eda4600850b97d8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 19 11:25:49 2012 -0400

    [Indic] Disallow decomposition of a couple characters

    This is a hack for now.  Will be fixed when we do
    complex-shaper-driven
    normalization properly.

    The results with or without decomposition are the same, but Uniscribe
    does not normalize, so this matches better.

 src/hb-unicode.cc | 3 +++
 1 file changed, 3 insertions(+)

commit 422ecd2d3c198a36d07d409341cb82ea57c7ad6b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 18 23:25:58 2012 -0400

    [Indic] Accept a forced Rakar sequence at the end of syllable

    In Sinhala, Rakar is formed by Al-Lakuna,ZWJ,Ra.  If you put that
    at the
    end of a Consonant,Matra syllable, you get a dotted-circle from
    Uniscribe.  Apparently adding a ZWJ before the Al-Lakuna "fixes" that.
    And people have been encoding that sequence...  So, allow a forced
    "ZWJ,Virama,ZWJ,Ra" sequence at the of syllables.

    Fixes some 100 or more of Sinhala failures.  Now at 622 only (0.23%).

 src/hb-ot-shape-complex-indic-machine.rl                               |
 3 ++-
 .../texts/in-tree/shaper-indic/indic/script-sinhala/misc/misc.txt      |
 2 ++
 2 files changed, 4 insertions(+), 1 deletion(-)

commit 6fc1732003d71cf90d37247482772c3da884687f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 18 17:49:19 2012 -0400

    [Indic] Allow joiners on both sides of Halant at the same time

    The sequence <ZWJ,Al-Lakuna,ZWJ> is used in Sinhala to explicitly ask
    for Rakar.  Fixes two-thousand Sinhala tests.  Not many left.

 src/hb-ot-shape-complex-indic-machine.rl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 10cdc94eee2225f14c198c015256a5a0063eecad
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 18 17:42:34 2012 -0400

    [Indic] In final reordering, find base, even if it disappeared

    POS_BASE can disappear if base ligated backward.  Define base as last
    with position not after base.

    Fixes a few hundred of Sinhala failures with Iskoola Pota.

 src/hb-ot-shape-complex-indic.cc                                   |
 7 ++-----
 .../texts/in-tree/shaper-indic/indic/script-sinhala/misc/misc.txt  | 1 +
 2 files changed, 3 insertions(+), 5 deletions(-)

commit 9c4d24a3a677a58ec59c7fb0f8b70b8aad30a032
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 18 17:29:10 2012 -0400

    [Indic] Minor

 src/hb-ot-shape-complex-indic.cc | 1 +
 1 file changed, 1 insertion(+)

commit 3285e107c9a83aeb552e67f9460680ff6d167d88
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 18 17:22:14 2012 -0400

    [Indic] Implement Sinhala "Al Lakuna" Reph behavior

    In Sinhala, Reph is formed only explicitly, by the presence of a ZWJ.

 src/hb-ot-shape-complex-indic-private.hh                           | 2 ++
 src/hb-ot-shape-complex-indic.cc                                   |
 7 ++++++-
 .../texts/in-tree/shaper-indic/indic/script-sinhala/misc/MANIFEST  | 1 +
 .../texts/in-tree/shaper-indic/indic/script-sinhala/misc/reph.txt  |
 3 +++
 4 files changed, 12 insertions(+), 1 deletion(-)

commit 91cade755534c42bb826a6aefcbca8a543d94387
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 18 16:50:41 2012 -0400

    [Indic/Unicode] Decompose Sinhala split matras the way Uniscribe likes

    Makes no visual difference.

    Fixes most of the failures.  Down from 15% to 1.3%!

 src/hb-unicode.cc | 8 ++++++++
 1 file changed, 8 insertions(+)

commit d8942dcbb4e3249a2d78a6455c119294ed4390bc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 18 16:34:10 2012 -0400

    Apply Tibetan (global) features.

    Fixes all Tibetan failures.  All 180k of them!

    Merges back Hangul into the default shaper.

 src/hb-ot-shape-complex-misc.cc    | 82
 +++++++++++++++++---------------------
 src/hb-ot-shape-complex-private.hh |  7 ----
 2 files changed, 37 insertions(+), 52 deletions(-)

commit 552d19b7a11f7dff888587fce4d56d9f8e47e819
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 18 16:00:49 2012 -0400

    [Indic] Treat Register Shifters like Nukta

    Really this time.

    Fixes another 18 Khmer tests.

 src/hb-ot-shape-complex-indic-machine.rl                                |
 2 +-
 src/hb-ot-shape-complex-indic.cc                                        |
 2 --
 .../in-tree/shaper-indic/south-east-asian/script-khmer/misc/misc.txt    |
 1 +
 3 files changed, 2 insertions(+), 3 deletions(-)

commit e8cd81f76d159f3ecf808952dab24bc07782497a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 18 16:00:20 2012 -0400

    [Indic] Minor

 src/hb-ot-shape-complex-indic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 69f26bf39c824d6bf5b1c0d410380cc5462ad5ca
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 18 15:45:43 2012 -0400

    [Indic] Fix Matra reordering when base is at end of syllable

    For example: U+915,U+200c,U+93f

    Fixes last Tamil failure!

 src/hb-ot-shape-complex-indic.cc                                        |
 2 +-
 .../texts/in-tree/shaper-indic/indic/script-devanagari/misc/misc.txt    |
 1 +
 2 files changed, 2 insertions(+), 1 deletion(-)

commit d16ccc4ae7aa8be460881042413fa2637929fede
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 18 15:43:55 2012 -0400

    Leave one extra item at the end of buffer allocation

    Just in case, for the times we do out-of-bounds access.

    jk

 src/hb-buffer-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 075d671f1093d2e3c58f7f45568696030f1b3efd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 18 15:41:53 2012 -0400

    [Indic] Fix out-of-bounds array access

 src/hb-ot-shape-complex-indic.cc | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit dcb527242b1eca4db1e190a7802f9cd132aaf46e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 18 15:28:25 2012 -0400

    [Indic] Allow joiners before matras

    Fixes 1 more Devanagari test!

 src/hb-ot-shape-complex-indic-machine.rl | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 391cc0331749e263bdfe83a8f5f6d76f2360ee7a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 18 15:10:05 2012 -0400

    [Indic] Allow halant group in Vowel and placeholder syllables

    Fixes 2 out of 560 Devanagari failures.  AND:
    Fixes 1 out of 2 Tamil failures.

 src/hb-ot-shape-complex-indic-machine.rl                           |
 7 ++++---
 .../in-tree/shaper-indic/indic/script-devanagari/misc/misc.txt     | 1 +
 2 files changed, 5 insertions(+), 3 deletions(-)

commit ca4e3d3eab7b738c2b8e2a81696a28bca1b81495
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 18 15:05:40 2012 -0400

    [Indic] Streamline halant/joiner in grammar

 src/hb-ot-shape-complex-indic-machine.rl | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 418d00dffddd95a1f27e9be15752d494c627d45e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 18 14:57:28 2012 -0400

    [Indic] Minor

 src/hb-ot-shape-complex-indic-machine.rl                               |
 3 ++-
 .../texts/in-tree/shaper-indic/indic/script-devanagari/misc/misc.txt   |
 3 +++
 2 files changed, 5 insertions(+), 1 deletion(-)

commit 4c3691d2a32ca7e54a54f7c08098fd96fa7af39e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 18 14:23:55 2012 -0400

    [Indic] Hopefully minor!

    Refactoring Indic machin.  No semantic change.

 src/hb-ot-shape-complex-indic-machine.rl | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

commit e092c556fb1cf38be3cea1f4b75a0d879372dfa2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 18 14:09:25 2012 -0400

    [Indic] Minor

 src/hb-ot-shape-complex-indic-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 14dbdd9e39d3a869fd1521000c889c347433d22b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 18 13:13:03 2012 -0400

    [Indic] Unbreak Tamil

    Tamil has only about 150 failures now!

 src/hb-ot-shape-complex-indic.cc | 18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)

commit db8981f1e0e8625714568c6d0f11f0b317b11d0a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 17 18:17:30 2012 -0400

    [Indic] Position Khmer Robat

    It's a visual Repha.

    Still not positioning logical Repha as occurs in Malayalam.

    Another 200 Khmer failures fixed.  547 to go.  That's better than
    Devanagari!

 src/hb-ot-shape-complex-indic-machine.rl | 36
 +++++++++++++++++---------------
 src/hb-ot-shape-complex-indic-private.hh |  7 ++++---
 src/hb-ot-shape-complex-indic.cc         | 13 ++++++++++++
 3 files changed, 36 insertions(+), 20 deletions(-)

commit 25bc489498ef7d0beb8fe9ab663e3f0b2f52c9c2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 17 17:53:03 2012 -0400

    [Indic] Better categorize Register Shifters and Khmer Various signs

    Down another 500 or so Khmer failures!

 src/hb-ot-shape-complex-indic-machine.rl                   | 14
 +++++++-------
 src/hb-ot-shape-complex-indic-private.hh                   |  2 +-
 src/hb-ot-shape-complex-indic.cc                           |  8 ++++----
 .../south-east-asian/script-khmer/misc/MANIFEST            |  2 ++
 .../script-khmer/misc/other-marks-invalid.txt              |  4 ++++
 .../south-east-asian/script-khmer/misc/other-marks.txt     |  6 ++++++
 6 files changed, 24 insertions(+), 12 deletions(-)

commit 39b17837b4064d59c18cebb49c1c0b5b8cc0c117
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 17 17:09:29 2012 -0400

    Add hb_buffer_normalize_glyphs() and hb-shape --normalize-glyphs

    This reorders glyphs within the cluster to a nominal order.
    This should
    have no visible effect on the output, but helps with testing, for
    getting the same hb-shape output for visually-equal glyphs for each
    cluster.

 src/hb-buffer.cc  | 76
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-buffer.h   | 13 ++++++++++
 src/hb-private.hh | 29 ++++++++++++++++-----
 util/options.cc   |  1 +
 util/options.hh   |  7 ++++-
 5 files changed, 118 insertions(+), 8 deletions(-)

commit 25e302da9a712e6f1d63b0d243a8df0d326ddba3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 17 14:25:14 2012 -0400

    [Indic] Minor

 src/hb-ot-shape-complex-indic.cc | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 5d32690a3428fa86eb26fe5fcec943a10aa95881
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 17 14:23:28 2012 -0400

    [Indic] For scripts without Half forms, always choose first consonant
    as base

    In such scripts (ie. Khmer), a ZWJ/ZWNJ shouldn't stop the search for
    base.  So, instead just choose the first consonant as base directly.

    Test sequence:
    U+1798,200c,U+17C9,U+17D2,U+179B,U+17C1,U+17C7

 src/hb-ot-shape-complex-indic.cc | 59
 ++++++++++++++++++++++++----------------
 1 file changed, 35 insertions(+), 24 deletions(-)

commit 34b57149065d96f7528aaccaa7654e956ce27e93
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 17 14:09:32 2012 -0400

    [Indic] Treat Khmer Register Shifters more like Nuktas

    Except that there may be a ZWNJ before a Register Shifter.

 src/hb-ot-shape-complex-indic-machine.rl                                |
 2 +-
 .../in-tree/shaper-indic/south-east-asian/script-khmer/misc/misc.txt    |
 2 ++
 2 files changed, 3 insertions(+), 1 deletion(-)

commit 11e2a601b19861b05dbb2051d2d078c3cfd75b29
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 17 14:02:28 2012 -0400

    [Indic] Minor

 src/hb-ot-shape-complex-indic-machine.rl | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 0201e0a4649ad5b607e50bcb9605e7a5b7143812
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 17 13:55:10 2012 -0400

    [Indic] Apply 'cfar' for Khmer

    Mark stuff after a pre-base reordering Ro 'cfar'.  Used in Khmer.
    This allows distinguishing the following cases with MS Khmer fonts:

      U+1784,U+17D2,U+179A,U+17D2,U+1782
      U+1784,U+17D2,U+1782,U+17D2,U+179A

 src/hb-ot-shape-complex-indic.cc                         | 16
 ++++++++++++++--
 .../south-east-asian/script-khmer/misc/misc.txt          |  2 ++
 2 files changed, 16 insertions(+), 2 deletions(-)

commit 55f70ebfb95083f515d9b0044a2a65ab11484bb5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 17 12:50:13 2012 -0400

    [Indic] Position final subjoined consonants (and vowels) after matras

    In Khmer, a final subjoined consonant or independent vowel can occur
    after matras.  This final subjoined thing should NOT be reordered to
    before the matra even though it's subjoined.

    Fixes another 1k of the Khmer failures.  Not much left really.

 src/hb-ot-shape-complex-indic-private.hh                    |  1 +
 src/hb-ot-shape-complex-indic.cc                            | 13
 +++++++++++++
 .../south-east-asian/script-khmer/misc/misc.txt             |  2 ++
 3 files changed, 16 insertions(+)

commit c50ed71e9a3df1844f564de66d54b46a696c1356
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 17 11:54:28 2012 -0400

    [Indic] Recategorize Khmer coeng sign as a separate category OT_Coeng

    Amend the syllable structure to allow a final subscripted consonant
    (Coeng+C) and a final subscripted independent vowel (Coeng+V).
    Fixes another 2k of Khmer failures.

 src/hb-ot-shape-complex-indic-machine.rl                           |
 7 ++++---
 src/hb-ot-shape-complex-indic.cc                                   |
 6 +++++-
 .../shaper-indic/south-east-asian/script-khmer/misc/misc.txt       | 1 +
 3 files changed, 10 insertions(+), 4 deletions(-)

commit deb521dee4fdca8c2124cfb39a205e6269d4a70d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 17 11:37:32 2012 -0400

    [Indic] Add a separate Coeng class

    No characters recategorized yet.  No semantic change.

 src/hb-ot-shape-complex-indic-machine.rl |  1 +
 src/hb-ot-shape-complex-indic-private.hh |  3 ++-
 src/hb-ot-shape-complex-indic.cc         | 26 ++++++++++++++++----------
 3 files changed, 19 insertions(+), 11 deletions(-)

commit 74ccc6a1322f8c48c5f2a05f04821783c4b87a14
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 17 11:16:19 2012 -0400

    [Indic] Move Halant with after-base consonants

    Normally, we attach the Halant to the previous character and move it
    with it.  For after-base consonants however, the Halant "belongs"
    to the
    consonant after, so attach it so.

    This fixes Bengali sequences involving post-base consonant Ya, which
    should ligate with the Halant to form Ya Phala, but previously a
    reordered matras was blocking the ligation.

 src/hb-ot-shape-complex-indic.cc                              |
 11 +++++++++++
 .../in-tree/shaper-indic/indic/script-bengali/misc/misc.txt   |  1 +
 2 files changed, 12 insertions(+)

commit d5c4edcdd6df32f2f23aca44f14838b4baab4d7a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 17 10:40:59 2012 -0400

    [Indic] Apply presentation-forms features all at once

    Seems like this is what Uniscribe is doing, and does not break
    any fonts
    we tested (with Devanagari, Malayalam, Khmer, and Bengali), while
    fixing
    some Ra Phala sequences for Bengali with Vrinda.  Fixes another 2% of
    Bengali failures (a couple more to go).

 src/hb-ot-shape-complex-indic.cc                                    |
 6 +++---
 .../texts/in-tree/shaper-indic/indic/script-bengali/misc/misc.txt   | 1 +
 2 files changed, 4 insertions(+), 3 deletions(-)

commit 559f70667891a3ceeffb36f40de38a4f85868945
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 16 22:43:17 2012 -0400

    Fix MarkAttachmentType matching

    Fixes issue reported by Khaled Hosny with his Hussaini Nastaleeq font
    and sequences like those added in the previous commit.

 src/hb-ot-layout.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6de103547e4a7fb34c833861713ea373cd912261
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 16 22:46:06 2012 -0400

    [test/arabic] Add Arabic tests for mark skipping

    Expose a bug with Khaled's Hussaini Nastaleeq font.

 .../shaper-arabic/script-arabic/misc/diacritics/MANIFEST       |  1 +
 .../script-arabic/misc/diacritics/mark-skipping.txt            |
 10 ++++++++++
 2 files changed, 11 insertions(+)

commit ad4494759fa8bfd2497800c24fa414075ed1aa61
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 16 22:40:21 2012 -0400

    Minor

 src/hb-ot-layout.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit af92b4cc90e4184d5bdd8037c551ed482700114f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 16 20:31:24 2012 -0400

    [Indic] Disable 'kern' in Uniscribe bug compatibility mode

    Uniscribe does not apply 'kern' in the Indic module.  Some of
    the Khmer
    fonts they ship have small adjustments in the 'kern' table.  Disable
    'kern' in the Indic module under Uniscribe bug compatibility mode.

    Fixes some 10% of the Khmer failures.  Remains under 3% (excluding
    dotted-circle ones).

 src/hb-ot-shape-complex-indic.cc | 3 +++
 1 file changed, 3 insertions(+)

commit d96838ef951ce6170eb2dc576ebcba2262cf7008
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 16 20:26:57 2012 -0400

    Allow complex shapers overriding common features

    In a new callback...  Currently unused by all complex shapers.

 src/hb-ot-shape-complex-arabic.cc  |  6 ++++++
 src/hb-ot-shape-complex-indic.cc   |  6 ++++++
 src/hb-ot-shape-complex-misc.cc    | 18 ++++++++++++++++++
 src/hb-ot-shape-complex-private.hh | 30 ++++++++++++++++++++++++++++++
 src/hb-ot-shape.cc                 |  2 ++
 5 files changed, 62 insertions(+)

commit df50b8474094f0563ccfdae12c4425a51b72add6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 16 19:56:29 2012 -0400

    [Indic] Categorize other Khmer marks

    Mark them the same as the Register Shifters for now.  Need to rename
    that category to something more sensible after all is settled.

    Fixes another percent of Khmer failures.  Down to under 3%!

 src/hb-ot-shape-complex-indic.cc | 4 ++++
 1 file changed, 4 insertions(+)

commit 8e7b5882fb4c1921c9d030d354a9b998115cdb8c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 16 17:04:46 2012 -0400

    [Indic] Recognize pre-base reordering Ra anywhere in the syllable

    We were doing that only immediately after base.

    Fixes another percent in the Khmer failures.  About three more
    to go...

 src/hb-ot-shape-complex-indic.cc | 84
 ++++++++++++++++++++++------------------
 1 file changed, 46 insertions(+), 38 deletions(-)

commit 7d09c98a1fff97127e48eae48d380dc9fcff288e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 16 16:45:22 2012 -0400

    [Indic] Recognizer Register Shifter marks

    Fixes another 6% of the Khmer failures.

 src/hb-ot-shape-complex-indic-machine.rl | 3 ++-
 src/hb-ot-shape-complex-indic-private.hh | 5 +++--
 src/hb-ot-shape-complex-indic.cc         | 2 ++
 3 files changed, 7 insertions(+), 3 deletions(-)

commit 60da763dfac96a7931d6e6bdef8b9973bd5209ab
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 16 16:13:32 2012 -0400

    [GSUB/GDEF] Guess glyph classes after substitution only if no GDEF

    Brings down Khmer failures with Daun Penh font from 36% to 20%.

 src/hb-ot-layout-gsubgpos-private.hh | 20 +++++++++++++-------
 1 file changed, 13 insertions(+), 7 deletions(-)

commit fcdc5f1c8849a7f38d9f34f64d60c6d95d7501f7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 16 15:52:54 2012 -0400

    [Indic] Categorize Khmer Ro

    Khmer failures down from 58% to 36%.

 src/hb-ot-shape-complex-indic-private.hh | 2 ++
 1 file changed, 2 insertions(+)

commit 78818124b17691ec2c647142fdb9ae743aa03dee
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 16 15:49:08 2012 -0400

    [Indic] Reoder pre-base reordering Ra

    Brings down Malayalam failures from 14% down to 3%.

 src/hb-ot-shape-complex-indic.cc | 42
 +++++++++++++++++++++++++++-------------
 1 file changed, 29 insertions(+), 13 deletions(-)

commit 1a1dbe9a2787f226f3e43063da8eb6633438b0a0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 16 15:40:33 2012 -0400

    [Indic] Rename

 src/hb-ot-shape-complex-indic.cc | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 46e645ec4b59f0a278347be11f40c7df700d5bb6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 16 15:30:05 2012 -0400

    [Indic] Start implementing pre-base reordering

 src/hb-ot-shape-complex-indic.cc | 33 ++++++++++++++++++---------------
 1 file changed, 18 insertions(+), 15 deletions(-)

commit 921ce5b17daf06af8e17989a3e335b9f5df20483
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 16 15:26:56 2012 -0400

    [Indic] Rename

    No semantic change.

 src/hb-ot-shape-complex-indic.cc | 26 +++++++++++++-------------
 1 file changed, 13 insertions(+), 13 deletions(-)

commit b504e060f008e95b1ba36c06600c9fea4f5d4808
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 16 15:21:12 2012 -0400

    [Indic] Implement After-Main Reph positioning

    Almost...

 src/hb-ot-shape-complex-indic.cc | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

commit 17d7de91d76406d3e92db37d9eef2fc615f06e68
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 16 15:20:15 2012 -0400

    [Indic] Apply 'pref' to pre-base reodering Ra

    No reordering yet.

 src/hb-ot-shape-complex-indic.cc | 10 ++++++++++
 1 file changed, 10 insertions(+)

commit 362d3db8d3527d0fef260a17d2466e92a4a25425
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 16 15:15:28 2012 -0400

    [Indic] Minor

    Should not be any semantic change.  In preparation for implementing
    pre-base reordering Ra.

 src/hb-ot-shape-complex-indic.cc | 8 +-------
 1 file changed, 1 insertion(+), 7 deletions(-)

commit 70fe77bb9a25922bd34f206826d8731d901fb451
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 16 14:52:18 2012 -0400

    Minor

 src/hb-ot-shape-complex-indic.cc | 44
 ++++++++++++++++++++--------------------
 1 file changed, 22 insertions(+), 22 deletions(-)

commit 2f903215c5da2330a37abe489a3f45f7c3fd5a09
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 16 13:54:43 2012 -0400

    Minor

 src/hb-ot-shape-complex-indic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a3e04bee2c2fa648759a87e460db6b4f1b685586
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 16 13:47:19 2012 -0400

    [Indic] Reorder virama only for old Indic spec

 src/hb-ot-shape-complex-indic.cc | 15 +++++++++++++--
 1 file changed, 13 insertions(+), 2 deletions(-)

commit 0de771b72da6b342b015e3556190821547a4011d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 16 13:39:36 2012 -0400

    [Indic] Categorize Khmer consonants

 src/hb-ot-shape-complex-indic.cc | 4 ++++
 1 file changed, 4 insertions(+)

commit d487fff266258eb1af056e9704cfb09d04251ddc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 16 13:25:17 2012 -0400

    Split matras without a Unicode decomposition

    This is a hack for now, to get us going with Khmer.  This will be
    refactored properly later to move the complex logic into complex
    shapers.

 src/hb-unicode.cc | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

commit 8aa801a6fd1a737fa20b851edf7528bdd6635b8b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 16 13:24:26 2012 -0400

    [Indic] Adjust position for split matras

    We are going to split matras without a Unicode decompositions in a way
    that the second half takes the codepoint of the whole matra.  So,
    position them where the second half is supposed to end up.

 src/hb-ot-shape-complex-indic-private.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 1feb8345a5fd92297eb6796e6dce633bafa0c76e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 16 13:23:40 2012 -0400

    [GSUB] Allow 1-to-1 ligature substitutions!

    Apparently Uniscribe allows these, and they are used in some Khmer
    fonts
    shipped with Windows, namely, Daun Penh.

 src/hb-ot-layout-gsub-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 29f106d7fba25e1464debd3a4831a7380d75c4c9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 16 12:05:35 2012 -0400

    [Indic] Apply Above Forms

 src/hb-ot-shape-complex-indic.cc | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit fa2bd9fb63d83b657373764d4b657084d8327fc9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jul 14 12:15:54 2012 -0400

    Further simplify atomic ops on Visual Studio

 src/hb-atomic-private.hh | 5 -----
 1 file changed, 5 deletions(-)

commit 0a492357016bc9a614d2a726f2006c10af68ca58
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 13 13:20:49 2012 -0400

    Minor

 src/hb-warning.cc | 29 +++++------------------------
 1 file changed, 5 insertions(+), 24 deletions(-)

commit 11c4ad439ef2b39a840f397a693b1ba643f52c21
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 13 11:29:31 2012 -0400

    Add -Wcast-align

 configure.ac    | 3 +++
 src/Makefile.am | 2 +-
 2 files changed, 4 insertions(+), 1 deletion(-)

commit a98d0ab18624501ee60551304f2715361ac643da
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 13 10:19:10 2012 -0400

    Make sure HB_BEGIN_DECLS / HB_END_DECLS is only used in public headers

    So we can use them to switch default visibility to internal if
    desired,
    and use these to make only declared symbols public.

 src/check-c-linkage-decls.sh             | 10 +++++++++-
 src/hb-fallback-shape-private.hh         |  6 ------
 src/hb-ot-shape-complex-indic-machine.rl |  4 ----
 3 files changed, 9 insertions(+), 11 deletions(-)

commit 5c5bc96216c9ad58243eb3ed27b253e237f08ebe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 13 10:15:37 2012 -0400

    Allow overriding HB_BEGIN_DECLS / HB_END_DECLS

 src/hb-common.h | 2 ++
 1 file changed, 2 insertions(+)

commit ec5f5f0f8a1d5b3ff98452175bb4450a59897620
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 13 10:00:42 2012 -0400

    Don't export inline methods

 configure.ac | 3 +++
 1 file changed, 3 insertions(+)

commit 50a4e78b530563917eb606ff3b96dcc9eed5b3ee
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 13 09:48:39 2012 -0400

    Check for exported weak symbols

    Ouch, all our C++ inline functions are being exported (weakly)
    already.
    Fix coming.

 src/check-internal-symbols.sh | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

commit b5aeb95afeb13a66177caada9f5d5ad4cddbd35f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 13 09:45:54 2012 -0400

    Make hb_in_range() static

 src/hb-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 271c8f89075607c689938b4f5e60323d9a1acd70
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 13 09:32:30 2012 -0400

    Minor

 src/hb-ft.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 391f1ff5d894b60bfe0f606be436ffe7e43f7455
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 13 09:04:07 2012 -0400

    Fix _InterlockedCompareExchangePointer on x86

 src/hb-atomic-private.hh | 6 ++++++
 1 file changed, 6 insertions(+)

commit 2023e2b54d91924dddfd228ffdbb46021135b068
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 11 19:00:30 2012 -0400

    [ft] Disable ppem setting

    The calculations were wrong.

    FreeType makes it really hard to set size and ppem independently.
    For now, disable it.  Need to come up with a fix later.

 src/hb-ft.cc | 3 +++
 1 file changed, 3 insertions(+)

commit cdf7444505a7ae49d20f9ba6776dea92c1fde2a6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 11 18:52:39 2012 -0400

    [ft] Use unfitted kerning if x_ppem is zero

 src/hb-ft.cc | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 6d08c7f1b3601095f9a12630045331dd0fe75380
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 11 18:01:27 2012 -0400

    Revert "Towards templatizing common Lookup types"

    This reverts commit 727135f3a9938c1ebd5b9f5015a46c7ccc8573c5.

    This is work-in-progress.  Didn't mean to push it out just yet.

 src/hb-ot-layout-gpos-table.hh       | 16 ++++++----------
 src/hb-ot-layout-gsub-table.hh       | 24 ++++++++++--------------
 src/hb-ot-layout-gsubgpos-private.hh | 33
 ++-------------------------------
 3 files changed, 18 insertions(+), 55 deletions(-)

commit 552bf3a9f9651311084b7979805dbdc18c0335ca
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 11 16:44:51 2012 -0400

    Bump WINNT version requested from 500 to 600

    Since we use the OpenType versions of Uniscribe functions, we are
    relying on that version of the WINNT API.  Otherwise, usp10.h
    will hide
    those symbols.

 src/hb-uniscribe.cc | 2 +-
 src/hb-uniscribe.h  | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 9a5b421a64db1bb23d5c6ebbc3bf3f3a5513dc36
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 11 16:35:04 2012 -0400

    Fix build with no Unicode funcs implementations provided

 src/hb-unicode-private.hh | 1 +
 1 file changed, 1 insertion(+)

commit 6efe1eca660135096f05987ac0ef9b635de6cdfd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 11 15:30:08 2012 -0400

    Update git.mk to upstream

 git.mk | 58 ++++++++++++++++++++++++++++++++++++++--------------------
 1 file changed, 38 insertions(+), 20 deletions(-)

commit 727135f3a9938c1ebd5b9f5015a46c7ccc8573c5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 3 22:15:35 2012 -0400

    Towards templatizing common Lookup types

 src/hb-ot-layout-gpos-table.hh       | 16 ++++++++++------
 src/hb-ot-layout-gsub-table.hh       | 24 ++++++++++++++----------
 src/hb-ot-layout-gsubgpos-private.hh | 33
 +++++++++++++++++++++++++++++++--
 3 files changed, 55 insertions(+), 18 deletions(-)

commit 1167c7bfc9e61f145e11da4881968293a4d3c0a9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 3 11:38:46 2012 -0400

    Minor

 test/shaping/texts/in-tree/shaper-thai/MANIFEST                     |
 2 +-
 test/shaping/texts/in-tree/shaper-thai/misc/MANIFEST                | 1 -
 test/shaping/texts/in-tree/shaper-thai/script-thai/MANIFEST         | 1 +
 test/shaping/texts/in-tree/shaper-thai/script-thai/misc/MANIFEST    | 1 +
 .../shaper-thai/{misc/misc.txt => script-thai/misc/sara-am.txt}     |
 6 ++----
 5 files changed, 5 insertions(+), 6 deletions(-)

commit aa116582e69d18777448e7993078e5d6335ddfed
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 29 10:50:12 2012 -0400

    Minor

 .../texts/in-tree/shaper-indic/indic/script-malayalam/misc/misc.txt
 | 1 +
 1 file changed, 1 insertion(+)

commit 1f13c7185f02ea18d4fadd2ea8ad444bea863c39
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 27 10:07:27 2012 -0400

    Add TODO item

 TODO | 2 ++
 1 file changed, 2 insertions(+)

commit 12f5c0a222a2f0aebe63c0d367937a0ff985474a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 26 11:16:13 2012 -0400

    Fix check for Intel atomic ops

 configure.ac             | 9 +++++----
 src/hb-atomic-private.hh | 2 +-
 2 files changed, 6 insertions(+), 5 deletions(-)

commit 6932a41fb61ffc2901c260587b1e98ed9c2a7ea1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 26 10:46:31 2012 -0400

    Use octal-escaped UTF-8 characters instead of plain text

    https://bugs.freedesktop.org/show_bug.cgi?id=50970

 src/hb-private.hh | 17 ++++++++++++-----
 1 file changed, 12 insertions(+), 5 deletions(-)

commit 8c0ea7bcb4409aaf8c96ad641f2db30003228ad0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jun 24 13:20:56 2012 -0400

    Disable introspection again

    Until I figure out the build issues.  Sigh...

 configure.ac    |  2 +-
 src/Makefile.am | 42 +++++++++++++++++++++---------------------
 2 files changed, 22 insertions(+), 22 deletions(-)

commit 8c5f5e6f5ec2b6a219fbdfc955f6299325a0adde
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jun 17 14:58:59 2012 -0400

    Minor

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 49f8e0cd9a5493ae26857c43bac0711cdf47c80d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 16 15:40:03 2012 -0400

    GStaticMutex is deprecated

 src/hb-mutex-private.hh | 9 +++++++++
 1 file changed, 9 insertions(+)

commit 5e113a4b7921ced6af2d53460a7a2f1d0185c02a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 16 15:26:13 2012 -0400

    g_thread_init() is deprecated

 test/api/hb-test.h | 2 ++
 1 file changed, 2 insertions(+)

commit 1bc1cb3603167f5da309336f7018c8b0608ac104
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 16 15:21:55 2012 -0400

    Make source more digestable for gobject-introspection

 src/hb-blob.cc            | 2 +-
 src/hb-blob.h             | 2 +-
 src/hb-buffer-private.hh  | 4 ++--
 src/hb-buffer.h           | 6 +++---
 src/hb-common.cc          | 2 +-
 src/hb-common.h           | 4 ++--
 src/hb-font-private.hh    | 6 +++---
 src/hb-font.cc            | 2 +-
 src/hb-font.h             | 8 ++++----
 src/hb-set-private.hh     | 2 +-
 src/hb-set.h              | 2 +-
 src/hb-shape.h            | 2 +-
 src/hb-unicode-private.hh | 2 +-
 src/hb-unicode.h          | 2 +-
 14 files changed, 23 insertions(+), 23 deletions(-)

commit 84d781e54cc75c81a06ba43fd7b1a74b8c7d9591
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 16 15:21:41 2012 -0400

    Flesh out gobject-introspection stuff a bit

 configure.ac    |  1 +
 src/Makefile.am | 23 +++++++++++++++++++++--
 2 files changed, 22 insertions(+), 2 deletions(-)

commit 49ee12ccd00870d4976339dc546c74eaf08a8fc0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 16 14:53:51 2012 -0400

    Add TODO item

 TODO | 1 +
 1 file changed, 1 insertion(+)

commit d3c8115d1ad09404b8970b98e6b5ab74510a35f6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 12 09:52:57 2012 -0400

    Minor

 TODO | 2 ++
 1 file changed, 2 insertions(+)

commit 2cf301968cb8c1150cead0ab909457cdd3ee2d01
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 9 14:58:01 2012 -0400

    Add hb_object_lock/unlock()

 src/hb-object-private.hh | 32 ++++++++++++++++++++++++++------
 1 file changed, 26 insertions(+), 6 deletions(-)

commit 6a5661f1e69c937083e8d976cb12429b99180d54
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 9 03:26:16 2012 -0400

    Ugh

 util/shape-consumer.hh | 2 --
 1 file changed, 2 deletions(-)

commit f211d5c291b4c947cfd732e873627567173057e4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 9 03:11:22 2012 -0400

    More Oops!  Fix fast-path with sub-type==0

 src/hb-ot-layout-gpos-table.hh | 2 +-
 src/hb-ot-layout-gsub-table.hh | 2 +-
 util/shape-consumer.hh         | 2 ++
 3 files changed, 4 insertions(+), 2 deletions(-)

commit b1de6aa1f33b228afe231c8209aef90a5fa1ee5d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 9 03:07:59 2012 -0400

    Oops!

 src/hb-ot-layout-gpos-table.hh | 2 +-
 src/hb-ot-layout-gsub-table.hh | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit b12e2549cbcd4f1ef46e66c75533686ee560f59b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 9 03:05:20 2012 -0400

    Minor

 src/hb-ot-layout-gsubgpos-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit faf0f20253d954cc4cfa4c967ece7573a5ddae3b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 9 03:02:36 2012 -0400

    Add sanitize() logic for fast-paths

 src/hb-ot-layout-gpos-table.hh | 15 ++++++++++++---
 src/hb-ot-layout-gsub-table.hh | 20 ++++++++++++++------
 2 files changed, 26 insertions(+), 9 deletions(-)

commit 4e766ff28d1fb831ded20666799787478129c07c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 9 02:53:57 2012 -0400

    Add fast-path for GPOS too

    Shaves another 3% for DejaVu Sans long Latin strings.

 src/hb-ot-layout-gpos-table.hh | 16 ++++++++++++++--
 1 file changed, 14 insertions(+), 2 deletions(-)

commit 993c51915f503f74ee00eee646b67bf2e3f73596
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 9 02:48:16 2012 -0400

    Add fast-path to GSUB to check coverage

    Shaves a good 10% off DejaVu Sans with simple Latin text for me.
    Now, DejaVu is very ChainContext-intensive, but it's also a very
    popular font!

 src/hb-ot-layout-gsub-table.hh | 18 ++++++++++++++++--
 1 file changed, 16 insertions(+), 2 deletions(-)

commit f19e0b0099ec73b8fedccacff4902403f5eabc42
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 9 02:26:57 2012 -0400

    Match input before backtrack

    Makes more sense, optimization-wise.

 src/hb-ot-layout-gsubgpos-private.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 67bb9e8cea49a44be6996515e1c7d8cdc95a77e6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 9 02:02:46 2012 -0400

    Add set add_coverage() to Coverage()

 src/hb-ot-layout-common-private.hh | 24 ++++++++++++++++++++++++
 src/hb-set-private.hh              |  5 +++++
 2 files changed, 29 insertions(+)

commit 4952f0aa5b2f4368d9e3418252e0a1b9294cd5ee
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 9 01:39:11 2012 -0400

    Minor

 src/hb-ot-layout-gsub-table.hh | 2 ++
 1 file changed, 2 insertions(+)

commit ad6a6f22401d6256e34521d0f52e91348c5ed4c9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 9 01:21:02 2012 -0400

    Minor

 src/hb-ot-layout.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 46617a42133fbab151de4111a74dcbdc4e769c74
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 9 01:18:58 2012 -0400

    Fix cache implementation

 src/hb-cache-private.hh | 2 ++
 1 file changed, 2 insertions(+)

commit ce47613889aa3ff9b0067d3e51ba63cfdb139adb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 9 01:10:26 2012 -0400

    Micro-optimize

    I know...

 src/hb-ot-layout-gsubgpos-private.hh |  3 ++-
 src/hb-ot-layout.cc                  | 46
 ++++++++++++++++++++++--------------
 2 files changed, 30 insertions(+), 19 deletions(-)

commit 70416de298b811ab6be53a1c67f0d2531d99cd46
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 9 00:56:41 2012 -0400

    Minor

 src/hb-open-type-private.hh | 2 --
 1 file changed, 2 deletions(-)

commit 99159e52a3c9d5ae6c0fbdec64e7ed684fa70b61
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 9 00:50:40 2012 -0400

    Use linear search for small counts

    I see about 8% speedup with long strings with DejaVu Sans.

 src/hb-open-type-private.hh | 19 ++++++++++++++-----
 1 file changed, 14 insertions(+), 5 deletions(-)

commit caf0412690542e58e23246dccc4b2fb83bd652ec
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 9 00:26:32 2012 -0400

    Minor

 src/hb-ot-layout-common-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0f8fea71a66b1e01ee4398967db464393f478d42
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 9 00:24:38 2012 -0400

    Minor.  Hide _hb_ot_layout_get_glyph_property()

 src/hb-ot-layout-private.hh | 4 ----
 src/hb-ot-layout.cc         | 2 +-
 2 files changed, 1 insertion(+), 5 deletions(-)

commit 44b8ee0c90d7b1dd91e5848114141e3186534a0f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 9 00:23:24 2012 -0400

    Minor

 src/hb-ot-layout-gpos-table.hh | 3 ++-
 src/hb-ot-layout.cc            | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

commit 7b84c536c10ab90ed96a033d88e9ad232d46c5b8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 8 22:04:23 2012 -0400

    In MarkBase attachment, only attach to first of a MultipleSubst
    sequence

    This is apparently what Uniscribe does.  Test case is:

      SEEN FATHA TEH ALEF

    with Arabic Typesetting.  Originally reported by Khaled Hosny.

 src/hb-ot-layout-gpos-table.hh       | 7 ++++++-
 src/hb-ot-layout-gsubgpos-private.hh | 8 ++++++++
 2 files changed, 14 insertions(+), 1 deletion(-)

commit ec57e0c5655ced5109c4638bf802772d336448fd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 8 21:47:23 2012 -0400

    Set lig_comp for MultipleSubst components

    To be used for correct mark attachment to first component of a
    MultipleSubst output.  That's what Uniscribe does.

 src/hb-ot-layout-gsub-table.hh | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit e085fcf7ca302eb7802a032197c022819e7e7074
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 8 21:45:00 2012 -0400

    Remove unused buffer->replace_glyphs_be16

 src/hb-buffer-private.hh             |  3 ---
 src/hb-buffer.cc                     | 23 -----------------------
 src/hb-ot-layout-gsubgpos-private.hh |  8 --------
 3 files changed, 34 deletions(-)

commit 3ec77d6ae0510dc2c0ec64382c4948bc6e109844
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 8 21:44:06 2012 -0400

    Don't use replace_glyphs_be for MultipleSubst

 src/hb-ot-layout-gsub-table.hh       | 5 ++++-
 src/hb-ot-layout-gsubgpos-private.hh | 7 ++++++-
 2 files changed, 10 insertions(+), 2 deletions(-)

commit 4b7192125ffd295091d6b3a0bdfca7011947c2ca
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 8 21:41:46 2012 -0400

    Minor

 src/hb-ot-layout-gsub-table.hh       | 3 ++-
 src/hb-ot-layout-gsubgpos-private.hh | 8 ++++++++
 2 files changed, 10 insertions(+), 1 deletion(-)

commit 4508789f4b5e0ece5620d35598aeeb7ecbe3e3aa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 8 21:32:43 2012 -0400

    Add test for static initializers and other C++ stuff

 src/Makefile.am           |  3 ++-
 src/check-static-inits.sh | 33 +++++++++++++++++++++++++++++++++
 2 files changed, 35 insertions(+), 1 deletion(-)

commit 56bd259b9ac22dd98913c8ca2e2cf7b30b632373
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 8 21:29:18 2012 -0400

    Minor

 src/check-internal-symbols.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 4538b47bf08e73e7f5cce6337df5fe154233c168
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 8 21:01:45 2012 -0400

    Remove done TODO items

 TODO | 7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)

commit bc8357ea7b4c0d7c715aae353176434fb9460205
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 8 21:01:20 2012 -0400

    Merge clusters during normalization

 src/hb-ot-shape-normalize.cc | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

commit fe3dabc08df7501010564f8844bd4d11771cc6a4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 8 20:56:05 2012 -0400

    Minor

 src/hb-buffer.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit e88e14421a33ca5bdfd76bc0b2f801fcb6e78911
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 8 20:55:21 2012 -0400

    Use merge_clusters instead of open-coding

 src/hb-buffer.cc | 16 ++++------------
 1 file changed, 4 insertions(+), 12 deletions(-)

commit 330a2af3ff0e12c01b3b451357b8bdc83b2e9b47
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 8 20:40:02 2012 -0400

    Use merge_clusters when forming Unicode clusters

 src/hb-ot-shape.cc | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit bd300df9adf955c1e69b3783c1c061876940fb8b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 8 20:35:18 2012 -0400

    Minor

 src/hb-object-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e51d2b6ed1c794ac28c5610bfd01dbc9fb383633
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 8 20:33:27 2012 -0400

    Extend into main buffer if extension hit end of out-buffer merging
    clusters

 src/hb-buffer.cc                | 5 +++++
 src/hb-ot-shape-complex-misc.cc | 9 ---------
 2 files changed, 5 insertions(+), 9 deletions(-)

commit 5ced012d9f58c51d557a835593c3277e35fe3b35
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 8 20:31:32 2012 -0400

    Extend end when merging clusters in out-buffer

 src/hb-buffer.cc | 4 ++++
 1 file changed, 4 insertions(+)

commit 72c0a1878313e7232d554bc226f4c6dc01418a95
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 8 20:30:03 2012 -0400

    Extend clusters backward in out-buffer

 src/hb-buffer.cc                | 8 ++++++++
 src/hb-ot-shape-complex-misc.cc | 2 --
 2 files changed, 8 insertions(+), 2 deletions(-)

commit cd5891493df06fdb92e1ae526d29dee8df250235
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 8 20:27:53 2012 -0400

    Extend clusters backwards, into the out-buffer too

 src/hb-buffer.cc | 9 +++++++++
 1 file changed, 9 insertions(+)

commit 77471e037122548bfc08cacea6fbb472831c34f3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 8 20:21:02 2012 -0400

    Clear output buffer before calling GSUB pause functions

 src/hb-ot-map.cc | 3 +++
 1 file changed, 3 insertions(+)

commit cafa6f372721fd6b0a7c0da68b9421d3e94931bc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 8 20:17:10 2012 -0400

    When merging clusters, extend the end

 src/hb-buffer.cc | 20 ++++++++++++++------
 1 file changed, 14 insertions(+), 6 deletions(-)

commit 28ce5fa454b54f728044ee12a9dbe7d016783d4a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 8 20:13:56 2012 -0400

    Merge clusters when ligating

 src/hb-ot-layout-gsub-table.hh | 1 +
 1 file changed, 1 insertion(+)

commit 2bb1761ccb7d300744ced6427165f4ea75ddf96c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 8 19:29:44 2012 -0400

    Minor, use next_glyph()

 src/hb-ot-layout-gsub-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 5f68f8675e5ccaee91f5a90d86bc3b022b9a54e4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 8 19:23:43 2012 -0400

    Minor

 src/hb-ot-shape.cc | 1 +
 1 file changed, 1 insertion(+)

commit 872969126756456a69bf958f3df6e56a26e57b0a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 8 14:18:30 2012 -0400

    Increase Uniscribe MAX_ITEMS

 src/hb-uniscribe.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit dbffa4c83d29c689ee4cd8a1c53e84521028c711
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 8 14:08:32 2012 -0400

    Fix Uniscribe charset matching

    Previously was failing to match fonts that didn't support
    CHARSET_ANSI.

    There still remains a problem with the Uniscribe backend, in that if a
    font with the same family name is installed, and is newer, the native
    one is preferred over the font we provide.  Fixing it requires
    rewriting
    the name table with a unique family name...

 src/hb-uniscribe.cc | 1 +
 1 file changed, 1 insertion(+)

commit 82e8bd8628aeb37835fb019a71b6bdac87824b97
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 8 11:48:29 2012 -0400

    Remove unused code

 src/hb-uniscribe.cc | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

commit 6da9dbff21b47fb10794b8d6cb747393c9eab7dd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 8 10:53:35 2012 -0400

    Remove zero-width chars in the fallback shaper too

 src/hb-fallback-shape.cc | 16 ++++++++++++----
 1 file changed, 12 insertions(+), 4 deletions(-)

commit 68b76121f83fc9b87dc84f03e8bef38d4332734d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 8 10:43:49 2012 -0400

    Fix regressions introduced by sed.  Ouch!

    Introduced in 99c2695759a6af855d565f4994bbdf220570bb48.
    Broken mark-mark and mark-ligature stuff.

 src/hb-ot-layout-gpos-table.hh       | 6 +++---
 src/hb-ot-layout-gsubgpos-private.hh | 2 +-
 2 files changed, 4 insertions(+), 4 deletions(-)

commit 0dd86f9f6849d82d60a99e66b6928795cfb2a3c7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 8 10:23:03 2012 -0400

    Whitespace

 src/hb-uniscribe.cc | 144
 ++++++++++++++++++++++++++--------------------------
 1 file changed, 72 insertions(+), 72 deletions(-)

commit 8e7beba7c3b3dea3cb3b7e280c5aab4f13b92d31
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 8 10:22:06 2012 -0400

    Fix Uniscribe clusters with direction-overriden Arabic

 src/hb-uniscribe.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit b069c3c31bfbbf160eb897c7474be9ea90ed4fc1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 8 10:10:29 2012 -0400

    Really fix override-direction in Uniscribe

 src/hb-uniscribe.cc | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

commit fcd6f5326166e993b8f5222efbaffe916da98f0a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 8 09:59:43 2012 -0400

    Unbreak Uniscribe

    Oops.  hb_tag_t and OPENTYPE_TAG have different endianness.  Perhaps
    something to add API for in hb-uniscribe.h

 src/hb-private.hh   | 12 +++++++++++-
 src/hb-uniscribe.cc |  8 ++++----
 2 files changed, 15 insertions(+), 5 deletions(-)

commit 29eac8f591fdb86f1c4fdc0a6ab63910ff286b84
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 8 09:26:17 2012 -0400

    Override direction in Uniscribe backend

    Matches OT backend now.

 src/hb-uniscribe.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 1c1233e57686d77d89fe3ac1dc53de9ee60798c1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 8 09:20:53 2012 -0400

    Make Uniscribe backend respect selected script

 src/hb-uniscribe.cc | 15 +++++++++++++--
 1 file changed, 13 insertions(+), 2 deletions(-)

commit 0bb0f5d41976ae27c5c7a51cbb82144b48315a4b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jun 7 17:42:48 2012 -0400

    Add note re _NullPool

 src/hb-open-type-private.hh | 1 +
 1 file changed, 1 insertion(+)

commit 2a3d911fe0ff5d6442659d3381d5b08c30ee2896
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jun 7 17:31:46 2012 -0400

    Fix alignment-requirement missmatch

    Detected by clang and lots of cmdline options.

 src/hb-buffer-private.hh             | 2 +-
 src/hb-buffer.cc                     | 5 +++--
 src/hb-ot-layout-gsub-table.hh       | 4 ++--
 src/hb-ot-layout-gsubgpos-private.hh | 2 +-
 4 files changed, 7 insertions(+), 6 deletions(-)

commit 6095de1635441af16340c7b2c5a6b4c531ec242f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jun 7 15:48:18 2012 -0400

    Fix clang warning with NO_MT path

 src/hb-shape.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a18280a8ce9128fc9d75f8a367ae8ce0886a9599
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jun 7 15:44:12 2012 -0400

    Fix warnings produced by clang analyzer

 src/hb-icu.cc          | 6 ++++--
 test/api/test-blob.c   | 2 +-
 test/api/test-buffer.c | 4 ++--
 util/helper-cairo.cc   | 2 +-
 4 files changed, 8 insertions(+), 6 deletions(-)

commit 7ec83051c05777c0e6e2eea6ef6c71effede9527
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jun 7 13:32:57 2012 -0400

    Fix warnings

 util/ansi-print.cc | 30 +++++++++++++-----------------
 1 file changed, 13 insertions(+), 17 deletions(-)

commit 73cb02de2dd28b09d4aa76230132248215cfe83d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 6 11:29:25 2012 -0400

    Minor

 src/hb-private.hh | 26 +++++++++++++-------------
 1 file changed, 13 insertions(+), 13 deletions(-)

commit 79e2b4791fe95ede9a1e6b1c71ccc6e36c4fc0e5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 6 11:27:17 2012 -0400

    Fix ASSERT_POD on clang

    As reported by bashi.  Not tested.

 src/hb-private.hh | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

commit 4282d2f3771d6510c27b62e54cc1254d6f2389b3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 6 03:42:36 2012 -0400

    Enabled ICU again

 configure.ac | 1 -
 1 file changed, 1 deletion(-)

commit 6220e5fc0dad728e67a92e838d3ac275d032f2c7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 6 03:30:09 2012 -0400

    Add ASSERT_POD for most objects

 src/hb-blob.cc            | 1 +
 src/hb-buffer-private.hh  | 2 ++
 src/hb-font-private.hh    | 3 +++
 src/hb-object-private.hh  | 2 ++
 src/hb-private.hh         | 2 +-
 src/hb-set-private.hh     | 4 +++-
 src/hb-unicode-private.hh | 1 +
 7 files changed, 13 insertions(+), 2 deletions(-)

commit a00a63b5ef503fafa87e26b517732b2214e01719
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 6 03:07:01 2012 -0400

    Add macros to check that types are POD

 configure.ac                |  1 +
 src/hb-open-type-private.hh | 32 ++++++++++++++++++++------------
 src/hb-private.hh           | 24 ++++++++++++++++++++++++
 3 files changed, 45 insertions(+), 12 deletions(-)

commit 61eb60c129e865e92f6a5767a88c44a391f4d413
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 5 21:14:04 2012 -0400

    Don't link to libstdc++

    New try.

 src/Makefile.am | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 81a4b9fd4eb8995c5930db1df3669db93661eb52
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 5 20:49:51 2012 -0400

    Remove unused hb_static_mutex_t

 src/hb-mutex-private.hh | 11 -----------
 1 file changed, 11 deletions(-)

commit 4a3a9897b3698dd09c3e880b3ddd4db24c6fb460
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 5 20:39:07 2012 -0400

    Disable Intel atomic ops on mingw32

    Apparently the configure test is not enough...

 src/hb-atomic-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0594a2448440208efa0acac9a5d8d52d43108289
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 5 20:35:40 2012 -0400

    Cleanup TRUE/FALSE vs true/false

 src/hb-atomic-private.hh           |  4 +--
 src/hb-blob.cc                     | 28 +++++++++---------
 src/hb-buffer-private.hh           |  2 +-
 src/hb-buffer.cc                   | 38 ++++++++++++-------------
 src/hb-buffer.h                    |  4 +--
 src/hb-fallback-shape.cc           |  2 +-
 src/hb-font.cc                     | 22 +++++++--------
 src/hb-ft.cc                       | 22 +++++++--------
 src/hb-glib.cc                     | 16 +++++------
 src/hb-graphite2.cc                |  8 +++---
 src/hb-icu.cc                      | 30 ++++++++++----------
 src/hb-ot-layout.cc                | 28 +++++++++---------
 src/hb-ot-shape-complex-private.hh |  2 +-
 src/hb-ot-shape-normalize.cc       | 16 +++++------
 src/hb-ot-shape.cc                 |  4 +--
 src/hb-private.hh                  | 18 ++++--------
 src/hb-set.cc                      |  2 +-
 src/hb-set.h                       |  2 +-
 src/hb-shape.cc                    |  6 ++--
 src/hb-tt-font.cc                  | 12 ++++----
 src/hb-unicode.cc                  |  8 +++---
 src/hb-uniscribe.cc                | 18 ++++++------
 src/main.cc                        |  2 +-
 util/hb-shape.cc                   |  2 +-
 util/helper-cairo.cc               | 16 +++++------
 util/main-font-text.hh             |  2 +-
 util/options.cc                    | 58
 +++++++++++++++++++-------------------
 util/options.hh                    |  2 +-
 util/view-cairo.hh                 |  2 +-
 29 files changed, 185 insertions(+), 191 deletions(-)

commit e1ac38f8dd04c29d2d4140f5a492cdaf25d72901
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 5 20:31:49 2012 -0400

    Fix inert buffer set_length() with zero

    Oops!

 src/hb-buffer.cc | 3 +++
 1 file changed, 3 insertions(+)

commit 04bc1eebe7a304c0e6f86ab6814c65889f152602
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 5 20:16:56 2012 -0400

    Add configure tests for Intel atomic intrinsics

 configure.ac             | 17 +++++++++++++++++
 src/hb-atomic-private.hh | 12 ++++++------
 src/hb-mutex-private.hh  |  2 +-
 3 files changed, 24 insertions(+), 7 deletions(-)

commit 68c75b46977beb57e35082db26be712b3cd65678
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 5 19:55:46 2012 -0400

    Shuffle

 configure.ac | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

commit f64b2ebf82c5f355cd95806478cd30c00b1a2731
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 5 19:23:29 2012 -0400

    Remove last static initializer

    We're free!  Lazy or immediate...

 src/hb-ft.cc    |   2 +
 src/hb-shape.cc | 150
 ++++++++++++++++++++++++++++++++++++++++----------------
 2 files changed, 110 insertions(+), 42 deletions(-)

commit 4a8a529068fc380298bb05b9d878bede3e9f4da1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 5 19:17:02 2012 -0400

    Make hb-view err if all shapers failed

 util/view-cairo.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 04aed572f112b96a6033cd6c3df7bdba5e29e93c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 5 18:30:19 2012 -0400

    Make hb-ft static-initializer free

 src/hb-common.cc |  5 ++---
 src/hb-ft.cc     | 38 +++++++++++++++++++++++++++-----------
 2 files changed, 29 insertions(+), 14 deletions(-)

commit be4560a3b5e8599cbe2b29a01a60c21c9e2b194f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 5 18:14:03 2012 -0400

    Undo default unicode-funcs to avoid static initializer again

 src/hb-buffer.cc          |  2 +-
 src/hb-glib.cc            | 23 ++++++++++++-----------
 src/hb-icu.cc             | 24 +++++++++++++-----------
 src/hb-unicode-private.hh | 10 +++++-----
 src/hb-unicode.cc         | 26 ++++++++++++++------------
 5 files changed, 45 insertions(+), 40 deletions(-)

commit 093171cceca63e48e735bbf05a2c11b1b7e95ef1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 5 18:00:45 2012 -0400

    Implement lock-free hb_language_t

    Another static-initialization down.  One more to go.

 src/hb-common.cc | 66
 +++++++++++++++++++++++++++++++++++++++++++++-----------
 1 file changed, 54 insertions(+), 12 deletions(-)

commit 6843ce01be0df501ef3149a2c1c54cdfb693195d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 5 17:27:20 2012 -0400

    Add atomic-pointer functions

    Gonig to use these for lock-free linked-lists, to be used for
    hb_language_t among other things.

 src/hb-atomic-private.hh | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

commit cdafe3a7d8483ac586e2c16487e2a09164e0f65c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 5 16:34:49 2012 -0400

    Add gcc intrinsics implementations for atomic and mutex

 configure.ac             |  4 ++--
 src/hb-atomic-private.hh | 11 +++++++++--
 src/hb-mutex-private.hh  | 51
 +++++++++++++++++++++++++++++++++++++++++-------
 src/hb-object-private.hh |  4 +++-
 src/hb-warning.cc        | 14 ++++++-------
 5 files changed, 65 insertions(+), 19 deletions(-)

commit d970d2899b36a2fbd002b224b8bd37b0906fdd5f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 5 16:06:28 2012 -0400

    Add gcc implementation for atomic ops

 src/hb-atomic-private.hh | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

commit 0e253e97af71e2a7ead153589f61fd579a247502
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 5 15:37:19 2012 -0400

    Add a mutex to object header

    Removes one more static-initialization.  A few more to go.

 src/hb-common.cc         | 24 +++++++++---------------
 src/hb-mutex-private.hh  | 19 +++++++------------
 src/hb-object-private.hh | 36 ++++++++++++++++++++++--------------
 src/hb-private.hh        | 11 +++++------
 4 files changed, 43 insertions(+), 47 deletions(-)

commit a2b471df821b32625d127f83b2f90e6d6a967e7e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 5 15:17:44 2012 -0400

    Remove static initializers from indic

 src/hb-ot-shape-complex-indic.cc | 50
 +++++++++++++++++++++++++++++++---------
 1 file changed, 39 insertions(+), 11 deletions(-)

commit f06ab8a4262c759b4723614fd28f55ee77aa8466
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 5 12:31:51 2012 -0400

    Better hide nil objects and make them const

 src/hb-blob.cc            | 34 +++++++++++------------
 src/hb-buffer.cc          | 39 +++++++++++++-------------
 src/hb-font.cc            | 70
 +++++++++++++++++++++++------------------------
 src/hb-ft.cc              | 49 +++++++++++++++------------------
 src/hb-glib.cc            | 25 ++++++++---------
 src/hb-icu.cc             | 25 ++++++++---------
 src/hb-set.cc             | 16 +++++------
 src/hb-unicode-private.hh | 11 ++++----
 src/hb-unicode.cc         | 34 +++++++++++------------
 9 files changed, 146 insertions(+), 157 deletions(-)

commit bf93b636c4963cbc32d5fba7ace1053db6719192
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 5 14:17:32 2012 -0400

    Remove constructor from hb_prealloced_array_t

    This was causing all object types to be non-POD and have static
    initializers.  We don't need that!

    Now, most nil objects just moved from .bss to .data.  Fixing for that
    coming soon.

 src/hb-object-private.hh | 3 +++
 src/hb-private.hh        | 4 +++-
 src/hb-set-private.hh    | 1 +
 3 files changed, 7 insertions(+), 1 deletion(-)

commit 7037291aacb858f8090fd7d9028c196cc1a21703
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 5 13:30:11 2012 -0400

    Check for atexit()

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f1971a217424bd6db5c7072ba5cf197f318d4e47
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 5 13:04:20 2012 -0400

    Fix warnings

 src/indic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b0a6e58bb3dda72dcce37d54d987591630a3db6c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jun 4 10:21:22 2012 -0400

    s/script-punjabi/script-gurmukhi/

 test/shaping/texts/in-tree/shaper-indic/indic/MANIFEST                  |
 2 +-
 .../shaper-indic/indic/{script-punjabi => script-gurmukhi}/MANIFEST
 | 0
 .../indic/{script-punjabi => script-gurmukhi}/misc/MANIFEST             |
 0
 .../indic/{script-punjabi => script-gurmukhi}/misc/misc.txt             |
 0
 .../indic/{script-punjabi => script-gurmukhi}/utrrs/LICENSE             |
 0
 .../indic/{script-punjabi => script-gurmukhi}/utrrs/MANIFEST            |
 0
 .../shaper-indic/indic/{script-punjabi => script-gurmukhi}/utrrs/README
 | 0
 .../indic/{script-punjabi => script-gurmukhi}/utrrs/SOURCES             |
 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Consonants.txt            |
 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-DependentVowels.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Digits.txt                |
 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-GurmukhiSpecific.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-IndependentVowels.txt
 | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Reserved.txt              |
 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-VariousSigns.txt
 | 0
 .../indic/{script-punjabi => script-gurmukhi}/utrrs/codepoint/MANIFEST
 | 0
 .../utrrs/gpos/IndicFontFeatureGPOS-AboveBase.txt                       |
 0
 .../utrrs/gpos/IndicFontFeatureGPOS-BelowBase.txt                       |
 0
 .../indic/{script-punjabi => script-gurmukhi}/utrrs/gpos/MANIFEST
 | 0
 .../utrrs/gsub/IndicFontFeatureGSUB.txt                                 |
 0
 .../indic/{script-punjabi => script-gurmukhi}/utrrs/gsub/MANIFEST
 | 0
 21 files changed, 1 insertion(+), 1 deletion(-)

commit c1885483120d4b686b2fe95b217dce7248e040b1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jun 4 08:56:00 2012 -0400

    Add --verbose to hb-shape

    Just turns all --show-* options on.

 util/options.cc | 11 +++++++++++
 util/options.hh |  1 -
 2 files changed, 11 insertions(+), 1 deletion(-)

commit 9fc7a11469113d31d8095757c4fc038c3427d44a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jun 4 08:28:19 2012 -0400

    Remove comma at the end of enum

    As reported by Jonathan Kew on the list.

 src/hb-ot-shape-complex-indic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 3b8fd9c48f4bde368bf2d465c148b9743a9216ee
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jun 3 15:54:19 2012 -0400

    Remove const from ref_count.ref_count

    According to Tom Hacohen this was breaking build with some compilers.

    In file included from hb-buffer-private.hh:35:0,
                     from hb-ot-map-private.hh:32,
                     from hb-ot-shape-private.hh:32,
                     from hb-ot-shape.cc:29:
    hb-object-private.hh: In constructor
    '_hb_object_header_t::_hb_object_header_t()':
    hb-object-private.hh:97:8: error: uninitialized const member in
    'struct hb_reference_count_t'
    hb-object-private.hh:51:25: note: 'hb_reference_count_t::ref_count'
    should be initialized
    In file included from hb-ot-shape.cc:33:0:
    hb-set-private.hh: In constructor '_hb_set_t::_hb_set_t()':
    hb-set-private.hh:37:8: note: synthesized method
    '_hb_object_header_t::_hb_object_header_t()' first required here
    hb-ot-shape.cc: In function 'void
    hb_ot_shape_glyphs_closure(hb_font_t*, hb_buffer_t*, const
    hb_feature_t*, unsigned int, hb_set_t*)':
    hb-ot-shape.cc:521:12: note: synthesized method
    '_hb_set_t::_hb_set_t()' first required here

 src/hb-object-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 70600dbf626808a30fb0fd8b7ae860e64d9ffe87
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jun 3 15:52:51 2012 -0400

    Minor

 src/hb-object-private.hh | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

commit ae62166519291057316a9d15cea3f1570fcb5eaf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 2 12:21:19 2012 -0400

    [util] Minor

 util/options.cc        |  4 +---
 util/options.hh        | 26 ++++++++++++++------------
 util/shape-consumer.hh |  4 +++-
 3 files changed, 18 insertions(+), 16 deletions(-)

commit 5db0683a822f70c914468430cda6487cee740ae3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jun 2 12:13:08 2012 -0400

    [util] Make hb-shape continue shaping other lines if shapers failed

 util/hb-ot-shape-closure.cc |  3 +++
 util/hb-shape.cc            | 36 +++++++++++++++++++++++++------
 util/main-font-text.hh      |  2 +-
 util/options.cc             | 34 ++++++++++++++++++++++-------
 util/options.hh             | 33 ++++++++++++++--------------
 util/shape-consumer.hh      | 17 ++++++++++++---
 util/view-cairo.cc          | 47 +++++++---------------------------------
 util/view-cairo.hh          | 52
 +++++++++++++++++++++++++++++++++++++++------
 8 files changed, 143 insertions(+), 81 deletions(-)

commit 96a9ef0c9fca8d58d8dc6baf6b262d96587abee0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 1 13:46:26 2012 -0400

    Remove tab character like other "zero-width" characters

    Uniscribe does that, this make comparing results to Uniscribe
    easier.

 src/hb-unicode-private.hh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit cd6a5493411fea30a04466128e1a37b4d89c6a72
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 1 13:45:25 2012 -0400

    Remove unused variable

 util/hb-ot-shape-closure.cc | 2 --
 1 file changed, 2 deletions(-)

commit 0558d55bac7fb9279aac859b465e7c0e3ad97492
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 28 10:46:47 2012 -0400

    Remove hb_atomic_int_set/get()

    We never use them in fact...

    I'm just adjusting these as I better understand the requirements of
    the code and the guarantees of each operation.

 src/hb-atomic-private.hh |  8 --------
 src/hb-object-private.hh | 12 +++++-------
 2 files changed, 5 insertions(+), 15 deletions(-)

commit 4efdffec095e19ceeb4b319d60201e84ece30fd9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 27 22:39:48 2012 -0400

    Minor Malayalam test case

    From https://bugs.freedesktop.org/show_bug.cgi?id=45166

 .../texts/in-tree/shaper-indic/indic/script-malayalam/misc/misc.txt
 | 1 +
 1 file changed, 1 insertion(+)

commit dfff5b3021016d3a472c100272fd8e2f52307860
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 27 22:07:04 2012 -0400

    Add Myanmar test case

 test/shaping/texts/in-tree/shaper-indic/south-east-asian/MANIFEST
 | 1 +
 .../texts/in-tree/shaper-indic/south-east-asian/script-myanmar/MANIFEST
 | 1 +
 .../in-tree/shaper-indic/south-east-asian/script-myanmar/misc/MANIFEST
 | 1 +
 .../in-tree/shaper-indic/south-east-asian/script-myanmar/misc/misc.txt
 | 1 +
 4 files changed, 4 insertions(+)

commit bce095524b3e69a47f8e88a2fb02d6ab537f9b0a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 27 11:29:21 2012 -0400

    Add hb_font_get_glyph_name() and hb_font_get_glyph_from_name()

 TODO                        |  1 +
 src/hb-font-private.hh      |  2 ++
 src/hb-font.cc              | 80
 +++++++++++++++++++++++++++++++++++----------
 src/hb-font.h               | 28 ++++++++++++++++
 src/hb-ft.cc                | 52 ++++++++++++++++++++++++-----
 util/hb-ot-shape-closure.cc |  9 ++---
 util/options.cc             | 10 ++----
 7 files changed, 142 insertions(+), 40 deletions(-)

commit bc145658bdaeaeea0cdbd719e2756f09a2dbfb48
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 27 10:45:57 2012 -0400

    Warn if no Unicode functions implementation is found

 src/hb-unicode-private.hh |  1 +
 src/hb-warning.cc         | 13 +++++++++++++
 2 files changed, 14 insertions(+)

commit a3547330fa88e30a138f6f17e60d9c7d1e316622
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 27 10:20:47 2012 -0400

    Cleanup atomic ops on OS X

 src/hb-atomic-private.hh | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

commit e4b6d503c5575ddbf49249e3fef693d75ae75170
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 27 10:11:13 2012 -0400

    Don't use atomic ops in hb_cache_t

    We don't care about linearizability, so unprotected int read/write
    are enough, no need for expensive memory barriers.  It's a cache,
    that's all.

 src/hb-cache-private.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 819faa05307aa192015f4b43d8103a35e87d6cc7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 27 10:09:18 2012 -0400

    Minor

 src/hb-atomic-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 303d5850ec0516e198db241456b0cfc4899ef9c0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 27 10:01:13 2012 -0400

    Fix Windows atomic get/set

    According to:
    http://msdn.microsoft.com/en-us/library/65tt87y8.aspx

    MemoryBarrier() is the right macro to protect these, not
    _ReadBarrier()
    and/or _WriteBarrier().

 src/hb-atomic-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 8f8956a55fff95e5ad529d2f124c9528d1f4f81d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 25 14:30:24 2012 -0400

    [util] Add hidden --shaper that is equivalent of --shapers

 util/helper-cairo.cc | 2 +-
 util/options.cc      | 6 +++++-
 2 files changed, 6 insertions(+), 2 deletions(-)

commit 29ce446d3161b7ea5874352e5f8eb33cd59338c3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 25 14:17:54 2012 -0400

    Add set iterator

 src/hb-set-private.hh       | 26 +++++++++++++++++++++++---
 src/hb-set.cc               |  7 +++++++
 src/hb-set.h                | 11 +++++++++--
 util/hb-ot-shape-closure.cc |  8 +++++---
 4 files changed, 44 insertions(+), 8 deletions(-)

commit 62c3e111fce0ad34960871134c2eb6da572df303
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 25 13:48:00 2012 -0400

    Add set symmetric difference

 src/hb-set-private.hh | 5 +++++
 src/hb-set.cc         | 7 +++++++
 src/hb-set.h          | 6 ++++++
 3 files changed, 18 insertions(+)

commit 27aba594c90b4444c35273a38f5fedc8e09d9a88
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 24 15:00:01 2012 -0400

    Minor

 src/hb-ot-shape-complex-indic-machine.rl | 2 +-
 src/hb-ot-shape-complex-indic.cc         | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit cde1c0114ba66a45d907e81a49bf625e0dc946b0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 24 10:46:39 2012 -0400

    Fix hb_atomic_int_set() implementation for HB_NO_MT

    As pointed out by Jonathan Kew.

 src/hb-atomic-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 3b9b7133bea787f787170beea073f185e36d2327
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 23 22:00:25 2012 -0400

    Update TODO

 TODO | 18 ++++++++++++++++--
 1 file changed, 16 insertions(+), 2 deletions(-)

commit ff3524c21aabf5d0d6014d1ce1b3e12ca5f0990f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 23 21:50:43 2012 -0400

    Add Arabic diacritics tests

 .../shaper-arabic/script-arabic/misc/MANIFEST      |   2 +-
 .../script-arabic/misc/diacritics/MANIFEST         |   5 +
 .../script-arabic/misc/diacritics/lam-alef.txt     |  28 +
 .../misc/diacritics/language-arabic.txt            | 695
 +++++++++++++++++++++
 .../misc/diacritics/language-persian.txt           |  48 ++
 .../misc/diacritics/language-urdu.txt              | 188 ++++++
 .../misc/{ => diacritics}/ligature-diacritics.txt  |   0
 7 files changed, 965 insertions(+), 1 deletion(-)

commit ed2f1363a391add41f10cff18792003583a10257
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 22 22:12:22 2012 -0400

    Fix substitution glyph class propagation

    The old code was doing nothing.

    Still got to find an example font+string that makes this matter, but
    need this for fixing synthetic GDEF anyway.

 src/hb-ot-layout-gsub-table.hh       | 10 ++++------
 src/hb-ot-layout-gsubgpos-private.hh | 23 ++++++-----------------
 2 files changed, 10 insertions(+), 23 deletions(-)

commit a6de53664df9549a5dc93752647ea1d3bb336f7b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 18 15:04:35 2012 -0400

    Add CJK Compatibility Ideographs tests

    From:
    http://people.mozilla.org/~jdaggett/tests/cjkcompat.html

 test/shaping/texts/in-tree/shaper-default/MANIFEST                     |
 3 ++-
 .../in-tree/shaper-default/{script-japanese => script-han}/MANIFEST
 | 0
 test/shaping/texts/in-tree/shaper-default/script-han/misc/MANIFEST     |
 1 +
 .../texts/in-tree/shaper-default/script-han/misc/cjk-compat.txt        |
 3 +++
 test/shaping/texts/in-tree/shaper-default/script-hiragana/MANIFEST     |
 1 +
 .../shaper-default/{script-japanese => script-hiragana}/misc/MANIFEST
 | 0
 .../{script-japanese => script-hiragana}/misc/kazuraki-liga-lines.txt
 | 0
 .../{script-japanese => script-hiragana}/misc/kazuraki-liga.txt
 | 0
 8 files changed, 7 insertions(+), 1 deletion(-)

commit 20fdb0f41d81b226e076a4830d4b0d03da31fc19
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 17 22:04:45 2012 -0400

    Add a lock-free cache type for int->int functions

    To be used for cmap and advance caching if desired.

 TODO                    |  2 ++
 src/Makefile.am         |  1 +
 src/hb-cache-private.hh | 72
 +++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-font.cc          |  2 ++
 4 files changed, 77 insertions(+)

commit bd908b4f102b5ae18a3ad4a8b137994cf74b86ce
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 17 22:02:08 2012 -0400

    Implement hb_atomic_int_set() for OS X

 src/hb-atomic-private.hh | 2 ++
 1 file changed, 2 insertions(+)

commit 022a05ae90f30bcddff413022e0cd801809b5390
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 17 21:53:24 2012 -0400

    Minor

 src/hb-atomic-private.hh | 4 +++-
 src/hb-mutex-private.hh  | 4 +++-
 2 files changed, 6 insertions(+), 2 deletions(-)

commit 22afd66a30d01b6771405e76777306f600807bea
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 17 21:23:49 2012 -0400

    Add hb_atomic_int_set() again

 src/hb-atomic-private.hh | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

commit 4aa7258cb16176a89e1547fee8f86571fdd98307
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 17 21:01:04 2012 -0400

    Fix type conflicts on Windows without glib

 src/hb-tt-font.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit f039e79d5438a8fc4a3ec11a387bbfc0f6b83024
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 17 20:55:12 2012 -0400

    Don't use min/max as function names

    They can be macros on some systems.  Eg. mingw32.

 src/hb-set-private.hh | 4 ++--
 src/hb-set.cc         | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

commit 34961e3198e27fa37fd4cfdad12ef86a2e9e51c2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 17 20:50:38 2012 -0400

    Prefer native atomic/mutex ops to glib's

 src/hb-atomic-private.hh | 29 ++++++++++++++++-------------
 src/hb-mutex-private.hh  | 24 ++++++++++++++----------
 2 files changed, 30 insertions(+), 23 deletions(-)

commit ec3ba4b96fc4f262db1ff9f906628c32f26c9b7d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 17 20:30:46 2012 -0400

    Move atomic ops into their own header

 src/Makefile.am          |  1 +
 src/hb-atomic-private.hh | 78
 ++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-mutex-private.hh  |  1 -
 src/hb-object-private.hh | 52 ++------------------------------
 src/hb-warning.cc        |  2 +-
 5 files changed, 82 insertions(+), 52 deletions(-)

commit de0878395be5c72d7058faac8f64715bdd42eb3b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 17 20:15:49 2012 -0400

    Update TODO

 TODO | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

commit c87b317f0eb118e67134e8e419a6d65e0fa40d30
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 15 23:53:18 2012 -0400

    [util] Add hb-ot-shape-closure tool

    Computes all the glyphs that may be generated given a font and
    set of Unicode characters.

    The order of the Unicode characters is irrelevant.

    Sample output:

    behdad:util 0$ ./hb-ot-shape-closure Doulos\ SIL\ Regular.ttf f
    f f_f

    behdad:util 0$ ./hb-ot-shape-closure Doulos\ SIL\ Regular.ttf i
    i

    behdad:util 0$ ./hb-ot-shape-closure Doulos\ SIL\ Regular.ttf fi
    f f_i f_f_i f_f i

    behdad:util 0$ ./hb-ot-shape-closure DroidNaskh-Regular.ttf ب
    uni0628 uni0628.init uni0628.medi uni0628.fina

    behdad:util 0$ ./hb-ot-shape-closure DroidNaskh-Regular.ttf ا
    uni0627 uni0627.fina

    behdad:util 0$ ./hb-ot-shape-closure DroidNaskh-Regular.ttf با
    uni0627 uni0627.fina uni0628 uni0628.init uni0628.medi uni0628.fina

    behdad:util 0$ ./hb-ot-shape-closure DroidNaskh-Regular.ttf با
    --no-glyph-names
    5 6 133 134 135 136

 configure.ac                |   2 +-
 util/Makefile.am            |  22 ++++++---
 util/hb-ot-shape-closure.cc | 112
 ++++++++++++++++++++++++++++++++++++++++++++
 util/options.hh             |  12 +++++
 4 files changed, 140 insertions(+), 8 deletions(-)

commit 45675e589e6ef9f81b2a4199cf33e3e7778433a8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 15 23:10:39 2012 -0400

    [util] Refactor to accommodate for upcoming new tool

 util/Makefile.am                       | 10 +++--
 util/hb-shape.cc                       | 70
 +++++++++++++++-------------------
 util/hb-view.cc                        |  8 ++--
 util/{hb-view.hh => main-font-text.hh} | 48 +++++++++++------------
 util/shape-consumer.hh                 | 69
 +++++++++++++++++++++++++++++++++
 5 files changed, 135 insertions(+), 70 deletions(-)

commit 1d6846db9ebf84561bb30a4e48c6c43184914099
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 13 18:09:29 2012 +0200

    [Indic] Apply vatu feature after cjct

    Testing with old Deva spec this reduces failures.
    Test sequence: U+0915,U+094D,U+0930.

 src/hb-ot-shape-complex-indic.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 8caf5dcd66550351c6038b9ae7ecc5254eed64ff
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 13 17:10:18 2012 +0200

    Minor

 util/ansi-print.cc | 67
 +++++++++++++++++++++++++++---------------------------
 1 file changed, 33 insertions(+), 34 deletions(-)

commit 617f4ac46f1084859d2034c08760e31e52d3bec3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 13 16:48:03 2012 +0200

    Refactor

 src/hb-ot-shape-complex-indic.cc | 44
 +++++++++++++++++++++-------------------
 1 file changed, 23 insertions(+), 21 deletions(-)

commit 5e4e21fce4b548b0b8a5951bc8f35a9f27428192
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 13 16:46:08 2012 +0200

    Revert "[Indic] Refactoring"

    This reverts commit 0831061efb78983b9c6e1e72574c977e56383c08.

 src/hb-ot-shape-complex-indic.cc | 28 ++++++++--------------------
 1 file changed, 8 insertions(+), 20 deletions(-)

commit 3f18236a03880c0960f5990dc90685f6146951a6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 13 16:20:10 2012 +0200

    Fix more warnings

 src/hb-ot-layout-common-private.hh | 2 +-
 src/hb-ot-layout-gsub-table.hh     | 2 +-
 src/hb-ot-shape-complex-indic.cc   | 8 ++++----
 3 files changed, 6 insertions(+), 6 deletions(-)

commit 9f377ed3210fe7d9f15e0c4f82020556f9a8f6f0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 13 16:13:44 2012 +0200

    Fix more unused-var warnings

 src/hb-ot-shape-complex-arabic.cc |  7 +++++--
 src/hb-ot-shape-complex-indic.cc  | 25 ++++++++++++++++++-------
 src/hb-ot-shape-complex-misc.cc   | 21 +++++++++++++++------
 src/hb-ot-shape-normalize.cc      | 13 ++++++-------
 src/hb-set.cc                     |  2 +-
 5 files changed, 45 insertions(+), 23 deletions(-)

commit d993e72331c6c4c783b803e01e4d4a02c8e3eb77
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 13 16:04:36 2012 +0200

    Fix hb_face_set_index()

 src/hb-font.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 93345edcbea49bdf0e22f26b5b74a23e601dfab4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 13 16:01:08 2012 +0200

    Fix warnings

 src/hb-fallback-shape.cc |  4 ++--
 src/hb-private.hh        | 54
 ++++++++++++++++++++++++------------------------
 2 files changed, 29 insertions(+), 29 deletions(-)

commit eace47b173807d94b29a6490d0bc3c9f8f6168d1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 13 15:54:43 2012 +0200

    Minor

 src/hb-ot-shape-complex-indic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 99c2695759a6af855d565f4994bbdf220570bb48
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 13 15:45:18 2012 +0200

    Add accessort to buffer for current info, current pos, and prev info

 src/hb-buffer-private.hh             |  9 ++++++++
 src/hb-ot-layout-gpos-table.hh       | 44
 ++++++++++++++++++------------------
 src/hb-ot-layout-gsub-table.hh       | 28 +++++++++++------------
 src/hb-ot-layout-gsubgpos-private.hh | 28 +++++++++++------------
 src/hb-ot-shape-complex-arabic.cc    |  4 ++--
 src/hb-ot-shape-complex-misc.cc      |  5 ++--
 src/hb-ot-shape-normalize.cc         | 16 ++++++-------
 src/hb-ot-shape.cc                   |  8 +++----
 8 files changed, 76 insertions(+), 66 deletions(-)

commit 6736f3c5b09af6a71935afc04248b033e171a9b2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 13 15:21:06 2012 +0200

    Minor

 src/hb-ot-layout-gsubgpos-private.hh | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

commit 5df809b655bb1318115651fd87d4555cdd9b41cb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 13 15:17:51 2012 +0200

    [GSUB/GPOS] Remove context_length

    The spec doesn't say contextual matching should be done this way,
    and AOTS doesn't do it either.  It was inherited from old HarfBuzz.
    Remove it.

 src/hb-ot-layout-common-private.hh   |  1 -
 src/hb-ot-layout-gpos-table.hh       |  3 ---
 src/hb-ot-layout-gsub-table.hh       |  6 ++----
 src/hb-ot-layout-gsubgpos-private.hh | 32
 +++++++++++---------------------
 4 files changed, 13 insertions(+), 29 deletions(-)

commit 28b9d502bb69a8045818d5f6113ded9c59a56bd7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 13 15:04:00 2012 +0200

    Minor

 src/hb-ot-layout-gsubgpos-private.hh | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

commit 50f630c17ced1bd59b4da4f27728dcfbb876400a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 13 13:03:44 2012 +0200

    Remove ioctl checks

    Ended up not using terminal size after all.

 configure.ac       |  2 +-
 util/ansi-print.cc | 11 -----------
 2 files changed, 1 insertion(+), 12 deletions(-)

commit db0de7cd616e1e9d6fde6659e52a541477fb0148
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 13 13:02:38 2012 +0200

    [util] Set ansi color only on color change

 util/ansi-print.cc | 28 +++++++++++++++++++++++-----
 1 file changed, 23 insertions(+), 5 deletions(-)

commit 912c5ff80a255edb8145b9db69e2ed828f8eab5c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 13 12:51:02 2012 +0200

    Reduce default margin

 util/options.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 52e7b1424a3613122e9ca30879298df42733acda
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 13 02:02:58 2012 +0200

    [util] Make hb-view print out Unicode art if stdout is a terminal

 configure.ac              |   4 +-
 util/Makefile.am          |   4 +
 util/ansi-print.cc        | 411
 ++++++++++++++++++++++++++++++++++++++++++++++
 util/ansi-print.hh        |  39 +++++
 util/helper-cairo-ansi.cc | 102 ++++++++++++
 util/helper-cairo-ansi.hh |  39 +++++
 util/helper-cairo.cc      |  70 +++++++-
 util/options.hh           |   3 +
 8 files changed, 668 insertions(+), 4 deletions(-)

commit 8b2753ce2bea8a21ea757186d86dc4a55d8c8b0c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 13 00:54:07 2012 +0200

    Minor

 TODO | 2 ++
 1 file changed, 2 insertions(+)

commit 30874b4819a99cc84fa39e794266685e1b8735d2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat May 12 15:54:27 2012 +0200

    [util] Make tools default to stdin if no text is provided

    One less argument to type in typical testing workflow!

 util/hb-view.hh |  4 +++-
 util/options.cc | 12 +++++-------
 util/options.hh |  2 +-
 3 files changed, 9 insertions(+), 9 deletions(-)

commit 2097951110e33fe091ed9515ae77e2683c46c889
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat May 12 15:41:48 2012 +0200

    [util] Change default font size of hb-view to 256

    Most common usecase of hb-view is to test rendering of short words for
    testing / inspection.  Not having to type "--font-size 150" each time
    isn't such a bad idea...

 util/options.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 737dded2e08fcc19935db51c05201a987184d337
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat May 12 15:40:11 2012 +0200

    Fix compiler warnings

 src/hb-ot-shape-complex-indic.cc | 5 -----
 1 file changed, 5 deletions(-)

commit f538fcb538f1decb4100ba89457eb83f2350d64b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat May 12 15:34:40 2012 +0200

    [test] Make tool usage easier by not requiring "--stdin"

    Just default to it.  Added "--help" instead to get usage.

 test/shaping/hb_test_tools.py | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

commit a3273e30bb7ffd727ffc18af5716dfef705d3d94
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat May 12 13:34:18 2012 +0200

    [Indic] Add more Malayalam tests

 .../indic/script-malayalam/misc/misc.txt           | 38
 ++++++++++++++++++++++
 1 file changed, 38 insertions(+)

commit 7f852b644b8143492a02edfc853114aaa23446bd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 23:10:31 2012 +0200

    Fix compiler warnings

 src/hb-ot-shape-complex-indic.cc   | 2 +-
 src/hb-ot-shape-complex-private.hh | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit f7e8dcfd4fc377e3d786b097beb656284240456d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 22:00:06 2012 +0200

    [Indic] Unbreak Devanagari

    And this, concludes the HarfBuzz Massala Hackfest.

    I like to specially thank Jonathan Kew for doing all the decription
    and
    letting me get commit points.

 configure.ac                             | 2 +-
 src/hb-ot-shape-complex-indic-private.hh | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 6a091df9b403b147ef78f3974610dedf4ce1e08a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 21:42:27 2012 +0200

    [Indic] Disambiguate sub vs post vs above matras

    Bengali is at *just* above 5% now.

 src/hb-ot-shape-complex-indic-private.hh | 31
 +++++++++++++++----------------
 src/hb-ot-shape-complex-indic.cc         | 12 ++++++------
 2 files changed, 21 insertions(+), 22 deletions(-)

commit 9d0d319a4a7e85d922e58fade0f40caae1c9f109
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 21:36:32 2012 +0200

    [Indic] Position Bengali Reph before matras

 src/hb-ot-shape-complex-indic.cc | 62
 +++++++++++++++++++++++-----------------
 1 file changed, 36 insertions(+), 26 deletions(-)

commit f89367251109af235f4f0446c13c261a5a4a6f72
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 21:10:03 2012 +0200

    [Indic] Start categorizing Reph per script

 src/hb-ot-shape-complex-indic.cc | 41
 ++++++++++++++++++++++++++++++++++------
 1 file changed, 35 insertions(+), 6 deletions(-)

commit a913b024d84973556094fd64ce5f0b7106fcc3b5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 20:59:26 2012 +0200

    [Indic] Apply 'init' feature for Bengali

    Error down from 20% to 7%.

 src/hb-ot-shape-complex-indic.cc | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

commit eed903b1644e087178438959664a6a57bebc398b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 20:50:53 2012 +0200

    [Indic] Refactor for the arrival of 'init' feature

    Yep, on Bengali now!

 src/hb-ot-shape-complex-indic.cc | 52
 +++++++++++++++++++++++++++-------------
 1 file changed, 36 insertions(+), 16 deletions(-)

commit 18c06e189bd078affbb84c3bb5bb80687a227c5e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 20:02:14 2012 +0200

    [Indic] Add Uniscribe bug feature for dotted circle

    For dotted-circle independent clusters, Uniscribe does no Reph shaping
    for the exact sequence Ra+Halant+25CC.  Which also is the only
    possible
    sequence with 25CC at the end.

 src/hb-ot-shape-complex-indic-machine.rl |  4 +++-
 src/hb-ot-shape-complex-indic-private.hh |  3 ++-
 src/hb-ot-shape-complex-indic.cc         | 20 ++++++++++++++++----
 3 files changed, 21 insertions(+), 6 deletions(-)

commit 5b16de97bcc4b24da4c77ca6c1a42e814d8cdbd1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 19:55:42 2012 +0200

    [Indic] Add tests for dottedcircle

 .../in-tree/shaper-indic/indic/script-devanagari/misc/MANIFEST     | 1 +
 .../shaper-indic/indic/script-devanagari/misc/dottedcircle.txt     |
 7 +++++++
 2 files changed, 8 insertions(+)

commit 0831061efb78983b9c6e1e72574c977e56383c08
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 19:07:58 2012 +0200

    [Indic] Refactoring

 src/hb-ot-shape-complex-indic.cc | 26 ++++++++++++++++++--------
 1 file changed, 18 insertions(+), 8 deletions(-)

commit 7ea58db311bfb0d8f804d1e9f4a1f004bd45075a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 18:58:57 2012 +0200

    Minor

 src/hb-ot-shape-complex-indic.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 9c09928989316e2befe00d52ed66e055637ccd36
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 18:46:35 2012 +0200

    [Indic] Allow multiple Consonants in Vowel/NBSP syllables

    Uniscribe allows multiple Halant+Consonant after a Vowel.
    Tests:
    ↦       * U+0905,U+094D,U+092B,U+094D,930,94d,930

 src/hb-ot-shape-complex-indic-machine.rl | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 8c0aa486f31e9b6cbb31ce295573b53b0a214124
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 18:13:42 2012 +0200

    [Indic] Allow two Nuktas per consonant

    Uniscribe allows up to two nuktas per consonant and one per matra. It
    does so
    indepent of whether the consonant already has a nukta in it.  Tests:

            * U+0916,U+093C,U+0941
            * U+0959,U+093C,U+0941
            * U+0916,U+093C,U+093C,U+0941
            * U+0959,U+093C,U+093C,U+0941
            * U+0916,U+093C,U+093C,U+093C,U+0941
            * U+0959,U+093C,U+093C,U+093C,U+0941
            * 915,93c,93c,,94d,U+0916,U+093C,U+093C,U+093e,93c,93c

 src/hb-ot-shape-complex-indic-machine.rl | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit 3399a06e7033651ee926448737bdb18e553c1796
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 17:54:26 2012 +0200

    [Indic] Fix U+0952 and similar classification to match Uniscribe

    See comments.

 src/hb-ot-shape-complex-indic-machine.rl |  1 +
 src/hb-ot-shape-complex-indic.cc         | 16 +++++++++++-----
 2 files changed, 12 insertions(+), 5 deletions(-)

commit 11aa3ef18dbc6ac9561bd119f5ca2c1aa1209c3a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 17:30:48 2012 +0200

    [Indic] Treat U+0951..U+0954 all similar to U+0952

 src/hb-ot-shape-complex-indic.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 5f131d3226131df440d7f36655e57f6effcae204
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 17:29:40 2012 +0200

    [GSUB/GPOS/Indic] Apply GSUB/GPOS within syllables only

    This does not apply to the context matchings.

    This regresses tests right now.  And we are not sure whether this is
    the right thing to do for GPOS.  But we'll figure out.

 src/hb-ot-layout-gsubgpos-private.hh | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

commit 8fd83aaf6e50c2c25002c51fee26d82847a61769
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 17:18:37 2012 +0200

    [GSUB/GPOS] Fix wrong buffer access in backward skippy mask matching

 src/hb-ot-layout-gsubgpos-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ff24d1081af08a887895975285d7e38f5d07bc37
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 17:07:08 2012 +0200

    [Indic] Don't use syllable serial value 0

 src/hb-ot-shape-complex-indic-machine.rl | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 892eb7878238d810a2a70f9dadbf958207bfeaa1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 16:54:40 2012 +0200

    [Indic] Implement Uniscribe Reph+Matra+Halant bug feature

 src/hb-ot-shape-complex-indic.cc | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

commit 67ea29af49bb08ee679914076808327992cf6676
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 16:51:23 2012 +0200

    [Indic] Add example of different Uniscribe behavior

 src/hb-ot-shape-complex-indic.cc | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit ebe29733d44fe0fa9fb30f946ab0dd7a40336a24
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 16:43:12 2012 +0200

    [Indic] Add runtime Uniscribe bug compatibility mode!

    Enable by setting envvar:

      HB_OT_INDIC_OPTIONS=uniscribe-bug-compatible

    Plus, LeftMatra+Halant "feature".

 src/hb-ot-shape-complex-indic.cc | 44
 ++++++++++++++++++++++++++++++----------
 1 file changed, 33 insertions(+), 11 deletions(-)

commit 616e692e2950d326b6c46aba5b5bead3cc29d315
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 16:25:02 2012 +0200

    [Indic] Add #define UNISCRIBE_BUG_COMPATIBLE 1

 src/hb-ot-shape-complex-indic.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 6782bdae3be0357da1dadc7b806a43ceefa67a90
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 16:23:43 2012 +0200

    [Indic] Fix Left Matra + Halant reordering

    As can be seen in: U+092B,U+093F,U+094D

 src/hb-ot-shape-complex-indic.cc | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit 3c2ea9481b1028e927e615a5434ebf8edcb5f891
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 16:23:38 2012 +0200

    Minor

 src/hb-ot-shape-complex-indic.cc | 73
 ++++++++++++++++++++--------------------
 1 file changed, 37 insertions(+), 36 deletions(-)

commit c071b99f150a9344a2056dfeba8c613f8a5602db
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 16:22:46 2012 +0200

    [Indic] Add test for Left Matra with Halant

    Uniscribe doesn't move the Halant, we do.  And do a broken job of
    it now.

 .../shaper-indic/indic/script-devanagari/misc/tricky-reordering.txt
 | 1 +
 1 file changed, 1 insertion(+)

commit 203d71069c45048b6dd8fa22b61fd8f2c844b4f6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 16:01:44 2012 +0200

    [GSUB/GPOS] Check all glyph masks when matching input

 src/hb-ot-layout-gsubgpos-private.hh | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

commit 668c6046c1b3af3bd316bda0cc8636f2a5e8df42
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 15:34:13 2012 +0200

    [Indic] Apply Reph mask to all POS_REPH glyphs

    Needed for upcoming changes to GSUB/GPOS mask matching.

 src/hb-ot-shape-complex-indic.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 4be46bade26faf13f7b4d447e9cc608e183955dc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 14:39:01 2012 +0200

    [Indic] Fix state machine to backtrack

 src/hb-ot-shape-complex-indic-machine.rl | 42
 +++++++++++++++-----------------
 src/hb-private.hh                        |  2 ++
 2 files changed, 21 insertions(+), 23 deletions(-)

commit cee7187447b76b22e1bb6136d137b35ac49c3a5d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 11:41:39 2012 +0200

    [Indic] Move syllable tracking from Indic to generic layer

    This is to incorporate it into GSUB/GPOS processing.

 src/hb-ot-layout-gpos-table.hh           |  1 +
 src/hb-ot-layout-gsub-table.hh           |  3 ++-
 src/hb-ot-layout-gsubgpos-private.hh     |  3 ---
 src/hb-ot-layout-private.hh              |  4 +---
 src/hb-ot-shape-complex-indic-machine.rl |  2 +-
 src/hb-ot-shape-complex-indic-private.hh |  1 -
 src/hb-ot-shape-complex-indic.cc         |  8 +++-----
 src/hb-ot-shape-complex-private.hh       | 13 ++++++++-----
 8 files changed, 16 insertions(+), 19 deletions(-)

commit 3bf27a9f0e92aa31b464bd3b9fdea5933c9ae8b1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 11:17:23 2012 +0200

    [Indic] Disable conjuncts when a ZWJ happens

    Not that the code makes any difference since the presence of ZWJ
    itself
    causes the ligature to fail to match anyway.

 src/hb-ot-shape-complex-indic.cc | 7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)

commit c6d904d67db589dd6209928e56504f04f6a07756
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 11:07:40 2012 +0200

    [Indic] Fix bitops typo!

    Another 1000 down!

 src/hb-ot-shape-complex-indic.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 55fe2cf79b11d9a63ea33b3ee76bd0ebca345157
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 03:45:28 2012 +0200

    Make APPLY debug output print current index and codepoint

    Yay!

 src/hb-ot-layout-gsubgpos-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 7bd2b04fea5649d77d796d58b7f4918fe0378ee5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 03:40:58 2012 +0200

    Minor

 src/hb-object-private.hh | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

commit cf26510dbbd8d38486e6ba423800db6427ade332
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 03:35:08 2012 +0200

    Some more...

    Done.  I promise.

 src/hb-object-private.hh | 1 +
 1 file changed, 1 insertion(+)

commit 9659523ca32b0e254d0e5fe387d817208d9cb6bf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 03:33:36 2012 +0200

    More beauty in debug output!

 src/hb-private.hh | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

commit cf26e88a5ab477295479f5b9450c2019b6430eaa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 03:16:57 2012 +0200

    Finish off debug output beautification

 src/hb-open-type-private.hh | 58
 ++++++++++++++++++++-------------------------
 1 file changed, 26 insertions(+), 32 deletions(-)

commit d7bba01a353efc7432c474dd8755a02db4abd2ae
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 02:46:26 2012 +0200

    Only print class name in debug output if there's one available

 src/hb-private.hh | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

commit 85f73fa8da1fbb864aef0f3a592b1d65e24d593d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 02:40:42 2012 +0200

    Only printout class name in tracing, if one is available

    Makes debug output much more pleasant.

 src/hb-private.hh | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

commit 98619ce4fa650c593b030d06d2f89fec83a10015
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 02:34:06 2012 +0200

    Minor

 src/hb-ot-layout-gsubgpos-private.hh | 2 ++
 1 file changed, 2 insertions(+)

commit acea183e986dd378c6f95120fe0feb0586a8ef36
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 02:33:11 2012 +0200

    Add return annotation for APPLY

 src/hb-ot-layout-gpos-table.hh       | 163
 +++++++++++++++--------------------
 src/hb-ot-layout-gsub-table.hh       | 114 +++++++++++-------------
 src/hb-ot-layout-gsubgpos-private.hh |  83 ++++++++----------
 3 files changed, 151 insertions(+), 209 deletions(-)

commit 5ccfe8e2154ad0b58dabcc236bbe9478c17b02ab
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 02:19:41 2012 +0200

    /Minor/

 src/hb-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0ab8c8621712d33e1e91dfdb4ad0b335e3d2a3fb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 01:25:34 2012 +0200

    Annotate SANITIZE return values

    More to come, for APPLY, CLOSURE, etc.

 src/hb-open-file-private.hh          |  23 ++---
 src/hb-open-type-private.hh          |  49 +++++-----
 src/hb-ot-head-table.hh              |   4 +-
 src/hb-ot-hhea-table.hh              |   4 +-
 src/hb-ot-hmtx-table.hh              |   4 +-
 src/hb-ot-layout-common-private.hh   |  51 +++++-----
 src/hb-ot-layout-gdef-table.hh       |  48 +++++-----
 src/hb-ot-layout-gpos-table.hh       | 180
 ++++++++++++++++-------------------
 src/hb-ot-layout-gsub-table.hh       | 101 +++++++++-----------
 src/hb-ot-layout-gsubgpos-private.hh |  88 ++++++++---------
 src/hb-ot-maxp-table.hh              |   7 +-
 src/hb-ot-name-table.hh              |  17 ++--
 src/hb-private.hh                    |  39 ++++++--
 13 files changed, 299 insertions(+), 316 deletions(-)

commit 829e814ff358c5e700ba4df54932696801aa9f65
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 00:52:16 2012 +0200

    Minor

 src/hb-private.hh | 32 ++++++++++----------------------
 1 file changed, 10 insertions(+), 22 deletions(-)

commit 6eec6f406d2cc13dbca422e88492d3d498af02bf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 00:50:38 2012 +0200

    Code reshuffling

 src/hb-private.hh | 36 +++++++++++++++++++++++++-----------
 1 file changed, 25 insertions(+), 11 deletions(-)

commit 1e08830b4fac3a60ae52349cab6e101d389d30cd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 11 00:16:40 2012 +0200

    Beautify debug output

 src/hb-open-type-private.hh | 20 ++++++------
 src/hb-private.hh           | 74
 +++++++++++++++++++++++++++------------------
 2 files changed, 55 insertions(+), 39 deletions(-)

commit 6f4553801729a06e506ffdde7b27c72780d4bb80
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 10 23:24:43 2012 +0200

    More massaging trace messaging

 src/hb-open-type-private.hh          | 2 +-
 src/hb-ot-layout-gsubgpos-private.hh | 4 ++--
 src/hb-private.hh                    | 4 ++--
 3 files changed, 5 insertions(+), 5 deletions(-)

commit b5fa37cb694b01a7df3a656710391c40dd3fcc04
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 10 23:09:48 2012 +0200

    Minor

 src/hb-set-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 208109703c929428c684ddcf9310b8ba780c4c31
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 10 23:06:58 2012 +0200

    Better trace message support infrastructure

    We have varargs in the trace interface now.  To be used soon...

 src/hb-open-type-private.hh          | 17 ++++------
 src/hb-ot-layout-gsubgpos-private.hh |  4 +--
 src/hb-private.hh                    | 64
 ++++++++++++++++++++++++++----------
 3 files changed, 56 insertions(+), 29 deletions(-)

commit 02b2922fbf098c8282eb23dc2c54d5829cf67024
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 10 21:44:50 2012 +0200

    [Indic] Towards better Reph positioning

    Fixed for Deva cases with two full-form consonants.  Failures **way**
    down.
    Not much left to go :-).

 src/hb-ot-shape-complex-indic.cc | 111
 ++++++++++++++++++++++++++++-----------
 1 file changed, 80 insertions(+), 31 deletions(-)

commit 74e54cf446bb979e488685e8c09eeed6b9d03c24
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 10 21:20:37 2012 +0200

    [Indic] Add Ra back for scripts without Reph

    We now check that the 'rphp' table exists before forming Reph, so
    we don't need to comment out Ra for those scripts.

 src/hb-ot-shape-complex-indic-private.hh | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit 2b70df5cc008617453b12bafeaac50e6d61b3224
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 10 18:38:22 2012 +0200

    [Indic] Add note re Uniscribe clusters

 src/hb-ot-shape-complex-indic.cc | 4 ++++
 1 file changed, 4 insertions(+)

commit 21d2803133c2c424ed37a9f3d17c7fc4963e5a60
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 10 18:34:34 2012 +0200

    [Indic] Do clustering like Uniscribe does

    Hindi Wikipedia failures down to 6639 (0.938381%)!

 src/hb-ot-shape-complex-indic.cc | 24 ++++++++++++++++++++----
 1 file changed, 20 insertions(+), 4 deletions(-)

commit b20c9ebaf5176101fdfcffbe4714a2e619dd94b6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 10 18:31:17 2012 +0200

    [Indic] Add test for matra group

    The spec says: "[{M}+[N]+[H]]", and that's what Uniscribe implements.
    We instead do: "{M+[N]+[H]}", which means we allow Nukta and Halant
    after all Matras, not just the last one.  It makes more sense.

 .../texts/in-tree/shaper-indic/indic/script-devanagari/misc/MANIFEST
 | 1 +
 .../shaper-indic/indic/script-devanagari/misc/spec-deviations.txt
 | 1 +
 2 files changed, 2 insertions(+)

commit 8df5636968389ac7bf8620ccd091fd4872b0bbee
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 10 15:41:04 2012 +0200

    [Indic] Reorder Reph to before the Halant after Matras

    Uniscribe doesn't do it, but we want to do as it gives the Reph the
    opportunity to interact with the Matras.  Test with mangal for
    example.
    Sequence: <0930,094d,0915,094b,094d>
    In test suite already.

 src/hb-ot-shape-complex-indic.cc | 12 ++++++++++++
 1 file changed, 12 insertions(+)

commit daf3234bdc82c669302599a76d2b14f5e69989db
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 10 15:28:27 2012 +0200

    [Indic] Don't clear the mask for Reph

    This was removing the mandatory global 1 bit in the mask and hence
    disabling GPOS for Reph!

 src/hb-ot-shape-complex-indic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 7708ee23cbcc8c8edce13e73b6e549b77bd8c2d0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 10 14:48:25 2012 +0200

    [Indic] Improve Left Matra repositioning

    Move its dependents too.

 src/hb-ot-shape-complex-indic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 61a58e26a5bda16851669404fc8206896e124740
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 10 14:43:53 2012 +0200

    [Indic] Add tricky reordering test cases

    In the case of Consonant,LeftMatra,Halant, Uniscribe leaves the Halant
    where it is, but we want to move it with the Matra as that makes more
    logical sense.

 .../texts/in-tree/shaper-indic/indic/script-devanagari/misc/MANIFEST  |
 1 +
 .../shaper-indic/indic/script-devanagari/misc/tricky-reordering.txt   |
 4 ++++
 2 files changed, 5 insertions(+)

commit dbb105883c6e9b83e78dc8b10766cd56b98cd7e1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 10 13:45:52 2012 +0200

    [Indic] Do Reph repositioning in final reordering like the spec says

    This introduced a failure, which we tracked down to a test case
    like this:

      U+092E,U+094B,U+094D,U+0930

    The final character is a Ra that should be put in a syllable of it's
    own.  And we do.  But it will interact with the Halant before it.  So
    now we finally are convinced that we have to limit features to
    syllable
    boundaries.  That's coming after lunch!

 src/hb-ot-shape-complex-indic-private.hh |   2 -
 src/hb-ot-shape-complex-indic.cc         | 103
 +++++++++++++++++++------------
 2 files changed, 64 insertions(+), 41 deletions(-)

commit 4705a7026900e51f6430f03a73c87f2df035df92
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 10 13:09:08 2012 +0200

    Minor

 src/hb-ot-shape-complex-indic.cc | 3 +++
 1 file changed, 3 insertions(+)

commit 4ac9e98d9d2ea973dd612dc4063cf78496c643a0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 10 12:53:53 2012 +0200

    [Indic] Reorder left matras to be closer to base

 src/hb-ot-shape-complex-indic-private.hh |  4 ---
 src/hb-ot-shape-complex-indic.cc         | 50
 +++++++++++++++++++++++++++++---
 2 files changed, 46 insertions(+), 8 deletions(-)

commit 1a1fa8c655a082fc1439608457ba717306cc83ca
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 10 12:20:21 2012 +0200

    [Indic] Treat the standalone cluster case reusing the consonant logic

 src/hb-ot-shape-complex-indic.cc | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit 190eb31a16178269aecaf5d2ecc9012f956749f4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 10 12:17:16 2012 +0200

    [Indic] Minor

 src/hb-ot-shape-complex-indic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c5306b6861cfaa50af40e8ceb058791fa06d7981
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 10 12:07:33 2012 +0200

    [Indic] Handle Vowel syllables

    Reusing the consonant logic!

 src/hb-ot-shape-complex-indic-private.hh |  3 +--
 src/hb-ot-shape-complex-indic.cc         | 11 ++++++-----
 2 files changed, 7 insertions(+), 7 deletions(-)

commit 6d8e0cb74c02f6bc09cd4abe9e4bc82062e1b517
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 10 11:41:51 2012 +0200

    [Indic] Simplify Reph logic

 src/hb-ot-shape-complex-indic.cc | 24 +++++-------------------
 1 file changed, 5 insertions(+), 19 deletions(-)

commit 3d25079f8d6be81b9b4b91d3a97016b8a572f571
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 10 11:37:42 2012 +0200

    [Indic] Don't form Reph is Ra is the only consonant in the syllable

 src/hb-ot-shape-complex-indic-private.hh |  2 +-
 src/hb-ot-shape-complex-indic.cc         | 10 ++++++++++
 2 files changed, 11 insertions(+), 1 deletion(-)

commit b99d63ae114fb58f129562b293a8a66543d499ad
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 10 11:32:52 2012 +0200

    [Indic] Increase max syllable length

    20 was way too low, one could hit a syllable with 7ish consonants
    with it.

 src/hb-ot-shape-complex-indic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a391ff50b9a7b6ac3e58d199ea726b20ee6839bb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 10 11:31:20 2012 +0200

    [Indic] Adjust base after sorting

 src/hb-ot-shape-complex-indic.cc | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

commit d3637edb248162970e202e9d0671540274192844
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 10 10:51:38 2012 +0200

    [Indic] Don't return for long syllables.  Just not sort.

 src/hb-ot-shape-complex-indic.cc | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

commit dfa0cade7fce3791e47eaa7edcd23da76c7a0ed0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 9 19:10:07 2012 +0200

    Fix Uniscribe clusters with multiple items

 src/hb-uniscribe.cc | 3 +++
 1 file changed, 3 insertions(+)

commit 86e5dd386a7989701da476db89be268e4ac1e219
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 9 18:57:37 2012 +0200

    [Indic] Don't give up syllable parsing upon junk

 src/hb-ot-shape-complex-indic-machine.rl | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit ef24cc8c8e2478a6352c340f4611a617646de4cc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 9 17:56:03 2012 +0200

    [Indic] Towards multi-cluster syllables and final reordering

 src/hb-ot-shape-complex-arabic.cc        |  2 +-
 src/hb-ot-shape-complex-indic-machine.rl | 21 ++++++++++-----
 src/hb-ot-shape-complex-indic-private.hh |  1 +
 src/hb-ot-shape-complex-indic.cc         | 45
 +++++++++++++++++++++++---------
 src/hb-ot-shape-complex-private.hh       |  5 ++--
 5 files changed, 51 insertions(+), 23 deletions(-)

commit a9844d41c6cb30d8a2d733130a0e72f51b6c81c1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 9 17:53:13 2012 +0200

    Combine lig_id and lig_comp into one byte, to free up one for Indic

 src/hb-ot-layout-gpos-table.hh       | 14 ++++++++------
 src/hb-ot-layout-gsub-table.hh       | 11 ++++-------
 src/hb-ot-layout-gsubgpos-private.hh | 26 ++++++++++++++++++++++----
 3 files changed, 34 insertions(+), 17 deletions(-)

commit 92332e5116271a5d96e532005fe750e7552a6cbb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 9 17:40:00 2012 +0200

    Minor

 src/hb-ot-shape-complex-indic.cc | 41
 ++++++++++++++++++++--------------------
 1 file changed, 21 insertions(+), 20 deletions(-)

commit dbccf87eef0d26838fa4bb3ae26410f6c4818836
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 9 17:24:39 2012 +0200

    [Indic] Make room for more reordering positions

 src/hb-ot-shape-complex-indic-private.hh | 213
 ++++++++++++++++---------------
 src/hb-ot-shape-complex-indic.cc         |  12 +-
 2 files changed, 115 insertions(+), 110 deletions(-)

commit d4480ace7fdbe48aeaf77278c032b8b2ef2ebe8e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 9 15:56:35 2012 +0200

    [Indic] Improve matra vs consonant ordering

    Another 1.5% down.

 src/hb-ot-shape-complex-indic-private.hh | 32
 ++++++++++++++++++++------------
 src/hb-ot-shape-complex-indic.cc         |  6 +++---
 src/indic.cc                             |  2 +-
 3 files changed, 24 insertions(+), 16 deletions(-)

commit 33c92e769563ec2a6c1249b57d8cac742eea6f88
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 9 15:41:51 2012 +0200

    [Indic] Categorize Anudatta

 src/hb-ot-shape-complex-indic.cc | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

commit 3943293a9942201d8fc8d59212fcc8cca5132e3d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 9 15:27:56 2012 +0200

    [Indic] Add joiner test cases for Devanagari

 .../indic/script-devanagari/misc/MANIFEST             |  1 +
 .../indic/script-devanagari/misc/joiners.txt          | 19
 +++++++++++++++++++
 2 files changed, 20 insertions(+)

commit 19d984edaa4f86c842345a9d4150597e045e1887
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 9 15:21:13 2012 +0200

    [Indic] Make sure Reph jumps over all matras to the right

    Another 12 thousand failures gone! (78 to go)

 src/hb-ot-shape-complex-indic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9034641333d7bfb41a0784cce72e43591faea083
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 9 15:04:58 2012 +0200

    [Indic] Keep Vedic signs at the right too

 src/hb-ot-shape-complex-indic.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit d1deaa2f5bd028e8076265cba92cffa4fa2834ac
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 9 15:04:13 2012 +0200

    Replace zerowidth invisible chars with a zero-advance space glyph

    Like Uniscribe does.

 src/hb-ot-shape-complex-arabic.cc  |  3 ++-
 src/hb-ot-shape-complex-indic.cc   | 20 -------------------
 src/hb-ot-shape-complex-private.hh |  4 ++--
 src/hb-ot-shape-normalize.cc       | 25 +++++++++--------------
 src/hb-ot-shape-private.hh         | 27 +++++++++++++++++++++++++
 src/hb-ot-shape.cc                 | 41
 +++++++++++++++++++++++++-------------
 src/hb-unicode-private.hh          | 38
 +++++++++++++++++++++++++++++++++++
 7 files changed, 105 insertions(+), 53 deletions(-)

commit 49e5da1591b8d28f01e7ff9caac9d9ac53668bba
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 9 13:23:27 2012 +0200

    [indic] Keep the syllable modifier marks to the right

    Shaping failures on Hindi Wikipedia go down from 25% to 14%!

 src/hb-ot-shape-complex-indic.cc | 2 ++
 1 file changed, 2 insertions(+)

commit 5b1260909350bffa3e3d06da346f9f86ce651dbb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 9 12:37:27 2012 +0200

    Minor

 src/hb-ot-shape-complex-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9ce939232bbce8f51e235195e3854d1e8bb961f8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 9 12:03:09 2012 +0200

    Minor

 src/hb-ot-shape-complex-indic-private.hh | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

commit 76b3409de6887c1cdd5c679939497b1b56f4554b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 9 11:43:43 2012 +0200

    [indic] Better Reph matching

 src/hb-ot-shape-complex-indic.cc | 21 +++++++++++++++------
 1 file changed, 15 insertions(+), 6 deletions(-)

commit df6d45c693c417bf311e6fa49f18a8558542e525
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 9 11:38:31 2012 +0200

    Minor

 src/hb-ot-shape-complex-indic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 412b91889d9a1ae477e8b6907d0b9a76e78a6c91
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 9 11:07:18 2012 +0200

    [indic] Apply Indic features in order

 src/hb-ot-shape-complex-indic.cc | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

commit 1ac075b227090a9ad930dcc1670236c176b27067
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 9 11:06:47 2012 +0200

    [indic] Apply rakaar forms

    Fixes 10% of the failures against all of Hindi Wikipedia!

 src/hb-ot-shape-complex-indic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2214a03900d32710573a1b05c7665195b3129761
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 9 09:54:54 2012 +0200

    Add hb-diff-ngrams

 test/shaping/Makefile.am      |  1 +
 test/shaping/hb-diff-ngrams   |  5 +++
 test/shaping/hb_test_tools.py | 71
 ++++++++++++++++++++++++++++++++++++++++---
 3 files changed, 72 insertions(+), 5 deletions(-)

commit 178e6dce01ad28c8708bad62ce0fb79c46e836dc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 9 08:57:29 2012 +0200

    Add N-gram generator

 test/shaping/hb_test_tools.py | 72
 +++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 70 insertions(+), 2 deletions(-)

commit 98669ceb77657d60435f2cb2e3fc18272c0a2c6a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 9 08:16:15 2012 +0200

    Use groupby()

 test/shaping/hb_test_tools.py | 26 ++++++++------------------
 1 file changed, 8 insertions(+), 18 deletions(-)

commit c438a14b62433db488b5c90854a4a3934adf3305
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 9 07:45:17 2012 +0200

    Add hb-diff-stat

 test/shaping/Makefile.am      |  1 +
 test/shaping/hb-diff-stat     |  5 +++++
 test/shaping/hb_test_tools.py | 22 ++++++++++++++++++++--
 3 files changed, 26 insertions(+), 2 deletions(-)

commit 1058d031e2046eb80331b0950eaff75c2bf608dc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 9 07:30:07 2012 +0200

    Make hb-diff-filter-failtures retain all test info for failed tests

 test/shaping/hb_test_tools.py | 33 ++++++++++++++++++++++++++-------
 1 file changed, 26 insertions(+), 7 deletions(-)

commit f1eb008cc727370e1bd0dc32fdf301f62d9ff981
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 8 23:41:41 2012 +0200

    Add hb-diff-colorize

    Accepts --format=html now.

 test/shaping/Makefile.am      |   1 +
 test/shaping/hb-diff          |   4 +-
 test/shaping/hb-diff-colorize |   7 ++
 test/shaping/hb_test_tools.py | 158
 +++++++++++++++++++++++++-----------------
 4 files changed, 106 insertions(+), 64 deletions(-)

commit 9155e4ffe00c96a2c14e14a300004b1038ca3a9c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 8 22:44:21 2012 +0200

    Cleanup diff

    Doesn't do --color anymore.  That will go into a new hb-diff-colorize
    tool.

 test/shaping/hb-diff          | 10 +++-------
 test/shaping/hb_test_tools.py | 32 ++++++++++++++++++--------------
 2 files changed, 21 insertions(+), 21 deletions(-)

commit 7d22135b4c3f8fb70552302bf8239df9976dddda
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 8 19:38:49 2012 +0200

    Make hb-diff faster

 test/shaping/hb_test_tools.py | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit a93e238e05a2f70a6e664e5d04ba25bbd54493dc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 8 18:55:29 2012 +0200

    More tests

 .../texts/in-tree/shaper-arabic/script-mongolian/misc/MANIFEST |  1 +
 .../texts/in-tree/shaper-arabic/script-mongolian/misc/poem.txt |  4 ++++
 .../in-tree/shaper-indic/indic/script-bengali/misc/MANIFEST    |  1 +
 .../in-tree/shaper-indic/indic/script-bengali/misc/reph.txt    |
 10 ++++++++++
 4 files changed, 16 insertions(+)

commit 1a2a4a0078dda834443edd421037a4bcbad18c5e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat May 5 22:38:20 2012 +0200

    Fix warning and build issues

    As reported by Jonathan Kew on the list.

 src/hb-set-private.hh | 2 +-
 src/main.cc           | 9 +++++----
 2 files changed, 6 insertions(+), 5 deletions(-)

commit a5e39fed85e069ba1afbf90408349ad99ceb0e1d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 25 00:14:46 2012 -0400

    Minor

 src/hb-set-private.hh | 2 ++
 src/hb-set.cc         | 2 ++
 2 files changed, 4 insertions(+)

commit 1827dc208c867e433a95237d1ed3fc7a73d1d9a7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 24 16:56:37 2012 -0400

    Add hb_ot_shape_glyphs_closure()

    Experimental API for now.

 src/hb-ot-map-private.hh |  7 ++++---
 src/hb-ot-shape.cc       | 35 +++++++++++++++++++++++++++++++++++
 src/hb-ot.h              |  8 ++++++++
 src/hb-set-private.hh    |  3 +++
 4 files changed, 50 insertions(+), 3 deletions(-)

commit bb09f0ec10216b11189b5e8584856adf0f14d1fc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 24 16:02:12 2012 -0400

    Minor

 src/hb-unicode.cc | 2 --
 1 file changed, 2 deletions(-)

commit 29a7e306e30e894f7a38daf73eca9fc772c58158
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 24 16:01:30 2012 -0400

    Minor

 src/hb-ot-shape-normalize.cc | 1 +
 1 file changed, 1 insertion(+)

commit 585b107cdee7305920dacc83c9ee1f8eeff7afd1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 24 16:00:50 2012 -0400

    Add test caes for a minority language using Bengali

    U+0985 BENGALI LETTER A followed by U+09D7 BENGALI AU LENGTH MARK.
    According to Bobby de Vos on the mailing list, this results in
    a dotted
    circle with most shaping engines, but is a legitimate sequence in this
    minority language.

    We reached the consensus on the list to NOT implement dotted-circle
    in HarfBuzz.

 .../texts/in-tree/shaper-indic/indic/script-bengali/misc/misc.txt
 | 1 +
 1 file changed, 1 insertion(+)

commit 6c6ccaf575392f6e6bb9a15534026e4ea462705b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 24 14:21:15 2012 -0400

    Add a few more set operations

    TODO: Tests for hb_set_t.

 src/hb-set-private.hh | 54
 +++++++++++++++++++++++++++++++++++++++++++++++++-
 src/hb-set.cc         | 55
 +++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-set.h          | 34 ++++++++++++++++++++++++++++---
 3 files changed, 139 insertions(+), 4 deletions(-)

commit 5caece67ab9eee322bdcdf6f4b607eadde297e56
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 23 23:03:12 2012 -0400

    Make closure() return void

 src/hb-ot-layout-gsub-table.hh       | 142 +++++++++++++-----------------
 src/hb-ot-layout-gsubgpos-private.hh | 165
 ++++++++++++++++++-----------------
 src/hb-ot-layout.cc                  |  10 +--
 src/hb-ot-layout.h                   |   8 +-
 src/hb-set-private.hh                |  20 ++---
 5 files changed, 157 insertions(+), 188 deletions(-)

commit 0b08adb3539f2ec29682456b89c69e89ff5e9c03
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 23 22:41:09 2012 -0400

    Add hb_set_t

 TODO                               |   2 +
 src/Makefile.am                    |   3 +
 src/hb-ot-layout-common-private.hh |   1 +
 src/hb-ot-layout-private.hh        |  47 ---------------
 src/hb-ot-layout.h                 |   2 -
 src/hb-set-private.hh              |  95 +++++++++++++++++++++++++++++
 src/hb-set.cc                      | 120
 +++++++++++++++++++++++++++++++++++++
 src/hb-set.h                       |  91 ++++++++++++++++++++++++++++
 src/hb.h                           |   1 +
 9 files changed, 313 insertions(+), 49 deletions(-)

commit 5b93e8d94fb4c2474816304ae3f52e1c704882de
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 23 22:26:13 2012 -0400

    Update copyright headers

 src/hb-ot-layout-common-private.hh   | 2 +-
 src/hb-ot-layout-gpos-table.hh       | 2 +-
 src/hb-ot-layout-gsub-table.hh       | 2 +-
 src/hb-ot-layout-gsubgpos-private.hh | 2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

commit 6a9be5bd3524dc3eb1e88d1063bde2e4d8b57011
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 23 22:23:17 2012 -0400

    Rename hb_glyph_map_t to hb_set_t

 src/hb-ot-layout-common-private.hh   | 16 ++++++++--------
 src/hb-ot-layout-gsubgpos-private.hh | 12 ++++++------
 src/hb-ot-layout-private.hh          |  2 +-
 src/hb-ot-layout.cc                  |  2 +-
 src/hb-ot-layout.h                   |  4 ++--
 src/hb-ot-map-private.hh             |  2 +-
 src/hb-ot-map.cc                     |  2 +-
 7 files changed, 20 insertions(+), 20 deletions(-)

commit a4385f0b0a6949e2ce49e6a147ad4beaa724f6c3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 23 22:20:14 2012 -0400

    Improve clustering

 src/hb-ot-shape.cc | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

commit 8e3715f8a16b315c1c7dd4b256e7f68a36c53e7c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 23 22:18:54 2012 -0400

    Minor

 src/hb-buffer-private.hh          | 2 +-
 src/hb-buffer.cc                  | 2 +-
 src/hb-graphite2.cc               | 5 ++---
 src/hb-ot-shape-complex-arabic.cc | 4 ++--
 src/hb-ot-shape-complex-misc.cc   | 4 ++--
 5 files changed, 8 insertions(+), 9 deletions(-)

commit d2984a241e4819474d827b1dd5d4b6d76596b3a5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 23 17:21:14 2012 -0400

    Add map->substitute_closure()

 src/hb-ot-map-private.hh |  3 +++
 src/hb-ot-map.cc         | 15 +++++++++++++++
 2 files changed, 18 insertions(+)

commit 31081f7390e5130df72f89acc609ccab5dc77a48
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 23 16:54:58 2012 -0400

    Implement closure() for Context and ChainContext lookups

 src/hb-ot-layout-common-private.hh   |  54 ++++++
 src/hb-ot-layout-gsubgpos-private.hh | 347
 ++++++++++++++++++++++++++++-------
 src/hb-ot-layout-private.hh          |  23 ++-
 3 files changed, 351 insertions(+), 73 deletions(-)

commit c64ddab3c34897cd520d4d73a054866e649e8793
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 23 15:28:35 2012 -0400

    Flesh out closure() for GSUB

    The GSUBGPOS part still missing.

 src/hb-ot-layout-common-private.hh |  61 ++++++++++++++------
 src/hb-ot-layout-gsub-table.hh     | 112
 ++++++++++++++++++++++++++++---------
 src/hb-ot-layout-private.hh        |  34 +++++++++++
 src/hb-ot-layout.h                 |   2 +-
 4 files changed, 165 insertions(+), 44 deletions(-)

commit 0da132bde4d576a03095d6738507954f7f85103d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 23 14:21:33 2012 -0400

    Fix Coverage iters

 src/hb-ot-layout-common-private.hh | 30 +++++++++++++++++++++---------
 1 file changed, 21 insertions(+), 9 deletions(-)

commit 3e32cd9570fd8b09901fb790b80365ae425f681a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 23 13:20:52 2012 -0400

    Minor

 src/hb-ot-layout-gsubgpos-private.hh | 1 -
 src/hb-ot-layout.cc                  | 6 +++---
 src/hb-ot-layout.h                   | 8 ++++++++
 src/hb-private.hh                    | 4 +++-
 4 files changed, 14 insertions(+), 5 deletions(-)

commit 650ac00da3d2f988197393f34d40f0ba1a0fa093
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 23 13:17:09 2012 -0400

    Minor refactoring

 src/hb-ot-layout-gpos-table.hh       | 27 +++++++++++--------------
 src/hb-ot-layout-gsub-table.hh       | 39
 +++++++++++++++++-------------------
 src/hb-ot-layout-gsubgpos-private.hh |  8 ++------
 src/hb-ot-layout.cc                  |  6 ++++--
 4 files changed, 36 insertions(+), 44 deletions(-)

commit f94b0aa64609654497ced9c00312c9643eb69053
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 23 13:04:38 2012 -0400

    Add "closure" operation stubs to GSUB

    Filling in.

 src/hb-ot-layout-gsub-table.hh       | 179
 +++++++++++++++++++++++++++++++++++
 src/hb-ot-layout-gsubgpos-private.hh | 110 ++++++++++++++++++++-
 src/hb-ot-layout.cc                  |   8 ++
 3 files changed, 293 insertions(+), 4 deletions(-)

commit 7d50d502635d7c95e6bd091e7d4cc993f0853f76
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 23 13:02:14 2012 -0400

    Add Coverage iterators

 src/hb-ot-layout-common-private.hh | 59
 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 59 insertions(+)

commit 3ed4634ec349fa9e943ad23718c04be4dd4bba62
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 19 22:34:06 2012 -0400

    Add Indic inspection tool

 src/Makefile.am                          |   7 +-
 src/hb-ot-shape-complex-indic-private.hh | 264
 +++++++++++++++++++++++++++++++
 src/hb-ot-shape-complex-indic.cc         | 229
 +--------------------------
 src/indic.cc                             |  46 ++++++
 4 files changed, 317 insertions(+), 229 deletions(-)

commit a06411ecf93c7e5256e363eef3ef69554896dd55
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 19 22:28:25 2012 -0400

    Minor matra renumbering

    Should have no visible effect.

 src/hb-ot-shape-complex-indic.cc | 30 +++++++++++++++++-------------
 1 file changed, 17 insertions(+), 13 deletions(-)

commit 36608941f3cc530fea57282fa175e4cc3b4c66c6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 19 22:21:38 2012 -0400

    Add GSUB "would_apply" API

    To be used in the Indic shaper later.  Unused for now.

 src/hb-ot-layout-gsub-table.hh | 140
 ++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 138 insertions(+), 2 deletions(-)

commit a0d4caeb91fa5e5f2090db4efc35c64ff9a64789
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 17 13:42:30 2012 -0400

    Minor

 TODO | 3 +++
 1 file changed, 3 insertions(+)

commit a5e40542ab9508f0ba6f822f1262d93fccb71f45
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 17 12:37:19 2012 -0400

    Make font immutable in hb_shape()

 src/hb-shape.cc | 2 ++
 1 file changed, 2 insertions(+)

commit 3cde23664fbbe9cd2ac1b8fd5eb2ea288309cc9c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 17 11:44:49 2012 -0400

    Minor note re Graphite

 src/hb-graphite2.cc | 3 +++
 1 file changed, 3 insertions(+)

commit 4dc2449d92308f8dd366142831c0b85bd30ea5a9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 17 11:39:48 2012 -0400

    Fix leak in graphite

 src/hb-graphite2.cc | 1 +
 1 file changed, 1 insertion(+)

commit 0290bbf8611aa881daed907f22256a431250c90a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 17 10:28:21 2012 -0400

    Add another Thai test

 test/shaping/texts/in-tree/shaper-thai/misc/misc.txt | 1 +
 1 file changed, 1 insertion(+)

commit 9ceca3aeb14cc096f5f87660cf7351bc35073084
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 16 21:05:51 2012 -0400

    Fix ragel regexp in vowel-based syllable

    As reported by datao zhang on the mailing list.

 src/hb-ot-shape-complex-indic-machine.rl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b870afcd1b436614af95db6dc297e54c8f03f0cd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 16 21:05:11 2012 -0400

    Rewrite ragel expression to better match the one on MS spec

    https://www.microsoft.com/typography/otfntdev/devanot/shaping.aspx

 src/hb-ot-shape-complex-indic-machine.rl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 95cefdf96efe43a44133aa8a186155cf4e63e2b7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 16 18:08:20 2012 -0400

    Add --utf8-clusters

    Also fix cairo cluster generation.

 util/hb-shape.cc     |  8 +++++---
 util/hb-view.hh      |  2 +-
 util/helper-cairo.cc | 22 +++++++++++++++++-----
 util/helper-cairo.hh |  3 ++-
 util/options.cc      | 19 ++++++++++++++-----
 util/options.hh      | 26 ++++++++++++++++----------
 util/view-cairo.cc   |  5 +++--
 util/view-cairo.hh   |  3 ++-
 8 files changed, 60 insertions(+), 28 deletions(-)

commit effb42e5c520128bdc2e29398ed801730c5c0f52
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 16 16:04:07 2012 -0400

    Always use cairo_show_text_glyphs()

    Better catches cluster errors.

 util/view-cairo.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 799cfdd15ab369580b2283200c3aca6866214b59
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 16 16:00:36 2012 -0400

    Make page progression be right to left for vertical text

 util/view-cairo.cc | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit a5f1834f57ea3fb254f5c7d372747de316fcc8f1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 16 15:55:13 2012 -0400

    Apply 'liga' for vertical writing mode too

    Apparently that's what Kazuraki uses to form vertical ligatures,
    which suggests that it's what Adobe does.

 src/hb-ot-shape.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 4d85252bda25cddd1fbdd744687e449888f0b5fa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 16 15:54:26 2012 -0400

    Add Japanese test data from Adobe's Kazuraki font ligatures

 test/shaping/texts/in-tree/shaper-default/MANIFEST |  1 +
 .../shaper-default/script-japanese/MANIFEST        |  1 +
 .../shaper-default/script-japanese/misc/MANIFEST   |  2 +
 .../script-japanese/misc/kazuraki-liga-lines.txt   |  8 ++++
 .../script-japanese/misc/kazuraki-liga.txt         | 53
 ++++++++++++++++++++++
 5 files changed, 65 insertions(+)

commit e74616b8898b5f18d9bf82b9e81aefad056c1e36
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Apr 15 14:12:13 2012 -0400

    Add comment

 src/hb-private.hh | 8 ++++++++
 1 file changed, 8 insertions(+)

commit 683b503f30bba29d57a93d7e8ac7138c2e7f49f1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Apr 14 20:47:14 2012 -0400

    Minor

 src/hb-ot-shape-normalize.cc | 11 +++++++++--
 src/hb-ot-shape-private.hh   |  9 ---------
 src/hb-ot-shape.cc           |  9 ++++++++-
 3 files changed, 17 insertions(+), 12 deletions(-)

commit b9f199c8e38cc5ed0d73845568630f3bcbdd4374
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Apr 14 20:23:58 2012 -0400

    Move code around

 src/hb-ot-shape-private.hh | 40 ----------------------------------------
 src/hb-ot-shape.cc         | 45
 +++++++++++++++++++++++++++++++++++++++++----
 2 files changed, 41 insertions(+), 44 deletions(-)

commit 38a83019e6a7f4aa47662fd557344f62ae001abe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Apr 14 19:40:18 2012 -0400

    Minor

 src/hb-common.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit d4adade217a61007dd2da5cd9eccf889f79a019a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Apr 14 19:23:17 2012 -0400

    Add assert

 src/hb-ot-shape.cc | 2 ++
 1 file changed, 2 insertions(+)

commit fe28b997fbbeb2cfeab62ac453993ccffe3e6719
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Apr 14 19:19:26 2012 -0400

    Add HB_DIRECTION_IS_VALID

 src/hb-common.h        | 1 +
 test/api/test-common.c | 7 +++++++
 2 files changed, 8 insertions(+)

commit 5e88aa66822ba64324b4428c9ffbe06a43b4f310
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Apr 14 18:51:50 2012 -0400

    Remove public enum names again

    As was reported to me, glib-mkenum does not understand named enums,
    so remove for now.

 src/hb-blob.h               | 2 +-
 src/hb-common.h             | 6 +++---
 src/hb-ot-layout-private.hh | 2 +-
 3 files changed, 5 insertions(+), 5 deletions(-)

commit 08569c0eaab026c7122c0dc29922cf44011c4d10
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Apr 14 18:47:07 2012 -0400

    Minor

 TODO | 2 ++
 1 file changed, 2 insertions(+)

commit 4bf90f648313e35d21b427a956aa1fe762bae757
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 12 17:38:23 2012 -0400

    Make HB_DIRECTION_INVALID be zero

    This changes all the HB_DIRECTION_* enum member values, but is
    nicer, in preparation for making hb_segment_properties_t public.

 src/hb-common.cc       |  7 ++++---
 src/hb-common.h        | 20 ++++++++++----------
 test/api/test-common.c |  9 +++++++--
 3 files changed, 21 insertions(+), 15 deletions(-)

commit d01402da9c756f90a84bfb1f964fd56caf2b35c3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 12 17:38:02 2012 -0400

    Minor

 TODO | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit 69b84a8f6c789726815261c2e86692de7a65d6e8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 12 15:50:40 2012 -0400

    Fix hb-view surface size calc for vertical text

    For some reason it doesn't quite work with IranianNastaliq, but
    that looks like a font issue.

 util/helper-cairo.hh |  5 +++--
 util/options.hh      |  7 +++++++
 util/view-cairo.cc   | 31 +++++++++++++++++++++----------
 util/view-cairo.hh   |  1 +
 4 files changed, 32 insertions(+), 12 deletions(-)

commit 6bd9b479b8b2befbb0847282e93beade197c8038
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 12 14:53:53 2012 -0400

    Hide backend-specific shape functions

    Also remove shaper_options argument to hb_shape_full().  That was
    unused and for "future".  Let it go.

    More shaper API coming in preparation for plan/planned API.

 configure.ac                                   |  6 ++--
 src/Makefile.am                                | 11 +++----
 src/hb-fallback-shape-private.hh               |  9 +++---
 src/hb-fallback-shape.cc                       |  9 +++---
 src/{hb-ot-shape.h => hb-graphite2-private.hh} | 30 ++++++++----------
 src/hb-graphite2.cc                            |  5 ++-
 src/hb-graphite2.h                             |  7 -----
 src/hb-ot-shape-private.hh                     |  8 +++--
 src/hb-ot-shape.cc                             | 11 +++----
 src/hb-ot.h                                    |  1 -
 src/hb-shape.cc                                | 24 ++++++---------
 src/hb-shape.h                                 |  1 -
 src/hb-uniscribe-private.hh                    | 42
 ++++++++++++++++++++++++++
 src/hb-uniscribe.cc                            |  9 +++---
 src/hb-uniscribe.h                             |  7 -----
 util/options.hh                                |  2 +-
 16 files changed, 96 insertions(+), 86 deletions(-)

commit c6035cf802c60f0526f421f39a55886061df94ee
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 12 13:23:59 2012 -0400

    Add names to enums

    gdb was showing <anonymous enum> instead of useful stuff, so name
    all our enums.

 src/hb-blob.h                      | 2 +-
 src/hb-common.h                    | 6 +++---
 src/hb-ot-layout-common-private.hh | 2 +-
 src/hb-ot-layout-gdef-table.hh     | 2 +-
 src/hb-ot-layout-gpos-table.hh     | 5 ++---
 src/hb-ot-layout-gsub-table.hh     | 2 +-
 src/hb-ot-layout-private.hh        | 2 +-
 7 files changed, 10 insertions(+), 11 deletions(-)

commit d1c9eb458c843215da8df84b596bfae51fee135b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 12 13:17:44 2012 -0400

    Make it an error to include non-top-level headers

    Users should #include <hb.h> (or hb-ft.h, hb-glib.h, etc), but
    never things like hb-shape.h directly.  This makes it easier to
    refactor headers later on without breaking compatibility.

 src/hb-blob.h       | 4 ++++
 src/hb-buffer.h     | 4 ++++
 src/hb-common.h     | 4 ++++
 src/hb-font.h       | 4 ++++
 src/hb-ft.h         | 2 --
 src/hb-glib.h       | 1 +
 src/hb-gobject.h    | 1 +
 src/hb-graphite2.h  | 5 +++--
 src/hb-icu.h        | 1 +
 src/hb-ot-layout.h  | 8 +++++---
 src/hb-ot-shape.h   | 9 +++++----
 src/hb-ot-tag.h     | 6 +++++-
 src/hb-ot.h         | 2 ++
 src/hb-private.hh   | 5 ++++-
 src/hb-shape.h      | 4 ++++
 src/hb-unicode.h    | 4 ++++
 src/hb-uniscribe.h  | 3 +--
 src/hb-version.h.in | 4 ++++
 src/hb.h            | 2 ++
 19 files changed, 58 insertions(+), 15 deletions(-)

commit 323190c27b80cddc9b3c42d19f1f243e2acb2411
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 12 12:29:10 2012 -0400

    Minor

 src/hb-ft.cc | 2 ++
 1 file changed, 2 insertions(+)

commit 0e3361464b00b76aa7375515163e0710a691db0c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 12 10:06:52 2012 -0400

    Fix bug with not setting Unicode props of the first character

    Fixes Mongolian shaping issue:
    https://bugs.freedesktop.org/show_bug.cgi?id=45695

 src/hb-ot-shape.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f9746b600a6e14dbe48aabfc17df8f12a5b46b11
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 12 09:59:26 2012 -0400

    Minor

 test/shaping/texts/in-tree/shaper-arabic/script-mongolian/misc/misc.txt |
 1 -
 1 file changed, 1 deletion(-)

commit 7470b0ff805e4ff59d23d7a1808888fafdf550eb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 12 09:44:27 2012 -0400

    Add Mongolian test case

 test/shaping/texts/in-tree/MANIFEST                                   |
 1 +
 .../texts/in-tree/shaper-arabic/script-mongolian/misc/MANIFEST        |
 1 +
 .../texts/in-tree/shaper-arabic/script-mongolian/misc/misc.txt        |
 4 ++++
 test/shaping/texts/in-tree/shaper-thai/MANIFEST                       |
 1 +
 test/shaping/texts/in-tree/shaper-thai/misc/MANIFEST                  |
 1 +
 5 files changed, 8 insertions(+)

commit c65662b71e6160f5adfb6226d97589ca457d98b9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 12 09:31:55 2012 -0400

    Fix left-matra positioning in Indic

    Fixes 200 failures out of previous 4290 cases in the OO.o Indic
    dictionary (of ~16000 entries).

 src/hb-ot-shape-complex-indic.cc | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit 6d16403bfaa4d710d80c93298eca7211ecaa419f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 11 22:04:42 2012 -0400

    Adjust TODO

 TODO | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 029a82d81d8ffa1b6771d19018d592fec1dbc934
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 11 22:00:46 2012 -0400

    [hangul] Apply *jmo features to all Hangul chars

    This is what old HB does.  Morever, fixes rendering with Win8 malgun
    font.  The Win7 version doesn't compose with either Uniscribe nor HB,
    but Win8 version works as expected, like Uniscribe, with this change.

    Lets call Hangul done for now.

 src/hb-ot-shape-complex-misc.cc | 9 +++++++++
 1 file changed, 9 insertions(+)

commit 3baae2440de69577d330209edb708e7d2bb2231d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 11 21:54:37 2012 -0400

    Update TODO

 TODO | 28 +++++++++++++++-------------
 1 file changed, 15 insertions(+), 13 deletions(-)

commit a4976447cd1a1feffdecd0d501a2690716b1cf4b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 11 17:48:40 2012 -0400

    Add Hangul test

 test/shaping/texts/in-tree/shaper-hangul/script-hangul/misc/misc.txt |
 1 +
 1 file changed, 1 insertion(+)

commit e95d912b3b0af027c4384553f95236db822e5acc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 11 17:33:02 2012 -0400

    Fix diff tool

 test/shaping/hb_test_tools.py | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 41ae674f6871f43d0a6e4ca67a747074d63ae576
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 11 17:11:05 2012 -0400

    Don't create hb_apply_context_t per glyph!

    I couldn't measure significant performance gains out of this; maybe
    about 5% (with one million Malayalam strings).  Still, not bad.
    But reminds me that optimizing this codebase without profiling first
    is simply not going to work.  Oh well...

 src/hb-ot-layout-gpos-table.hh       | 24 ++++++------------------
 src/hb-ot-layout-gsub-table.hh       | 26 +++++++-------------------
 src/hb-ot-layout-gsubgpos-private.hh | 22 ++++++++++++++++++++++
 3 files changed, 35 insertions(+), 37 deletions(-)

commit 4a1e02ef7979d58fe0c726ee7c665b2420c42ddd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 11 14:37:53 2012 -0400

    Fix shape to presentation forms font check

    As reported by Jonathan Kew on the list.

 src/hb-ot-shape-complex-arabic.cc | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

commit 6062f5f01436b4044be729890ed00b9b62737824
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 11 14:19:55 2012 -0400

    Fix build with some compilers

    As reported by Jonathan Kew on the list.

 src/hb-ot-shape-complex-misc.cc | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit acd88e659fdb2fa1cbf7171f0a1c7fbc81b9f298
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 10 18:02:20 2012 -0400

    In Arabic fallback shaping, check that the font has glyph for new char

 src/hb-ot-shape-complex-arabic.cc  | 12 +++++++-----
 src/hb-ot-shape-complex-indic.cc   |  2 +-
 src/hb-ot-shape-complex-misc.cc    |  6 +++---
 src/hb-ot-shape-complex-private.hh |  7 ++++---
 src/hb-ot-shape.cc                 |  2 +-
 5 files changed, 16 insertions(+), 13 deletions(-)

commit 7752aa73e72301a46c64c533c1e423ff5987cc05
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 10 17:22:14 2012 -0400

    Minor

 src/hb-ot-shape-private.hh |  1 -
 src/hb-ot-shape.cc         | 10 ----------
 2 files changed, 11 deletions(-)

commit 939c010211b063f78874a3b72b032c1ed9a13b87
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 10 17:20:05 2012 -0400

    Implement Arabic fallback shaping mandatory ligatures

 src/gen-arabic-table.py                 | 32
 ++++++++++++++++++++++----------
 src/hb-ot-shape-complex-arabic-table.hh | 28 +++++++++++++++++++---------
 src/hb-ot-shape-complex-arabic.cc       | 31
 +++++++++++++++++++++++++++++++
 src/hb-ot-shape-complex-misc.cc         |  4 ++--
 4 files changed, 74 insertions(+), 21 deletions(-)

commit b7d04eb606800100faa11100d2adf559e297a4ee
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 10 16:44:38 2012 -0400

    Do Arabic fallback shaping

 src/hb-ot-shape-complex-arabic.cc | 38
 +++++++++++++++++++++++++++++++++-----
 1 file changed, 33 insertions(+), 5 deletions(-)

commit ae4a2b9365051c23c9a299cf76f3ab7e661999b1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 10 16:25:08 2012 -0400

    Generate fallback Arabic shaping table

    Not hooked up yet.

 src/Makefile.am                         |   6 +-
 src/gen-arabic-table.py                 | 220
 +++++++++++++++++++++++---------
 src/gen-indic-table.py                  |   4 +-
 src/hb-ot-shape-complex-arabic-table.hh | 205
 ++++++++++++++++++++++++++++-
 4 files changed, 367 insertions(+), 68 deletions(-)

commit 3b26f96ebe859570d14c6902afc23462bca40712
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 10 10:52:07 2012 -0400

    Add Thai shaper that does SARA AM decomposition / reordering

    That's not in the OpenType spec, but it's what MS and Adobe do.

 src/hb-buffer.cc                   |   1 +
 src/hb-ot-shape-complex-misc.cc    | 104
 ++++++++++++++++++++++++++++++++++++-
 src/hb-ot-shape-complex-private.hh |   8 +++
 3 files changed, 112 insertions(+), 1 deletion(-)

commit 0b6d2ac6a1d04877ae4542fc2a3b920185547053
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 10 10:52:03 2012 -0400

    Minor

 TODO | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)

commit e099dd6592b4ea887696330f4718efb572494d93
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 10 10:47:33 2012 -0400

    Add Thai test case for SARA AM decomposition

 test/shaping/texts/in-tree/shaper-hangul/MANIFEST    | 1 +
 test/shaping/texts/in-tree/shaper-thai/misc/misc.txt | 5 +++++
 2 files changed, 6 insertions(+)

commit 4450dc9354b18cd68980b0891b24ea8efa4f38b6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Apr 7 22:07:23 2012 -0400

    Move around

 test/shaping/texts/in-tree/MANIFEST
 | 1 +
 test/shaping/texts/in-tree/shaper-default/MANIFEST
 | 1 -
 .../in-tree/{shaper-default => shaper-hangul}/script-hangul/MANIFEST
 | 0
 .../{shaper-default => shaper-hangul}/script-hangul/misc/MANIFEST
 | 0
 .../{shaper-default => shaper-hangul}/script-hangul/misc/misc.txt
 | 0
 5 files changed, 1 insertion(+), 1 deletion(-)

commit d4cc44716c1e098f8abbc0e495404598026ef242
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Apr 7 21:52:28 2012 -0400

    Move code around, in prep for Thai/Lao shaper

 src/hb-buffer-private.hh                 |  5 +++++
 src/hb-buffer.cc                         | 23 +++++++++++++++++++++++
 src/hb-ot-shape-complex-indic-machine.rl | 14 +-------------
 3 files changed, 29 insertions(+), 13 deletions(-)

commit c9a841f4452921c5361b8f5697bbff7736ce60cd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Apr 7 15:06:55 2012 -0400

    Add simple Hangul shaper that recomposes Jamo when feasible

    Previously, we were NOT actually recomposing Hangul Jamo.  We do now.
    The two lines in:

    test/shaping/texts/in-tree/shaper-default/script-hangul/misc/misc.txt

    Now render the same with the UnDotum.ttf font.  Previously the second
    linle was rendering boxes.

    We can also start applying OpenType Jamo features later.  At this
    time,
    I have no idea how the 'ljmo', 'vjmo', 'tjmo' features are supposed to
    work.  Maybe someone can explain them to me?

 src/hb-ot-shape-complex-misc.cc    | 16 ++++++++++++++++
 src/hb-ot-shape-complex-private.hh | 15 +++++++++++++--
 2 files changed, 29 insertions(+), 2 deletions(-)

commit 968318455304804dc53045e8ba0cd4d76800c02d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Apr 7 14:57:21 2012 -0400

    Implement normalization mode
    HB_OT_SHAPE_NORMALIZATION_MODE_COMPOSED_FULL

    In this mode we try composing CCC=0 with CCC=0 characters.  Useful for
    Hangul.

 src/hb-ot-shape-normalize.cc | 21 +++++++++++++--------
 1 file changed, 13 insertions(+), 8 deletions(-)

commit bec2ac4fde1ba0dd6dba02adbb836ce569a5cf6f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Apr 7 14:51:17 2012 -0400

    Bring normalization algorithm closer to the spec

    No logical difference so far.

 src/hb-ot-shape-normalize.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit e02d9257863b49e33ab5942971266349d3c548f6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Apr 7 14:49:13 2012 -0400

    Flip logic around

 src/hb-ot-shape-normalize.cc | 38 +++++++++++++-------------------------
 1 file changed, 13 insertions(+), 25 deletions(-)

commit aaa25d5f458127f53f4b5ecdeb986ae91fabbad3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 5 17:27:23 2012 -0400

    Add Hangul test case

    Composed, and decomposed, of the same text.

 test/shaping/texts/in-tree/shaper-default/MANIFEST                    |
 1 +
 test/shaping/texts/in-tree/shaper-default/script-hangul/MANIFEST      |
 1 +
 test/shaping/texts/in-tree/shaper-default/script-hangul/misc/MANIFEST |
 1 +
 test/shaping/texts/in-tree/shaper-default/script-hangul/misc/misc.txt |
 2 ++
 4 files changed, 5 insertions(+)

commit 11138ccff71f442da1fcf64faa0e1d22e083e775
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 5 17:25:19 2012 -0400

    Add normalize mode

    In preparation for Hangul shaper.

 src/Makefile.am                      |  1 +
 src/hb-ot-layout-common-private.hh   |  1 -
 src/hb-ot-shape-complex-arabic.cc    |  6 +--
 src/hb-ot-shape-complex-indic.cc     |  6 +--
 src/hb-ot-shape-complex-misc.cc      |  8 ++--
 src/hb-ot-shape-complex-private.hh   | 13 ++++---
 src/hb-ot-shape-normalize-private.hh | 46 +++++++++++++++++++++++
 src/hb-ot-shape-normalize.cc         | 73
 +++++++++++++++++-------------------
 src/hb-ot-shape-private.hh           |  7 +---
 src/hb-ot-shape.cc                   |  2 +-
 10 files changed, 102 insertions(+), 61 deletions(-)

commit 6769f21d579a354e32577ec57348e97d2cb1b438
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 5 16:46:46 2012 -0400

    More moving code around

 src/hb-ot-shape-normalize.cc | 2 +-
 src/hb-ot-shape-private.hh   | 8 --------
 src/hb-ot-shape.cc           | 2 +-
 src/hb-unicode-private.hh    | 8 ++++++++
 4 files changed, 10 insertions(+), 10 deletions(-)

commit 2db2a566826ed4763ce69629194ec656bd48b0bd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 5 16:40:37 2012 -0400

    Move code around

 src/hb-ot-shape-private.hh | 53
 --------------------------------------------
 src/hb-unicode-private.hh  |  3 +++
 src/hb-unicode.cc          | 55
 ++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 58 insertions(+), 53 deletions(-)

commit cad3821f3d5b68d490b0728bd37bd57428ec809c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 7 17:13:25 2012 -0500

    More sorting by Unicode version

    This is the most convenient way to browse scripts.

 src/hb-common.cc                   |  2 +-
 src/hb-common.h                    |  2 +-
 src/hb-ot-shape-complex-private.hh | 94
 ++++++++++++++++++++++++++++----------
 3 files changed, 72 insertions(+), 26 deletions(-)

commit 317b9504d7a4faa70dcf21e5c2aff4792dbd201a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 7 16:51:29 2012 -0500

    Minor

 src/hb-ot-shape-complex-private.hh | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

commit fa2673c1ee954ddbbfbfca7cced7b839d7776fc0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 7 15:52:02 2012 -0500

    More Unicode script age annotation, and a couple more RTL scripts

    Cross-checked with Mark Davis's spreadsheet at http://goo.gl/x9ilM

 src/hb-common.cc |  8 ++++++++
 src/hb-common.h  | 52
 +++++++++++++++++++++++++++++-----------------------
 2 files changed, 37 insertions(+), 23 deletions(-)

commit 6d4016f1ba48d409800dc3281b93e5cd58c99d9f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 7 15:33:14 2012 -0500

    Make src tests pass again

 src/gen-arabic-table.py                 | 11 ++++++-----
 src/gen-indic-table.py                  |  9 +++++----
 src/hb-ot-shape-complex-arabic-table.hh |  6 ++++++
 src/hb-ot-shape-complex-indic-table.hh  |  4 ++++
 4 files changed, 21 insertions(+), 9 deletions(-)

commit 7da435f08cc406080a5ee9b1ab5351db6a93acae
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 7 15:20:20 2012 -0500

    Separate Unicode 3.1 and Unicode 3.2 additions

 src/hb-common.h | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

commit f91136cb528e298651c4a8a8a1d6dc54136e09ce
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 7 12:56:22 2012 -0500

    Route three Unicode 6.1 scripts through Indic shaper

 src/hb-ot-shape-complex-private.hh | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

commit f32c0012ad794cd2df669dfc7b0438fafbe38b2d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 7 12:53:34 2012 -0500

    Add Unicode 6.1.0 scripts

 src/hb-common.h |  9 +++++++++
 src/hb-glib.cc  | 11 ++++++++++-
 2 files changed, 19 insertions(+), 1 deletion(-)

commit 50e810cd0e55c25fddb0a2fd0861c51fbf65700e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 7 12:49:08 2012 -0500

    Lydian and Kharoshthi are right-to-left

 src/hb-common.cc | 6 ++++++
 1 file changed, 6 insertions(+)

commit a52835635e4a2a12715aff2febb561515a10cd5a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 7 12:38:39 2012 -0500

    Whitespace

 src/hb-common.h | 194
 ++++++++++++++++++++++++++++----------------------------
 1 file changed, 97 insertions(+), 97 deletions(-)

commit 183224684a45d7dcd7d28510d4383a7a7cb3dff3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 7 12:21:28 2012 -0500

    Use generic shaper for Buhid

    As requested by Jonathan Kew.

    We need to devise a better mechanism to choose which scripts to
    pass through the Indic shaper.  Moreover, currently we are storing
    data for some scripts in the Indic shaper that are not even going
    through that shaper.  Need to find a better way...

 src/hb-ot-shape-complex-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit cdc8b491a8e7cec5082ca2ad0346c1f41fdd5c92
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 7 12:08:33 2012 -0500

    Update Indic table to Unicode 6.1 data

 src/Makefile.am                         |  15 +++
 src/gen-indic-table.py                  |  20 ++--
 src/hb-ot-shape-complex-arabic-table.hh |  35 -------
 src/hb-ot-shape-complex-indic-table.hh  | 178
 +++++++++++++++++++-------------
 4 files changed, 134 insertions(+), 114 deletions(-)

commit e3b2e077f549b04779c08a9fedb1f35b9f11075c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 7 10:21:24 2012 -0500

    Typo

 src/hb-ot-shape-normalize.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c346671b6b9b05fa51b95c16212eb29ac69510fa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Mar 6 20:47:50 2012 -0500

    Minor doc fixes

 src/hb-ot-shape-normalize.cc | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

commit 406044986a68676f3050f9350ccc448c615fc685
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Mar 6 20:24:31 2012 -0500

    Add Hebrew diacritics test cases

    From:
    https://bugzilla.mozilla.org/show_bug.cgi?id=662055

 test/shaping/texts/in-tree/shaper-default/MANIFEST        |  1 +
 .../texts/in-tree/shaper-default/script-hebrew/MANIFEST   |  1 +
 .../in-tree/shaper-default/script-hebrew/misc/MANIFEST    |  1 +
 .../shaper-default/script-hebrew/misc/diacritics.txt      | 15
 +++++++++++++++
 4 files changed, 18 insertions(+)

commit 461b9b6347e4f58589f5be82c40a2df61da2c715
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Mar 1 18:11:19 2012 -0800

    Fix cluster formation in Indic

    Makes number of failures against Uniscribe with hi_IN dictionary from
    OO.o to go down from 6334 to 4290.  Not bad for a one-line change!

    Mozilla Bug 729626 - ASAN: heap-buffer-overflow HTML

 src/hb-ot-shape-complex-indic-machine.rl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit bc71ad4973842f25216b48842a46d6c9cbce6aa3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Mar 1 17:30:29 2012 -0800

    Fix atomic-int op on Apple

    The OSAtomicAdd32Barrier operator returns the new value, we want the
    old value.

 src/hb-blob.cc           | 2 +-
 src/hb-object-private.hh | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit a1970d9afc15b2c6b7513b923019bb223bd95154
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Feb 24 13:51:09 2012 -0500

    Add support for atomic int and mutex on Apple systems

    So, apparently there's no atomic int 'get' method on Apple.
    You have to
    add(0) to get.  And that's not const-friendly.  So switch inert-object
    checking to a non-atomic get.  This, however, is safe, and a
    negligible
    performance boost too.

 src/hb-mutex-private.hh  | 14 +++++++++-----
 src/hb-object-private.hh | 15 ++++++++++-----
 2 files changed, 19 insertions(+), 10 deletions(-)

commit 8004429102d7d3a8c42e1cbfe231835de4d3d782
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 23 18:47:17 2012 -0500

    Remove unused hb_atomic_int_set()

    Apparently it can't be implemented on OS X.  We weren't using
    it anyway.

 src/hb-object-private.hh | 4 ----
 1 file changed, 4 deletions(-)

commit 45227c10e416894ba7f84fdf72d849cecdb9b898
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 23 19:47:43 2012 -0500

    Add hb-warning.cc.  Oops!

 src/hb-warning.cc | 53
 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 53 insertions(+)

commit bd7ff1dec5b92ee59fa060e793f88499adcd8c11
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Feb 23 15:06:16 2012 -0500

    Allow disabling multi-threaded support

    By defining HB_NO_MT.

    Also, only warn once per missing MT feature support.

    Mozilla Bug 666661 - gfx/harfbuzz/src/hb-prive.h - compiler warnings
    on mac

 src/Makefile.am          |  1 +
 src/hb-mutex-private.hh  |  6 +++---
 src/hb-object-private.hh | 11 +++--------
 3 files changed, 7 insertions(+), 11 deletions(-)

commit 634c9e3423a9c23793400d1f56e98070e00b6056
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 22 16:43:21 2012 -0500

    Minor

 src/hb-ot-shape-private.hh | 69
 ++++++++++++++++++++++++++--------------------
 1 file changed, 39 insertions(+), 30 deletions(-)

commit 514b6f88668da4eab85103c536dabe24b7bc457b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 22 16:34:37 2012 -0500

    Followup: Reorder Hebrew combining classes for better rendering

    Patch from Jonathan Kew.

    Bug 662055 - advanced Hebrew diacritics are shown correctly only in
    particular order.

 src/hb-ot-shape-private.hh | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

commit 6e78607ea71e3e5306f88f227ddba76133d16ed0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 22 16:31:15 2012 -0500

    Reorder Hebrew combining classes for better rendering

    Patch from Jonathan Kew.

    Bug 662055 - advanced Hebrew diacritics are shown correctly only in
    particular order

 src/hb-ot-shape-private.hh | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

commit 7a70ca78e06c676befe1ae17199fff1f000f8188
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 21 11:31:47 2012 -0500

    Add test case from https://bugzilla.mozilla.org/show_bug.cgi?id=714067

 test/shaping/texts/in-tree/shaper-arabic/script-arabic/misc/MANIFEST
 | 1 +
 .../in-tree/shaper-arabic/script-arabic/misc/ligature-diacritics.txt
 | 1 +
 2 files changed, 2 insertions(+)

commit f51e167436a51b890ffe3f7f7920498fa287acd9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 30 09:48:33 2012 -0500

    Minor error handling

 util/options.cc | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit bee74efbdebc4e46ce57daa8a88bcf06b13411fe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 27 02:14:08 2012 -0500

    Update git.mk to new upstream

 git.mk | 44 +++++++++++++++++++++++++++++++++-----------
 1 file changed, 33 insertions(+), 11 deletions(-)

commit 134aa7bc7e3f9b9de76c9de2ed4b7344a7b323f9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 27 02:09:40 2012 -0500

    Make checks more OS X friendly

 src/check-internal-symbols.sh | 21 +++++++++++++--------
 src/check-libstdc++.sh        | 21 +++++++++++++--------
 2 files changed, 26 insertions(+), 16 deletions(-)

commit 6152199368399bf98368ea3c794fa760b49756ba
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 27 01:57:59 2012 -0500

    Fix check-header-guards on OS X

 src/check-header-guards.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c62e41b6aad1fc56225d0e53d6d4abd0f005fe3b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 27 02:20:58 2012 -0500

    Minor

 configure.ac | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 1a5a91dc0d8bf4b72a2f22dc6300b06ad7000b79
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 22 19:57:00 2012 -0500

    Add a few more tests

 .../in-tree/shaper-indic/indic/script-devanagari/misc/misc.txt   | 3 +++
 .../shaper-indic/south-east-asian/script-thai/misc/misc.txt      |
 9 +++++++++
 2 files changed, 12 insertions(+)

commit 1795f3a222a85cdf80c78a0e9181d23dd1673876
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 22 19:29:45 2012 -0500

    Add a couple Thai test cases from Thep

 test/shaping/texts/in-tree/shaper-indic/south-east-asian/MANIFEST       |
 1 +
 .../texts/in-tree/shaper-indic/south-east-asian/script-thai/MANIFEST    |
 1 +
 .../in-tree/shaper-indic/south-east-asian/script-thai/misc/MANIFEST     |
 1 +
 .../in-tree/shaper-indic/south-east-asian/script-thai/misc/misc.txt     |
 2 ++
 4 files changed, 5 insertions(+)

commit ec3f506682fc6e2d7d7455e49d6c82ac9dd0c660
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 22 19:10:55 2012 -0500

    Add Devanagari test from Tom Hacohen

 .../texts/in-tree/shaper-indic/indic/script-devanagari/misc/misc.txt
 | 1 +
 1 file changed, 1 insertion(+)

commit 71be4ca3dd5eaaca31957e34fef11f6aeb4aebdf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 22 16:26:49 2012 -0500

    Also ignore "ChangeLog" in manifests

 test/shaping/hb_test_tools.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 3c9a39ecd65990f2c7b29bb741c6a538fa425531
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 22 16:21:19 2012 -0500

    Remove newline

 test/shaping/hb_test_tools.py | 2 ++
 1 file changed, 2 insertions(+)

commit e4ccbfe276db5ed098ddcf78a7bb8f2da4263128
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 22 16:07:32 2012 -0500

    Allow --color=html in hb-diff

    Not that useful right now as we don't escape < and >.  Perhaps
    another tool can be added to convert the ANSI output to HTML.

 test/shaping/hb-diff          |  2 +-
 test/shaping/hb_test_tools.py | 22 +++++++++++++++++-----
 2 files changed, 18 insertions(+), 6 deletions(-)

commit 71632c96daa4ba15e13f4d9e7f2c121d0162614e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 22 15:31:44 2012 -0500

    Fallback to Latin script if the font has no other usable scripts

    Patch and description from Jonathan Kew:

    It turns out that some legacy Thai fonts provide OpenType substitution
    features to implement mark positioning, but (incorrectly) put those
    features/lookups under the 'latn' script tag instead of using 'thai'
    (or
    possibly 'DFLT'). See
    https://bugzilla.mozilla.org/show_bug.cgi?id=719366 for an example and
    more detailed description.

    Although this is really a font bug, I suggest that we could improve
    the
    rendering of such fonts by looking for the 'latn' as a fallback if
    neither the requested script nor "default" is found in
    hb_ot_layout_table_choose_script. Suggested patch against harfbuzz
    master is attached.

    This does _not_ affect the other kind of legacy Thai font, where
    custom
    code to support vendor-specific PUA codepoints would be needed. I'm
    not
    keen to go down that path; IMO, such fonts should be ruthlessly
    stamped
    out in favour of standards-based solutions. :)

    JK

 src/hb-ot-layout.cc | 9 +++++++++
 1 file changed, 9 insertions(+)

commit 8f80f93491be73f05eba908591c856339acda51e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 21 20:03:25 2012 -0500

    More shoveling around

 test/shaping/hb-diff-filter-failures |  2 +-
 test/shaping/hb-manifest-read        |  2 +-
 test/shaping/hb_test_tools.py        | 27 ++++++++++++++++-----------
 3 files changed, 18 insertions(+), 13 deletions(-)

commit c78c6e9844a23144ce7fa29afbf57b74587bfcd0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 21 19:55:16 2012 -0500

    Cleanup

 test/shaping/hb-manifest-read |  2 +-
 test/shaping/hb_test_tools.py | 13 ++++++++-----
 2 files changed, 9 insertions(+), 6 deletions(-)

commit ab94a9c542f7ec9143335b73493ccb75d4586a3a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 21 19:43:58 2012 -0500

    Distribute testing tools

 test/shaping/Makefile.am | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

commit 3e86feb54c94e46b60168fd2a4773183eb1354b4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 21 19:40:30 2012 -0500

    Speed up colorless diff

 test/shaping/hb_test_tools.py | 6 ++++++
 1 file changed, 6 insertions(+)

commit 1e58df603457cb4b57da78b5d4a8df66aa7d7be4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 21 19:37:31 2012 -0500

    Cleanup manifest code

 test/shaping/hb_test_tools.py | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

commit 956d552e108eeb50bb3ad21588830af7a2f3862a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 21 19:31:51 2012 -0500

    Port hb-manifest-update to Python

 test/shaping/hb-manifest-update | 23 +++--------------------
 test/shaping/hb_test_tools.py   | 38
 ++++++++++++++++++++++++++++++--------
 2 files changed, 33 insertions(+), 28 deletions(-)

commit 3a34e9e351ed0ee3eb27f9c0f154bc227f1226bf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 21 19:15:41 2012 -0500

    Ignore Broken Pipe errors

 test/shaping/hb_test_tools.py | 76
 +++++++++++++++++++++++++++----------------
 1 file changed, 48 insertions(+), 28 deletions(-)

commit d5300241680844f5625f32792f7dd7181ed05f9b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 21 19:07:22 2012 -0500

    [util] Make clusters work with char offset instead of UTF-8 offset

    This means the --features indices also refer to char position
    instead of byte position now.  Same for cluster values reported
    by hb-shape.

    Will add an option for byte indices later.

 util/options.cc |  7 +++++--
 util/options.hh | 12 ++++++++++++
 2 files changed, 17 insertions(+), 2 deletions(-)

commit 0f68f4a0b5ee78cbdb2a89a9a1a9125afe72ed2f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 21 18:59:48 2012 -0500

    Correctly print out Unicode strings

 util/options.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f22089ac24f43ff048c2a0f1c1f604ae3a96be8b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 20 21:21:47 2012 -0500

    Misc fixes

 test/shaping/hb-diff          | 8 ++++----
 test/shaping/hb_test_tools.py | 4 ++--
 2 files changed, 6 insertions(+), 6 deletions(-)

commit 96968bfae5ce61a0a098bf0e6acd2210a309a499
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 20 21:16:34 2012 -0500

    Port hb-manifest-read to Python

 test/shaping/hb-diff-filter-failures |  2 +-
 test/shaping/hb-manifest-read        | 37 +++------------------------
 test/shaping/hb_test_tools.py        | 49
 ++++++++++++++++++++++++++++++++----
 3 files changed, 48 insertions(+), 40 deletions(-)

commit a59ed46fa4f7b76605f8ce6e75783ead406468f5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 20 20:56:32 2012 -0500

    Add final residues from test-shape-complex

 .../shaping/texts/in-tree/shaper-arabic/script-nko/misc/MANIFEST | 1 +
 .../shaping/texts/in-tree/shaper-arabic/script-nko/misc/misc.txt |
 5 +++++
 test/shaping/texts/in-tree/shaper-default/MANIFEST               | 1 +
 .../texts/in-tree/shaper-default/script-linear-b/MANIFEST        | 1 +
 .../texts/in-tree/shaper-default/script-linear-b/misc/MANIFEST   | 1 +
 .../texts/in-tree/shaper-default/script-linear-b/misc/misc.txt   | 1 +
 test/shaping/texts/in-tree/shaper-indic/MANIFEST                 | 1 +
 .../shaping/texts/in-tree/shaper-indic/south-east-asian/MANIFEST | 1 +
 .../in-tree/shaper-indic/south-east-asian/script-khmer/MANIFEST  | 1 +
 .../shaper-indic/south-east-asian/script-khmer/misc/MANIFEST     | 1 +
 .../shaper-indic/south-east-asian/script-khmer/misc/misc.txt     |
 9 +++++++++
 11 files changed, 23 insertions(+)

commit 820e0ed318d9b187a131baa9491d5d390ec33ef4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 20 20:51:52 2012 -0500

    Add Punjabi tests from test-shape-complex also

 .../texts/in-tree/shaper-indic/indic/script-punjabi/misc/MANIFEST
 | 1 +
 .../texts/in-tree/shaper-indic/indic/script-punjabi/misc/misc.txt
 | 1 +
 2 files changed, 2 insertions(+)

commit a7d71c105772fb612871b4cae59bdae47bbc8751
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 20 20:50:09 2012 -0500

    Add Tamil test data from Muguntharaj Subramanian

 .../shaper-indic/indic/script-tamil/misc/MANIFEST  |  1 +
 .../shaper-indic/indic/script-tamil/misc/misc.txt  | 43
 ++++++++++++++++++++++
 2 files changed, 44 insertions(+)

commit 5992a9941e7f19181df1e34e79e514ccedc3d284
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 20 20:48:14 2012 -0500

    Import test data from late test-shape-complex

 .../in-tree/shaper-arabic/script-arabic/MANIFEST   |  1 +
 .../shaper-arabic/script-arabic/misc/MANIFEST      |  0
 .../in-tree/shaper-arabic/script-mandaic/MANIFEST  |  1 +
 .../shaper-arabic/script-mandaic/misc/MANIFEST     |  0
 .../shaper-arabic/script-mongolian/MANIFEST        |  1 +
 .../shaper-arabic/script-mongolian/misc/MANIFEST   |  0
 .../in-tree/shaper-arabic/script-nko/MANIFEST      |  1 +
 .../in-tree/shaper-arabic/script-nko/misc/MANIFEST |  0
 .../in-tree/shaper-arabic/script-syriac/MANIFEST   |  1 +
 .../shaper-arabic/script-syriac/misc/MANIFEST      |  0
 .../shaper-indic/indic/script-assamese/MANIFEST    |  1 +
 .../indic/script-assamese/misc/MANIFEST            |  0
 .../shaper-indic/indic/script-bengali/MANIFEST     |  1 +
 .../indic/script-bengali/misc/MANIFEST             |  1 +
 .../indic/script-bengali/misc/misc.txt             | 48
 ++++++++++++++++++++++
 .../shaper-indic/indic/script-devanagari/MANIFEST  |  1 +
 .../indic/script-devanagari/misc/MANIFEST          |  1 +
 .../indic/script-devanagari/misc/misc.txt          | 23 +++++++++++
 .../shaper-indic/indic/script-gujarati/MANIFEST    |  1 +
 .../indic/script-gujarati/misc/MANIFEST            |  0
 .../shaper-indic/indic/script-kannada/MANIFEST     |  1 +
 .../indic/script-kannada/misc/MANIFEST             |  1 +
 .../indic/script-kannada/misc/misc.txt             | 17 ++++++++
 .../shaper-indic/indic/script-malayalam/MANIFEST   |  1 +
 .../indic/script-malayalam/misc/MANIFEST           |  1 +
 .../indic/script-malayalam/misc/misc.txt           | 22 ++++++++++
 .../shaper-indic/indic/script-oriya/MANIFEST       |  1 +
 .../shaper-indic/indic/script-oriya/misc/MANIFEST  |  1 +
 .../shaper-indic/indic/script-oriya/misc/misc.txt  | 28 +++++++++++++
 .../shaper-indic/indic/script-punjabi/MANIFEST     |  1 +
 .../indic/script-punjabi/misc/MANIFEST             |  0
 .../shaper-indic/indic/script-sinhala/MANIFEST     |  1 +
 .../indic/script-sinhala/misc/MANIFEST             |  1 +
 .../indic/script-sinhala/misc/misc.txt             |  6 +++
 .../shaper-indic/indic/script-tamil/MANIFEST       |  1 +
 .../shaper-indic/indic/script-tamil/misc/MANIFEST  |  0
 .../shaper-indic/indic/script-telugu/MANIFEST      |  1 +
 .../shaper-indic/indic/script-telugu/misc/MANIFEST |  1 +
 .../shaper-indic/indic/script-telugu/misc/misc.txt | 11 +++++
 39 files changed, 178 insertions(+)

commit 46ac45647760984c6220f04ba4521038e628b169
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 20 19:32:17 2012 -0500

    Fix Unicode encoding issue

 test/shaping/hb_test_tools.py | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit ad34e39a4a320310b1edd9fc4d7e740373510c69
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 20 18:39:27 2012 -0500

    Make test tools interactive

    By bypassing readlines() buffering.

 test/shaping/hb_test_tools.py | 33 +++++++++++++++++++++++++++------
 1 file changed, 27 insertions(+), 6 deletions(-)

commit 91540a7d97051a3d6e97fdcd1e98af23e0780cdd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 20 18:27:52 2012 -0500

    Move most testing logic into hb_test_tools.py

    The actual utils are one-liners now.

 test/shaping/hb-diff                 |  77 ++-------------
 test/shaping/hb-diff-filter-failures |  27 +-----
 test/shaping/hb-unicode-decode       |  18 +---
 test/shaping/hb-unicode-encode       |  21 +---
 test/shaping/hb-unicode-prettyname   |  53 +----------
 test/shaping/hb_test_tools.py        | 180
 +++++++++++++++++++++++++++++++++++
 6 files changed, 197 insertions(+), 179 deletions(-)

commit 66aa080033dcff07b8bb5e7b1f0e3511f067d6c1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 20 17:36:10 2012 -0500

    Remove test-shape-complex

    New shaping testsuite and framework coming.

 test/api/Makefile.am               |    6 -
 test/api/test-shape-complex.c      | 1237
 ------------------------------------
 test/shaping/hb-unicode-prettyname |    1 +
 3 files changed, 1 insertion(+), 1243 deletions(-)

commit ed459bfb63c58b59fc0dbe25021c396e8ef8683c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 20 17:24:05 2012 -0500

    Add hb-unicode-encode

 test/shaping/hb-unicode-encode | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

commit d8134bc017ca3383e0978ddee57070eb3aab8964
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 20 17:18:59 2012 -0500

    [hb-shape] Add parantheses around --show-text output

 util/options.cc | 2 ++
 1 file changed, 2 insertions(+)

commit b12c4d43614199f8910a06507603f6c431d9df67
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 20 17:17:44 2012 -0500

    Add hb-diff-filter-failures

 test/shaping/hb-diff-filter-failures | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

commit d4bffbc55bf4c23ab5c7f46af613aeecc79ac515
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 20 17:16:35 2012 -0500

    Move

 test/shaping/texts/MANIFEST                                           |
 4 +---
 test/shaping/texts/in-tree/MANIFEST                                   |
 3 +++
 test/shaping/texts/{ => in-tree}/shaper-arabic/MANIFEST               | 0
 test/shaping/texts/{ => in-tree}/shaper-arabic/script-arabic/MANIFEST | 0
 .../shaping/texts/{ => in-tree}/shaper-arabic/script-mandaic/MANIFEST | 0
 .../texts/{ => in-tree}/shaper-arabic/script-mongolian/MANIFEST       | 0
 test/shaping/texts/{ => in-tree}/shaper-arabic/script-nko/MANIFEST    | 0
 test/shaping/texts/{ => in-tree}/shaper-arabic/script-syriac/MANIFEST | 0
 test/shaping/texts/{ => in-tree}/shaper-default/MANIFEST              | 0
 test/shaping/texts/{ => in-tree}/shaper-indic/MANIFEST                | 0
 test/shaping/texts/{ => in-tree}/shaper-indic/indic/MANIFEST          | 0
 .../texts/{ => in-tree}/shaper-indic/indic/script-assamese/MANIFEST   | 0
 .../{ => in-tree}/shaper-indic/indic/script-assamese/utrrs/LICENSE    | 0
 .../{ => in-tree}/shaper-indic/indic/script-assamese/utrrs/MANIFEST   | 0
 .../{ => in-tree}/shaper-indic/indic/script-assamese/utrrs/README     | 0
 .../{ => in-tree}/shaper-indic/indic/script-assamese/utrrs/SOURCES    | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-AdditionalVowels.txt    | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Consonants.txt          | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-DependentVowels.txt     | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Digits.txt              | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-IndependentVowels.txt   | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Reserved.txt            | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-VariousSigns.txt        | 0
 .../shaper-indic/indic/script-assamese/utrrs/codepoint/MANIFEST       | 0
 .../script-assamese/utrrs/gpos/IndicFontFeatureGPOS-AboveBase.txt     | 0
 .../script-assamese/utrrs/gpos/IndicFontFeatureGPOS-BelowBase.txt     | 0
 .../shaper-indic/indic/script-assamese/utrrs/gpos/MANIFEST            | 0
 .../indic/script-assamese/utrrs/gsub/IndicFontFeatureGSUB.txt         | 0
 .../shaper-indic/indic/script-assamese/utrrs/gsub/MANIFEST            | 0
 .../texts/{ => in-tree}/shaper-indic/indic/script-bengali/MANIFEST    | 0
 .../{ => in-tree}/shaper-indic/indic/script-bengali/utrrs/LICENSE     | 0
 .../{ => in-tree}/shaper-indic/indic/script-bengali/utrrs/MANIFEST    | 0
 .../{ => in-tree}/shaper-indic/indic/script-bengali/utrrs/README      | 0
 .../{ => in-tree}/shaper-indic/indic/script-bengali/utrrs/SOURCES     | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-AdditionalVowels.txt    | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Consonants.txt          | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-DependentVowels.txt     | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Digits.txt              | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-IndependentVowels.txt   | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Reserved.txt            | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-VariousSigns.txt        | 0
 .../shaper-indic/indic/script-bengali/utrrs/codepoint/MANIFEST        | 0
 .../script-bengali/utrrs/gpos/IndicFontFeatureGPOS-AboveBase.txt      | 0
 .../script-bengali/utrrs/gpos/IndicFontFeatureGPOS-BelowBase.txt      | 0
 .../shaper-indic/indic/script-bengali/utrrs/gpos/MANIFEST             | 0
 .../indic/script-bengali/utrrs/gsub/IndicFontFeatureGSUB.txt          | 0
 .../shaper-indic/indic/script-bengali/utrrs/gsub/MANIFEST             | 0
 .../texts/{ => in-tree}/shaper-indic/indic/script-devanagari/MANIFEST | 0
 .../{ => in-tree}/shaper-indic/indic/script-devanagari/utrrs/LICENSE  | 0
 .../{ => in-tree}/shaper-indic/indic/script-devanagari/utrrs/MANIFEST | 0
 .../{ => in-tree}/shaper-indic/indic/script-devanagari/utrrs/README   | 0
 .../{ => in-tree}/shaper-indic/indic/script-devanagari/utrrs/SOURCES  | 0
 .../codepoint/IndicFontFeatureCodepoint-AdditionalConsonants.txt      | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-AdditionalVowels.txt    | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Consonants.txt          | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-DependentVowels.txt     | 0
 .../codepoint/IndicFontFeatureCodepoint-DevnagariSpecificAddition.txt | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Digits.txt              | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-GenericPunctuation.txt  | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-IndependentVowels.txt   | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-VariousSigns.txt        | 0
 .../shaper-indic/indic/script-devanagari/utrrs/codepoint/MANIFEST     | 0
 .../script-devanagari/utrrs/gpos/IndicFontFeatureGPOS-AboveBase.txt   | 0
 .../script-devanagari/utrrs/gpos/IndicFontFeatureGPOS-BelowBase.txt   | 0
 .../shaper-indic/indic/script-devanagari/utrrs/gpos/MANIFEST          | 0
 .../indic/script-devanagari/utrrs/gsub/IndicFontFeatureGSUB.txt       | 0
 .../shaper-indic/indic/script-devanagari/utrrs/gsub/MANIFEST          | 0
 .../texts/{ => in-tree}/shaper-indic/indic/script-gujarati/MANIFEST   | 0
 .../{ => in-tree}/shaper-indic/indic/script-gujarati/utrrs/LICENSE    | 0
 .../{ => in-tree}/shaper-indic/indic/script-gujarati/utrrs/MANIFEST   | 0
 .../{ => in-tree}/shaper-indic/indic/script-gujarati/utrrs/README     | 0
 .../{ => in-tree}/shaper-indic/indic/script-gujarati/utrrs/SOURCES    | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-AdditionalVowels.txt    | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Consonants.txt          | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-DependentVowels.txt     | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Digits.txt              | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-IndependentVowels.txt   | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Reserved.txt            | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-VariousSigns.txt        | 0
 .../shaper-indic/indic/script-gujarati/utrrs/codepoint/MANIFEST       | 0
 .../script-gujarati/utrrs/gpos/IndicFontFeatureGPOS-AboveBase.txt     | 0
 .../script-gujarati/utrrs/gpos/IndicFontFeatureGPOS-BelowBase.txt     | 0
 .../shaper-indic/indic/script-gujarati/utrrs/gpos/MANIFEST            | 0
 .../indic/script-gujarati/utrrs/gsub/IndicFontFeatureGSUB.txt         | 0
 .../shaper-indic/indic/script-gujarati/utrrs/gsub/MANIFEST            | 0
 .../texts/{ => in-tree}/shaper-indic/indic/script-kannada/MANIFEST    | 0
 .../{ => in-tree}/shaper-indic/indic/script-kannada/utrrs/LICENSE     | 0
 .../{ => in-tree}/shaper-indic/indic/script-kannada/utrrs/MANIFEST    | 0
 .../{ => in-tree}/shaper-indic/indic/script-kannada/utrrs/README      | 0
 .../{ => in-tree}/shaper-indic/indic/script-kannada/utrrs/SOURCES     | 0
 .../codepoint/IndicFontFeatureCodepoint-AdditionalConsonants.txt      | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-AdditionalVowels.txt    | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Consonants.txt          | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-DependentVowels.txt     | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Digits.txt              | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-IndependentVowels.txt   | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Reserved.txt            | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-VariousSigns.txt        | 0
 .../shaper-indic/indic/script-kannada/utrrs/codepoint/MANIFEST        | 0
 .../script-kannada/utrrs/gpos/IndicFontFeatureGPOS-AboveBase.txt      | 0
 .../shaper-indic/indic/script-kannada/utrrs/gpos/MANIFEST             | 0
 .../indic/script-kannada/utrrs/gsub/IndicFontFeatureGSUB.txt          | 0
 .../shaper-indic/indic/script-kannada/utrrs/gsub/MANIFEST             | 0
 .../texts/{ => in-tree}/shaper-indic/indic/script-malayalam/MANIFEST  | 0
 .../{ => in-tree}/shaper-indic/indic/script-malayalam/utrrs/LICENSE   | 0
 .../{ => in-tree}/shaper-indic/indic/script-malayalam/utrrs/MANIFEST  | 0
 .../{ => in-tree}/shaper-indic/indic/script-malayalam/utrrs/README    | 0
 .../{ => in-tree}/shaper-indic/indic/script-malayalam/utrrs/SOURCES   | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-AdditionalVowels.txt    | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Consonants.txt          | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-DependentVowels.txt     | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Digits.txt              | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-IndependentVowels.txt   | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Reserved.txt            | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-VariousSigns.txt        | 0
 .../shaper-indic/indic/script-malayalam/utrrs/codepoint/MANIFEST      | 0
 .../indic/script-malayalam/utrrs/gsub/IndicFontFeatureGSUB.txt        | 0
 .../shaper-indic/indic/script-malayalam/utrrs/gsub/MANIFEST           | 0
 .../texts/{ => in-tree}/shaper-indic/indic/script-oriya/MANIFEST      | 0
 .../texts/{ => in-tree}/shaper-indic/indic/script-oriya/utrrs/LICENSE | 0
 .../{ => in-tree}/shaper-indic/indic/script-oriya/utrrs/MANIFEST      | 0
 .../texts/{ => in-tree}/shaper-indic/indic/script-oriya/utrrs/README  | 0
 .../texts/{ => in-tree}/shaper-indic/indic/script-oriya/utrrs/SOURCES | 0
 .../codepoint/IndicFontFeatureCodepoint-AdditionalConsonants.txt      | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-AdditionalVowels.txt    | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Consonants.txt          | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-DependentVowels.txt     | 0
 .../script-oriya/utrrs/codepoint/IndicFontFeatureCodepoint-Digits.txt | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-IndependentVowels.txt   | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-OriyaSpecific.txt       | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Reserved.txt            | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-VariousSigns.txt        | 0
 .../shaper-indic/indic/script-oriya/utrrs/codepoint/MANIFEST          | 0
 .../indic/script-oriya/utrrs/gsub/IndicFontFeatureGSUB.txt            | 0
 .../{ => in-tree}/shaper-indic/indic/script-oriya/utrrs/gsub/MANIFEST | 0
 .../texts/{ => in-tree}/shaper-indic/indic/script-punjabi/MANIFEST    | 0
 .../{ => in-tree}/shaper-indic/indic/script-punjabi/utrrs/LICENSE     | 0
 .../{ => in-tree}/shaper-indic/indic/script-punjabi/utrrs/MANIFEST    | 0
 .../{ => in-tree}/shaper-indic/indic/script-punjabi/utrrs/README      | 0
 .../{ => in-tree}/shaper-indic/indic/script-punjabi/utrrs/SOURCES     | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Consonants.txt          | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-DependentVowels.txt     | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Digits.txt              | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-GurmukhiSpecific.txt    | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-IndependentVowels.txt   | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Reserved.txt            | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-VariousSigns.txt        | 0
 .../shaper-indic/indic/script-punjabi/utrrs/codepoint/MANIFEST        | 0
 .../script-punjabi/utrrs/gpos/IndicFontFeatureGPOS-AboveBase.txt      | 0
 .../script-punjabi/utrrs/gpos/IndicFontFeatureGPOS-BelowBase.txt      | 0
 .../shaper-indic/indic/script-punjabi/utrrs/gpos/MANIFEST             | 0
 .../indic/script-punjabi/utrrs/gsub/IndicFontFeatureGSUB.txt          | 0
 .../shaper-indic/indic/script-punjabi/utrrs/gsub/MANIFEST             | 0
 .../texts/{ => in-tree}/shaper-indic/indic/script-sinhala/MANIFEST    | 0
 .../{ => in-tree}/shaper-indic/indic/script-sinhala/utrrs/LICENSE     | 0
 .../{ => in-tree}/shaper-indic/indic/script-sinhala/utrrs/MANIFEST    | 0
 .../{ => in-tree}/shaper-indic/indic/script-sinhala/utrrs/README      | 0
 .../{ => in-tree}/shaper-indic/indic/script-sinhala/utrrs/SOURCES     | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Consonants.txt          | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-DependentVowels.txt     | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-IndependentVowels.txt   | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Punctuation.txt         | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-VariousSigns.txt        | 0
 .../shaper-indic/indic/script-sinhala/utrrs/codepoint/MANIFEST        | 0
 .../indic/script-sinhala/utrrs/gpos/IndicFontFeatureGPOS.txt          | 0
 .../shaper-indic/indic/script-sinhala/utrrs/gpos/MANIFEST             | 0
 .../indic/script-sinhala/utrrs/gsub/IndicFontFeatureGSUB-Conjunct.txt | 0
 .../script-sinhala/utrrs/gsub/IndicFontFeatureGSUB-Rakaaraansaya.txt  | 0
 .../indic/script-sinhala/utrrs/gsub/IndicFontFeatureGSUB-Repaya.txt   | 0
 .../script-sinhala/utrrs/gsub/IndicFontFeatureGSUB-Special-Cases.txt  | 0
 .../utrrs/gsub/IndicFontFeatureGSUB-TouchingLetters.txt               | 0
 .../indic/script-sinhala/utrrs/gsub/IndicFontFeatureGSUB-Yansaya.txt  | 0
 .../indic/script-sinhala/utrrs/gsub/IndicFontFeatureGSUB.txt          | 0
 .../shaper-indic/indic/script-sinhala/utrrs/gsub/MANIFEST             | 0
 .../texts/{ => in-tree}/shaper-indic/indic/script-tamil/MANIFEST      | 0
 .../texts/{ => in-tree}/shaper-indic/indic/script-tamil/utrrs/LICENSE | 0
 .../{ => in-tree}/shaper-indic/indic/script-tamil/utrrs/MANIFEST      | 0
 .../texts/{ => in-tree}/shaper-indic/indic/script-tamil/utrrs/README  | 0
 .../texts/{ => in-tree}/shaper-indic/indic/script-tamil/utrrs/SOURCES | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Consonants.txt          | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-CurrencySymbols.txt     | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-DependentVowels.txt     | 0
 .../script-tamil/utrrs/codepoint/IndicFontFeatureCodepoint-Digits.txt | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-IndependentVowels.txt   | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Numerics.txt            | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Reserved.txt            | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Symbols.txt             | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-TamilSymbol.txt         | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-VariousSigns.txt        | 0
 .../shaper-indic/indic/script-tamil/utrrs/codepoint/MANIFEST          | 0
 .../indic/script-tamil/utrrs/gpos/IndicFontFeatureGPOS-AboveBase.txt  | 0
 .../indic/script-tamil/utrrs/gpos/IndicFontFeatureGPOS-BelowBase.txt  | 0
 .../{ => in-tree}/shaper-indic/indic/script-tamil/utrrs/gpos/MANIFEST | 0
 .../indic/script-tamil/utrrs/gsub/IndicFontFeatureGSUB.txt            | 0
 .../{ => in-tree}/shaper-indic/indic/script-tamil/utrrs/gsub/MANIFEST | 0
 .../texts/{ => in-tree}/shaper-indic/indic/script-telugu/MANIFEST     | 0
 .../{ => in-tree}/shaper-indic/indic/script-telugu/utrrs/LICENSE      | 0
 .../{ => in-tree}/shaper-indic/indic/script-telugu/utrrs/MANIFEST     | 0
 .../texts/{ => in-tree}/shaper-indic/indic/script-telugu/utrrs/README | 0
 .../{ => in-tree}/shaper-indic/indic/script-telugu/utrrs/SOURCES      | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-AdditionalVowels.txt    | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Consonants.txt          | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-DependentVowels.txt     | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Digits.txt              | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-IndependentVowels.txt   | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-Reserved.txt            | 0
 .../utrrs/codepoint/IndicFontFeatureCodepoint-VariousSigns.txt        | 0
 .../shaper-indic/indic/script-telugu/utrrs/codepoint/MANIFEST         | 0
 .../indic/script-telugu/utrrs/gpos/IndicFontFeatureGPOS-AboveBase.txt | 0
 .../shaper-indic/indic/script-telugu/utrrs/gpos/MANIFEST              | 0
 .../indic/script-telugu/utrrs/gsub/IndicFontFeatureGSUB.txt           | 0
 .../shaper-indic/indic/script-telugu/utrrs/gsub/MANIFEST              | 0
 212 files changed, 4 insertions(+), 3 deletions(-)

commit 45f640c98d752161e51eda63061d70fad9ab9f68
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 20 14:24:21 2012 -0500

    Minor

 test/shaping/hb-diff | 35 ++++++++++++++++++++---------------
 1 file changed, 20 insertions(+), 15 deletions(-)

commit 47ca766a9cbdfb304f60e23a4dee0a155075a277
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 20 14:21:53 2012 -0500

    Minor

 test/shaping/hb-unicode-decode     | 2 +-
 test/shaping/hb-unicode-prettyname | 5 ++---
 2 files changed, 3 insertions(+), 4 deletions(-)

commit 8f1db07894674b02c36ca9352e666b4618ee8832
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 20 13:57:57 2012 -0500

    [test/shaping] Add some Indic test data for the new test suite

    Imported from UTRRS.

 test/shaping/texts/shaper-indic/indic/MANIFEST     |    2 +-
 .../shaper-indic/indic/script-assamese/MANIFEST    |    1 +
 .../indic/script-assamese/utrrs/LICENSE            |   19 +
 .../indic/script-assamese/utrrs/MANIFEST           |    3 +
 .../indic/script-assamese/utrrs/README             |   13 +
 .../indic/script-assamese/utrrs/SOURCES            |    2 +
 .../IndicFontFeatureCodepoint-AdditionalVowels.txt |    4 +
 .../IndicFontFeatureCodepoint-Consonants.txt       |   40 +
 .../IndicFontFeatureCodepoint-DependentVowels.txt  |   10 +
 .../codepoint/IndicFontFeatureCodepoint-Digits.txt |   10 +
 ...IndicFontFeatureCodepoint-IndependentVowels.txt |   11 +
 .../IndicFontFeatureCodepoint-Reserved.txt         |    2 +
 .../IndicFontFeatureCodepoint-VariousSigns.txt     |    6 +
 .../indic/script-assamese/utrrs/codepoint/MANIFEST |    7 +
 .../utrrs/gpos/IndicFontFeatureGPOS-AboveBase.txt  |   59 +
 .../utrrs/gpos/IndicFontFeatureGPOS-BelowBase.txt  |  131 ++
 .../indic/script-assamese/utrrs/gpos/MANIFEST      |    2 +
 .../utrrs/gsub/IndicFontFeatureGSUB.txt            |  139 ++
 .../indic/script-assamese/utrrs/gsub/MANIFEST      |    1 +
 .../shaper-indic/indic/script-bengali/MANIFEST     |    1 +
 .../indic/script-bengali/utrrs/LICENSE             |   19 +
 .../indic/script-bengali/utrrs/MANIFEST            |    3 +
 .../shaper-indic/indic/script-bengali/utrrs/README |   13 +
 .../indic/script-bengali/utrrs/SOURCES             |    2 +
 .../IndicFontFeatureCodepoint-AdditionalVowels.txt |    1 +
 .../IndicFontFeatureCodepoint-Consonants.txt       |   36 +
 .../IndicFontFeatureCodepoint-DependentVowels.txt  |   10 +
 .../codepoint/IndicFontFeatureCodepoint-Digits.txt |   10 +
 ...IndicFontFeatureCodepoint-IndependentVowels.txt |   12 +
 .../IndicFontFeatureCodepoint-Reserved.txt         |    2 +
 .../IndicFontFeatureCodepoint-VariousSigns.txt     |    6 +
 .../indic/script-bengali/utrrs/codepoint/MANIFEST  |    7 +
 .../utrrs/gpos/IndicFontFeatureGPOS-AboveBase.txt  |   58 +
 .../utrrs/gpos/IndicFontFeatureGPOS-BelowBase.txt  |  119 ++
 .../indic/script-bengali/utrrs/gpos/MANIFEST       |    2 +
 .../utrrs/gsub/IndicFontFeatureGSUB.txt            |  215 +++
 .../indic/script-bengali/utrrs/gsub/MANIFEST       |    1 +
 .../shaper-indic/indic/script-devanagari/MANIFEST  |    1 +
 .../indic/script-devanagari/utrrs/LICENSE          |   19 +
 .../indic/script-devanagari/utrrs/MANIFEST         |    3 +
 .../indic/script-devanagari/utrrs/README           |   13 +
 .../indic/script-devanagari/utrrs/SOURCES          |    2 +
 ...icFontFeatureCodepoint-AdditionalConsonants.txt |    8 +
 .../IndicFontFeatureCodepoint-AdditionalVowels.txt |    4 +
 .../IndicFontFeatureCodepoint-Consonants.txt       |   45 +
 .../IndicFontFeatureCodepoint-DependentVowels.txt  |   14 +
 ...tFeatureCodepoint-DevnagariSpecificAddition.txt |    1 +
 .../codepoint/IndicFontFeatureCodepoint-Digits.txt |   10 +
 ...ndicFontFeatureCodepoint-GenericPunctuation.txt |    2 +
 ...IndicFontFeatureCodepoint-IndependentVowels.txt |   16 +
 .../IndicFontFeatureCodepoint-VariousSigns.txt     |   10 +
 .../script-devanagari/utrrs/codepoint/MANIFEST     |    9 +
 .../utrrs/gpos/IndicFontFeatureGPOS-AboveBase.txt  |  185 +++
 .../utrrs/gpos/IndicFontFeatureGPOS-BelowBase.txt  |  185 +++
 .../indic/script-devanagari/utrrs/gpos/MANIFEST    |    2 +
 .../utrrs/gsub/IndicFontFeatureGSUB.txt            | 1367
 ++++++++++++++++++++
 .../indic/script-devanagari/utrrs/gsub/MANIFEST    |    1 +
 .../shaper-indic/indic/script-gujarati/MANIFEST    |    1 +
 .../indic/script-gujarati/utrrs/LICENSE            |   19 +
 .../indic/script-gujarati/utrrs/MANIFEST           |    3 +
 .../indic/script-gujarati/utrrs/README             |   13 +
 .../indic/script-gujarati/utrrs/SOURCES            |    2 +
 .../IndicFontFeatureCodepoint-AdditionalVowels.txt |    1 +
 .../IndicFontFeatureCodepoint-Consonants.txt       |   34 +
 .../IndicFontFeatureCodepoint-DependentVowels.txt  |   12 +
 .../codepoint/IndicFontFeatureCodepoint-Digits.txt |   10 +
 ...IndicFontFeatureCodepoint-IndependentVowels.txt |   13 +
 .../IndicFontFeatureCodepoint-Reserved.txt         |    2 +
 .../IndicFontFeatureCodepoint-VariousSigns.txt     |    7 +
 .../indic/script-gujarati/utrrs/codepoint/MANIFEST |    7 +
 .../utrrs/gpos/IndicFontFeatureGPOS-AboveBase.txt  |  170 +++
 .../utrrs/gpos/IndicFontFeatureGPOS-BelowBase.txt  |  170 +++
 .../indic/script-gujarati/utrrs/gpos/MANIFEST      |    2 +
 .../utrrs/gsub/IndicFontFeatureGSUB.txt            | 1156
 +++++++++++++++++
 .../indic/script-gujarati/utrrs/gsub/MANIFEST      |    1 +
 .../shaper-indic/indic/script-kannada/MANIFEST     |    1 +
 .../indic/script-kannada/utrrs/LICENSE             |   19 +
 .../indic/script-kannada/utrrs/MANIFEST            |    3 +
 .../shaper-indic/indic/script-kannada/utrrs/README |   13 +
 .../indic/script-kannada/utrrs/SOURCES             |    2 +
 ...icFontFeatureCodepoint-AdditionalConsonants.txt |    1 +
 .../IndicFontFeatureCodepoint-AdditionalVowels.txt |    4 +
 .../IndicFontFeatureCodepoint-Consonants.txt       |   40 +
 .../IndicFontFeatureCodepoint-DependentVowels.txt  |   13 +
 .../codepoint/IndicFontFeatureCodepoint-Digits.txt |   10 +
 ...IndicFontFeatureCodepoint-IndependentVowels.txt |   14 +
 .../IndicFontFeatureCodepoint-Reserved.txt         |    2 +
 .../IndicFontFeatureCodepoint-VariousSigns.txt     |    9 +
 .../indic/script-kannada/utrrs/codepoint/MANIFEST  |    8 +
 .../utrrs/gpos/IndicFontFeatureGPOS-AboveBase.txt  |  188 +++
 .../indic/script-kannada/utrrs/gpos/MANIFEST       |    1 +
 .../utrrs/gsub/IndicFontFeatureGSUB.txt            |  306 +++++
 .../indic/script-kannada/utrrs/gsub/MANIFEST       |    1 +
 .../shaper-indic/indic/script-malayalam/MANIFEST   |    1 +
 .../indic/script-malayalam/utrrs/LICENSE           |   19 +
 .../indic/script-malayalam/utrrs/MANIFEST          |    2 +
 .../indic/script-malayalam/utrrs/README            |   13 +
 .../indic/script-malayalam/utrrs/SOURCES           |    2 +
 .../IndicFontFeatureCodepoint-AdditionalVowels.txt |    2 +
 .../IndicFontFeatureCodepoint-Consonants.txt       |   36 +
 .../IndicFontFeatureCodepoint-DependentVowels.txt  |   12 +
 .../codepoint/IndicFontFeatureCodepoint-Digits.txt |   10 +
 ...IndicFontFeatureCodepoint-IndependentVowels.txt |   14 +
 .../IndicFontFeatureCodepoint-Reserved.txt         |    2 +
 .../IndicFontFeatureCodepoint-VariousSigns.txt     |    4 +
 .../script-malayalam/utrrs/codepoint/MANIFEST      |    7 +
 .../utrrs/gsub/IndicFontFeatureGSUB.txt            |  254 ++++
 .../indic/script-malayalam/utrrs/gsub/MANIFEST     |    1 +
 .../texts/shaper-indic/indic/script-oriya/MANIFEST |    1 +
 .../shaper-indic/indic/script-oriya/utrrs/LICENSE  |   19 +
 .../shaper-indic/indic/script-oriya/utrrs/MANIFEST |    2 +
 .../shaper-indic/indic/script-oriya/utrrs/README   |   13 +
 .../shaper-indic/indic/script-oriya/utrrs/SOURCES  |    2 +
 ...icFontFeatureCodepoint-AdditionalConsonants.txt |    3 +
 .../IndicFontFeatureCodepoint-AdditionalVowels.txt |    2 +
 .../IndicFontFeatureCodepoint-Consonants.txt       |   34 +
 .../IndicFontFeatureCodepoint-DependentVowels.txt  |   12 +
 .../codepoint/IndicFontFeatureCodepoint-Digits.txt |   10 +
 ...IndicFontFeatureCodepoint-IndependentVowels.txt |   12 +
 .../IndicFontFeatureCodepoint-OriyaSpecific.txt    |    2 +
 .../IndicFontFeatureCodepoint-Reserved.txt         |    2 +
 .../IndicFontFeatureCodepoint-VariousSigns.txt     |    8 +
 .../indic/script-oriya/utrrs/codepoint/MANIFEST    |    9 +
 .../utrrs/gsub/IndicFontFeatureGSUB.txt            |  170 +++
 .../indic/script-oriya/utrrs/gsub/MANIFEST         |    1 +
 .../shaper-indic/indic/script-punjabi/MANIFEST     |    1 +
 .../indic/script-punjabi/utrrs/LICENSE             |   19 +
 .../indic/script-punjabi/utrrs/MANIFEST            |    3 +
 .../shaper-indic/indic/script-punjabi/utrrs/README |   13 +
 .../indic/script-punjabi/utrrs/SOURCES             |    2 +
 .../IndicFontFeatureCodepoint-Consonants.txt       |   38 +
 .../IndicFontFeatureCodepoint-DependentVowels.txt  |    9 +
 .../codepoint/IndicFontFeatureCodepoint-Digits.txt |   10 +
 .../IndicFontFeatureCodepoint-GurmukhiSpecific.txt |    6 +
 ...IndicFontFeatureCodepoint-IndependentVowels.txt |   10 +
 .../IndicFontFeatureCodepoint-Reserved.txt         |    2 +
 .../IndicFontFeatureCodepoint-VariousSigns.txt     |    6 +
 .../indic/script-punjabi/utrrs/codepoint/MANIFEST  |    7 +
 .../utrrs/gpos/IndicFontFeatureGPOS-AboveBase.txt  |   22 +
 .../utrrs/gpos/IndicFontFeatureGPOS-BelowBase.txt  |    2 +
 .../indic/script-punjabi/utrrs/gpos/MANIFEST       |    2 +
 .../utrrs/gsub/IndicFontFeatureGSUB.txt            |  152 +++
 .../indic/script-punjabi/utrrs/gsub/MANIFEST       |    1 +
 .../shaper-indic/indic/script-sinhala/MANIFEST     |    1 +
 .../indic/script-sinhala/utrrs/LICENSE             |   19 +
 .../indic/script-sinhala/utrrs/MANIFEST            |    3 +
 .../shaper-indic/indic/script-sinhala/utrrs/README |   13 +
 .../indic/script-sinhala/utrrs/SOURCES             |    2 +
 .../IndicFontFeatureCodepoint-Consonants.txt       |   41 +
 .../IndicFontFeatureCodepoint-DependentVowels.txt  |   17 +
 ...IndicFontFeatureCodepoint-IndependentVowels.txt |   18 +
 .../IndicFontFeatureCodepoint-Punctuation.txt      |    1 +
 .../IndicFontFeatureCodepoint-VariousSigns.txt     |    3 +
 .../indic/script-sinhala/utrrs/codepoint/MANIFEST  |    5 +
 .../utrrs/gpos/IndicFontFeatureGPOS.txt            |  162 +++
 .../indic/script-sinhala/utrrs/gpos/MANIFEST       |    1 +
 .../utrrs/gsub/IndicFontFeatureGSUB-Conjunct.txt   |    1 +
 .../gsub/IndicFontFeatureGSUB-Rakaaraansaya.txt    |   41 +
 .../utrrs/gsub/IndicFontFeatureGSUB-Repaya.txt     |   42 +
 .../gsub/IndicFontFeatureGSUB-Special-Cases.txt    |    2 +
 .../gsub/IndicFontFeatureGSUB-TouchingLetters.txt  |    1 +
 .../utrrs/gsub/IndicFontFeatureGSUB-Yansaya.txt    |   41 +
 .../utrrs/gsub/IndicFontFeatureGSUB.txt            |    1 +
 .../indic/script-sinhala/utrrs/gsub/MANIFEST       |    7 +
 .../texts/shaper-indic/indic/script-tamil/MANIFEST |    1 +
 .../shaper-indic/indic/script-tamil/utrrs/LICENSE  |   19 +
 .../shaper-indic/indic/script-tamil/utrrs/MANIFEST |    3 +
 .../shaper-indic/indic/script-tamil/utrrs/README   |   13 +
 .../shaper-indic/indic/script-tamil/utrrs/SOURCES  |    2 +
 .../IndicFontFeatureCodepoint-Consonants.txt       |   23 +
 .../IndicFontFeatureCodepoint-CurrencySymbols.txt  |    1 +
 .../IndicFontFeatureCodepoint-DependentVowels.txt  |   11 +
 .../codepoint/IndicFontFeatureCodepoint-Digits.txt |   10 +
 ...IndicFontFeatureCodepoint-IndependentVowels.txt |   12 +
 .../IndicFontFeatureCodepoint-Numerics.txt         |    3 +
 .../IndicFontFeatureCodepoint-Reserved.txt         |    2 +
 .../IndicFontFeatureCodepoint-Symbols.txt          |    6 +
 .../IndicFontFeatureCodepoint-TamilSymbol.txt      |    1 +
 .../IndicFontFeatureCodepoint-VariousSigns.txt     |    4 +
 .../indic/script-tamil/utrrs/codepoint/MANIFEST    |   10 +
 .../utrrs/gpos/IndicFontFeatureGPOS-AboveBase.txt  |   64 +
 .../utrrs/gpos/IndicFontFeatureGPOS-BelowBase.txt  |   44 +
 .../indic/script-tamil/utrrs/gpos/MANIFEST         |    2 +
 .../utrrs/gsub/IndicFontFeatureGSUB.txt            |    4 +
 .../indic/script-tamil/utrrs/gsub/MANIFEST         |    1 +
 .../shaper-indic/indic/script-telugu/MANIFEST      |    1 +
 .../shaper-indic/indic/script-telugu/utrrs/LICENSE |   19 +
 .../indic/script-telugu/utrrs/MANIFEST             |    3 +
 .../shaper-indic/indic/script-telugu/utrrs/README  |   13 +
 .../shaper-indic/indic/script-telugu/utrrs/SOURCES |    2 +
 .../IndicFontFeatureCodepoint-AdditionalVowels.txt |    2 +
 .../IndicFontFeatureCodepoint-Consonants.txt       |   38 +
 .../IndicFontFeatureCodepoint-DependentVowels.txt  |   13 +
 .../codepoint/IndicFontFeatureCodepoint-Digits.txt |   10 +
 ...IndicFontFeatureCodepoint-IndependentVowels.txt |   14 +
 .../IndicFontFeatureCodepoint-Reserved.txt         |    2 +
 .../IndicFontFeatureCodepoint-VariousSigns.txt     |    6 +
 .../indic/script-telugu/utrrs/codepoint/MANIFEST   |    7 +
 .../utrrs/gpos/IndicFontFeatureGPOS-AboveBase.txt  |  385 ++++++
 .../indic/script-telugu/utrrs/gpos/MANIFEST        |    1 +
 .../utrrs/gsub/IndicFontFeatureGSUB.txt            |  287 ++++
 .../indic/script-telugu/utrrs/gsub/MANIFEST        |    1 +
 202 files changed, 7581 insertions(+), 1 deletion(-)

commit 11267aef364b1cc5683ce65aaf544b7f2a127fb3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 20 13:57:14 2012 -0500

    Fix

 test/shaping/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 4e84ce48d5d41cf1bad2fb8774e5c66745b0e75e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 20 13:50:55 2012 -0500

    Move hb-diff to test/shaping/

 {util => test/shaping}/hb-diff | 0
 util/Makefile.am               | 2 --
 2 files changed, 2 deletions(-)

commit f868e1b84d2f73688d4d6558d44610b1ac75ec13
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 20 13:50:05 2012 -0500

    Add hb-unicode-decode

 test/shaping/{hb-read-manifest => hb-manifest-read}   |  0
 .../{hb-update-manifests => hb-manifest-update}       |  0
 test/shaping/hb-unicode-decode                        | 19
 +++++++++++++++++++
 3 files changed, 19 insertions(+)

commit 9ab23ef4749b51e60464b9ef2a92739cdc2b36ba
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 20 13:49:56 2012 -0500

    Minor

 test/shaping/hb-unicode-prettyname | 5 +++++
 1 file changed, 5 insertions(+)

commit c8d81db03335192f20f08ab8fabe9869fd7350a2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 20 13:39:27 2012 -0500

    Recognize more characters

 test/shaping/hb-unicode-prettyname | 7 +++++++
 1 file changed, 7 insertions(+)

commit 0016d4662d486fa32c2191df801a2792f44b273c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 20 13:31:59 2012 -0500

    [test] Make hb-unicode-prettyname take a --stdin option

 test/shaping/hb-unicode-prettyname | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

commit ad8c6446f2e0d21d065203924467f6a2c418401e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 19 20:28:31 2012 -0500

    [test/shaping] Add hb-unicode-prettyname

 test/shaping/hb-unicode-prettyname | 38
 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 38 insertions(+)

commit e900869b0f373d25b72d966338beb6cbc53e6446
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 19 20:28:15 2012 -0500

    [test/shaping] Add hb-read-manifest

 test/shaping/hb-read-manifest | 36 ++++++++++++++++++++++++++++++++++++
 1 file changed, 36 insertions(+)

commit a211cd3ffce3aa100e92d837384bbaa9decf6b09
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 19 20:27:53 2012 -0500

    Ignore AUTHORS also

 test/shaping/hb-update-manifests | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c91c4fa47140c0d6191241a832fc534b1c1514ce
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 19 17:51:57 2012 -0500

    [hb-shape] Change glyphstring brackets from </> to [/]

    Sorry for the disruption but I need this to differentiate from the
    Unicode string.

 util/options.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 36fe87d1b4bf8317074a597501d1ee52c0bec38d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 19 16:55:26 2012 -0500

    More Indic tests from Pravin

 test/api/test-shape-complex.c | 48
 +++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 48 insertions(+)

commit a33e46cf7d9862856fd7ecb04e047cc58a9785c8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 19 15:43:48 2012 -0500

    [test/shaping] Add hb-update-manifests

 test/shaping/Makefile.am                       |  6 ++----
 test/shaping/hb-update-manifests               | 22
 ++++++++++++++++++++++
 test/shaping/texts/shaper-indic/indic/MANIFEST |  1 +
 3 files changed, 25 insertions(+), 4 deletions(-)

commit d4de562adf691425b15e3e9c0eec035feaa60413
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 19 15:21:04 2012 -0500

    Start adding new shaping test suite together

 configure.ac                                                   |  1 +
 test/Makefile.am                                               |  2 +-
 test/shaping/Makefile.am                                       |
 10 ++++++++++
 test/shaping/texts/MANIFEST                                    |  3 +++
 test/shaping/texts/shaper-arabic/MANIFEST                      |  5 +++++
 test/shaping/texts/shaper-arabic/script-arabic/MANIFEST        |  0
 test/shaping/texts/shaper-arabic/script-mandaic/MANIFEST       |  0
 test/shaping/texts/shaper-arabic/script-mongolian/MANIFEST     |  0
 test/shaping/texts/shaper-arabic/script-nko/MANIFEST           |  0
 test/shaping/texts/shaper-arabic/script-syriac/MANIFEST        |  0
 test/shaping/texts/shaper-default/MANIFEST                     |  0
 test/shaping/texts/shaper-indic/MANIFEST                       |  1 +
 test/shaping/texts/shaper-indic/indic/MANIFEST                 |
 10 ++++++++++
 test/shaping/texts/shaper-indic/indic/script-assamese/MANIFEST |  0
 test/shaping/texts/shaper-indic/indic/script-bengali/MANIFEST  |  0
 .../texts/shaper-indic/indic/script-devanagari/MANIFEST        |  0
 test/shaping/texts/shaper-indic/indic/script-gujarati/MANIFEST |  0
 test/shaping/texts/shaper-indic/indic/script-kannada/MANIFEST  |  0
 .../shaping/texts/shaper-indic/indic/script-malayalam/MANIFEST |  0
 test/shaping/texts/shaper-indic/indic/script-oriya/MANIFEST    |  0
 test/shaping/texts/shaper-indic/indic/script-punjabi/MANIFEST  |  0
 test/shaping/texts/shaper-indic/indic/script-tamil/MANIFEST    |  0
 test/shaping/texts/shaper-indic/indic/script-telugu/MANIFEST   |  0
 23 files changed, 31 insertions(+), 1 deletion(-)

commit 7a4a848db27d1605195f677c9c8632cde558aa05
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 19 15:15:21 2012 -0500

    Minor

 src/hb-ot-shape-complex-private.hh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 4d6dafd47f4271549e528d2e8047d50562aef399
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 19 14:52:02 2012 -0500

    Rename test/ to test/api/

 configure.ac                        |   1 +
 test/Makefile.am                    | 128
 +----------------------------------
 test/api/Makefile.am                | 131
 ++++++++++++++++++++++++++++++++++++
 test/{ => api}/hb-test.h            |   0
 test/{ => api}/test-blob.c          |   0
 test/{ => api}/test-buffer.c        |   0
 test/{ => api}/test-c.c             |   0
 test/{ => api}/test-common.c        |   0
 test/{ => api}/test-cplusplus.cc    |   0
 test/{ => api}/test-font.c          |   0
 test/{ => api}/test-object.c        |   0
 test/{ => api}/test-ot-tag.c        |   0
 test/{ => api}/test-shape-complex.c |   0
 test/{ => api}/test-shape.c         |   0
 test/{ => api}/test-unicode.c       |   0
 test/{ => api}/test-version.c       |   0
 16 files changed, 133 insertions(+), 127 deletions(-)

commit 3b5c22c39b87155f315853fb0c40edcf14e99b54
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 19 14:28:11 2012 -0500

    Remove src/test.cc

    Not really useful.

 src/Makefile.am |   6 +--
 src/test.cc     | 132
 --------------------------------------------------------
 2 files changed, 1 insertion(+), 137 deletions(-)

commit 4983feebbbb25e79201bf34035e4d58e61218758
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 19 13:54:52 2012 -0500

    [hb-diff] Clean up

 util/hb-diff | 41 ++++++++++++++++++++++++++---------------
 1 file changed, 26 insertions(+), 15 deletions(-)

commit cdc673d97c5ffedb386865a81f54a5cedcbad27c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 19 12:46:18 2012 -0500

    [hb-shape] Add --show-line-num

    Ok, much more useful as a test suite driver now.

 util/hb-shape.cc | 24 +++++-------------------
 util/options.cc  | 34 ++++++++++++++++++++++++++++++++++
 util/options.hh  | 25 ++++++++++++++++++++-----
 3 files changed, 59 insertions(+), 24 deletions(-)

commit cc4d9810d6318ca2e4de3b8d62f03b51cc21ee05
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 19 12:32:20 2012 -0500

    [hb-shape] Add --show-text and --show-unicode options

 util/hb-shape.cc | 19 ++++++++++++++++++-
 util/options.cc  | 26 +++++++++++++++++++++++---
 util/options.hh  | 12 +++++++++---
 3 files changed, 50 insertions(+), 7 deletions(-)

commit 27c36af411c7c4d75dd25d79fc76dd92c6bb9643
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 19 12:30:43 2012 -0500

    Fix OOB in hb-shape

 util/options.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 8d2781d69274672303e30522e222bd01c6b5e781
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 19 11:36:39 2012 -0500

    [test] Add two Indic test cases from Bernard Massot

 test/test-shape-complex.c | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

commit 8750abaf8410005facbea8c886c592bead7f959b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 18 22:47:44 2012 -0500

    [util] Add --help-features

    Patch from Khaled Hosny.

 util/options.cc | 42 +++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 41 insertions(+), 1 deletion(-)

commit 889caa52fa1bef61013ec1d127f84d7d5907ef1e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 18 22:32:52 2012 -0500

    [icu] Use U_FAILURE

 src/hb-icu.cc | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit 36a4f4a482456ee816dcb59befa0b0538ba487df
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 18 22:16:49 2012 -0500

    Replace u_strlen() with u_countChar32()

    The latter is what I meant.

 src/hb-icu.cc | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

commit 055fb24d03ae518fa0aa6c2860a03f3cb6a5ef0d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 18 21:58:34 2012 -0500

    Add test for bug in ICU decompose

    As reported by Kenichi Ishibashi on 2011-10-28.

 test/test-unicode.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c521e793bd6c1dafacb94253a45b9c70ab38525e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 18 21:51:05 2012 -0500

    Fix OOB in replace_glyph()

    Patch from Kenichi Ishibashi.

 src/hb-buffer.cc | 2 ++
 1 file changed, 2 insertions(+)

commit 03408ce73d003ed4e58e3f8472f9445e72b86bee
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 18 21:28:34 2012 -0500

    Fix more possible buffer overruns

    I have this function, but can't clean up it to my satisfaction.

 src/hb-ot-layout-gsubgpos-private.hh | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit 7d479900cd11bc88148cd601ee43bc5492ce5843
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 18 21:19:32 2012 -0500

    Refactor the two remaining uses of _hb_ot_layout_skip_mark()

 src/hb-ot-layout-gsub-table.hh       | 2 +-
 src/hb-ot-layout-gsubgpos-private.hh | 7 +++++--
 2 files changed, 6 insertions(+), 3 deletions(-)

commit 506ffeb8e77a668fa305139582d215c32e46bb03
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 18 16:07:53 2012 -0500

    Further mark skippy fixes from Jonathan Kew

    We should be in good shape now.

 src/hb-ot-layout-gsubgpos-private.hh | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit a4a48fe6d4f884a37e720430347d10dbe3562a79
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 17 18:08:41 2012 -0500

    Fix mark skipping regression

    Ouch!

 src/hb-ot-layout-gsubgpos-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 4ab97311541225906f6b737a2b47de252224cc09
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 16 22:05:08 2012 -0500

    Refactor mark skipping

 src/hb-ot-layout-gpos-table.hh       |  95 ++++++++++----------------
 src/hb-ot-layout-gsub-table.hh       |  21 +++---
 src/hb-ot-layout-gsubgpos-private.hh | 125
 +++++++++++++++++++++++++++--------
 3 files changed, 143 insertions(+), 98 deletions(-)

commit 370f03e9c69d98d735eafb7e72b13b17f42cbaa9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 16 17:03:55 2012 -0500

    Minor

 src/hb-ot-layout-gsub-table.hh       | 5 ++---
 src/hb-ot-layout-gsubgpos-private.hh | 6 ++----
 2 files changed, 4 insertions(+), 7 deletions(-)

commit 4d3aeb8cb2bc1ca7cdd03ba28ba8c334f12d4c03
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 16 16:43:26 2012 -0500

    [GSUB/GPOS] Fix mark skip indexing issues

    Mozilla bug 701637 and 714067 combined.

    Patch from Jonathan Kew.

 src/hb-ot-layout-gpos-table.hh       | 42
 ++++++++++++++++-----------------
 src/hb-ot-layout-gsub-table.hh       | 21 +++++++++--------
 src/hb-ot-layout-gsubgpos-private.hh | 45
 ++++++++++++++++++------------------
 3 files changed, 54 insertions(+), 54 deletions(-)

commit e8eedf2687f05372bf5476e84139d01ba67c9f73
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 16 16:39:40 2012 -0500

    Avoid enum trailing commas

    Based on patch from Jonathan Kew.

 src/hb-ot-shape-complex-indic.cc   | 4 ++--
 src/hb-ot-shape-complex-private.hh | 2 ++
 2 files changed, 4 insertions(+), 2 deletions(-)

commit 3d0ddd12801689b4093ffca97da4dd9ca669b64a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 15 15:55:52 2012 -0500

    Require glib >= 2.16 for the gobject option

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 95ab82a992ab916046c2e6205db7cadeec88d206
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 15 14:56:56 2012 -0500

    Disable gtk-doc macro

    We don't have any docs yet.

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 299ae0c3a367c84a835eadbd1276ca284d2720c0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 14 21:29:45 2012 -0500

    [icu] Remove glib-ism

 src/hb-icu.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit a097043f9a81e6c20caf69a5dabdf9e00438d79b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 14 17:55:51 2012 -0500

    Allow space in one more place when parsing features

 util/options.cc | 2 ++
 1 file changed, 2 insertions(+)

commit af92135424b994062648f4fb7e26af0bd970a4b1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 21 09:18:43 2011 -0700

    Minor

 src/hb-object-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 89d89646e8163b6c0874b9a3c14d4da974ea8219
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 17 11:50:54 2011 -0700

    Fix intrin.h b0rkage with older MSVC

    Reported by Jonathan Kew.

 src/hb-object-private.hh | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit af913c5788e600e36d29f44fe4e77db84cf8c442
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 17 11:39:28 2011 -0700

    Fix infinite loop in normalization code with variation selectors

    Reported by Jonathan Kew.

 src/hb-ot-shape-normalize.cc | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit fd528c17b7b5ac912f1ac980e1d9981f561c3b46
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 12 15:03:58 2011 -0400

    [util] Add --list-shapers to hb-view and hb-shape

 util/options.cc | 17 ++++++++++++++++-
 1 file changed, 16 insertions(+), 1 deletion(-)

commit a17554bfd51dc8a37b1674d1ede63e616618e0a6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 28 16:57:34 2011 -0400

    Make test-c.c actually use hb

    This will make sure we test that C code can actually link to the
    library.

 test/test-c.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 55deff7595ef357d000fef83559c74c9f8acad00
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 28 16:20:09 2011 -0400

    Add comments

 src/hb-ot-shape-normalize.cc | 4 ++++
 1 file changed, 4 insertions(+)

commit a240d5a0a3ccc71902e7a341b6d531995319999d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 27 13:50:45 2011 -0400

    Add TODO item

 TODO | 2 ++
 1 file changed, 2 insertions(+)

commit 52ebdff49d13f239efc886de935d47be9860f6e5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 27 12:38:16 2011 -0400

    Fix GSUB lookuptype 1 subtype 1 delta wrapping

 src/hb-ot-layout-gsub-table.hh | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 5857720cd35078d1c3906c8b2db3190b5166b66f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 27 12:36:26 2011 -0400

    [util] s/%d/%u/ when printing glyph ids and clusters

 util/options.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit b95324cdd217f44c40c5fd44898e659500f19511
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 21 16:50:39 2011 -0400

    Minor

 src/hb-blob.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0cd33592ab4bb486ffc438ba0efdac2fa7a1bb7f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 21 16:49:33 2011 -0400

    Fix possible leaks

 src/hb-font.cc | 16 +++++++++++++---
 1 file changed, 13 insertions(+), 3 deletions(-)

commit d3f3690b485e1d240fec4f204aef54e07853a244
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 21 16:41:43 2011 -0400

    hb-shape: In --no-glyph-names, output glyph number directly

    Ie. write "86" instead of "gid86".

 util/options.cc | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

commit 088c1e27c0fc0cdef999cf1f567e4d5eb2cfb2e4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 20 14:43:55 2011 -0400

    [util] Fix option parsing

    Wow, who knew bool is one byte and I was using it as a 4byte int?!

    C++ auto casts fails you in mysterious ways...

 util/helper-cairo.cc |  2 +-
 util/options.cc      |  3 ++-
 util/options.hh      | 14 +++++++-------
 3 files changed, 10 insertions(+), 9 deletions(-)

commit d606daa4cca323c8977b2e52e6863dc0f1b72fa9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 20 14:34:06 2011 -0400

    Whitespace

 src/gen-arabic-table.py | 2 +-
 src/gen-indic-table.py  | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit e700bce1189465a159a7c3c179f231be224f31cc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 20 11:20:53 2011 -0400

    [util] Add hb-diff

    A diff program written in Python that is more suitable for comparing
    hb-shape output from different backends.  Main differences with stock
    diff:

    1. It outputs one line's comparison at a time, as opposed to batching
    '+' lines and '-' lines.

    2. It colors the part of the line that changed, taking word boundaries
    into consideration.

    You can pipe the colored output to 'less -r'.

 util/Makefile.am |  2 ++
 util/hb-diff     | 59
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 61 insertions(+)

commit 880c1f0e4ede65890592d28dfb38bb06f5b57500
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 19 23:10:22 2011 -0400

    Rewrite ICU detection code with in-house macros

    At least works for cross-compiling now...

 configure.ac | 26 +++++++++++++++-----------
 1 file changed, 15 insertions(+), 11 deletions(-)

commit f83f0f4836691b04306c2ef80979f2e1d76a2f28
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 19 18:51:48 2011 -0400

    [graphite] Add note about graphite shaker brokenness

 src/hb-graphite2.cc | 8 ++++++++
 1 file changed, 8 insertions(+)

commit 422558142aabb996d8ad1848df7ea4d5a8ade98a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 19 17:57:02 2011 -0400

    [util] Account for line-space in surface size

 util/options.cc    | 2 +-
 util/options.hh    | 1 -
 util/view-cairo.cc | 2 +-
 3 files changed, 2 insertions(+), 3 deletions(-)

commit b5afd8f78e6b372f1bbed469329c1554adb20eea
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 19 16:56:21 2011 -0400

    [util] Rename --output to --output_file, and --format to
    --output-format

 util/options.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 0a965eee880428a43ad7f9d1317c344666247dd7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 19 16:53:47 2011 -0400

    Minor

 src/hb-ot-shape-complex-indic.cc | 4 ++++
 1 file changed, 4 insertions(+)

commit 466393c2f04fb5b3dcb3e81ea9609905fa8c9648
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 19 16:50:18 2011 -0400

    Really fix build this time

 util/hb-view.hh | 1 -
 1 file changed, 1 deletion(-)

commit fe1605db4f28ed75d5debe0db45a19aa77f0585f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 19 16:49:03 2011 -0400

    Fix dist

 util/Makefile.am | 2 ++
 1 file changed, 2 insertions(+)

commit 8b8b19056decaf09e4e0ccd9412ee1aeb30f4de7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 19 16:41:17 2011 -0400

    [util] Add hb-shape utility

    Like hb-view, but prints out buffer contents.

    The output format is kinda cryptic.  Suggestions welcome.

 configure.ac                        |   6 -
 util/Makefile.am                    |  44 +++--
 util/{common.cc => hb-shape.cc}     |  57 ++++--
 util/hb-view.cc                     |  44 +----
 util/hb-view.hh                     |  79 ++++++++
 util/helper-cairo.cc                | 375
 +++++++++++++++++++++++++++++++++++
 util/{common.hh => helper-cairo.hh} |  64 ++++--
 util/options.cc                     |  79 ++++++++
 util/options.hh                     |  53 ++++-
 util/view-cairo.cc                  | 381
 ++----------------------------------
 util/view-cairo.hh                  |   8 +-
 11 files changed, 717 insertions(+), 473 deletions(-)

commit eb2d8be7a8ede0c0f5e346cf06516792f83f36f7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 19 16:15:22 2011 -0400

    Minor

 TODO | 2 ++
 1 file changed, 2 insertions(+)

commit f6496663c2f6849a944e41afcf9511f378477532
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 19 15:45:52 2011 -0400

    [util] If no text is provided, simply call cairo_show_glyphs()

 util/view-cairo.cc | 92
 ++++++++++++++++++++++++++++++------------------------
 1 file changed, 51 insertions(+), 41 deletions(-)

commit 5c299343118d1eaff32ffb2a5dac077cfff67dee
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 19 14:53:26 2011 -0400

    [uniscribe] Various improvements

 src/hb-uniscribe.cc | 30 +++++++++++++++++++-----------
 1 file changed, 19 insertions(+), 11 deletions(-)

commit 11e51993ab562d4c7460eb7c43d0e97404e628e7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 19 09:58:55 2011 -0400

    [util] Move font-size into view-options

 util/options.cc    | 2 +-
 util/options.hh    | 7 +++----
 util/view-cairo.cc | 4 ++--
 3 files changed, 6 insertions(+), 7 deletions(-)

commit 0fe296019746689551d224a5f6fb7e0ebe1b91dc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Sep 17 09:59:58 2011 -0400

    Fix Linux build when io.h is available

    Bug 40953 - fail compile git: make[2]: *** [hb_view-options.o] Error 1

 configure.ac    | 2 +-
 util/options.cc | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

commit d2b3ab9ecebbf46cb9dac1f09c17379c50ea4575
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 16 16:59:17 2011 -0400

    Fix "[util] Fix hb-view crash with bogus font."

 util/view-cairo.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit da4a2a1426ee3aa9d9678ec12c9ba4dfcba0bcf8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 16 16:56:34 2011 -0400

    Cosmetic

 util/view-cairo.cc | 31 +++++++++++++++++++++++--------
 1 file changed, 23 insertions(+), 8 deletions(-)

commit 4274ed7ab6fb03fbf8eaaa43ab06647dc0beed79
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 16 16:52:26 2011 -0400

    [util] Fix hb-view crash with bogus font

 util/view-cairo.cc | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

commit 5ddd9cc499f2470eca239ae357a5c8a3626c0809
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 16 16:40:44 2011 -0400

    Minor

 src/hb-private.hh         | 2 +-
 src/hb-unicode-private.hh | 4 ++--
 src/test.cc               | 4 ++--
 util/common.hh            | 2 +-
 util/options.cc           | 8 ++++----
 5 files changed, 10 insertions(+), 10 deletions(-)

commit 652d64aa8d32d914bf3ee2f2c451de103fea8fa9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 16 16:34:39 2011 -0400

    TODO items

 TODO | 6 ++++++
 1 file changed, 6 insertions(+)

commit 947c9a778c0d4b428b58806f98c34ede59b7439c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 16 16:33:18 2011 -0400

    Minor

 src/hb-ot-shape-normalize.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit d5476a30a10da5e54783c8dbf04340225a9a00d7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 16 12:30:50 2011 -0400

    Minor

 src/hb-object-private.hh | 26 +++++++++++++++-----------
 1 file changed, 15 insertions(+), 11 deletions(-)

commit 55aeb0490454cc1ba93a42f307ed1230f59dee4b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 16 02:08:36 2011 -0400

    Fix reading text from stdin

 util/options.cc    | 76
 +++++++++++++++++++++++++++++++++++-------------------
 util/options.hh    | 16 +++++++-----
 util/view-cairo.cc |  6 +++--
 3 files changed, 64 insertions(+), 34 deletions(-)

commit a75c1b125159f6cfb6b652a9ec40803f7c7e3f71
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 16 01:16:41 2011 -0400

    Move code around

 util/options.cc | 27 +++++++++++++++++++++++++--
 util/options.hh | 20 +-------------------
 2 files changed, 26 insertions(+), 21 deletions(-)

commit 7bf6ecd3bfb1ccf5d9ac6fe274efa74b46885fea
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 16 01:11:30 2011 -0400

    Always shape at size=upem

    Fixes bug with uniscribe not handling GIGANTIC sizes.

 util/options.cc    | 2 +-
 util/view-cairo.cc | 8 ++++----
 util/view-cairo.hh | 2 +-
 3 files changed, 6 insertions(+), 6 deletions(-)

commit 674ee58d9bc9f825d769220d77f58513edae4558
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 16 00:54:05 2011 -0400

    Minor

 util/options.cc | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

commit 4451168e5d1ea26560899e9a9733b3a3f1853050
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 16 00:38:19 2011 -0400

    Fix binary stdin/stdout io in Windows

    Make --font-file accept "-" to mean stdin, and have it work
    in Windows too!

 configure.ac    |  2 +-
 util/common.hh  |  5 +++++
 util/options.cc | 64
 +++++++++++++++++++++++++++++++++++++++++++++++----------
 util/options.hh | 10 +++++++--
 4 files changed, 67 insertions(+), 14 deletions(-)

commit 639b5957d9c7b6d8bef6784e3467ccc055ddeea4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 15 18:09:49 2011 -0400

    Minor

 util/options.cc | 5 +++--
 util/options.hh | 4 ++--
 2 files changed, 5 insertions(+), 4 deletions(-)

commit f7e2ef74f856ee13d6fd6cf3f1e04bc162203bc2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 15 17:52:00 2011 -0400

    [hb-view] Make print to stdout work in Windows

    Apparently there's no equivalent to "/dev/stdout", so write using
    stdio to be able to output to stdout.

 util/common.hh     |  1 +
 util/options.hh    | 31 ++++++++++++++++-----
 util/view-cairo.cc | 79
 ++++++++++++++++++++++++++++++++++++------------------
 3 files changed, 78 insertions(+), 33 deletions(-)

commit 36b10f58cc70ce9570d17b30616f9cb27423e03b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 15 16:29:51 2011 -0400

    Minor

 src/hb-ot-shape-normalize.cc | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

commit c4611cb66f8e3a133ec00e3ace62ef19d9b95b28
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 13 13:33:11 2011 -0400

    Fix test

 src/hb-graphite2.h | 1 +
 src/hb-ot-shape.h  | 1 +
 src/hb-uniscribe.h | 1 +
 3 files changed, 3 insertions(+)

commit b9b10ad78b1f977494a3a42b58f8040fe16505a3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 13 13:30:39 2011 -0400

    [util] Refactor hb-view completely

    Now we can use the same code to do other utils...

 configure.ac       |   2 +
 util/Makefile.am   |   2 +
 util/common.cc     |   7 +-
 util/common.hh     |   2 +-
 util/hb-view.cc    | 244 ++++-------------------------
 util/options.cc    | 321 ++++++++++++++++++++++++++------------
 util/options.hh    | 179 +++++++++++++++++++---
 util/view-cairo.cc | 440
 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 util/view-cairo.hh |  63 ++++++++
 9 files changed, 927 insertions(+), 333 deletions(-)

commit bc4b07b05ea9e39eb9f966eb2c3e1c737efa77ff
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 8 17:08:32 2011 -0400

    More reshuffling

 util/hb-view.cc |  4 ++--
 util/options.cc | 64
 ++++++++++++++++++++++++++++++---------------------------
 util/options.hh | 13 ++++++------
 3 files changed, 43 insertions(+), 38 deletions(-)

commit 516857eb51bbb79ff4adf44e3fefbf460f9ee8f8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 8 16:50:24 2011 -0400

    [util] Simplify more

 util/options.hh | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

commit 4f4b114a5592c2f5d128ee795f159b438ad97829
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 8 16:49:02 2011 -0400

    [util] Move code around

 util/hb-view.cc |  8 +-------
 util/options.hh | 14 ++++++++++++++
 2 files changed, 15 insertions(+), 7 deletions(-)

commit 46d86a73a103b061144018c3fe947b57548fc58f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 8 16:43:15 2011 -0400

    Minor

    We now support using -1 for NUL-terminated strings.

 util/hb-view.cc | 2 --
 1 file changed, 2 deletions(-)

commit 90e312cb85df7a6dc350cb62138ab950790e3d15
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 8 16:42:37 2011 -0400

    [util] Move code around

 util/hb-view.cc | 5 -----
 util/options.hh | 4 ++++
 2 files changed, 4 insertions(+), 5 deletions(-)

commit 109cb382898f491eed733dba4ef5ba12de94aaf6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 8 16:00:04 2011 -0400

    [util] Further refactor option parsing

 util/options.cc | 80
 +++++++++++++++++++++++++++++++++++++++++++++++----------
 util/options.hh | 20 ++++++++++++---
 2 files changed, 83 insertions(+), 17 deletions(-)

commit bc187e5ac7433f5561b0e97e8c62172c73883f3f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 8 13:35:17 2011 -0400

    Refine Indic scripts, following Martin Hosken's recommendation

 src/hb-ot-shape-complex-private.hh | 56
 +++++++++++++++++++++++---------------
 1 file changed, 34 insertions(+), 22 deletions(-)

commit 738d096a06822e63b3894bd817ecb90e5fb94f73
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 2 13:31:19 2011 -0400

    Pass through unknown ISO 639-3 language tags to OpenType engine

    In hb_ot_tag_from_language(), if first component of an unknown
    language is three letters long, use it directly as OpenType language
    tag (after case conversion and padding).

 src/hb-ot-tag.cc   | 8 ++++++++
 test/test-ot-tag.c | 5 +++++
 2 files changed, 13 insertions(+)

commit ea02cbf03c084b3ead6e9e4c9af07b3b47608d5b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Sep 2 12:39:20 2011 -0400

    [graphite] Don't preload glyphs

    Doesn't seem to be slower.

 src/hb-graphite2.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 210a06f3d7bd2df55ebd1743da74f327c5a7a967
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 26 13:39:49 2011 +0200

    Minor

 src/hb-graphite2.h | 12 ++++++------
 src/hb-ot-shape.h  |  1 -
 src/hb-uniscribe.h |  1 -
 3 files changed, 6 insertions(+), 8 deletions(-)

commit 4a8d2e379a34b19bccc72bc3e2d9ace3fdd27733
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 26 09:40:54 2011 +0200

    [graphite2] Chop a few more lines

 src/hb-graphite2.cc | 13 ++++---------
 1 file changed, 4 insertions(+), 9 deletions(-)

commit 81ec289da799bd2f50da9382507c606d2c779ab9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 26 09:33:06 2011 +0200

    Minor

 src/hb-graphite2.cc | 24 ++++++++++++------------
 1 file changed, 12 insertions(+), 12 deletions(-)

commit 3380de5abbaff535e1cf57ea7e5c2a7c4fdcfe66
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 26 09:30:49 2011 +0200

    [graphite] Use buffer->replace_glyphs()

 src/hb-graphite2.cc | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 9ebe8c0286856d46430ae184ba7303bd34485883
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 26 09:29:42 2011 +0200

    Add buffer->replace_glyphs()

 src/hb-buffer-private.hh |  3 +++
 src/hb-buffer.cc         | 26 ++++++++++++++++++++++++++
 2 files changed, 29 insertions(+)

commit a5edb1031c204464da4f852ba3d90e8cc20cd20e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 26 09:27:13 2011 +0200

    Minor

 src/hb-graphite2.cc | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

commit 290e3ee51727df75d136ccfff79831b94d1583b6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 26 09:25:04 2011 +0200

    [graphite] Only pass the first part language tag to graphite

    Still not sure about:

    1) Case.  We pass lowercase for now.  Would be nice if graphite was
    uppercase 3letter like OpenType,

    2) Padding.  IMO, tag padding is always with spaces, but Martin was
    talking about NUL bytes.

 src/hb-graphite2.cc | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 4c9fe88d30036340fe592bcbc375049b84602b8b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 26 09:18:53 2011 +0200

    [API] Make all _from_string() functions take a len parameter

    Can be -1 for NUL-terminated string.  This is useful for passing parts
    of a larger string to a function without having to copy or modify the
    string first.

    Affected functions:

            hb_tag_t hb_tag_from_string()
            hb_direction_from_string()
            hb_language_from_string()
            hb_script_from_string()

 src/hb-common.cc    | 29 +++++++++++++-------
 src/hb-common.h     | 12 +++++---
 src/hb-graphite2.cc |  2 +-
 src/hb-icu.cc       |  2 +-
 src/hb-ot-tag.cc    |  8 +++---
 test/test-buffer.c  |  4 +--
 test/test-common.c  | 79
 +++++++++++++++++++++++++++++++----------------------
 test/test-ot-tag.c  | 22 +++++++--------
 util/hb-view.cc     |  6 ++--
 util/options.cc     |  5 +---
 10 files changed, 96 insertions(+), 73 deletions(-)

commit a499bdea5cc5097dec62eeafdef58d08ba534be0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 25 22:46:21 2011 +0200

    [graphite2] Bail if grface is NULL

 src/hb-graphite2.cc | 1 +
 1 file changed, 1 insertion(+)

commit 3007ffa9e53e6100a761c2363f50a2b19a0764fc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 25 09:08:53 2011 +0200

    Reorder combining-class to better suit Arabic shadda mark-mark
    positioning

    As reported by Khaled on the list:

    "After the introduction of canonical reordering of combining marks
    (commit 34c22f8), I'm no longer able to do mark/mark substitution or
    positioning for mark sequences that involve shadda as a first mark (or
    most interesting sequences at least).

    "After some digging, it turned out that shadda have a ccc=33
    while most
    Arabic marks that combine with it have a lower ccc value, which
    results
    in the shadda being reordered after the other mark which,
    unsurprisingly, breaks my contextual substitution and mkmk anchors."

    See:

    http://unicode.org/faq/normalization.html#8
    http://unicode.org/faq/normalization.html#9

 src/hb-ot-shape-private.hh | 18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)

commit 74ef81a0b0f9adddfb42c3cb87f08f8156054519
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 24 19:16:13 2011 +0200

    Fix make distcheck

 src/Makefile.am              | 15 ++++++++-------
 src/hb-gobject-enums.cc.tmpl |  2 +-
 2 files changed, 9 insertions(+), 8 deletions(-)

commit 24bcdbcc0639ca9e9c0fde1a71cbbf1c3d2ef98d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 24 19:13:15 2011 +0200

    Add hb-ot-hmtx-table.hh

    Oops!

 src/hb-ot-hmtx-table.hh | 86
 +++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 86 insertions(+)

commit a3bd8a0e1862212a2d4141b973039bd000a3054f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 24 03:22:49 2011 +0200

    [graphite] Rewrite properly

 src/hb-graphite2.cc | 633
 ++++++++++++++++++++++------------------------------
 src/hb-uniscribe.cc |   2 +
 2 files changed, 273 insertions(+), 362 deletions(-)

commit 5072934c35bddc23d6bcb07a41010da51eb1b090
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 24 02:24:27 2011 +0200

    Minor

 src/hb-uniscribe.cc | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

commit 46377396accf6b43792ffba553dcd9847608aa86
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 24 02:12:05 2011 +0200

    [configure] Fix graphite bits

 configure.ac | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

commit 71388b3ee71c7d3b79f842db7588bd683691797c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 24 02:09:04 2011 +0200

    [uniscribe] Minor

 src/hb-uniscribe.cc | 19 +++++++++----------
 1 file changed, 9 insertions(+), 10 deletions(-)

commit cd2b901027bd154e31aa509c0cb2d86633e36398
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 24 01:47:25 2011 +0200

    [graphite] Minor

 src/hb-graphite2.cc | 10 ++++------
 src/hb-shape.cc     |  1 -
 2 files changed, 4 insertions(+), 7 deletions(-)

commit 834af3b48a1aca3e53811d1eb4ca09b582b8e598
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 24 01:45:47 2011 +0200

    [graphite] Remove hb_graphite2_feature_check()

    I don't see how this function can be useful.

 src/hb-graphite2.cc | 10 ----------
 src/hb-graphite2.h  |  2 --
 2 files changed, 12 deletions(-)

commit 1f49cf32c96cb45a4d8ba2c210aeb7a8076b4762
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 24 01:29:25 2011 +0200

    Add graphite2 integration from Martin Hosken

    To be modified, a lot.

 configure.ac                      |   9 +-
 contrib/python/lib/harfbuzz.pyx   |  20 +-
 contrib/python/runpy              |   2 -
 contrib/python/scripts/hbtestfont |   4 +-
 contrib/python/setup.py           |  18 +-
 src/Makefile.am                   |   7 +
 src/hb-graphite2.cc               | 446
 ++++++++++++++++++++++++++++++++++++++
 src/hb-graphite2.h                |  47 ++++
 src/hb-shape.cc                   |   7 +
 9 files changed, 542 insertions(+), 18 deletions(-)

commit 0e6d36d8a3f9f533cb6eb04408af62bfd1ad83da
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 24 01:31:29 2011 +0200

    Minor

 src/Makefile.am                                | 2 +-
 src/{hb-uniscribe-shape.cc => hb-uniscribe.cc} | 0
 2 files changed, 1 insertion(+), 1 deletion(-)

commit efde8113258b117ec0a7fbffe6d681442d045c41
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 23 00:04:57 2011 +0200

    Add a constructor for hb_prealloced_array_t

    Fixes build with MSVC.

 src/hb-private.hh | 2 ++
 1 file changed, 2 insertions(+)

commit d75333f166d21e9b9f2341c3bc8a9ef8a886f4b3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 19 19:59:24 2011 +0200

    Add gobject enum support, but disabled for now

    need to figure out the naming.  The generated code doesn't have the
    right name.

 configure.ac                                 |  2 +
 src/Makefile.am                              | 13 +++--
 src/hb-gobject-enums.cc.tmpl                 | 74
 ++++++++++++++++++++++++++++
 src/{hb-gobject.cc => hb-gobject-structs.cc} |  0
 4 files changed, 86 insertions(+), 3 deletions(-)

commit 7d235d272f4c9213f54c9c807fb8fba5068c45b0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 17 23:55:29 2011 +0200

    Flesh out tt funcs a bit

 src/hb-tt-font.cc | 36 +++++++++++++++++++++++++++++++++++-
 1 file changed, 35 insertions(+), 1 deletion(-)

commit b9415e76d7b41da203b9ae85e38b6dc777481184
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 17 19:21:44 2011 +0200

    [API] Add hb_font_set_funcs_data()

 src/hb-font.cc | 15 +++++++++++++++
 src/hb-font.h  |  6 ++++++
 2 files changed, 21 insertions(+)

commit e6c09cdf43201ff1b7f38e411ae1f9977e4f9271
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 17 19:07:59 2011 +0200

    Remove the pre_allocate argument from hb_buffer_create()

    For two reasons:

    1. User can always call hb_buffer_pre_allocate() themselves, and

    2. Now we do a pre_alloc in add_utfX anyway, so the total number of
    reallocs is limited to a small number (~3) anyway.  This just
    makes the
    API cleaner.

 src/hb-buffer.cc          | 7 +------
 src/hb-buffer.h           | 2 +-
 src/test.cc               | 2 +-
 test/test-buffer.c        | 9 ++++-----
 test/test-object.c        | 4 ++--
 test/test-shape-complex.c | 2 +-
 test/test-shape.c         | 2 +-
 util/hb-view.cc           | 2 +-
 8 files changed, 12 insertions(+), 18 deletions(-)

commit 187bdeaa6c82fcb95fdd546da9c78b843e1dea0e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 17 19:03:06 2011 +0200

    Do (nothing for) hmtx sanitize

 src/hb-ot-hhea-table.hh | 1 -
 src/hb-tt-font.cc       | 1 +
 2 files changed, 1 insertion(+), 1 deletion(-)

commit d6016e49108be183ab2dc9c226447d1db3a09b90
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 17 14:47:41 2011 +0200

    Fix name-table sanitize

 src/hb-ot-name-table.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit ae9877dea6a1aed3566d9b87a75ede84259deaca
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 17 14:43:45 2011 +0200

    Add hhea-table support

 src/Makefile.am                |   1 +
 src/hb-open-type-private.hh    |   6 ++
 src/hb-ot-head-table.hh        |   2 +-
 src/hb-ot-hhea-table.hh        |  93 ++++++++++++++++++
 src/hb-ot-layout-gdef-table.hh |   2 +-
 src/hb-ot-layout-gpos-table.hh |   2 +-
 src/hb-ot-layout-gsub-table.hh |   2 +-
 src/hb-ot-maxp-table.hh        |   2 +-
 src/hb-ot-name-table.hh        |   3 +-
 src/hb-tt-font.cc              | 207
 +++++++++++++++++++++++++++++++++++++++++
 10 files changed, 314 insertions(+), 6 deletions(-)

commit 7a750ac33ec482e2c4856c19ea607f3563741c24
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 17 14:19:59 2011 +0200

    Rename table files from eg maxp-private.hh to maxp-table.hh

 src/Makefile.am                                              | 12
 ++++++------
 src/hb-font.cc                                               |  2 +-
 src/{hb-ot-head-private.hh => hb-ot-head-table.hh}           |  6 +++---
 ...-ot-layout-gdef-private.hh => hb-ot-layout-gdef-table.hh} |  6 +++---
 ...-ot-layout-gpos-private.hh => hb-ot-layout-gpos-table.hh} |  6 +++---
 ...-ot-layout-gsub-private.hh => hb-ot-layout-gsub-table.hh} |  6 +++---
 src/hb-ot-layout-gsubgpos-private.hh                         |  2 +-
 src/hb-ot-layout.cc                                          |
 8 ++++----
 src/{hb-ot-maxp-private.hh => hb-ot-maxp-table.hh}           |  6 +++---
 src/{hb-ot-name-private.hh => hb-ot-name-table.hh}           |  6 +++---
 src/hb-uniscribe-shape.cc                                    |  2 +-
 src/main.cc                                                  |  2 +-
 12 files changed, 32 insertions(+), 32 deletions(-)

commit 0b7e4d9f20b3ed947d0c441ca59b43c4097cdb0e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 15 20:41:59 2011 +0200

    [ft] FT_Get_Advance() for advance-width callbacks

    Using graphite2's comparerenderer suggests that this makes hb-ft 15
    times faster.  No caching layer needed anymore.

 configure.ac   |  2 +-
 src/hb-ft.cc   | 19 +++++++++++++------
 util/common.hh |  4 +++-
 3 files changed, 17 insertions(+), 8 deletions(-)

commit 97796453aab56873809a15b5e316cba8acea7449
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 15 19:03:43 2011 +0200

    Fix falloffs of the GOption conversion

 util/options.cc | 8 ++++----
 util/options.hh | 4 ++--
 2 files changed, 6 insertions(+), 6 deletions(-)

commit 4e9ff1dd6ee3ea63fd91a76a91d9725a10a294a0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 15 16:21:22 2011 +0200

    Pre-allocate buffers when adding string

    We do a conservative estimate of the number of characters, but still,
    this limits the number of buffer reallocs to a small constant.

 src/hb-buffer.cc | 1 +
 1 file changed, 1 insertion(+)

commit 553bc3de82cfda8d83db26a93205e0d39440cbd1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 15 16:21:06 2011 +0200

    Minor

 src/hb-ft.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 254142bb67a5c520a304142301479eb5292592d1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 15 16:15:44 2011 +0200

    [ft] FT_Select_Charmap() when we create face

 src/hb-ft.cc | 2 ++
 1 file changed, 2 insertions(+)

commit a4cbd03dd17990783d8fd4c6be0c9c0d3d9cae5b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 15 09:52:05 2011 +0200

    Apply 'locl' with 'ccmp' in Arabic shaper

    According to Peter Constable this is indeed what Uniscribe has been
    doing for years.

    Mozilla Bug 667166 - wrong shape of letter when it comes at the end of
    word in the arabic version of Firefox 5.0

 src/hb-ot-shape-complex-arabic.cc | 1 +
 1 file changed, 1 insertion(+)

commit c214cff55ce539d004d069a484dac3988953cb11
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 14 15:17:16 2011 +0200

    Start adding gobject-introspection support

 configure.ac      | 13 ++++++++++-
 src/Makefile.am   | 43 ++++++++++++++++-------------------
 src/hb-common.h   |  1 +
 src/hb-glib.cc    |  3 ---
 src/hb-gobject.cc | 63
 +++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-gobject.h  | 68
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 6 files changed, 163 insertions(+), 28 deletions(-)

commit 9527fb200ffbbd839334e99b51d9671752d393db
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 13 19:03:48 2011 +0200

    Fix missing return

 src/hb-ft.cc | 2 ++
 1 file changed, 2 insertions(+)

commit 77a328769545f6b2970d8491fe77fe98781961cf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 13 17:16:45 2011 +0200

    Minor

 src/hb-common.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 3bb300ee78a40f9ded21ab19283863b733aeb677
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 11 11:54:31 2011 +0200

    Refactor hb-view code

 util/Makefile.am |  26 +++-
 util/common.cc   |  40 ++++++
 util/common.hh   |  49 +++++++
 util/hb-view.cc  | 387
 ++++---------------------------------------------------
 util/options.cc  | 318 +++++++++++++++++++++++++++++++++++++++++++++
 util/options.hh  |  86 +++++++++++++
 6 files changed, 541 insertions(+), 365 deletions(-)

commit d6660356dd81358033743f72d8a5fbf2fc70eaf7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 10 22:08:36 2011 +0200

    Add uniscribe font getters

 src/hb-uniscribe-shape.cc | 24 +++++++++++++++++++++---
 src/hb-uniscribe.h        |  8 ++++++++
 2 files changed, 29 insertions(+), 3 deletions(-)

commit 01ec13a1d9ae380305b593e1c52cebb0e8327cb6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 10 22:00:35 2011 +0200

    Implement hb_ft_font_get_face

 src/hb-ft.cc | 15 ++++++++++++++-
 src/hb-ft.h  |  2 ++
 2 files changed, 16 insertions(+), 1 deletion(-)

commit 36a4fe037df201f85b7a544eb30d75dc3585a1b6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 10 21:54:22 2011 +0200

    Fix charset conversion

 util/hb-view.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 25c4830593064f023e296aa795b72ddcaa1c9322
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 10 16:28:38 2011 +0200

    [util] Add hb-shape --shapers

    If the specified shapers fail, hb-shape will fail immediately

 util/hb-view.cc | 57
 +++++++++++++++++++++++++++++++++------------------------
 1 file changed, 33 insertions(+), 24 deletions(-)

commit 0501573deda3a8dcdfcea491392f554f21ed0154
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 10 16:25:56 2011 +0200

    Fix const correctness in the API

 src/hb-fallback-shape-private.hh |  2 +-
 src/hb-fallback-shape.cc         |  2 +-
 src/hb-ot-shape.cc               |  2 +-
 src/hb-ot-shape.h                |  2 +-
 src/hb-shape.cc                  | 14 +++++++-------
 src/hb-shape.h                   | 12 ++++++------
 src/hb-uniscribe-shape.cc        |  2 +-
 src/hb-uniscribe.h               |  2 +-
 8 files changed, 19 insertions(+), 19 deletions(-)

commit a21add6c0da067173d51792d716d6e38379f138f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 10 16:07:49 2011 +0200

    Reformat

 util/hb-view.cc | 49 ++++++++++++++++++-------------------------------
 1 file changed, 18 insertions(+), 31 deletions(-)

commit 8df90c81187db58eee6b90426cd16c32feef6be3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 10 15:26:41 2011 +0200

    [util] Port hb-view to GOption

 util/hb-view.cc | 267
 +++++++++++++++++++++++++++++++++-----------------------
 1 file changed, 156 insertions(+), 111 deletions(-)

commit 511a136f0c092880b19250a5df53bcf9f4b043ca
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 9 15:03:00 2011 +0200

    Move hb-view into util/

 Makefile.am              |  3 +--
 configure.ac             |  1 +
 src/Makefile.am          | 13 -------------
 util/Makefile.am         | 24 ++++++++++++++++++++++++
 {src => util}/hb-view.cc |  0
 5 files changed, 26 insertions(+), 15 deletions(-)

commit d753ac78da5619a0a545cdaf7a8e65787e996570
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 9 14:03:12 2011 +0200

    [uniscribe] Remove zerowidth glyphs from output

 src/hb-uniscribe-shape.cc | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

commit 217cc81cd9c3de30b2ef226983ec43c0f78b5c7d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 9 14:00:44 2011 +0200

    [test/shape-complex] Print cluster and position info in --verbose

 test/test-shape-complex.c | 20 +++++++++++++++++---
 1 file changed, 17 insertions(+), 3 deletions(-)

commit 708403e7f3e4a5cf9b0d2bd764fb74b148af7adb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 9 13:52:36 2011 +0200

    Fix warnings with old glib

 test/hb-test.h | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit ddd247b0c528cdb8bdf5f8063180abe884afa305
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 9 11:44:42 2011 +0200

    Minor

 src/test.cc | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 1b8196c98638ba05ae0ebcb8ba7aa99ed9c08e0a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 9 11:37:46 2011 +0200

    Add fallback shaper

 src/hb-fallback-shape.cc | 23 +++++++++++++++++++++--
 1 file changed, 21 insertions(+), 2 deletions(-)

commit 13a601fe99f237b08b7166448e386eaea0b77294
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 9 11:36:54 2011 +0200

    [FT] Don't make font immutable

 src/hb-ft.cc | 2 --
 1 file changed, 2 deletions(-)

commit 38b2118724600521c6ad1e49df0667dcdf863634
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 9 10:51:24 2011 +0200

    [API] Add hb_ft_font_set_funcs(), remove hb_ft_get_font_funcs()

    Remove hb_ft_get_font_funcs() as it cannot be used by the user anyway.

    Add hb_ft_font_set_funcs().  Which will make the font internally use
    FreeType.  That is, no need for the font to have created using the
    hb-ft API.  Just create using hb_face_create()/hb_font_create() and
    then call this on the font (after having set font scale).  This
    internally creates an FT_Face and attached to the font.

 src/Makefile.am    |  4 +--
 src/hb-ft.cc       | 76
 +++++++++++++++++++++++++++++++++++++++++++++++++++---
 src/hb-ft.h        | 10 ++++---
 src/test.cc        |  7 +++++
 test/Makefile.am   |  8 ------
 test/test-object.c |  9 -------
 6 files changed, 89 insertions(+), 25 deletions(-)

commit 255f176fdcd42ab94f9c3c54e2bffb55d0b1a8f5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 9 08:35:07 2011 +0200

    Minor

 src/hb-uniscribe-shape.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a9057eb3f38018faa1ece53c4aaeeba798b41fd1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 9 00:47:55 2011 +0200

    [uniscribe] Unbreak

 src/hb-uniscribe-shape.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit c0975e12315b7167b92411584d2f00a751bbc204
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 9 00:46:18 2011 +0200

    Fix build again

 test/Makefile.am | 3 +++
 1 file changed, 3 insertions(+)

commit 33ccc77902660ed4b49184e5ec99f4fd0ef63175
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 9 00:43:24 2011 +0200

    [API] Make set_user_data() functions take a replace parameter

    We need this to set data on objects safely without worrying that some
    other thread unsets it by setting it at the same time.

 src/hb-blob.cc            |  5 +++--
 src/hb-blob.h             |  3 ++-
 src/hb-buffer.cc          |  5 +++--
 src/hb-buffer.h           |  3 ++-
 src/hb-common.cc          | 13 ++++++++-----
 src/hb-font.cc            | 15 +++++++++------
 src/hb-font.h             |  9 ++++++---
 src/hb-object-private.hh  | 13 ++++++++-----
 src/hb-private.hh         | 16 +++++++++++-----
 src/hb-shape.cc           |  2 +-
 src/hb-unicode.cc         |  5 +++--
 src/hb-unicode.h          |  3 ++-
 src/hb-uniscribe-shape.cc | 18 ++++++++++++++----
 test/test-object.c        | 33 +++++++++++++++++----------------
 14 files changed, 89 insertions(+), 54 deletions(-)

commit 944b2ba1ce076385f985212bbdf2df96a8a995f0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 9 00:23:58 2011 +0200

    [buffer] Make API take signed int length

    Since we already switched to accepting -1 as 'zero-terminated'.

 src/hb-buffer.cc    | 12 ++++++------
 src/hb-buffer.h     | 12 ++++++------
 src/hb-ot-layout.cc |  2 --
 src/main.cc         |  1 -
 4 files changed, 12 insertions(+), 15 deletions(-)

commit de1e1cf9bccfd116d495804e230dc2e12b733a2d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 9 00:19:38 2011 +0200

    [FT] Adapt to new face API

 src/hb-ft.cc | 3 +++
 1 file changed, 3 insertions(+)

commit 458c89a85695220d43b69dbae36fc93e3fe78d89
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 9 00:19:19 2011 +0200

    Minor

 test/test-c.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit bf3eef540f81fdeba1c36263d7d5b2ec4c5f07b1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 9 00:13:24 2011 +0200

    [uniscribe] Cleanup backend

 TODO                      |   2 +
 src/hb-uniscribe-shape.cc | 161
 ++++++++++++++++++++++++++++++++++------------
 2 files changed, 123 insertions(+), 40 deletions(-)

commit f1f848e2e46ac54ff08aca7cd83390af31c7c9ef
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 8 23:41:06 2011 +0200

    Fix build

 test/Makefile.am | 5 +++++
 1 file changed, 5 insertions(+)

commit 3897335c7620c37e9a0224b0c42ade0dfdce4053
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 8 23:37:41 2011 +0200

    [API] Sort out get_blob API

    hb_face_get_blob() renamed to hb_face_reference_blob(), returns a
    reference now.

    hb_face_[sg]et_index() added.

    hb_face_set_upem() added.

 src/hb-font-private.hh      |  3 +-
 src/hb-font.cc              | 67
 +++++++++++++++++++++++++++++++++++----------
 src/hb-font.h               | 17 ++++++++++--
 src/hb-ft.cc                |  3 +-
 src/hb-ot-layout-private.hh |  9 ------
 src/hb-ot-layout.cc         | 21 --------------
 src/hb-uniscribe-shape.cc   |  3 +-
 7 files changed, 72 insertions(+), 51 deletions(-)

commit e715784be35f0846c0e084b7c53c7556ce933a45
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 8 21:42:02 2011 +0200

    Rename get_table to reference_table in all API

 src/hb-font-private.hh |  6 +++---
 src/hb-font.cc         | 20 ++++++++++----------
 src/hb-font.h          |  8 ++++----
 src/hb-ft.cc           |  4 ++--
 4 files changed, 19 insertions(+), 19 deletions(-)

commit 670c873499f7f03fdfc07b8a0567b041628c6ab0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 8 21:36:24 2011 +0200

    Fix shaper ordering logic

 src/hb-shape.cc | 80
 ++++++++++++++++++++++++---------------------------------
 1 file changed, 34 insertions(+), 46 deletions(-)

commit cc797e0d5368b2f5732d77eb3e3882283bd87cf7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 8 03:49:30 2011 +0200

    Minor

 TODO            | 2 --
 src/hb-shape.cc | 2 ++
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 826e22732dd8697600a1392f48af21b7b3ce6271
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 7 03:53:42 2011 -0400

    [uniscribe] Fix blob lifecycles

 src/hb-uniscribe-shape.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit ff199ba356f0eb5bc6252203eea18a1d1fd28934
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 7 03:43:46 2011 -0400

    Fix shaper_list manipulation, aaaaaaaaaaaaargh

 src/hb-shape.cc | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

commit 206e32934592b915b1f3052aecf014c6ced729e1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 7 01:10:55 2011 -0400

    [test] test-object is not FreeType-specific, move it to the right
    place

 test/Makefile.am | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

commit 577326b86af80cc137eea81f4cc1e30adf9232b1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 7 01:04:40 2011 -0400

    [uniscribe] Fix cluster calculation

 src/hb-uniscribe-shape.cc | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit f6d83b2dcf120f9d6f0a28c6f5de2da7addf9089
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 7 00:59:58 2011 -0400

    Minor

 src/test.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 2eb474afb4a09f4da8f14b444bd6066769010224
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 7 00:59:38 2011 -0400

    [uniscribe] Fix shaper

    It's kinda working finally!

 src/hb-uniscribe-shape.cc | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

commit f22e661147691ebc9d531aa28a850988e6503f9b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 7 00:59:12 2011 -0400

    [glib] Protect against invalid characters

 src/hb-glib.cc | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

commit 144cd49a0eb3ccc749325d0ee14b3ebf4367c971
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 7 00:51:50 2011 -0400

    [buffer] Accept -1 for text_length and item_length

    A -1 text_length means: zero-terminated string.
    A -1 item_length means: to the end of string.

 src/hb-buffer.cc | 10 ++++++++++
 1 file changed, 10 insertions(+)

commit e9c71fab30fd1d5b163c8a072f9e2d3eb8ba3a92
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 7 00:00:27 2011 -0400

    Fix name-table lookup

    Oops!

 src/hb-ot-name-private.hh | 2 +-
 src/hb-uniscribe-shape.cc | 2 ++
 2 files changed, 3 insertions(+), 1 deletion(-)

commit 3fd2b5bece28c81e3e379352f09eee39d19ac372
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 6 22:59:54 2011 -0400

    [uniscribe] Use font size directly

 src/hb-uniscribe-shape.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 892eb2e462b40451b8f73879eab66310d884386a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 6 22:06:52 2011 -0400

    [uniscribe] Make font selection work

    Not tested yet.

 src/hb-ot-name-private.hh | 37 +++++++++++++++++++++++++++++++++++++
 src/hb-uniscribe-shape.cc | 30 +++++++++++++++++++++++-------
 src/test.cc               |  1 -
 3 files changed, 60 insertions(+), 8 deletions(-)

commit b492299eb3c398701557e452f6c2c9bd370fbbf3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 5 20:34:50 2011 -0400

    Start implementing the 'name' table

 src/Makefile.am           |  3 +-
 src/hb-ot-name-private.hh | 91
 +++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-uniscribe-shape.cc | 12 ++++---
 3 files changed, 100 insertions(+), 6 deletions(-)

commit 4538efacca84329a60ff69851de70027d9b4f567
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 5 20:11:06 2011 -0400

    Skip tests by returning 77

    automake test runner understands this.

 src/check-internal-symbols.sh | 3 ++-
 src/check-libstdc++.sh        | 3 ++-
 2 files changed, 4 insertions(+), 2 deletions(-)

commit 54eb65538da0a6ab0389d09944c90e12a913157d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 5 20:09:25 2011 -0400

    Fix check on OS X sh

 src/check-header-guards.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9da554504e30a326fc57b28cdb0e57108bfa9555
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 5 19:48:49 2011 -0400

    Add hb_shape_list_shapers()

 src/hb-shape.cc   | 22 ++++++++++++++++++----
 src/hb-shape.h    |  3 +++
 test/Makefile.am  |  2 ++
 test/test-c.c     |  8 ++++++++
 test/test-shape.c | 15 +++++++++++++++
 5 files changed, 46 insertions(+), 4 deletions(-)

commit d7bf473ef222ab420456ff155ffaa09bacb3a394
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 5 18:18:21 2011 -0400

    Minor

 src/check-header-guards.sh  |  1 -
 src/hb-open-type-private.hh | 10 +++++-----
 2 files changed, 5 insertions(+), 6 deletions(-)

commit c62a8f10f3b9a4ac3ac6b686464ac734ebfa2f7f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 5 18:02:30 2011 -0400

    Free all static memory upon exit

 src/hb-common.cc | 8 +++++---
 src/hb-shape.cc  | 4 ++--
 2 files changed, 7 insertions(+), 5 deletions(-)

commit c4d63ef744f79701458ab7af2055afb87ffe8de3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 5 17:54:25 2011 -0400

    Fix env parsing code

    Also changed the separator to comma instead of colon.

 src/hb-shape.cc | 34 +++++++++++++++++++++++++---------
 1 file changed, 25 insertions(+), 9 deletions(-)

commit 3931837bebd79c5eb1bd5b24ff12e2c8e7d3f24c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 5 17:22:19 2011 -0400

    Change hb_shape() API back to what it was, add hb_shape_full()

    I disliked changing hb_shape() API, and disliked the fact that it was
    returning a bool now.  So, reverted.  Added new API for the extra
    functionality.

 src/hb-view.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 3ca6c4ecc299295b6682fa2b6b9f83b213223bad
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 5 17:22:19 2011 -0400

    Change hb_shape() API back to what it was, add hb_shape_full()

    I disliked changing hb_shape() API, and disliked the fact that it was
    returning a bool now.  So, reverted.  Added new API for the extra
    functionality.

 src/hb-shape.cc   | 21 +++++++++++++++------
 src/hb-shape.h    | 14 ++++++++++----
 src/test.cc       |  2 +-
 test/test-shape.c |  2 +-
 4 files changed, 27 insertions(+), 12 deletions(-)

commit 02aeca985b570763342c35e99af90025bfa088d5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 4 22:31:05 2011 -0400

    [API] Changes to main shape API

    hb_shape() now accepts a shaper_options and a shaper_list argument.
    Both can be set to NULL to emulate previous API.  And in most
    situations
    they are expected to be set to NULL.

    hb_shape() also returns a boolean for now.  If shaper_list is
    NULL, the
    return value can be ignored.

    shaper_options is ignored for now, but otherwise it should be a
    NULL-terminated list of strings.

    shaper_list is a NULL-terminated list of strings.  Currently
    recognized
    strings are "ot" for native OpenType Layout implementation,
    "uniscribe"
    for the Uniscribe backend, and "fallback" for the non-complex backend
    (that will be implemented shortly).  The fallback backend never fails.

    The env var HB_SHAPER_LIST is also parsed and honored.  It's a
    colon-separated list of shaper names.  The fallback shaper is
    invoked if
    none of the env-listed shapers succeed.

    New API hb_buffer_guess_properties() added.

 TODO                             |   2 -
 configure.ac                     |   9 +++
 src/Makefile.am                  |  14 ++--
 src/hb-buffer-private.hh         |   1 +
 src/hb-buffer.cc                 |  35 ++++++++++
 src/hb-buffer.h                  |   3 +
 src/hb-fallback-shape-private.hh |  48 ++++++++++++++
 src/hb-fallback-shape.cc         |  43 +++++++++++++
 src/hb-ot-shape.cc               |   9 ++-
 src/hb-ot-shape.h                |   5 +-
 src/hb-shape.cc                  | 135
 +++++++++++++++++++++++----------------
 src/hb-shape.h                   |  13 ++--
 src/hb-uniscribe-shape.cc        |  52 ++++++---------
 src/hb-uniscribe.h               |   5 +-
 src/hb-view.cc                   |   2 +-
 src/test.cc                      |   3 +-
 test/test-shape.c                |   2 +-
 17 files changed, 274 insertions(+), 107 deletions(-)

commit 57692adf1294a6db4627d0de7c671e4aa01d2a8f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 4 20:49:16 2011 -0400

    Make test.cc do something more useful

    Hardcoded to the uniscribe backend for now.  Will fix soon.

 src/test.cc | 38 ++++++++++++++++++++++++++++++++++----
 1 file changed, 34 insertions(+), 4 deletions(-)

commit c605bbbb6d4b2a98b1f40ca818760088d991f7d1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 4 20:00:53 2011 -0400

    Remove C++ guards from source files

    Where causing issues for people with MSVC.

 src/check-c-linkage-decls.sh            | 3 +--
 src/hb-blob.cc                          | 2 --
 src/hb-buffer-private.hh                | 2 --
 src/hb-buffer.cc                        | 2 --
 src/hb-common.cc                        | 2 --
 src/hb-font-private.hh                  | 2 --
 src/hb-font.cc                          | 2 --
 src/hb-ft.cc                            | 2 --
 src/hb-glib.cc                          | 2 --
 src/hb-icu.cc                           | 2 --
 src/hb-mutex-private.hh                 | 2 --
 src/hb-object-private.hh                | 4 ----
 src/hb-open-file-private.hh             | 2 --
 src/hb-open-type-private.hh             | 4 ----
 src/hb-ot-head-private.hh               | 2 --
 src/hb-ot-layout-common-private.hh      | 4 ----
 src/hb-ot-layout-gdef-private.hh        | 2 --
 src/hb-ot-layout-gpos-private.hh        | 4 ----
 src/hb-ot-layout-gsub-private.hh        | 4 ----
 src/hb-ot-layout-gsubgpos-private.hh    | 6 ------
 src/hb-ot-layout-private.hh             | 2 --
 src/hb-ot-layout.cc                     | 2 --
 src/hb-ot-map-private.hh                | 2 --
 src/hb-ot-map.cc                        | 2 --
 src/hb-ot-maxp-private.hh               | 2 --
 src/hb-ot-shape-complex-arabic-table.hh | 2 --
 src/hb-ot-shape-complex-arabic.cc       | 2 --
 src/hb-ot-shape-complex-indic-table.hh  | 2 --
 src/hb-ot-shape-complex-indic.cc        | 2 --
 src/hb-ot-shape-complex-misc.cc         | 2 --
 src/hb-ot-shape-complex-private.hh      | 2 --
 src/hb-ot-shape-normalize.cc            | 2 --
 src/hb-ot-shape-private.hh              | 2 --
 src/hb-ot-shape.cc                      | 2 --
 src/hb-ot-tag.cc                        | 2 --
 src/hb-private.hh                       | 8 --------
 src/hb-shape.cc                         | 2 --
 src/hb-unicode-private.hh               | 2 --
 src/hb-unicode.cc                       | 2 --
 src/hb-uniscribe-shape.cc               | 2 --
 src/hb-view.cc                          | 2 --
 src/main.cc                             | 2 --
 src/test.cc                             | 2 --
 43 files changed, 1 insertion(+), 106 deletions(-)

commit 8336186a52813b53e90b4399dc462d55750e2d37
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 4 19:49:05 2011 -0400

    Zero map objects

 src/hb-ot-map-private.hh | 4 ++++
 1 file changed, 4 insertions(+)

commit ecd3b6e4ad253cf9d0dae1ed2da8ba6caed16b85
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 4 01:57:40 2011 -0400

    More build fixes

 configure.ac | 2 ++
 1 file changed, 2 insertions(+)

commit c747f509bcc4e6a34ced04e9e79ed414a44437b1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 4 01:51:30 2011 -0400

    More out-of-tree build fixes

 src/check-c-linkage-decls.sh | 3 +--
 src/check-header-guards.sh   | 8 ++++----
 2 files changed, 5 insertions(+), 6 deletions(-)

commit 0530ca9a180edc330ab801c535907cefa4a0c298
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 4 01:42:59 2011 -0400

    Fix out-of-tree build

 test/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ddbf4edc5d09a645351b1bd1722b068aba6a6dec
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 4 01:38:37 2011 -0400

    Minor

 configure.ac | 1 -
 1 file changed, 1 deletion(-)

commit 20dde6101662fd9ebe5f613631ea468f4c0a995f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 4 01:07:33 2011 -0400

    Minor

 src/hb-uniscribe.h | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 44b4f50d05fd51d8056a78e359fbb00fbcac43a0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 4 00:52:20 2011 -0400

    Fix typo

 src/hb-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0fbb2dc83132a89201ad8b56c6909610437d2da0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 3 19:55:04 2011 -0400

    Add draft experimental Uniscribe backend

    Not complete yet, font selection doesn't work.  But hey it shapes!

    This is not supposed to be a production backend, more like a testing
    backend.

 configure.ac              |   9 ++
 src/Makefile.am           |  11 ++
 src/hb-private.hh         |   4 +-
 src/hb-uniscribe-shape.cc | 325
 ++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-uniscribe.h        |  46 +++++++
 5 files changed, 394 insertions(+), 1 deletion(-)

commit 0d7d4824b2edc7aeeb995077655a9a89b5c360a9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 3 17:39:24 2011 -0400

    Minor

 configure.ac | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit e62df43649e31b7815c272f01808b3f726c7d07d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 3 17:38:54 2011 -0400

    Add internal hb_buffer_t::get_scratch_buffer()

 src/hb-buffer-private.hh |  2 ++
 src/hb-buffer.cc         | 10 ++++++++++
 2 files changed, 12 insertions(+)

commit 71e7936fcadfd375a8bdc47987ef8b1b2b542df5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 3 17:38:34 2011 -0400

    Minor

 TODO | 2 ++
 1 file changed, 2 insertions(+)

commit bf8c57ba745c02370c38198adfdcd8075ba38b13
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 3 17:38:04 2011 -0400

    [API] Add hb_face_get_blob()

    Need to think more about it.

 src/hb-font.cc | 10 ++++++++++
 src/hb-font.h  |  3 +++
 2 files changed, 13 insertions(+)

commit 2118fdb9f584e6735e904638e48bae48314372fa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 2 14:06:51 2011 -0400

    Fix fallback shaping

    Broke it a few commits ago.

 src/hb-ot-shape.cc | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

commit 199abbd0f15bd295c3a56845c71b38dd20af1332
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 2 13:59:47 2011 -0400

    Minor

 test/test-unicode.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 4f052b93c0b17d92b9f0adddf64ef77518bf2ac4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 2 13:44:24 2011 -0400

    Fix build with glib but not freetype

 test/Makefile.am | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

commit c21be799daa85d5edb2d831ac985d3e43c8755ec
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 2 12:05:49 2011 -0400

    Minor

 test/Makefile.am | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit e9c2341b1384c161bbab9871411af0bc9f6c3cf4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 2 11:40:44 2011 -0400

    Don't use icu-config when cross-compiling

 configure.ac | 17 ++++++++++-------
 1 file changed, 10 insertions(+), 7 deletions(-)

commit 390dab49b6cf34f263b67d20a13f0752ada57bcc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 2 11:29:55 2011 -0400

    Unbreak icu-config results a bit

 configure.ac | 1 +
 1 file changed, 1 insertion(+)

commit b301478a69d961c724a4875b839a81fb458d1153
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 2 11:25:13 2011 -0400

    Bug 39763 - autogen.sh should check pkg-config availability

    (and revert change have_icu change I mistakenly pushed out)

 autogen.sh   | 10 ++++++++--
 configure.ac |  1 -
 2 files changed, 8 insertions(+), 3 deletions(-)

commit f60271c0c2b0101e7b2725f9a9ad950c277a616c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 2 09:56:30 2011 -0400

    Add mingw32 support

    With these changes, on Ubuntu I can do:

    ./configure --host=i586-mingw32msvc  && make

 configure.ac                | 1 +
 src/hb-mutex-private.hh     | 4 ++--
 src/hb-open-type-private.hh | 5 +++++
 src/hb-private.hh           | 6 +++++-
 src/main.cc                 | 1 +
 5 files changed, 14 insertions(+), 3 deletions(-)

commit 1264b23e4a4ae1c9831a3009e1c7ab8e65a5b434
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 1 16:39:32 2011 -0400

    Bug 39702 - configure check for ragel

 autogen.sh | 18 +++++++++++++-----
 1 file changed, 13 insertions(+), 5 deletions(-)

commit f5414cf0a220d6e6f3d4b6e8221cd583b4684187
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 1 16:34:16 2011 -0400

    Use missing script for calling ragel

 src/Makefile.am | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit a91c58bf98258a34e5f7c1ad39a38db58fadc4b9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 1 16:30:11 2011 -0400

    [Indic] Disable CJCT-disabling logic

    Read comment.

 src/hb-ot-shape-complex-indic.cc | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

commit 5e72071062c015237b79fbd0521341a63166a204
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 31 17:51:50 2011 -0400

    [Indic] Stop looking for base upon seeing joiners

    Not sure where this is documented, but I remember this being the
    desired
    behavior.

    test-shape-complex failures are down from 48 to 46.  Meh.

 src/hb-ot-shape-complex-indic.cc | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

commit 281683995a46ed37aeeb84061249758c59822457
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 31 16:00:35 2011 -0400

    Cosmetic

 src/hb-ot-shape-complex-indic.cc | 23 +++++++++++++++--------
 1 file changed, 15 insertions(+), 8 deletions(-)

commit 6b37bc80843e38ca7b62500f95fd70c08af68d62
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 31 15:57:00 2011 -0400

    [Indic] Fix ZWJ/ZWNJ application

    Not quite working just yet.  False alarm re 10 failures.  It was
    crashing.  Ouch!  Back to 48 failures.

 src/hb-ot-shape-complex-indic.cc | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

commit e7be05702447ae270d797398132c1930cd3a9b86
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 31 15:18:57 2011 -0400

    [Indic] Add Final Reordering rules into comments

    Not applied yet.

 src/hb-ot-shape-complex-indic.cc | 86
 ++++++++++++++++++++++++++++++++++++++--
 1 file changed, 83 insertions(+), 3 deletions(-)

commit cfd4382ec1af91640129551697de36fd42c0849a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 31 15:07:11 2011 -0400

    [Indic] Handle Reph when determining base consonant

 src/hb-ot-shape-complex-indic.cc | 24 +++++++++++++++---------
 1 file changed, 15 insertions(+), 9 deletions(-)

commit 97158392a5899ddb739afaac925128f33f699bd7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 31 15:01:28 2011 -0400

    [Indic] Ra is a consonant too

 src/hb-ot-shape-complex-indic.cc | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 0d8f8a177c4bfd4dc642a353bab8d03674e839ac
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 31 14:57:59 2011 -0400

    [Indic] Fix reph inhibition logic

 src/hb-ot-shape-complex-indic.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 9da0487cd452d780673e24329ce03e174a4ef83b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 31 13:46:44 2011 -0400

    [Indic] Support ZWJ/ZWNJ

    Brings test-shape-complex failures down from 52 to 10!

    I hereby declare harfbuzz-ng supporting Indic!

 src/hb-ot-shape-complex-indic.cc | 57
 +++++++++++++++++++++++++++++++++-------
 1 file changed, 48 insertions(+), 9 deletions(-)

commit 9ee27a928a989c71923cef82a9e9828f8e9ca051
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 31 11:10:14 2011 -0400

    [Indic] Suppress reph formation upon joiners

 src/hb-ot-shape-complex-indic.cc | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

commit 8354e004e553856d7d743e0f0b4de4668484026a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jul 31 02:24:51 2011 -0400

    Un-Ra U+09F1.  According to the test suite this is correct.

    But I'm not sure...  Down from 54 failures to 52.

 src/hb-ot-shape-complex-indic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 07cedd81f48907b2e372cd2e963716bbded9ce29
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jul 30 21:16:51 2011 -0400

    Minor

 test/test-shape-complex.c | 21 +++++++++++----------
 1 file changed, 11 insertions(+), 10 deletions(-)

commit ba7e85c104e68b4685c1b3b5c9a260fe0f6879df
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jul 30 21:11:53 2011 -0400

    Cosmetic

 src/hb-ot-shape-complex-indic.cc | 1 +
 1 file changed, 1 insertion(+)

commit f5bc2725cb892264ba223e0a49f7fd2c622a0730
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jul 30 21:08:10 2011 -0400

    [Indic] For old-style Indic tables, move Halant around

    In old-style Indic OT standards, the post-base Halants are moved after
    their base.  Emulate that by moving first post-base Halant to
    post-last-consonant.

    Brings test-shape-complex failures down from 88 to 54.  Getting there!

 src/hb-ot-map-private.hh         |  3 +++
 src/hb-ot-shape-complex-indic.cc | 20 ++++++++++++++++++++
 2 files changed, 23 insertions(+)

commit c47a31fb4793b825f4be57e9cb1b10db352b9512
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jul 30 20:57:01 2011 -0400

    [OT] Save chosen script tag

 src/hb-ot-layout.cc      | 20 ++++++++++++++++----
 src/hb-ot-layout.h       |  3 ++-
 src/hb-ot-map-private.hh |  1 +
 src/hb-ot-map.cc         |  2 +-
 4 files changed, 20 insertions(+), 6 deletions(-)

commit 3a9b14dfdfc278b432890e1537672a4ca141a3b0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jul 30 20:23:55 2011 -0400

    Minor

 test/test-shape-complex.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 8613193bbf28fe8951c900b68c4418a6fb929626
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jul 30 20:21:40 2011 -0400

    [test] Fix problem with N'ko test direction

    Old HarfBuzz test suite always shaped as left-to-right and hence
    had wrong
    0x14db, direction expected glyphstring for N'ko.  Doh!

    Failures down from 92 to 88.

 test/test-shape-complex.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit fd06bf56110e73826b3d5c73ac964e2609450d46
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jul 30 20:14:44 2011 -0400

    [Indic] Handle initial Ra+Halant in scripts that support Reph

    Brings test-shape-complex failures down from 104 to 92.  Way to go!

 src/hb-ot-shape-complex-indic.cc | 10 ++++++++++
 1 file changed, 10 insertions(+)

commit ee58f3bc75d2d071a71b94063bf12205a5871acb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jul 30 19:15:53 2011 -0400

    Minor

 src/hb-ot-shape-complex-indic.cc | 23 ++++++++++++-----------
 1 file changed, 12 insertions(+), 11 deletions(-)

commit 352372ae5ea0998e40cf9fe43c22b6b610a5764e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jul 30 19:04:02 2011 -0400

    [Indic] Categorize Ra in scripts that have Reph

    Is the categorization correct?  I don't know.

 src/hb-ot-shape-complex-indic.cc | 31 ++++++++++++++++++++++++++++++-
 1 file changed, 30 insertions(+), 1 deletion(-)

commit 45d6f29f15f1d2323bcaa2498aed23ff0c8a1567
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jul 30 14:44:30 2011 -0400

    [Indic] Reorder matras

    Number of failing shape-complex tests goes from 125 down to 94.

    Next: Add Ra handling and it's fair to say we kinda support Indic :).

 src/hb-ot-shape-complex-indic.cc | 29 +++++++++++++++++++++++++++--
 src/hb-ot-shape-normalize.cc     | 26 ++++++++++----------------
 src/hb-private.hh                | 36
 ++++++++++++++++++++++++++++++------
 3 files changed, 67 insertions(+), 24 deletions(-)

commit 911bf32acad7f1cd161f666cb659990ade0925ad
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jul 30 11:16:00 2011 -0400

    Bug 39686 - Add '-no-undefined' to libharfbuzz LDFLAGS

 src/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 8f0b64fb6988f9502d2c5e39768a9af133d9a83f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 29 17:02:48 2011 -0400

    Minor

 src/hb-ot-shape-complex-arabic.cc | 6 +++---
 src/hb-private.hh                 | 8 ++++++--
 2 files changed, 9 insertions(+), 5 deletions(-)

commit 743807a3ce1b2229e5307a8aea074a7544623d8d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 29 16:37:02 2011 -0400

    [Indic] Apply Indic features

    Find the base consonant and apply basic Indic features accordingly.
    Nothing complete, but does something for now.  Specifically:
    no Ra handling right now, and no ZWJ/ZWNJ.

    Number of failing shape-complex tests goes from 174 down to 125.

    Next: reorder matras.

 src/hb-ot-shape-complex-indic-machine.rl |  35 ++++--
 src/hb-ot-shape-complex-indic.cc         | 209
 ++++++++++++++++++++++++++++---
 2 files changed, 212 insertions(+), 32 deletions(-)

commit 1a1b5013159369b343d0c32df02c9c419277aead
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 29 16:36:46 2011 -0400

    Minor

 test/test-shape-complex.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

commit dd5546de15e63c0320b7db2bf42b0f15271f7915
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 29 16:27:31 2011 -0400

    Minor

 test/test-shape-complex.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9f9bcceca6321d5a5812f878de1de39901349a78
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 28 17:06:46 2011 -0400

    Register buffer vars in Indic shaper

 src/hb-ot-shape-complex-indic.cc | 6 ++++++
 src/hb-ot-shape.cc               | 2 ++
 2 files changed, 8 insertions(+)

commit be09bf6b799cafc2ff54a28915b307ffe99661b6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 28 17:03:43 2011 -0400

    Oops.  This should have gone into the previous commit

 src/hb-ot-layout-gsub-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b65c06025d2b54a44f716e030d4b10072c65bea8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 28 16:48:43 2011 -0400

    Formalize buffer var allocations

 src/hb-buffer-private.hh           | 25 ++++++----------
 src/hb-buffer.cc                   | 15 +++++-----
 src/hb-ot-layout-gpos-private.hh   | 14 +++++----
 src/hb-ot-layout-gsub-private.hh   |  5 +++-
 src/hb-ot-shape-complex-arabic.cc  |  6 +++-
 src/hb-ot-shape-complex-indic.cc   |  4 +--
 src/hb-ot-shape-complex-private.hh | 10 ++++++-
 src/hb-ot-shape.cc                 | 60
 +++++++++++++++++++++++---------------
 src/hb-private.hh                  |  1 +
 9 files changed, 83 insertions(+), 57 deletions(-)

commit a9ad3d3460ba863a8d8f3766ccbeab288c3c6822
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 28 15:42:18 2011 -0400

    Move more code around

    Buffer var allocation coming into shape

 src/hb-buffer-private.hh         |  1 +
 src/hb-buffer.cc                 | 35 +++++++++++++++++++++++++++++++++++
 src/hb-ot-layout-gpos-private.hh |  7 +++++++
 src/hb-ot-layout-gsub-private.hh | 18 ++++++++++++++++++
 src/hb-ot-layout.cc              |  8 +++-----
 5 files changed, 64 insertions(+), 5 deletions(-)

commit cc06c243d8be3ebb1190281653d2dba504c16c0f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 25 20:25:44 2011 -0400

    Streamline debugging infrastructure even more

 src/hb-blob.cc                       |  26 ++++-----
 src/hb-object-private.hh             |   8 +--
 src/hb-open-type-private.hh          |  64 ++++++--------------
 src/hb-ot-layout-gsubgpos-private.hh |   2 +-
 src/hb-private.hh                    | 109
 +++++++++++++++++++++++++++++++----
 5 files changed, 136 insertions(+), 73 deletions(-)

commit 43ff203d8ea3e1b09e316e3aae1a4e5ec15bfdd2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 25 17:35:24 2011 -0400

    Use variadic macros for debugging

    Looks *so* much nicer!

 src/hb-blob.cc              | 26 ++++++++--------
 src/hb-object-private.hh    |  8 ++---
 src/hb-open-type-private.hh | 75
 ++++++++++++++++++++-------------------------
 src/hb-private.hh           |  7 +++--
 4 files changed, 56 insertions(+), 60 deletions(-)

commit decd4e3e16424dc311e9fb5b663170414a11556a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 25 16:47:02 2011 -0400

    Add sugar syntax for debug messages

    Buffer debugging coming soon.

 src/hb-blob.cc              | 35 +++++++++++++----------------------
 src/hb-object-private.hh    |  9 ++++-----
 src/hb-open-type-private.hh | 44
 ++++++++++++++++++++++----------------------
 src/hb-private.hh           |  7 +++++--
 4 files changed, 44 insertions(+), 51 deletions(-)

commit 3a81b1db89beba91fb91791918b9fdd9f8fc9fa0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 25 16:30:32 2011 -0400

    Minor, fix leak from my previous refactorings

 src/hb-buffer.cc | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

commit f4a579bc42fb811ff5c391a0e97b7d8656ef59b1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 25 16:20:16 2011 -0400

    Add internal API for buffer var allocation

 src/hb-buffer-private.hh | 25 +++++++++++++++++++++++--
 src/hb-buffer.cc         | 22 ++++++++++++++++++++++
 2 files changed, 45 insertions(+), 2 deletions(-)

commit 651e8dd79ec8eaca5ab75a61e8ce961ff7bd26eb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 25 14:54:08 2011 -0400

    Start cleaning up buffer var allocation

    I've messed up a lot of stuff recently, different parts of the
    shaping process are stumbling on eachother's toes because
    manually tracking what's in which buffer var is hard.  I'm
    going to add some internal API to track those such that mistakes
    are discovered as soon as they are introduced.

 src/hb-ot-layout-gsubgpos-private.hh |  1 -
 src/hb-ot-layout.cc                  |  1 +
 src/hb-ot-shape.cc                   | 10 ----------
 3 files changed, 1 insertion(+), 11 deletions(-)

commit c86f932015bdf5803572b0904d343d3bc033e009
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 25 00:44:50 2011 -0400

    Move code around

 src/hb-ot-shape.cc | 85
 +++++++++++++++++++++++++++---------------------------
 1 file changed, 42 insertions(+), 43 deletions(-)

commit 18c42850c9327ab4479ff150660a76d4ff6f3e9c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 25 00:36:58 2011 -0400

    Shrink space used for ligature ids

    This frees 16bits in the glyph_info struct during the ot_layout
    process.
    We can use the freed space in the shapers now.

 src/hb-ot-layout-gsubgpos-private.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit d8787493c9aa420544096cef07c29a591a0c1a99
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 25 00:36:01 2011 -0400

    Minor

 src/hb-ot-layout-gsub-private.hh     | 6 ------
 src/hb-ot-layout-gsubgpos-private.hh | 7 +++++++
 2 files changed, 7 insertions(+), 6 deletions(-)

commit c311d852080b50ffc85e80168de62abb05a6be59
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jul 23 23:43:54 2011 -0400

    Keep Unicode props updated as we go so we avoid a scan later

 src/hb-ot-shape-normalize.cc | 54
 +++++++++++++++++++++-----------------------
 1 file changed, 26 insertions(+), 28 deletions(-)

commit 5389ff4dbc46c76c9483e3c95f22524b60e21166
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 22 20:22:49 2011 -0400

    Implement the Unicode Canonical Composition algorithm

    Fallback normalization is complete and working now!

 src/hb-ot-shape-normalize.cc | 49
 +++++++++++++++++++++++++++++++++++++++++---
 1 file changed, 46 insertions(+), 3 deletions(-)

commit dcdc51cdc0ba9d9fb75f84dd5fa7a49aa0b24ea0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 22 17:14:46 2011 -0400

    Handle singleton decompositions

 src/hb-ot-shape-normalize.cc | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

commit 34c22f816808d061a980cffca12de03beb437fa0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 22 17:04:20 2011 -0400

    Implement Unicode Canonical Reordering Algorithm

 src/hb-ot-shape-normalize.cc | 80
 +++++++++++++++++++++++++++++++++++++-------
 src/hb-ot-shape-private.hh   |  2 ++
 src/hb-ot-shape.cc           |  6 ++--
 3 files changed, 73 insertions(+), 15 deletions(-)

commit 4ff0d2d9dfc4f7e4880a4e964ca9872624508ea0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 22 16:15:32 2011 -0400

    Decomposition works now!

 src/hb-ot-shape-normalize.cc | 109
 +++++++++++++++++++++++++++----------------
 src/hb-ot-shape.cc           |   3 +-
 2 files changed, 70 insertions(+), 42 deletions(-)

commit 468e9cb25c9bc14781b7013e447d763f93bf76a3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 22 11:28:07 2011 -0400

    Move buffer methods into the object

 src/hb-buffer-private.hh             | 110 +++----
 src/hb-buffer.cc                     | 605
 +++++++++++++++++------------------
 src/hb-ot-layout-gpos-private.hh     |  88 ++---
 src/hb-ot-layout-gsub-private.hh     |  58 ++--
 src/hb-ot-layout-gsubgpos-private.hh |  50 +--
 src/hb-ot-shape-normalize.cc         |  16 +-
 src/hb-ot-shape.cc                   |  14 +-
 7 files changed, 456 insertions(+), 485 deletions(-)

commit 45412523dc295cb5ee12e096bfacb282cc925843
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 22 11:07:05 2011 -0400

    More normalization kick

 src/hb-ot-shape-normalize.cc | 54
 +++++++++++++++++++++++++++++---------------
 src/hb-ot-shape-private.hh   |  8 ++++++-
 src/hb-ot-shape.cc           | 13 +++--------
 3 files changed, 46 insertions(+), 29 deletions(-)

commit 63c0ef4a0763e579c9c80887bbfbd2651de05067
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 21 20:58:42 2011 -0400

    Fix decompose() implementations to work with non-starter
    non-composables

    Add tests.

 src/hb-glib.cc      | 10 +++++-----
 src/hb-icu.cc       | 20 +++++++++++++-------
 test/test-unicode.c | 11 ++++++++---
 3 files changed, 26 insertions(+), 15 deletions(-)

commit 5d90a342e319068716429bf7af76c3896b61a0e5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 21 15:25:01 2011 -0400

    Document normalization design

 src/hb-ot-shape-normalize.cc | 78
 +++++++++++++++++++++++++++++++++++---------
 src/hb-ot-shape-private.hh   |  2 +-
 src/hb-ot-shape.cc           |  6 ++--
 3 files changed, 67 insertions(+), 19 deletions(-)

commit 02cdf743c2ec345a44d4fcf865594b6ac13fccd0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 21 12:23:12 2011 -0400

    Add prefer_decomposed() complex-shaper callback

    This allows the Indic shaper to request decomposed characters.
    This will
    handle split matra for free.  Other shapers prefer precomposed
    characters.

 src/hb-ot-shape-complex-arabic.cc  |  6 ++++++
 src/hb-ot-shape-complex-indic.cc   |  7 +++++++
 src/hb-ot-shape-complex-misc.cc    |  6 ++++++
 src/hb-ot-shape-complex-private.hh | 31 +++++++++++++++++++++++++++++--
 4 files changed, 48 insertions(+), 2 deletions(-)

commit d6b9c6d20041b4f4fa11befc179aee757c41904d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 21 12:16:45 2011 -0400

    More kicking

 src/hb-ot-shape-normalize.cc | 17 ++++++++++++++---
 1 file changed, 14 insertions(+), 3 deletions(-)

commit 192445aef2e50087049243ce54ce7059ec441ffa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 21 12:13:04 2011 -0400

    Remove intermittent_glyph()

    Lets not worry about performance for now...

 src/hb-ot-shape-normalize.cc | 3 ++-
 src/hb-ot-shape-private.hh   | 2 --
 2 files changed, 2 insertions(+), 3 deletions(-)

commit d63adfc7d09b26764d9166da97372b21257e7611
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 21 11:48:57 2011 -0400

    No need to handle variation-selectors seperately, they are GC=Mn

 src/hb-ot-shape.cc | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit aa7264123a088936f2043b45d4d41ca7413fabe5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 21 11:34:59 2011 -0400

    Only form clusters if we are reversing

    This produces more accurate cluster mappings.  Cluster mappings are
    minimal now.  Combining marks get their own cluster value most of
    the time.

 src/hb-ot-shape.cc | 45 ++++++++++++++++++++++-----------------------
 1 file changed, 22 insertions(+), 23 deletions(-)

commit 5c6f5982d78e2d7fadc2fbb8b4f3a4be9420c59a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 21 11:31:08 2011 -0400

    Towards normalization

 src/hb-ot-shape-normalize.cc | 33 ++++++++++++++++++++++-----------
 src/hb-ot-shape-private.hh   |  3 ++-
 src/hb-ot-shape.cc           |  4 +++-
 3 files changed, 27 insertions(+), 13 deletions(-)

commit ad903e66b1cc4ec1b8160f93b3ab2b5e636f8d62
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 21 10:17:22 2011 -0400

    s/COMBINING_MARK/SPACING_MARK/ here too.  Oops!

 test/test-unicode.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit cf7f43ec3382cac2af11f5637c840500daabf889
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 21 01:12:26 2011 -0400

    Remove stale comment

 src/hb-ot-shape.cc | 1 -
 1 file changed, 1 deletion(-)

commit 54d1a0d2b2c4ffe15494967122c6422ecb1fc80b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 21 01:11:09 2011 -0400

    Form clusters before ensuring native direciton

    This is essential as ensure_native_direction uses cluster info that
    is set by form_clusters().

 src/hb-ot-shape.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 9111b21ef99d5e53348176f683261b0101eb427f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 21 00:58:29 2011 -0400

    Add _hb_buffer_output_glyph() and _hb_buffer_skip_glyph()

 src/hb-buffer-private.hh | 10 ++++++++++
 src/hb-buffer.cc         | 19 ++++++++++++++++---
 src/hb-ot-shape.cc       |  2 +-
 3 files changed, 27 insertions(+), 4 deletions(-)

commit 655586fe5e1fadf2a2ef7826e61ee9a445ffa37a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 21 00:51:18 2011 -0400

    Towards normalization

 src/Makefile.am              |  1 +
 src/hb-ot-shape-normalize.cc | 71
 ++++++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-shape-private.hh   | 12 ++++++++
 src/hb-ot-shape.cc           | 10 ++-----
 4 files changed, 86 insertions(+), 8 deletions(-)

commit 49741c86334d12fa08a5bfa2110ff3b9adcba1c7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 21 00:35:37 2011 -0400

    Include variation-selectors in cluster calculation

 src/hb-ot-shape.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit dd89d958c139d85efb776fffaf314eead3952c78
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 21 00:28:57 2011 -0400

    Fix cluster calculation for non-LTR text

 TODO             | 6 ------
 src/hb-buffer.cc | 5 +++++
 2 files changed, 5 insertions(+), 6 deletions(-)

commit 4a68684654e645882095c1189477146287ce9437
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 21 00:14:01 2011 -0400

    When forming clusters, participate all mark types

 src/hb-ot-shape.cc | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit 5157e12a55f943b7fc5be7dce0b2ee1bcacca6ec
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 21 00:12:33 2011 -0400

    Rename HB_UNICODE_GENERAL_CATEGORY_COMBINING_MARK to
    HB_UNICODE_GENERAL_CATEGORY_SPACING_MARK

    Spacing_Mark is the current Unicode long-name for this property value.
    The previous name was wrongly carried from glib.

 src/hb-common.h | 2 +-
 src/hb-icu.cc   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 7b08b0a7f2057937dfc3ab2ec191656bf2386463
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 20 23:59:07 2011 -0400

    Minor

 src/hb-ot-shape-complex-arabic.cc |  8 ++++----
 src/hb-private.hh                 | 19 +++++++++++++++++++
 2 files changed, 23 insertions(+), 4 deletions(-)

commit 498e1a9be673bb02c00aac3f12bb4c6993a85910
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 20 23:19:49 2011 -0400

    [icu] Implement compose()/decompose()

 src/hb-icu.cc       | 87
 +++++++++++++++++++++++++++++++++++++++++++++++++++--
 test/test-unicode.c |  1 +
 2 files changed, 86 insertions(+), 2 deletions(-)

commit ffd4a436f7baccb68a0c3602f94ea0246e32844f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 20 22:30:29 2011 -0400

    Add tests for compose()/decompose()

    Adjust glib fallback implementation.

    The tests are not hooked up for ICU yet.

 src/hb-glib.cc      | 17 ++++++++++++--
 src/hb-unicode.cc   |  2 +-
 test/test-unicode.c | 66
 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 82 insertions(+), 3 deletions(-)

commit fca0923b04aeff9369849da97d247a647611f346
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 20 22:16:13 2011 -0400

    Minor

 src/hb-icu.cc | 62
 ++++++++++++++++++++++++++++++++++++-----------------------
 1 file changed, 38 insertions(+), 24 deletions(-)

commit 26b6024962b254b624d4f22088b6c87745074743
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 20 21:58:14 2011 -0400

    [glib] Use g_unicode_script_to/from_iso15924() if available

 src/hb-glib.cc | 10 ++++++++++
 1 file changed, 10 insertions(+)

commit 22fdc66712464bdb02e45eed49e4be57e79b442f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 20 21:51:37 2011 -0400

    [glib] Add compose() and decompose() implementations with fallback

 src/hb-glib.cc    | 126
 +++++++++++++++++++++++++++++++++++++++++++-----------
 src/hb-unicode.cc |   6 ++-
 2 files changed, 106 insertions(+), 26 deletions(-)

commit a54a5505a35eef5315a8e2e7a79502901e3eff5f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 20 16:42:10 2011 -0400

    Minor

 src/hb-ot-shape-complex-indic.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 23db8d5c92c96a34c716b68e1aa6819c5a20477a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 12 12:02:26 2011 -0400

    [test] Work around glib <= 2.30 API

 test/hb-test.h | 4 ++++
 1 file changed, 4 insertions(+)

commit 22989c5ffc8cce1ea05d729cdf33661c35a52334
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 12 11:54:58 2011 -0400

    Distribute hb-ot-shape-complex-indic-machine.rl

 src/Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit f6fd3780e12b23ff7ed3743497c8996e71dcb064
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 8 00:22:40 2011 -0400

    Let shapers decide when to apply ccmp and locl

    Instead of always applying those two features before the complex
    shaper,
    let the complex shaper decide whether they should be applied first.

    Also add stub for Indic's final_reordering().

 src/hb-ot-shape-complex-arabic.cc |  2 ++
 src/hb-ot-shape-complex-indic.cc  | 16 ++++++++++++++++
 src/hb-ot-shape.cc                |  7 +------
 3 files changed, 19 insertions(+), 6 deletions(-)

commit c4641723fbf6532b2e80a662e15573b31276bc73
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 7 23:47:19 2011 -0400

    [API] Add compose() and decompose() unicode funcs, rename other ones

    Add compose() and decompose() unicode funcs.  These implement
    pair-wise canonical composition/decomposition.

    The glib/icu implementations are lacking for now.  We are adding
    API for this to glib, but I cannot find any useful API in ICU.
    May end of implementing these in-house.

    Changed all unicode_funcs callback names to remove the "_get" part.
    Eg, hb_unicode_get_script_func_t is now hb_unicode_script_func_t,
    and hb_unicode_get_script() is hb_unicode_script() now.

 TODO                      |  4 ++-
 src/hb-glib.cc            |  6 +++-
 src/hb-icu.cc             |  6 +++-
 src/hb-ot-shape.cc        |  6 ++--
 src/hb-shape.cc           |  2 +-
 src/hb-unicode-private.hh |  8 +++--
 src/hb-unicode.cc         | 85
 ++++++++++++++++++++++++++++++++++-------------
 src/hb-unicode.h          | 70 +++++++++++++++++++++++++++-----------
 test/test-unicode.c       | 21 +++++++-----
 9 files changed, 146 insertions(+), 62 deletions(-)

commit d05dded1676924e8894c90f7a7c3527b492bcdff
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 7 23:42:40 2011 -0400

    More code generation through preprocessor

 src/hb-ot-shape-complex-private.hh | 46
 ++++++++++++++++++++++++--------------
 1 file changed, 29 insertions(+), 17 deletions(-)

commit 891c4755baae6cd59fad59d27fd8933e5f548a74
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 7 23:19:27 2011 -0400

    Humm, undo some shuffling

    In preparation for adding more advanced unicode funcs.

 src/hb-ot-shape.cc        |  6 ++---
 src/hb-shape.cc           |  2 +-
 src/hb-unicode-private.hh | 36 +++++++++++++-------------
 src/hb-unicode.cc         | 65
 ++++++++++++++++++++++++++++++++++-------------
 4 files changed, 70 insertions(+), 39 deletions(-)

commit 4b6317c4f426cfaf21e509dbf6ee6d4e0422cdac
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 7 23:14:42 2011 -0400

    More code shuffling

 src/hb-font-private.hh    |  16 +++---
 src/hb-font.cc            |   3 +-
 src/hb-unicode-private.hh |  42 +++++++-------
 src/hb-unicode.cc         | 140
 +++++++++++++++++-----------------------------
 4 files changed, 82 insertions(+), 119 deletions(-)

commit 3361c9a323575309d9fd55fe076697a3e22073c0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 7 22:35:17 2011 -0400

    Minor

 src/Makefile.am                    |  1 +
 src/hb-ot-shape-complex-misc.cc    | 51
 ++++++++++++++++++++++++++++++++++++++
 src/hb-ot-shape-complex-private.hh | 12 ++++++---
 3 files changed, 60 insertions(+), 4 deletions(-)

commit 76f76812ac7cca8ac6935952a2360d5e151480fa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 7 22:25:25 2011 -0400

    Shuffle code around, remove shape_plan from complex shapers

 src/hb-ot-shape-complex-arabic.cc        | 36 +++++++++++++-------------
 src/hb-ot-shape-complex-indic-machine.rl | 12 ++++-----
 src/hb-ot-shape-complex-indic.cc         | 25 +++++++++---------
 src/hb-ot-shape-complex-private.hh       | 44
 +++++++++++++++++++++-----------
 src/hb-ot-shape-private.hh               | 13 ++--------
 src/hb-ot-shape.cc                       |  4 +--
 6 files changed, 69 insertions(+), 65 deletions(-)

commit e88bff9b4d77dc86c04832163081effbff752216
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 7 22:03:02 2011 -0400

    Minor, use function typedefs

 src/hb-ot-shape-complex-private.hh | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

commit 359dcaa0d33271025ca42a5f54ecbac7ae3b56d3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 7 21:55:05 2011 -0400

    Update copyright headers

 src/hb-ot-map-private.hh           | 2 +-
 src/hb-ot-map.cc                   | 2 +-
 src/hb-ot-shape-complex-private.hh | 2 +-
 src/hb-ot-shape.cc                 | 2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

commit d8d0c480c85246a74d47dd5297019c7e39391ab0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 7 21:22:08 2011 -0400

    Refactor some code common to GSUB and GPOS

 src/hb-ot-map-private.hh | 29 ++++++++++++++++++--------
 src/hb-ot-map.cc         | 54
 +++++++++---------------------------------------
 2 files changed, 30 insertions(+), 53 deletions(-)

commit b70c96dbe41d6512b80fe3d966a1942e1ef64a4b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 7 21:07:41 2011 -0400

    Enable applying GSUB/GPOS features in multiple segments

    Fixes https://bugzilla.mozilla.org/show_bug.cgi?id=644184
    among others.

    Shapers now can request segmented feature application by calling
    add_gsub_pause() or add_gpos_pause().  They can also provide a
    callback to be called at the pause.  Currently the Arabic shaper
    uses pauses to enforce certain feature application.  The Indic
    shaper can use the same facility to pause and do reordering in the
    callback.

 src/hb-ot-map-private.hh          |  50 +++++++++++----
 src/hb-ot-map.cc                  | 132
 +++++++++++++++++++++++++++++++++-----
 src/hb-ot-shape-complex-arabic.cc |  24 ++++++-
 src/hb-private.hh                 |   5 ++
 4 files changed, 181 insertions(+), 30 deletions(-)

commit f6d7a9bb4c19e605f1f16d9ca40adefba138c37e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 7 16:20:35 2011 -0400

    Shuffle code around

 src/hb-ot-map-private.hh | 68
 ++++++++++++++++++++++++------------------------
 1 file changed, 34 insertions(+), 34 deletions(-)

commit fc551edbf236d71a522ae7c2c9461aa71c5f7d66
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 7 16:09:38 2011 -0400

    Add todo

    I'm too lazy to fix the tests now.

 test/test-shape.c | 1 +
 1 file changed, 1 insertion(+)

commit 2e18c6dbdfbbfdec0490260bb7cb5213551b2188
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 6 16:05:45 2011 -0400

    Fix reverse_range() position loop

    Mozilla Bug 669175 - Slow rendering of text sometimes in this case,
    using direction: rtl

 src/hb-buffer.cc | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

commit fa2befa46f215d8c33a54dfc57889928a628164c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 4 17:18:57 2011 -0400

    Minor

 src/hb-view.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit d69d5ceaa0ad30e8d4b9783507c59c6d4221de4f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jul 4 12:56:38 2011 -0400

    [Indic] Well, at least finding syllables works now :)

    Still not much there.

 src/hb-ot-shape-complex-indic-machine.rl | 4 +++-
 src/hb-ot-shape-complex-indic.cc         | 9 ++++++++-
 2 files changed, 11 insertions(+), 2 deletions(-)

commit 253a57fb5ab211f67140e6139d183e49483a9074
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 28 17:26:03 2011 -0400

    [test-shape-complex] Remove the greek tests

    They are outdated with respect to the DejaVu Sans I'm using.
    We need to add font version checking to the tests.

 test/test-shape-complex.c | 17 -----------------
 1 file changed, 17 deletions(-)

commit afa74bf90405fb121d3132982b87762c1686d80c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 28 17:25:17 2011 -0400

    [test-shape-complex] Print out expected and actual glyphstrings
    upon failure

    One has to run the test with --verbose to see that right now.

 test/test-shape-complex.c | 25 ++++++++++++++++++++++---
 1 file changed, 22 insertions(+), 3 deletions(-)

commit 42d453b0236f67239342df2003b7abce6e2c51ea
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 28 16:59:16 2011 -0400

    [test] Name tests after their input string

 test/Makefile.am          |   2 +-
 test/test-shape-complex.c | 150
 ++++++++++++++++++++++++++++++----------------
 2 files changed, 100 insertions(+), 52 deletions(-)

commit 27413169782fdf79e278dd6552c8e194b3bc4eaa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 28 16:21:31 2011 -0400

    Minor

    Towards a better test runner.

 test/test-shape-complex.c | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

commit cc674cbf7fb9972975dc0499974e5e7fb4ae3c81
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 28 16:17:16 2011 -0400

    Minor

 test/test-shape-complex.c | 2 --
 1 file changed, 2 deletions(-)

commit 20d8a3982ae320035edd6a04b402cefc9a5e5779
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 28 16:16:21 2011 -0400

    [test] Remove disabled code

    We'd add normalization and decomposition tests later.

 test/test-shape-complex.c | 92
 -----------------------------------------------
 1 file changed, 92 deletions(-)

commit 9704f0ca6c2defed52640da77506c80bc67b4f56
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 28 16:15:46 2011 -0400

    [test] Restructure shape test data a bit

 test/test-shape-complex.c | 75
 +++++++++++++++++++++++++++--------------------
 1 file changed, 43 insertions(+), 32 deletions(-)

commit 4ec30aec3014be6effc09cbbc88dcd075f3826df
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 28 14:13:38 2011 -0400

    [Indic] Optimize Indic table storage

 src/hb-ot-shape-complex-indic.cc | 8 +++++---
 src/hb-private.hh                | 1 +
 2 files changed, 6 insertions(+), 3 deletions(-)

commit c4a59de6d8c1e581b5c155319232be9e805e5cba
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 28 14:03:29 2011 -0400

    [Indic] Generate a single data table instead of multiple ones

 src/gen-indic-table.py                 | 30 +++++++++-------
 src/hb-ot-shape-complex-indic-table.hh | 62
 ++++++++++++++++------------------
 2 files changed, 48 insertions(+), 44 deletions(-)

commit a346e923a99f920bbebc25b335db51fdfb1429ea
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 28 12:49:18 2011 -0400

    [test] Add Indic tests from harfbuzz.old

    Needs fonts to be put in test/fonts.  Tests are skipped otherwise.
    Run with --verbose for details.  Working on improving the test runner
    to make it easier to make sense of what's going on.

 test/Makefile.am          |   11 +-
 test/hb-test.h            |   21 +
 test/test-shape-complex.c | 1179
 +++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 1209 insertions(+), 2 deletions(-)

commit 8fdba506f0f1c66b50f8f4b114d624cb956d03b7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 24 20:45:55 2011 -0400

    [Indic] Define indic_position_t

 src/hb-ot-shape-complex-indic.cc | 239
 ++++++++++++++++++++-------------------
 1 file changed, 122 insertions(+), 117 deletions(-)

commit 65988a145b4a52c37fd53c1473034f9e701f61d9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 24 19:05:52 2011 -0400

    [Indic] Add a table of consonant positions

    Copied form HarfBuzz.old Indic data.  These are below and post
    consonants.  This is temporary.  Read the comment in the patch.

 src/hb-ot-shape-complex-indic.cc | 106
 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 106 insertions(+)

commit c7fe56a1d5d3e969b6ec51cd9ecd471706a19568
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 24 19:05:34 2011 -0400

    [Indic] Some of the basic features are global;  Mark them so

 src/hb-ot-shape-complex-indic-machine.rl |  1 +
 src/hb-ot-shape-complex-indic.cc         | 48
 ++++++++++++++++++++++----------
 2 files changed, 35 insertions(+), 14 deletions(-)

commit 867361c3ad39629a8d5b7dc48d558a1c19e37d43
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 17 18:35:46 2011 -0400

    [indic] Add syllable recognition state machine

    Using an incredible tool called Ragel.

 src/Makefile.am                          |   5 ++
 src/hb-ot-shape-complex-indic-machine.rl | 105
 +++++++++++++++++++++++++++++++
 src/hb-ot-shape-complex-indic.cc         |  21 +++++--
 3 files changed, 125 insertions(+), 6 deletions(-)

commit 422e08dbb8e2c0c5664f1bdc7e159a673cfea8c5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 15 17:22:48 2011 -0400

    Better categorize Indic character classes

    Matches OT types now.

 src/hb-ot-shape-complex-indic.cc | 51
 +++++++++++++++++++++++++---------------
 1 file changed, 32 insertions(+), 19 deletions(-)

commit 31f18abecb149f8888a72510f2660328dd6de16d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 15 09:49:58 2011 -0400

    Minor compiler warning fixes

 src/hb-buffer-private.hh           |  8 ++++----
 src/hb-object-private.hh           |  4 ++--
 src/hb-open-type-private.hh        |  6 +++---
 src/hb-ot-layout-common-private.hh |  8 ++++----
 src/hb-ot-map.cc                   | 28 +++++++++++++++-------------
 src/hb-ot-shape-complex-arabic.cc  |  3 +--
 src/hb-view.cc                     | 11 ++++++-----
 test/test-object.c                 | 22 +++++++++++-----------
 test/test-unicode.c                |  4 ++--
 9 files changed, 48 insertions(+), 46 deletions(-)

commit e3693b72f0651985d4f619cde668611639dca885
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 15 09:33:52 2011 -0400

    Change a couple strstr() to strchr()

 src/hb-ot-tag.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit b9452bfc1696457e156e79037c863903da5454fc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 14 14:47:07 2011 -0400

    Fix compiler warnings with -pedantic

 src/hb-blob.cc                   | 18 +++++++++---------
 src/hb-glib.cc                   | 20 ++++++++++----------
 src/hb-icu.cc                    | 20 ++++++++++----------
 src/hb-object-private.hh         |  2 +-
 src/hb-open-type-private.hh      | 14 +++++++-------
 src/hb-ot-layout-gdef-private.hh |  2 +-
 src/hb-ot-layout.cc              |  2 +-
 src/hb-ot-map-private.hh         |  2 +-
 src/hb-ot-shape-complex-indic.cc |  8 ++++----
 src/hb-ot-shape-private.hh       |  2 +-
 src/hb-ot-shape.cc               |  2 +-
 11 files changed, 46 insertions(+), 46 deletions(-)

commit 970e092dc23cbeb7897d4c7bb58c042209f518fb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 14 14:35:44 2011 -0400

    Remove extra semicolon

 src/hb-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 81426808020e2b88f008480bd63519aa68c579a7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jun 13 16:02:18 2011 -0400

    Cosmetic

 src/gen-indic-table.py                 |    9 +-
 src/hb-ot-shape-complex-indic-table.hh | 1038
 ++++++++++++++++----------------
 2 files changed, 524 insertions(+), 523 deletions(-)

commit 902ab866f2d2edc3a71c1203065e6ddf49e5b431
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jun 10 23:08:54 2011 -0400

    GNOME Bug 652227 - Unconditional use of stdint.h

 src/hb-common.h | 33 ++++++++++++++++++++++-----------
 1 file changed, 22 insertions(+), 11 deletions(-)

commit 20503ccd578c9983162857954e3236413469ed35
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 7 17:02:48 2011 -0400

    More Indic data shuffling

 src/hb-ot-shape-complex-indic.cc | 74
 +++++++++++++++++++++++++++-------------
 1 file changed, 50 insertions(+), 24 deletions(-)

commit 63b177e45c2405272da3fa6c26fe11ae37950bd0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 7 15:51:40 2011 -0400

    Minor

 src/hb-ot-shape.cc | 1 +
 1 file changed, 1 insertion(+)

commit b9ddbd55930228422e82b34a141ad1b6093f5376
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jun 2 17:43:12 2011 -0400

    [Indic] Start an Indic shaper

    Nothing functional in there yet.

    So far, we're parsing IndicSyllabicCategory.txt and
    IndicMatraCategory.txt
    fils from Unicode Character Database and store them in an array to
    be used
    by the shaper.  Also hooked up the shaper, but it does not do anything
    right now.

 src/Makefile.am                        |   3 +
 src/gen-indic-table.py                 | 201 ++++++++
 src/hb-ot-shape-complex-arabic.cc      |   4 +-
 src/hb-ot-shape-complex-indic-table.hh | 834
 +++++++++++++++++++++++++++++++++
 src/hb-ot-shape-complex-indic.cc       | 141 ++++++
 src/hb-ot-shape-complex-private.hh     |  58 ++-
 src/hb-ot-shape-private.hh             |   3 +-
 7 files changed, 1237 insertions(+), 7 deletions(-)

commit 697a65c5f5cda53bc68720886a253a019e8212a8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 1 20:52:00 2011 -0400

    Minor

 src/gen-arabic-table.py                 | 21 +++++++++++++--------
 src/hb-ot-shape-complex-arabic-table.hh |  9 ++++-----
 2 files changed, 17 insertions(+), 13 deletions(-)

commit 9de1481f2bbbf2a174280b849628612f36a2f701
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 1 20:45:14 2011 -0400

    Update to ArabicShaping-6.1.0d2.txt

 src/hb-ot-shape-complex-arabic-table.hh | 307
 ++++++++++++++++++++------------
 1 file changed, 197 insertions(+), 110 deletions(-)

commit 9d49433efba2217852f4e44f056465b451961c49
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 1 18:10:10 2011 -0400

    Minor rename

 src/Makefile.am                                          | 2 +-
 src/{gen-arabic-joining-table.py => gen-arabic-table.py} | 2 +-
 src/hb-ot-shape-complex-arabic-table.hh                  | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

commit 0eafce56eed4c5166ee5b97b121a452ffd292a7a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 1 12:44:30 2011 -0400

    [TODO] New items

 TODO | 4 ++++
 1 file changed, 4 insertions(+)

commit 89a2bc9ba674e7e57fec1fd8ce7648a44f3aab63
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 31 15:18:13 2011 -0400

    [Vertical] Apply vertical features

    We apply all of vert, vrt2, vkrn, valt, and vpal.

 TODO               |  7 -------
 src/hb-ot-shape.cc | 50
 +++++++++++++++++++++++++++++++++++++++++---------
 2 files changed, 41 insertions(+), 16 deletions(-)

commit 0c6a9767c812c00f2a6a02d9f43f4694e1f43815
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 31 12:59:17 2011 -0400

    [hb-view] Add --face-index to choose a face in a TrueType Collection

 src/hb-view.cc | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

commit 4f28fbdd804fabeec57a98fe267d892ab58b3a6d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 31 12:33:11 2011 -0400

    Fix TTC header handling

    Also change the Version type to avoid similar bugs in the future.

    Reported by Grigori Goronzy.

 src/hb-open-file-private.hh      | 6 +++---
 src/hb-open-type-private.hh      | 2 +-
 src/hb-ot-layout-gdef-private.hh | 6 +++---
 3 files changed, 7 insertions(+), 7 deletions(-)

commit 21deab2bdc58d8e9f1a3ba1f9c61c30a79e288a1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 30 11:08:40 2011 -0400

    Fixed inifinite loop introduced in 7403e055cd1463f

    k is the index, not j.

    Reported by Tom Hacohen.

 src/hb-ot-layout-gpos-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 51881a61ca96c3328e2d92927a5a61e60997a429
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 27 18:15:56 2011 -0400

    Shrink code size

 src/hb-ot-map-private.hh | 11 +----------
 src/hb-ot-map.cc         | 11 +++++++++++
 2 files changed, 12 insertions(+), 10 deletions(-)

commit 90645fb24bcbb78183576d3641a99560d87e49f2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 27 18:13:31 2011 -0400

    [OT] Separate map_builder from the actual map

    Respectively, separate planner from the actual plan.

 src/hb-ot-map-private.hh           | 121
 ++++++++++++++++++++-----------------
 src/hb-ot-map.cc                   |  33 +++++-----
 src/hb-ot-shape-complex-arabic.cc  |   6 +-
 src/hb-ot-shape-complex-private.hh |   8 +--
 src/hb-ot-shape-private.hh         |  22 +++++++
 src/hb-ot-shape.cc                 |  28 +++++----
 6 files changed, 127 insertions(+), 91 deletions(-)

commit 5560a19e2b3901437d8ee2e5905b4ac77073bfbe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 27 17:49:16 2011 -0400

    Minor

 src/hb-view.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 1587c26fe94087040b4a5d682ec196f568e4a1a2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 27 16:05:01 2011 -0400

    [TODO] Add item

 TODO | 2 ++
 1 file changed, 2 insertions(+)

commit 5c9f14932d59e306fbc72f7daecb384a16da73d9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 27 15:59:33 2011 -0400

    Minor

 Makefile.am | 2 ++
 1 file changed, 2 insertions(+)

commit 5bc18195d55570ef01e4b24dd248f222f081b0a2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 27 15:58:54 2011 -0400

    Add check-includes.sh

 src/Makefile.am               |  7 +++++++
 src/check-c-linkage-decls.sh  |  6 +++++-
 src/check-header-guards.sh    |  8 +++++++-
 src/check-includes.sh         | 42
 ++++++++++++++++++++++++++++++++++++++++++
 src/check-internal-symbols.sh |  8 ++++----
 src/check-libstdc++.sh        |  7 ++++---
 src/hb-ot-shape.h             |  1 +
 7 files changed, 70 insertions(+), 9 deletions(-)

commit 3f12c434e20261f6d5c600e56575b7dfdd5b1470
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 27 04:58:11 2011 -0400

    [configure] Generate sha256sum and GPG-sign it

 Makefile.am | 29 ++++++++++++++++++++++++++++-
 1 file changed, 28 insertions(+), 1 deletion(-)

commit 75ba4073ca6f72c135927d9314197a605281b789
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 27 03:58:17 2011 -0400

    [test] Rename valgrind-log to log-vaglring.txt

 test/Makefile.am | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit e3b0ba8e292e6a90666cfbbab6faf11ae11f9ddb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 27 03:56:37 2011 -0400

    Minor

 harfbuzz.doap | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 595dc63eee926a0e0fee26f8225b5fbe00610fcb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 27 04:14:12 2011 -0400

    Bump version to 0.7.0 to open up for development

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f24557604281356131618546332d7ee3a0c8abef
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 25 16:08:06 2011 -0400

    Release 0.6.0.  First official tarball release!

    There are no API guarantees just yet, but I *expect* that no
    incompatible API changes to happen before 1.0.0.

    Update NEWS.

 NEWS         | 262
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 configure.ac |   2 +-
 2 files changed, 263 insertions(+), 1 deletion(-)

commit 654f88fbc9bcb54f9bd2d5586236234e03424044
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 27 03:38:46 2011 -0400

    [test-common] Test hb_direction_to_string()

    Caught by "make check-symbols".

 test/test-common.c | 6 ++++++
 1 file changed, 6 insertions(+)

commit 18bced134fc3379c9124ba029e22ff3f6434ca0f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 27 03:38:30 2011 -0400

    [test] Rename test-symbols to check-symbols

    Shows undocumented symbols.

 test/Makefile.am | 37 +++++++++++++++++++++----------------
 1 file changed, 21 insertions(+), 16 deletions(-)

commit 376dafa6ed414e368e9dc1d5a2e0bfc8e55f410d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 27 03:35:58 2011 -0400

    Hide internal symbols

 src/hb-ot-shape.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 0e482ec6ba30b613f2d7ee97c61be458c5aebcd6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 27 02:46:28 2011 -0400

    [test/unicode] Fix double-free

    Caught by "make check-valgrind".

 test/Makefile.am    | 2 +-
 test/test-unicode.c | 2 --
 2 files changed, 1 insertion(+), 3 deletions(-)

commit 28b1bac5415774cf892c9cc0afcac1324c2093f5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 27 02:44:29 2011 -0400

    [test] Switch to automake-based test-runner

    Adds check-valgrind among other modes.  We do not run under gtester by
    default anymore.

 Makefile.am                 |  2 +
 test/.valgrind-suppressions |  0
 test/Makefile.am            | 48 ++++++++++++++++++++++--
 test/Makefile.decl          | 90
 ---------------------------------------------
 4 files changed, 47 insertions(+), 93 deletions(-)

commit adbc97ddde27cf609d95d3249f3ea8060a6e1d20
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 27 01:33:18 2011 -0400

    [test] Add test-symbols that checks API symbol text coverage

    We're not at 100% coverage yet, so do not enable the test by default.

 test/Makefile.am | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

commit 9313b9aa66a82fd3fa60d8417c22a5350e5a8791
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 27 01:00:55 2011 -0400

    [test/version] Test hb-version.h

 test/Makefile.am    |  1 +
 test/test-version.c | 80
 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 81 insertions(+)

commit 329c15714be90d3fc2d9054f80cb14fa325dc959
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 25 16:07:07 2011 -0400

    Add libtool versioning

    The versioning is automatic.  For now, soname-major is 0.  With
    the 1.0.0 release it will jump to 1 and stay there forever.

 configure.ac    | 26 +++++++++++++++++++++-----
 src/Makefile.am |  1 +
 2 files changed, 22 insertions(+), 5 deletions(-)

commit 5b21eff8c4a00962d4315a47a65a143abe323299
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 25 14:49:35 2011 -0400

    Update README, etc

 COPYING      | 1 +
 README       | 8 +++-----
 configure.ac | 2 +-
 3 files changed, 5 insertions(+), 6 deletions(-)

commit 5bf56ea056b30fba8e07e82ec818c430cab8cafd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 25 14:43:10 2011 -0400

    [TODO] Add item

 TODO              | 2 ++
 test/test-shape.c | 2 ++
 2 files changed, 4 insertions(+)

commit 2d8ebcb9d089c2cfbefac71ca6350e2703ab13e3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 25 11:27:33 2011 -0400

    [API] One last font-funcs API change

    Now that vertical text works correctly, I'm doing a last round
    modification of the font-funcs API to simplify.  Expect no more
    changes around here.

 src/hb-font.cc    | 107
 ++++++++++++++++++------------------------------------
 src/hb-font.h     |  50 +++++++++++--------------
 src/hb-ft.cc      |  26 ++++++-------
 test/test-font.c  |  27 +++++++-------
 test/test-shape.c |  21 +++++------
 5 files changed, 91 insertions(+), 140 deletions(-)

commit d31691296f7d3051fcd345bf1325d17835484b50
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 25 11:01:32 2011 -0400

    [test] Update to API changes

 test/test-font.c  | 72
 ++++++++++++++++++++++---------------------------------
 test/test-shape.c | 35 +++++++++++++--------------
 2 files changed, 44 insertions(+), 63 deletions(-)

commit 7403e055cd1463f38215ad9faedd61c3e1b66ac5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 24 21:04:15 2011 -0400

    [Vertical] fix vertical gpos

    Wow, it took me a few days to find the right fix!

    We now set the advance for attached marks to zero, but we
    do this in the _finish() state of gpos, so it shouldn't
    regress with fonts like DejaVuSansMono that explicitly
    decrease the mark advance width to set it to zero.

 src/hb-ot-layout-gpos-private.hh | 167
 +++++++++++++++++++++++----------------
 src/hb-ot-shape.cc               |   9 ++-
 2 files changed, 103 insertions(+), 73 deletions(-)

commit ff7cbd0219a7c260612c53b3bed343747d79ec4e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 25 09:56:06 2011 -0400

    [TODO] Update

 TODO | 14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)

commit 3b0bb855e011099f1a4c77ffc5214c658e280b2d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 20 15:59:59 2011 -0400

    [Vertical] GPOS x/y advance adjustments only apply in hori/vert
    respectively

 src/hb-ot-layout-gpos-private.hh | 31 +++++++++++++++++++++----------
 1 file changed, 21 insertions(+), 10 deletions(-)

commit cc2086d67ce559878a5ce2b41d89a37eabac90b8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 19 19:19:50 2011 -0400

    [Vertical] Fix GPOS y-advance direction

 src/hb-ot-layout-gpos-private.hh | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit 67d51ff96154c8909734046601e439dd8f6a86df
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 19 19:08:57 2011 -0400

    [Vertical] Do fallback origin calculation

 src/hb-font.cc | 32 +++++++++++++++++++++++++++-----
 1 file changed, 27 insertions(+), 5 deletions(-)

commit 60fbb36096e344e9af79409ce8cfe3f1f7b0d321
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 19 18:46:15 2011 -0400

    [Vertical] GPOS is always done with horizontal origin

 src/hb-font-private.hh           |   4 +-
 src/hb-font.cc                   | 187
 ++++++++++++++++++---------------------
 src/hb-font.h                    |  53 ++++++-----
 src/hb-ft.cc                     |  47 ++++------
 src/hb-ot-layout-gdef-private.hh |  18 ++--
 src/hb-ot-layout-gpos-private.hh |  23 ++---
 src/hb-ot-layout.h               |   2 +-
 src/hb-ot-shape.cc               |  15 ++++
 8 files changed, 166 insertions(+), 183 deletions(-)

commit 8b38faeede41e64eb0f6ac2e12ce51dd7138d50a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 19 13:08:00 2011 -0400

    More vertical

    Starting to get there, but not without yet another round of changes.

    I think I know wheere to go now.

 src/hb-font.cc     | 44 ++++++++++++++++++++++++++++++++------------
 src/hb-font.h      | 10 ++++++++++
 src/hb-ft.cc       | 14 ++++++++++++--
 src/hb-ot-shape.cc |  4 ++++
 4 files changed, 58 insertions(+), 14 deletions(-)

commit e609aeb1e24da6b7c812396cddb93ee3c95ef87a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 18 10:17:02 2011 -0400

    [hb-view] Add --annotate

    Currently it only marks glyph origins.

 src/hb-view.cc | 20 +++++++++++++++++++-
 1 file changed, 19 insertions(+), 1 deletion(-)

commit b8d76dd74e50d295918cc015e9d2a55e2bf6a461
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 17 23:31:00 2011 -0400

    Vertical: Adjust origin in glyph_extents() and glyph_contour_point()

    The base for vertical is almost ready now.

 src/hb-font.cc | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

commit 190981851fe2bb6479b5c72451279f66fe4f6e23
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 17 23:27:22 2011 -0400

    Cosmetic

 src/hb-font.cc | 114
 ++++++++++++++++++++++++++++-----------------------------
 src/hb-ft.cc   |  36 +++++++++---------
 2 files changed, 74 insertions(+), 76 deletions(-)

commit 2c3f51a11c176aa3fc12a9522325efaef2c79d35
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 17 23:23:27 2011 -0400

    Minor

 src/hb-font.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 7e2c85de305be59e1a6afa7d2061e4b7dd00acf7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 17 17:55:03 2011 -0400

    [API] Vertical support, take 2

    I like this API *much* better.  Implementation still incomplete, but
    horizontal works.

 src/hb-font-private.hh           |   7 +-
 src/hb-font.cc                   | 185
 +++++++++++++++++++++++----------------
 src/hb-font.h                    | 109 ++++++++++++-----------
 src/hb-ft.cc                     |  66 ++++++++------
 src/hb-ot-layout-gdef-private.hh |   2 +-
 src/hb-ot-layout-gpos-private.hh |   2 +-
 src/hb-ot-shape.cc               |   8 +-
 7 files changed, 218 insertions(+), 161 deletions(-)

commit 744970af4d884cc87ffa645804578fec8df674a9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 16 18:15:37 2011 -0400

    [API] Add support for vertical text

    Design not final yet, and in fact I'm going to change it immediately,
    but this is an standalone change for itself.

 src/hb-font-private.hh               |  35 ++--
 src/hb-font.cc                       | 387
 +++++++++++++++++++++++++----------
 src/hb-font.h                        | 164 +++++++++++----
 src/hb-ft.cc                         | 227 +++++++++++++-------
 src/hb-ot-layout-gdef-private.hh     |   2 +-
 src/hb-ot-layout-gpos-private.hh     |  35 ++--
 src/hb-ot-layout-gsub-private.hh     |   1 +
 src/hb-ot-layout-gsubgpos-private.hh |   1 +
 src/hb-ot-shape.cc                   |  14 +-
 src/hb-ot-tag.cc                     |   2 +-
 test/test-font.c                     |  61 +++---
 test/test-shape.c                    |  17 +-
 12 files changed, 650 insertions(+), 296 deletions(-)

commit 80dce8b7c8202766d52cc7666355446bbf5b0565
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 17 17:08:36 2011 -0400

    Minor

 TODO | 2 ++
 1 file changed, 2 insertions(+)

commit 5be7d047f6bf54cc577e311b5426c463d2b9b131
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 17 15:05:34 2011 -0400

    Check for mmap()

    Apparently there exist systems with mprotect(), but not mmap()?

 configure.ac     | 2 +-
 test/test-blob.c | 6 ++++--
 2 files changed, 5 insertions(+), 3 deletions(-)

commit 4053f3f788353448b41e541ee617aafbe1cac366
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 16 16:20:48 2011 -0400

    Cosmetic

 src/hb-font.h     | 8 ++++----
 test/test-shape.c | 6 +++---
 2 files changed, 7 insertions(+), 7 deletions(-)

commit 56d12e0356bee5a95b870dfbc2100b8caeb5d593
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 16 16:01:58 2011 -0400

    Remove unnecessary TODO item

 src/hb-ft.cc | 1 -
 1 file changed, 1 deletion(-)

commit 1883af3796459cafe2d194064403b6b1152c584d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 16 15:18:16 2011 -0400

    [hb-view] Start work on vertical support

 src/hb-view.cc | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

commit 9aa6f96af5e5940ba5c9596c6ae377fea23c0ec0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 16 15:08:31 2011 -0400

    [hb-view] No need to allocate an extra glyph item at the end

 src/hb-view.cc | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit a0359485c9997e3a211f7c00d40c09074d906c4f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 16 15:07:48 2011 -0400

    Minor

 test/test-shape.c | 6 ++++++
 1 file changed, 6 insertions(+)

commit 92de53ea450eaee077eb1730e6d7a487b20ac721
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 16 12:24:56 2011 -0400

    [test/buffer] Add more tests for nil buffer

 test/test-buffer.c | 38 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 38 insertions(+)

commit 065fb38c9a338ddb095f2ec9e034fcc5a02167bd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 13 23:04:46 2011 -0400

    [test/ot-tag] More tests

 test/test-ot-tag.c | 9 +++++++++
 1 file changed, 9 insertions(+)

commit 1a64f6e19a4b483e278c85e4941107be2f71b0a4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 13 22:55:32 2011 -0400

    [API] Add HB_LANGUAGE_INVALID

 src/hb-common.cc   | 5 +++--
 src/hb-common.h    | 2 ++
 src/hb-ot-tag.cc   | 2 +-
 src/hb-shape.cc    | 2 +-
 test/test-common.c | 9 ++++++---
 5 files changed, 13 insertions(+), 7 deletions(-)

commit 40b5c2e86c633441040196d158e965ad95d6ad37
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 13 22:46:36 2011 -0400

    [test/test-ot-tag] Test hb-ot-tag.h, fix many bugs

    I'm in awe with how many bugs this test revealed.  All fixed.

 src/hb-ot-tag.cc   | 153 +++++++++++++++++++++---------------
 test/Makefile.am   |   3 +
 test/test-ot-tag.c | 227
 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 320 insertions(+), 63 deletions(-)

commit 1368018b475c2a6dd5f625af99695ae2fcba1f05
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 13 20:25:38 2011 -0400

    [TODO] Add items

 TODO | 2 ++
 1 file changed, 2 insertions(+)

commit 7fc5a30cb4fbe9a4633ab842b0a8cbbcc6f6bd1b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 12 17:48:20 2011 -0400

    [API] Add hb_face_make/is_immutable()

 src/hb-font-private.hh |  2 ++
 src/hb-font.cc         | 18 ++++++++++++++++++
 src/hb-font.h          |  6 ++++++
 test/test-font.c       |  2 ++
 test/test-object.c     |  2 +-
 5 files changed, 29 insertions(+), 1 deletion(-)

commit 20c8b908ddf50a9814dfdd9fca595f258273cd4f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 12 15:19:33 2011 -0400

    Finish off previous change

 src/hb-font.cc | 1 +
 1 file changed, 1 insertion(+)

commit 0fd8c2f1be693616f19f2f1526369874763d6cf6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 12 15:14:13 2011 -0400

    [API] Make get_glyph() callback return a boolean

    We need to know whether the glyph exists, so we can fallback to
    composing / decomposing.  Assuming that glyph==0 means "doesn't exist"
    wouldn't work for applications like Pango that want to use different
    "doesn't exist" glyph codes for different characters.  An explicit
    return value fixes that.

 src/hb-font.cc     | 15 +++++++++------
 src/hb-font.h      | 12 +++++++-----
 src/hb-ft.cc       | 12 +++++++-----
 src/hb-ot-shape.cc | 13 +++++++++----
 test/test-font.c   |  5 ++++-
 test/test-shape.c  | 12 +++++++-----
 6 files changed, 43 insertions(+), 26 deletions(-)

commit 8e07f93ab4a3ef9adc7942727ef21f2f9a141d10
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 12 14:27:44 2011 -0400

    [test/shape] Check shape output

 test/test-shape.c | 23 +++++++++++++++++++----
 1 file changed, 19 insertions(+), 4 deletions(-)

commit 805af72405a2f653f08de392d7172291ffe8e902
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 12 12:39:40 2011 -0400

    Rename get_kernings() arguments from first/second_glyph to
    left/right_glyph

    Makes it clear that kerning is in visual order.

 src/hb-font.cc | 10 +++++-----
 src/hb-font.h  |  4 ++--
 src/hb-ft.cc   |  6 +++---
 3 files changed, 10 insertions(+), 10 deletions(-)

commit 23d2432219a91c6328efa9e041b1ecf137752ac3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 12 10:53:57 2011 -0400

    [test] Add test-shape.c.  Oops

 test/test-shape.c | 125
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 125 insertions(+)

commit c098c3acc8c48b4b6883c50c9a87e81dbe98ba24
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 12 10:49:30 2011 -0400

    [test/blob] Use MAP_ANON instead of MAP_ANONYMOUS

    More portable.

 test/test-blob.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 8329eb7c6ca39e162228733a2210e643b1a1019d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 12 01:39:17 2011 -0400

    [test/shape] Add simplest test for hb_shape()

 test/Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit df077fadd7828b609bdfe4dbcad52ef2448525c7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 12 01:19:39 2011 -0400

    [object] Make object inert during destruction

    Such that user_data and other finalizers cannot resurrect object

 src/hb-object-private.hh | 2 ++
 1 file changed, 2 insertions(+)

commit ee8dd83bb4e0b1c2ca5928391e35e8bd1fca6121
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 12 01:02:03 2011 -0400

    [TODO] Update

 TODO | 6 ++++++
 1 file changed, 6 insertions(+)

commit 52df150efeff4cf003cee65f8c91618f1a980bc8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 12 00:46:57 2011 -0400

    Fix font subclass chainup

    Test passing now.

 src/hb-font.cc | 6 +-----
 1 file changed, 1 insertion(+), 5 deletions(-)

commit f2c1dd4f746c36a44cf33d0257a3cd800107c286
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 12 00:35:12 2011 -0400

    [test/font] Test font_funcs subclassing

 test/test-font.c | 158
 +++++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 155 insertions(+), 3 deletions(-)

commit 14f1e81b77971204e9325e2a8b6f8b690fac20a7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 12 00:18:28 2011 -0400

    [test/font] Test empty funcs

 test/test-font.c | 75
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 73 insertions(+), 2 deletions(-)

commit 2ca0b5ae1e65d3f43df3a4a2144a1451d8b485c4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 11 23:57:36 2011 -0400

    [test/font] Test more

 test/test-font.c | 63
 ++++++++++++++++++++++++++++++++++++++++++++++++--------
 1 file changed, 54 insertions(+), 9 deletions(-)

commit 7033518f756490e9cf00b96387fee6f2f7fae785
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 11 23:31:15 2011 -0400

    [API] Pass face to get_table()

 src/hb-font.cc   | 4 ++--
 src/hb-font.h    | 2 +-
 src/hb-ft.cc     | 2 +-
 test/test-font.c | 2 +-
 4 files changed, 5 insertions(+), 5 deletions(-)

commit b46782780690e26a8221e2d63dd224159aebe413
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 11 23:25:28 2011 -0400

    [API] Remove const from font user_data

 src/hb-font.cc | 20 ++++++++++----------
 src/hb-font.h  | 20 ++++++++++----------
 src/hb-ft.cc   | 20 ++++++++++----------
 3 files changed, 30 insertions(+), 30 deletions(-)

commit ea93e7b27ca04a1655d62bd1d18a32805994af44
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 11 23:22:55 2011 -0400

    [test/font] More tests

 test/test-font.c | 36 +++++++++++++++++++++++++++++++++---
 1 file changed, 33 insertions(+), 3 deletions(-)

commit cdb153175f8a1521cde112c65b173f548ca6ee5c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 11 23:12:58 2011 -0400

    [test/font] More tests

 test/test-font.c | 44 ++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 44 insertions(+)

commit 74d9fa3d9ac226ed72702884e721ef94ecc48e22
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 11 23:07:47 2011 -0400

    [test/font] More get_empty() tests

 test/test-font.c | 5 +++++
 1 file changed, 5 insertions(+)

commit db9f4eb4e004fadae9d540522d1d21c3bbe659b0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 11 23:06:02 2011 -0400

    [test/font] Test get_face() / get_parent()

 test/test-font.c | 4 ++++
 1 file changed, 4 insertions(+)

commit 606923bb4304d5b9cf164745d657cba58949a80a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 11 23:05:02 2011 -0400

    [test/font] Add test_font_properties()

 test/test-font.c | 85
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 85 insertions(+)

commit da603e80386b41b360acb070a862b6ed87da57b8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 11 22:52:35 2011 -0400

    [test/font] Start adding tests for hb-font.h

 test/Makefile.am    |  1 +
 test/test-buffer.c  |  2 +-
 test/test-font.c    | 69
 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 test/test-unicode.c |  1 +
 4 files changed, 72 insertions(+), 1 deletion(-)

commit 9a14688e40e926b9453fcb75891f27bff1e45c49
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 11 22:49:29 2011 -0400

    [API] Rename hb_face_create_for_data() to hb_face_create()

 src/hb-font.cc     | 4 ++--
 src/hb-font.h      | 4 ++--
 src/hb-ft.cc       | 2 +-
 src/test.cc        | 2 +-
 test/test-object.c | 4 ++--
 5 files changed, 8 insertions(+), 8 deletions(-)

commit 46d6a21cc8613519e6ce27b1925e29285cccb71d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 11 22:33:13 2011 -0400

    [API] Add hb_ot_layout_substitute_start/finish()

 src/hb-ot-layout.cc | 13 +++++++++++++
 src/hb-ot-layout.h  |  8 ++++++++
 2 files changed, 21 insertions(+)

commit c84d15f52e1183164502d45b476b54f8fe812e0f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 11 22:23:15 2011 -0400

    Remove unused hb_set_t

 src/hb-private.hh | 48 ------------------------------------------------
 1 file changed, 48 deletions(-)

commit 389a7c9e67549b1a9f7c538965e4647077f8e6ec
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 11 22:21:38 2011 -0400

    Remove hb_static_threadsafe_set_t

 src/hb-common.cc        |  5 +++--
 src/hb-mutex-private.hh | 42 ------------------------------------------
 2 files changed, 3 insertions(+), 44 deletions(-)

commit e06d4eda7bbdb3a1be1f1ce8d98b059a0730f14d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 11 22:18:31 2011 -0400

    Use constructor/destructor for hb_ot_shape_plan_t

 src/hb-ot-shape-private.hh | 6 +++++-
 src/hb-ot-shape.cc         | 4 +---
 2 files changed, 6 insertions(+), 4 deletions(-)

commit a5e4e109460ea23fa5e64926a1676c6a02ab6ba2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 11 22:00:56 2011 -0400

    Minor

 TODO | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit daa446f184fa27c9764ff7f8a2444d47cf34d986
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 11 21:31:25 2011 -0400

    Fix compile with no mutex available

 src/hb-mutex-private.hh | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit 1e56c476c10577fe319fe553c5ced000bd740940
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 11 21:28:01 2011 -0400

    Free static mutex'es

 src/hb-mutex-private.hh | 1 +
 1 file changed, 1 insertion(+)

commit 831886a9b4073cfe27f7e1db0e957cbd5913fd31
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 11 21:27:52 2011 -0400

    Streamline mutex stuff

 src/hb-mutex-private.hh | 61
 ++++++++++++++++++++++++++++++-------------------
 src/hb-private.hh       |  8 +++++++
 2 files changed, 46 insertions(+), 23 deletions(-)

commit 438c4eee353ddf0de66171d84c6ef9b21cbdf8f6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 11 21:14:34 2011 -0400

    Remove unused hb_mutex_trylock()

 src/hb-mutex-private.hh | 3 ---
 1 file changed, 3 deletions(-)

commit b8477e1da2785708f3232f8f2577f602a5d320d1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 11 21:12:44 2011 -0400

    [test] Add tests for _get_empty() funcs

 test/test-blob.c    |  1 +
 test/test-buffer.c  |  7 +++++++
 test/test-unicode.c | 10 ++++++++++
 3 files changed, 18 insertions(+)

commit 3994be3ded40e5a3da0e187ad421b19a78865e02
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 11 21:08:31 2011 -0400

    [TODO] Update

 TODO | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 80a6833b032bc63b4e8c3da6489d3767af1168f3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 11 18:14:44 2011 -0400

    [API] Add hb_*_get_empty() for all objects

 src/hb-buffer.cc   |  6 ++++++
 src/hb-buffer.h    |  3 +++
 src/hb-font.cc     | 18 ++++++++++++++++++
 src/hb-font.h      |  9 +++++++++
 src/hb-unicode.cc  |  6 ++++++
 src/hb-unicode.h   |  3 +++
 test/test-object.c | 36 +++++++++++++++++++++++++++++++++---
 7 files changed, 78 insertions(+), 3 deletions(-)

commit d3b30be378c1dec0259a626d9a408bb9ca1b71ac
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 11 18:06:12 2011 -0400

    [API] Add HB_UNTAG()

    Useful in C API only.

 src/hb-common.h | 1 +
 1 file changed, 1 insertion(+)

commit 3cc6e9dcb42551761c3a1a9d3c25b1f1bcdc2419
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 11 18:02:48 2011 -0400

    Minor

 src/test.cc | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

commit 4101ca7dbbdf1438fa116fb8cad935501ac7cca8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 11 14:30:56 2011 -0400

    Plug more leaks

    All good now.

 src/hb-blob.cc              | 2 +-
 src/hb-open-type-private.hh | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

commit 6a7ac79e26e85f6781186cf708a12825c0857324
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 11 14:19:18 2011 -0400

    Plug leaks

 src/hb-ot-map-private.hh   |  7 +++++++
 src/hb-ot-shape-private.hh |  2 ++
 src/hb-ot-shape.cc         |  2 ++
 src/hb-private.hh          | 10 +++++++++-
 4 files changed, 20 insertions(+), 1 deletion(-)

commit 7aa12ebdff11a4ffbd04bf9b164586eb0c172e37
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 11 11:55:11 2011 -0400

    [unicode] Simplify method setting

 src/hb-unicode.cc   | 6 +-----
 test/test-unicode.c | 6 +++++-
 2 files changed, 6 insertions(+), 6 deletions(-)

commit d5bfd0272130a315d3b5e6cdcf9b7e6395879204
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 11 11:48:28 2011 -0400

    Minor

 src/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6a4e7e1372ef9fde81b84ecc9c4d1f23d97396c1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 11 10:31:33 2011 -0400

    Add maxp table

    Not used for anything right now.  Will use to get num_glyphs in
    the future.

 src/Makefile.am           |  1 +
 src/hb-ot-head-private.hh |  1 -
 src/hb-ot-layout.cc       |  1 +
 src/hb-ot-maxp-private.hh | 68
 +++++++++++++++++++++++++++++++++++++++++++++++
 4 files changed, 70 insertions(+), 1 deletion(-)

commit e0b0710ae52bcc8c6fbd87dfae83818faa5d5f5f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 11 08:58:21 2011 -0400

    Minor

 TODO | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit a513dbcf73ab1cc39a7c9653034904d0c6cd9fe9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 11 00:24:34 2011 -0400

    [API] Change signature of get_contour_point and get_kerning ffuncs

    get_contour_point now takes glyph id before point_index.

    get_kerning now takes a vector to fill-in.

 src/hb-font.cc                   | 56
 +++++++++++++++++++++-------------------
 src/hb-font.h                    | 16 +++++++-----
 src/hb-ft.cc                     | 11 +++++---
 src/hb-ot-layout-gdef-private.hh |  2 +-
 src/hb-ot-layout-gpos-private.hh |  2 +-
 src/hb-ot-shape.cc               | 15 ++++++++---
 6 files changed, 59 insertions(+), 43 deletions(-)

commit 63d646fb2933c2765ce526d321a498d0f7fae2f5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 11 00:15:37 2011 -0400

    [font] Do user-space conversion when chaining up to parent font

 src/hb-font-private.hh | 28 ++++++++++++++++++++++++++++
 src/hb-font.cc         | 23 +++++++++++++++++------
 2 files changed, 45 insertions(+), 6 deletions(-)

commit b6f902a1a9c8b72b5d6a241a14a7bacfaea3a56a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 11 00:04:15 2011 -0400

    Minor

 src/hb-font-private.hh           |  6 +++---
 src/hb-ot-layout-gdef-private.hh |  6 +++---
 src/hb-ot-layout-gpos-private.hh | 20 ++++++++++----------
 3 files changed, 16 insertions(+), 16 deletions(-)

commit abcfe9b59b4475eb02dd679aac4bc59616713b28
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 11 00:02:02 2011 -0400

    Remove hb_ot_layout_context_t, simplify code

 src/hb-font-private.hh               |  12 +++-
 src/hb-font.cc                       |   6 +-
 src/hb-ot-layout-common-private.hh   |   8 +--
 src/hb-ot-layout-gdef-private.hh     |  34 +++++-----
 src/hb-ot-layout-gpos-private.hh     | 121
 ++++++++++++++++++-----------------
 src/hb-ot-layout-gsub-private.hh     |  24 +++----
 src/hb-ot-layout-gsubgpos-private.hh |  11 ++--
 src/hb-ot-layout-private.hh          |  13 ----
 src/hb-ot-layout.cc                  |  15 +----
 9 files changed, 118 insertions(+), 126 deletions(-)

commit 1ded6d8bbf93b7dabf2b1f620c07bd3236e7a60f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 10 20:49:02 2011 -0400

    Make default font-funcs chain-up to the parent

 src/hb-font.cc | 44 +++++++++++++++++++++++++++++++++++++++-----
 src/hb-font.h  | 41 +++++++++++++++++++++--------------------
 2 files changed, 60 insertions(+), 25 deletions(-)

commit b9d975b931d6310f25fab5ac280f523cdc27bf94
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 10 20:41:13 2011 -0400

    [API] Pass down closure user_data to font funcs

 src/hb-font-private.hh |  30 ++++++--
 src/hb-font.cc         | 184
 +++++++++++++++++++++++++------------------------
 src/hb-font.h          |  42 ++++++-----
 src/hb-ft.cc           | 103 ++++++++++++++-------------
 4 files changed, 198 insertions(+), 161 deletions(-)

commit 446df9cdb1fddb51819b731436fca54146d0bb23
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 10 20:14:44 2011 -0400

    Whitespace

 src/hb-unicode.h | 30 +++++++++++++++---------------
 1 file changed, 15 insertions(+), 15 deletions(-)

commit 686c2d165dfb284b74b78f6b902d04b585dcaef3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 10 20:04:26 2011 -0400

    [API] Remove font_funcs func getter functions

 src/hb-font.cc | 32 --------------------------------
 src/hb-font.h  | 18 ------------------
 2 files changed, 50 deletions(-)

commit defc45be6d75aba4a67fa7814b91b73bad953fe6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 10 20:02:49 2011 -0400

    [API] Add hb_font_create_sub_font() and hb_font_get_parent()

    Not quite useful just yet.

 src/hb-font-private.hh |  1 +
 src/hb-font.cc         | 41 ++++++++++++++++++++++++++++++++++++++---
 src/hb-font.h          |  5 +++++
 src/hb-unicode.h       |  2 +-
 4 files changed, 45 insertions(+), 4 deletions(-)

commit 11bb8fe7b3925bc9b019ad0c0218a231e581f152
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 10 19:57:00 2011 -0400

    [font] Fix internal sign of x/y_scale

    Should have been done as part of
    da975419884a535281745f30f4b32fee0bc8a7a1

 src/hb-font-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 85e6218e3306165d69ef44277459511d5b54b9ff
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 10 19:40:44 2011 -0400

    [API] Remove broken-by-design hb_font_unset_funcs()

 src/hb-font.cc | 22 ----------------------
 src/hb-font.h  | 16 ----------------
 2 files changed, 38 deletions(-)

commit 74f1d896f2479500d65649cf3ec86dd201f0663a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 10 19:39:32 2011 -0400

    Add hb_font_make/is_immutable()

 src/hb-font-private.hh |  2 ++
 src/hb-font.cc         | 26 +++++++++++++++++++++++---
 src/hb-font.h          |  6 ++++++
 test/test-object.c     |  2 +-
 4 files changed, 32 insertions(+), 4 deletions(-)

commit 8c7a100a4d0f3a257fb7563cb08ed4356c3af669
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 10 19:21:07 2011 -0400

    Fix build without mutex

 src/hb-mutex-private.hh | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit 19d3035c40e73923bcad709dc5eefe31cb34d681
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 10 19:18:12 2011 -0400

    Remove duplicate atomic_int implementation

 src/hb-mutex-private.hh | 17 -----------------
 1 file changed, 17 deletions(-)

commit 45bfa99034512e886d75b1d45a5a649647f4711f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 10 19:12:49 2011 -0400

    Fix set implementation to be truly threadsafe even with destroy()
    callbacks

    The test/object test is passing again, instead of deadlocking.

 src/hb-common.cc         |  26 +++++------
 src/hb-mutex-private.hh  |  47 +++++++------------
 src/hb-object-private.hh |   6 ++-
 src/hb-private.hh        | 117
 ++++++++++++++++++++++++++++++++++++++---------
 4 files changed, 128 insertions(+), 68 deletions(-)

commit 0c2ec1d78bfa0166ffd4afc204c2668d4f456ed9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 10 19:11:27 2011 -0400

    [test] Always initialize gthread such that our mutex() stuff is tested

    Now the test/object test deadlocks as expected.  Fix coming.

 configure.ac     | 1 +
 test/Makefile.am | 4 ++--
 test/hb-test.h   | 1 +
 3 files changed, 4 insertions(+), 2 deletions(-)

commit 6a9093cc486c1899197cd7cc9a3eb907c2e756f7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 10 19:00:07 2011 -0400

    [test/object] Test user_data with destroy() callback that calls
    user_data

    Exposes the non-atomicity of user_data opertaions at this time because
    we call finish() while still locked and modifying the object.
    In fact,
    I'm surprised that it doesn't deadlock.  It should.

 test/test-object.c | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

commit abe636b8761e47ea60b193c7e72a044de224d172
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 10 17:55:40 2011 -0400

    Add DOAP file

 Makefile.am   |  6 +++++-
 harfbuzz.doap | 24 ++++++++++++++++++++++++
 2 files changed, 29 insertions(+), 1 deletion(-)

commit f82c18630471216a04e4e3ad42396da4e6d74cba
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 10 17:48:34 2011 -0400

    [test/blob] Fix bug in test

 test/test-blob.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 785d23acd0ce72d399f9c5021bebc854872648af
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 10 17:41:44 2011 -0400

    [test/blob] Add create_sub_blob()

 test/test-blob.c | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

commit 0617b1558234673d3924f37541be01b04d36f05a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 10 17:37:08 2011 -0400

    [test] Test blob API

 test/Makefile.am   |   1 +
 test/test-blob.c   | 280
 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 test/test-buffer.c | 149 ++++++++++++++--------------
 3 files changed, 359 insertions(+), 71 deletions(-)

commit 1c9f8717eb12c37c219333cbb0d123e1d2da4896
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 6 22:28:26 2011 -0400

    [API] Simplify blob API, remove lock

 TODO                        |   2 -
 src/hb-blob.cc              | 206
 ++++++++++++++++++--------------------------
 src/hb-blob.h               |  19 ++--
 src/hb-font.cc              |   2 -
 src/hb-open-type-private.hh |  32 ++++---
 src/hb-ot-layout.cc         |   7 +-
 test/test-object.c          |   2 +-
 7 files changed, 118 insertions(+), 152 deletions(-)

commit 71cef14ac3de07e4fed0a2903b1f0f639406ec6c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 6 19:30:59 2011 -0400

    Add -Bsymbolic-functions to linker flags

 configure.ac | 3 +++
 1 file changed, 3 insertions(+)

commit ab428aeab724ca40341318b66640f992cd72d2fc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 6 19:30:46 2011 -0400

    [TODO] Update

 TODO | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a0f337a1cce1788dbf3147b459e7f615acbfe81b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 6 19:20:52 2011 -0400

    Remove unused hb_blob_try_writable_inplace()

 src/hb-blob.cc | 20 --------------------
 src/hb-blob.h  |  3 ---
 2 files changed, 23 deletions(-)

commit 08611d5194144bbf5d96a1110aeb812db06e0901
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 6 16:28:10 2011 -0400

    Add note re deadlocks

 src/hb-common.cc        | 1 +
 src/hb-mutex-private.hh | 4 ++++
 2 files changed, 5 insertions(+)

commit 34fb5521a5fbb6b95ceff4bbac42a62628bc9f31
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 6 00:04:28 2011 -0400

    [API] Add hb_language_get_default()

    It uses locale information to detect default language.  It's used by
    hb_shape() whenever language is not set on the buffer.

    Not sure how to properly test it in the test suite.  Tested by
    observing
    that with DejaVu Sans we select the proper local glyph version
    for U+431
    under Serbian locale.  See http://www.pango.org/ScriptGallery

 src/hb-common.cc   | 21 +++++++++++++++++++++
 src/hb-common.h    |  3 +++
 src/hb-shape.cc    |  2 +-
 test/test-common.c |  5 +++++
 4 files changed, 30 insertions(+), 1 deletion(-)

commit c78f4485587cc1dee07e772c164a13fde9d2859f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 5 21:31:04 2011 -0400

    [API] Add version macros and functions

    Step version up to 0.5.0.

    Also, fix to pass "make distcheck"

 configure.ac                 | 24 ++++++++++++-----
 src/Makefile.am              |  9 +++++++
 src/check-c-linkage-decls.sh |  2 +-
 src/hb-common.cc             | 29 +++++++++++++++++++++
 src/hb-version.h.in          | 62
 ++++++++++++++++++++++++++++++++++++++++++++
 src/hb.h                     |  1 +
 test/Makefile.am             |  2 ++
 7 files changed, 122 insertions(+), 7 deletions(-)

commit 9ff819f6571fd0d570f271162d7a30d97ee64148
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 5 19:47:59 2011 -0400

    Add disable-static libtool flag

    No one who builds harfbuzz static uses the autotools build system
    to do it.

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 7ca7571ef91754274f6c84bbf988962d74a74098
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 5 19:47:12 2011 -0400

    Remove win32-dll libtool flag

    Since we're not win32-dll clean the way libtool docs define it.

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 174e3fe89b72729c9c34c647544a2dc1bf63cd84
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 5 19:37:53 2011 -0400

    Add AC_CANONICAL_HOST

 configure.ac | 10 ++++++++++
 1 file changed, 10 insertions(+)

commit e6a5b88c01420366a70e0c9ae1775fb3c930cb8b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 5 16:24:42 2011 -0400

    Fix build with older glib

 configure.ac   |  2 +-
 test/hb-test.h | 55
 +++++++++++++++++++++++++++++++++----------------------
 2 files changed, 34 insertions(+), 23 deletions(-)

commit 3935af1c0d0f53a5fd6054e1ee219f3adda42dca
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 5 16:09:45 2011 -0400

    [buffer] Remove wrong optimization

    While the cluster fields of the glyph string are usually sorted, they
    wouldn't be in special cases (for example for non-native direction).
    Blindly using bsearch is plain wrong.  If we want to reintroduce this
    optimization we have to make sure we know the buffer clusters are
    monotonic and in which direction.  Not sure it's worth it though.

 src/hb-buffer.cc | 16 +++-------------
 1 file changed, 3 insertions(+), 13 deletions(-)

commit 46df6828513d56cd60467e36cbe45aa06648f488
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 5 15:33:19 2011 -0400

    Make user_data access threadsafe

    For now, by taking a global user_data mutex.

 src/hb-common.cc         | 25 +++++++++++++++++++++++--
 src/hb-object-private.hh |  2 --
 2 files changed, 23 insertions(+), 4 deletions(-)

commit 218e67b9eefa26e2e4fe43f99a84d082b185b1b0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 5 15:28:37 2011 -0400

    Shrink code

 src/hb-common.cc         | 26 ++++++++++++++++++++++++++
 src/hb-object-private.hh | 21 ++++-----------------
 2 files changed, 30 insertions(+), 17 deletions(-)

commit b8d6183ebc4697a434776cf2aec7857d63a7d881
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 5 15:14:04 2011 -0400

    Use threadsafe set implementation for hb_language lookups

    Note that the static variable has to be a global static, as gcc
    implements local statics differently and that would require linking
    to libstdc++, which we don't want.

 src/hb-common.cc | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit d37486d87b65c5abaaa2998fa5c9e48eedde0933
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 5 15:07:54 2011 -0400

    Add hb_threadsafe_set_t

 src/hb-mutex-private.hh | 54
 +++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-private.hh       |  3 +--
 2 files changed, 55 insertions(+), 2 deletions(-)

commit b45f32ee4e599c515ce93e44315283d236b073bb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 5 15:00:43 2011 -0400

    Use hb_array_t for hb_language_t mapping

 src/hb-common.cc         | 48
 ++++++++++++++++++++++--------------------------
 src/hb-object-private.hh |  4 ++--
 src/hb-private.hh        | 19 +++++++++++++++----
 3 files changed, 39 insertions(+), 32 deletions(-)

commit 21d2c92fdf7307c7117f8948021f0dd7d5a5d2a3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 5 14:47:53 2011 -0400

    Move code around

 src/hb-object-private.hh | 28 ++++++++++++++--------------
 1 file changed, 14 insertions(+), 14 deletions(-)

commit 448ea9bf63104d39f87fff66219034222fa632b8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 5 14:39:24 2011 -0400

    [TODO] Remove done items

 TODO | 9 ---------
 1 file changed, 9 deletions(-)

commit 265ac614ea6d26041c7d64739098b76a82bbc4f4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 5 14:38:16 2011 -0400

    Replace fixed-size lookup_maps array with hb_array_t

 src/hb-ot-map-private.hh | 13 +++++--------
 src/hb-ot-map.cc         | 47
 +++++++++++++++++++++++++----------------------
 src/hb-private.hh        |  6 ++----
 3 files changed, 32 insertions(+), 34 deletions(-)

commit 6843569d2c70c1771ce964e3d1a4cf91e14e7687
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 5 14:12:37 2011 -0400

    Replace fixed-size feature_maps array with hb_array_t

 src/hb-ot-map-private.hh | 10 +++-------
 src/hb-ot-map.cc         | 12 ++++++------
 src/hb-ot-shape.cc       |  2 +-
 src/hb-private.hh        | 42 +++++++++++++++++++++++++++++-------------
 4 files changed, 39 insertions(+), 27 deletions(-)

commit 44b0a4d2fc62689fc56ef57f412b4bb1e439a614
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 5 13:42:19 2011 -0400

    Replace fixed-size feature_infos array with hb_array_t

 src/hb-ot-map-private.hh |  9 +++++----
 src/hb-ot-map.cc         |  9 +++++----
 src/hb-private.hh        | 12 ++++++++++++
 3 files changed, 22 insertions(+), 8 deletions(-)

commit b214ec3ac0ce6568e9226fd09661d52de11dca96
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 5 13:24:07 2011 -0400

    Minor

 src/hb-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 811482bd650fb5652a9835471ae8ecf0fb185611
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 5 13:21:04 2011 -0400

    Replace hb_map_t with hb_set_t which is more intuitive and flexible

 src/hb-object-private.hh | 24 ++++++++++++++----------
 src/hb-private.hh        | 44
 +++++++++++++++++---------------------------
 test/test-object.c       |  4 ++++
 3 files changed, 35 insertions(+), 37 deletions(-)

commit 478a42536ff7ab777a7774fbfdb9c5e51334a14e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 5 12:39:51 2011 -0400

    Make array/map implementation more generic

 src/hb-object-private.hh |  2 ++
 src/hb-private.hh        | 13 +++++++------
 2 files changed, 9 insertions(+), 6 deletions(-)

commit b81bd42951e1ce1569b29168015d3c5a2dacf773
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 5 00:21:16 2011 -0400

    Make hb_mutex_*() macros take a pointer

    More intuitive.

 src/hb-blob.cc          | 28 ++++++++++++++--------------
 src/hb-mutex-private.hh | 32 ++++++++++++++++----------------
 2 files changed, 30 insertions(+), 30 deletions(-)

commit a4b1900913c91aa9db74c4fdfa7c691a5cdf02a8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 5 00:17:43 2011 -0400

    Add hb_static_mutex_t

 src/hb-mutex-private.hh | 8 ++++++++
 1 file changed, 8 insertions(+)

commit 56eb5ad6f94c32189ad219438db9a18683ca6846
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 4 19:27:37 2011 -0400

    Move code around

    Mutex (and Windows.h by extension) are fairly isolated now.

 src/Makefile.am          |   8 ++--
 src/hb-blob-private.hh   |  60 ---------------------------
 src/hb-blob.cc           |  24 ++++++++++-
 src/hb-font-private.hh   |   3 --
 src/hb-font.cc           |  12 +++---
 src/hb-mutex-private.hh  | 105
 +++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-object-private.hh |  33 ++-------------
 src/hb-unicode.cc        |   1 -
 8 files changed, 141 insertions(+), 105 deletions(-)

commit d292885893395dcb345dce1010e5c8628a715ef4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 3 01:03:53 2011 -0400

    [ft] Fix font->face handling

    Don't use _cached()

 src/hb-ft.cc | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

commit 2000179487b49e0d504ec127450dc6fcb5568cec
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 3 00:49:06 2011 -0400

    Move Win32 thread-safety stuff to hb-object-private.h

    The Win32 definitions for LONG, ULONG, etc conflicts with
    hb-open-type.h.  Avoid that by making sure hb-object-private.h
    and hb-open-type.h are not included in the same compilation unit.

 src/hb-common.cc         | 54 ---------------------------------------
 src/hb-object-private.hh | 66
 ++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-private.hh        | 66
 ------------------------------------------------
 3 files changed, 66 insertions(+), 120 deletions(-)

commit 266b34418c9bbe23ccaf29cb354b58c465fa3b22
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 3 00:35:53 2011 -0400

    Refactor to keep hb-object-private.h and hb-open-type.h separate

    Needed to be able to include <Windows.h> from hb-object-private.h.

 src/hb-font.cc              | 19 ++++----------
 src/hb-ot-layout-private.hh | 60
 +++++++++++++++++++++++++--------------------
 src/hb-ot-layout.cc         | 28 ++++++++++++++++++---
 3 files changed, 63 insertions(+), 44 deletions(-)

commit d4141a44b97377a65e6d2a3e03b3709307af38c1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 3 00:19:18 2011 -0400

    [blob] Implement sub_blob() in terms of create()

    Fixes problem with uninitialized sub_blob->mutex among other things.

    Reported by Bradley Grainger.

 src/hb-blob.cc | 12 +++++-------
 1 file changed, 5 insertions(+), 7 deletions(-)

commit fc52e9e44c2fe84d63f18dc0098720830f0b467d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 3 00:09:16 2011 -0400

    Implement win32 thread-safety stuff

    Patch from Bradley Grainger.

 src/hb-common.cc  | 54
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-private.hh | 30 +++++++++++++++++++++++++-----
 2 files changed, 79 insertions(+), 5 deletions(-)

commit f55272ecde857c116f97a3195f3abd1df3be4b86
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 2 20:57:28 2011 -0400

    Add hb_mutex_free() and use it

    Based on patch by Bradley Grainger.

 src/hb-blob.cc    |  1 +
 src/hb-private.hh | 16 +++++++++-------
 2 files changed, 10 insertions(+), 7 deletions(-)

commit 8d5186484b28b5f629b523e067d7d5166eec557a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 2 20:52:21 2011 -0400

    Cosmetic

 src/hb-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 72657e4ce757dcb055a8db7291b68f96f0d34bfb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 2 20:46:32 2011 -0400

    [API] Make hb_font_create() take a face and reference it

 src/hb-font-private.hh           |  2 ++
 src/hb-font.cc                   | 42
 +++++++++++++++++++++++++---------------
 src/hb-font.h                    | 26 ++++++++++++++-----------
 src/hb-ft.cc                     |  7 +------
 src/hb-ot-layout-gdef-private.hh |  2 +-
 src/hb-ot-layout-gpos-private.hh |  2 +-
 src/hb-ot-layout.cc              | 10 ++++------
 src/hb-ot-layout.h               |  2 --
 src/hb-ot-map-private.hh         |  2 +-
 src/hb-ot-shape.cc               | 23 +++++++++++-----------
 src/hb-ot-shape.h                |  1 -
 src/hb-shape.cc                  | 18 ++---------------
 src/hb-shape.h                   |  1 -
 src/hb-view.cc                   |  4 +---
 test/test-object.c               |  7 +++++--
 15 files changed, 70 insertions(+), 79 deletions(-)

commit cec6611c5ce84d69d910bf7e9ec1fdd594398f9f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 2 20:18:58 2011 -0400

    Protect NULL in a couple places

 src/hb-font.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 5a5030366e40baa8d96ca67b47a52ad5af143157
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 2 19:54:29 2011 -0400

    Fix bug in array growth implementation

    With this, test/object is now passing.  Yay!

 src/hb-private.hh | 24 +++++++++++-------------
 1 file changed, 11 insertions(+), 13 deletions(-)

commit 16123e10700436df18d14e37371bb621b31ea5d1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 2 19:54:17 2011 -0400

    Fix bug in map implementation

 src/hb-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 1cd5969f253528b1fc05a06c7a9f222baa29f68d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 2 19:53:39 2011 -0400

    [object] Fix bug in get_user_data() implementation

 src/hb-object-private.hh | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit db99589529a22a2113bcef1680ab6d9b934f382e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 2 19:52:47 2011 -0400

    [test/object] Add test for object lifecycle stuff

    Revealed many bugs in the (untested and known buggy) user_data
    support.

 test/Makefile.am   |   4 +
 test/test-object.c | 316
 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 320 insertions(+)

commit f74d6c81f14f117b3cecfb65f0d5df22849c9a07
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 2 19:52:32 2011 -0400

    Cosmetic

 test/test-unicode.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit 4911062d5be0d937ee8f1a70cc93e05d162f45b3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 2 19:36:39 2011 -0400

    [API] Rename hb_blob_create_empty() to hb_blob_get_empty()

 src/hb-blob.cc              | 2 +-
 src/hb-blob.h               | 2 +-
 src/hb-font.cc              | 2 +-
 src/hb-open-type-private.hh | 2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

commit 1ab1d3e38cdf8e7331efdbc4ef0c02ee9d5c8c04
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 2 19:35:53 2011 -0400

    [face] Return nil face if blob is inert

 src/hb-font.cc | 3 +++
 1 file changed, 3 insertions(+)

commit e87867cb88280e3f3a38d829e359cb686168b2cb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 2 19:35:05 2011 -0400

    [buffer] Fail in _create() if we cannot pre-allocate the requested
    size

 src/hb-buffer.cc | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

commit cd361ec9a1b2bfc271e5490dbfc0a870fd5c439a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 2 16:54:05 2011 -0400

    Cosmetic

 test/test-unicode.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c784c67a28f5b92d396eaa9529d57ef91a5cb9ac
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 2 15:59:57 2011 -0400

    [unicode] Make _get_parent() return _nil object instead of NULL

 src/hb-unicode.cc   | 29 ++++++++++++-----------------
 test/test-unicode.c |  2 +-
 2 files changed, 13 insertions(+), 18 deletions(-)

commit 07e22779abd089d5921bf2d19d4a3bf1bd0173c6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 2 14:58:04 2011 -0400

    [test/unicode] Add script roundtrip tests for glib and ICU

 test/test-unicode.c | 70
 ++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 file changed, 64 insertions(+), 6 deletions(-)

commit 7cda65935c73c277550f6ac12f6730e96d4852a7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 2 14:33:53 2011 -0400

    [test/unicode] Better test chainup

 test/test-unicode.c | 54
 ++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 file changed, 49 insertions(+), 5 deletions(-)

commit 250c59225ead28449deb11522dee3819480a19b4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 2 14:21:30 2011 -0400

    [test/unicode] Port the _custom test to test all property setters

 test/test-unicode.c | 186
 +++++++++++++++++++++++++++++-----------------------
 1 file changed, 104 insertions(+), 82 deletions(-)

commit e74b5b339ab0af53d893ec84a0955d5aa508fed3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 2 14:03:55 2011 -0400

    [test/unicode] Test Unicode 5.2+ but don't fail

 test/test-unicode.c | 21 +++++++++++++++++++--
 1 file changed, 19 insertions(+), 2 deletions(-)

commit c763aa42b46eaee95359806cab56fa632ff3ad58
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 2 13:52:17 2011 -0400

    [test/buffer] Clean up testing

    Getting the hang of how to cleanly use gtest.

 test/test-buffer.c | 154
 +++++++++++++++++++++++++++++------------------------
 1 file changed, 85 insertions(+), 69 deletions(-)

commit 819e9d9e5310e67e8dcce9fa885f8a086a9b9ee8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 2 12:38:54 2011 -0400

    Minor

 test/test-unicode.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 03034acb8a9fdd33135bc3775a1f932da9ebdd42
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 2 12:37:45 2011 -0400

    [icu] Make sure we return script UNKNOWN instead of INVALID

 src/hb-icu.cc | 3 +++
 1 file changed, 3 insertions(+)

commit d02985ec5a24c659a0a133cc6bc103f1d76bcb29
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 2 12:35:14 2011 -0400

    ISO 15924 fixes

    Update to http://unicode.org/iso15924

    Fixes some of the test failures in test-unicode with ICU.  Still
    one more to fix before the test passes.

 src/hb-common.cc | 10 ++++++++--
 src/hb-common.h  |  5 +++--
 src/hb-ot-tag.cc |  2 --
 3 files changed, 11 insertions(+), 6 deletions(-)

commit e8e29c725a72c2e991cd1c4422a020457e1684e9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 2 12:06:18 2011 -0400

    [test/unicode] Add log messages

    Use with --verbose to see what's failing

 test/test-unicode.c | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

commit 208c2c31501f6eb2b81b6bf80fcf39f4646eb38b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 1 20:04:01 2011 -0400

    Minor

 test/test-unicode.c | 478
 ++++++++++++++++++++++++++--------------------------
 1 file changed, 243 insertions(+), 235 deletions(-)

commit 60833efaf1310c3f18e150b61daaeb0074ae3d91
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 29 16:49:57 2011 -0400

    [test/unicode] Add testing of all unicode properties

    ICU fails for now.

 test/hb-test.h      |   4 +-
 test/test-unicode.c | 432
 +++++++++++++++++++++++++++++++++++++++++++++++++---
 2 files changed, 416 insertions(+), 20 deletions(-)

commit da96ee072fa3544c3d36cf0b82ada11806789d70
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 29 12:17:09 2011 -0400

    [test/unicode] Test is/make_immutable()

 test/test-unicode.c | 46 ++++++++++++++++++++++++++++++----------------
 1 file changed, 30 insertions(+), 16 deletions(-)

commit 6af9cff5e17e82100b435c8d21aed0765296d58d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 29 12:00:38 2011 -0400

    [test/unicode] Use text fixture instead of static variables

 src/hb-unicode-private.hh |   2 +-
 src/hb-unicode.h          |   2 +-
 test/test-buffer.c        |   2 +-
 test/test-c.c             |   1 +
 test/test-common.c        |   3 +-
 test/test-cplusplus.cc    |   1 +
 test/test-unicode.c       | 112
 +++++++++++++++++++++++++++-------------------
 7 files changed, 74 insertions(+), 49 deletions(-)

commit 13db3d40bfc09c68f9761a71435b1840b9d34099
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 28 19:44:45 2011 -0400

    [test/buffer] Add UTF-16 tests

 test/test-buffer.c | 48 ++++++++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 46 insertions(+), 2 deletions(-)

commit 243673d601588a6f704ceafbff5dd5cdf66c47b7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 28 19:37:51 2011 -0400

    [test/buffer] Add more extensive UTF-8 test data from glib

 src/hb-buffer.cc   |   2 +-
 test/test-buffer.c | 317
 ++++++++++++++++++++++++++++++++++++++++++++++++++---
 2 files changed, 303 insertions(+), 16 deletions(-)

commit dfec67f958482e5c3bb01e06b08694cd4ded6f66
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 28 18:34:42 2011 -0400

    [test/buffer] Add initial utf-8 tests

 test/hb-test.h     | 25 ++++++++++++++++++++++++-
 test/test-buffer.c | 46 +++++++++++++++++++++++++++++++++++++++++++++-
 2 files changed, 69 insertions(+), 2 deletions(-)

commit aafe395ab550d3ba2fabc69155662e87d45e74a8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 28 17:10:44 2011 -0400

    Add test suite infrastructure

    Wraps around glib for convenience and ease of use.

 test/Makefile.am    |   1 +
 test/hb-test.h      | 132
 ++++++++++++++++++++++++++++++++++++++++++++++++----
 test/test-buffer.c  |  29 ++++++------
 test/test-common.c  |  14 +++---
 test/test-unicode.c |  32 ++++++-------
 5 files changed, 160 insertions(+), 48 deletions(-)

commit c7ffe2ad5f6e97e26d14e2cc0d4098af8f5f36d0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 28 16:03:29 2011 -0400

    [API Remove hb_font_funcs_copy()

    Will be adding font_funcs subclassing instead.

 src/hb-font.cc | 13 -------------
 src/hb-font.h  |  3 ---
 2 files changed, 16 deletions(-)

commit 30f34d08d445722320db711c3ddf41e66225752c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 28 16:02:40 2011 -0400

    [TODO] Remove finished items

 TODO          |  2 --
 src/hb-font.h | 10 ----------
 2 files changed, 12 deletions(-)

commit 080a0eb7d82d7195be72c16ece6e0a3ffed636b6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 28 16:01:01 2011 -0400

    Add _hb_unsigned_int_mul_overflows

 src/hb-buffer.cc                 | 7 ++-----
 src/hb-open-type-private.hh      | 2 +-
 src/hb-ot-layout-gsub-private.hh | 2 +-
 src/hb-private.hh                | 9 ++++++++-
 4 files changed, 12 insertions(+), 8 deletions(-)

commit 1d39d6e42b3d7628512d675a84a831a0f58624eb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 28 15:54:16 2011 -0400

    Desable possibly lethal test on 64-bit machines

 test/test-buffer.c | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

commit 3264042873fd639f3ef8ff0acfad777a0a9f3355
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 28 14:24:16 2011 -0400

    [test/buffer] Test pre_allocate() and allocation_successful()

 src/hb-buffer.cc   |  3 ++-
 test/test-buffer.c | 26 +++++++++++++++++++++++++-
 2 files changed, 27 insertions(+), 2 deletions(-)

commit 123aa04f7b3241d6e43de2d472c4a1cbdb250ac7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 28 12:58:28 2011 -0400

    Fix possible but improbable overflow in hb_array_t

 src/hb-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e0db4b868f9fdd8e680890f87dd4e13a1c27b7a1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 28 12:56:49 2011 -0400

    [buffer] More error handling

    Should be all set now.

 src/hb-buffer-private.hh |  2 +-
 src/hb-buffer.cc         | 60
 +++++++++++++++++++++++++++++++++---------------
 2 files changed, 43 insertions(+), 19 deletions(-)

commit 15c57e04bf05026ef424f8ae912d2f379301bf93
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 28 12:28:54 2011 -0400

    [test/buffer] Add test pre_alloc(); hangs in the buffer code right now

    Because the following loop overflows:

      while (size > new_allocated)
          new_allocated += (new_allocated >> 1) + 32;

 test/test-buffer.c | 33 ++++++++++++++++++++++++++-------
 1 file changed, 26 insertions(+), 7 deletions(-)

commit 1e5527e2d60ed3b4a5adf62b258415ec3aef41fb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 28 12:15:24 2011 -0400

    [test/buffer] Test reset(), set_length(), and set/get_unicode_data()

 test/test-buffer.c | 66
 ++++++++++++++++++++++++++++++++++++++++++++++++------
 1 file changed, 59 insertions(+), 7 deletions(-)

commit db126b5448ec802285cf2b6f0e7da412d02dfb28
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 28 11:56:29 2011 -0400

    [test/buffer] Test reverse() and reverse_clusters()

 test/test-buffer.c | 61
 ++++++++++++++++++++++++++++++++++++++++++++++++++----
 1 file changed, 57 insertions(+), 4 deletions(-)

commit 5fa849b77d49da2212825ebb1bea9145713b8449
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 27 21:46:01 2011 -0400

    [API] Add _set/get_user_data() for all objects

 src/hb-blob.cc    | 17 +++++++++++++++++
 src/hb-blob.h     | 12 ++++++++++++
 src/hb-buffer.cc  | 16 ++++++++++++++++
 src/hb-buffer.h   | 10 ++++++++++
 src/hb-font.cc    | 51
 +++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-font.h     | 36 ++++++++++++++++++++++++++++++++++++
 src/hb-unicode.cc | 17 +++++++++++++++++
 src/hb-unicode.h  | 12 ++++++++++++
 8 files changed, 171 insertions(+)

commit 852e08ec8fbfbce1d50e571d0bb0b52ef4d4cc58
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 27 21:45:51 2011 -0400

    Move code around

 src/hb-object-private.hh | 153
 ++++++++++-------------------------------------
 src/hb-private.hh        | 136 +++++++++++++++++++++++++++++++++++++----
 2 files changed, 157 insertions(+), 132 deletions(-)

commit 29c67d3f70b081766a6c01353980f457f38aeb12
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 27 21:22:32 2011 -0400

    Add initial implementation of user_data to objects

 src/hb-common.h          |  11 ++-
 src/hb-object-private.hh | 186
 ++++++++++++++++++++++++++++++++++++++++++++++-
 2 files changed, 193 insertions(+), 4 deletions(-)

commit 47e71d9661946a4ffb96026bf1d697d788414ab5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 27 16:38:03 2011 -0400

    [object] Remove unnecessary use of macros

 TODO                     |  2 --
 src/hb-blob.cc           | 18 +++++++++---------
 src/hb-buffer.cc         |  6 +++---
 src/hb-font.cc           | 30 +++++++++++++++---------------
 src/hb-object-private.hh |  9 ---------
 src/hb-unicode.cc        |  8 ++++----
 6 files changed, 31 insertions(+), 42 deletions(-)

commit 8be1420f8fd0e5c53282245d6830efbee5c7409d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 27 16:14:04 2011 -0400

    [blob] Use HB_FUNC instead of __FUNCTION__

 src/hb-blob.cc | 24 ++++++++++++------------
 1 file changed, 12 insertions(+), 12 deletions(-)

commit ae008b90cfc2028e878100f78b21d70f923a6044
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 27 16:12:12 2011 -0400

    [object] Add tracing support back in

 src/hb-object-private.hh | 38 ++++++++++++++++++++++++++------------
 1 file changed, 26 insertions(+), 12 deletions(-)

commit 5b7f38979fa90117861fe327477de1707f117a8c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 27 15:10:12 2011 -0400

    GNOME Bug 612402 - (hb-arm) HarfBuzz compilation fix for arm

    With gcc on arm, request 8-bit structure alignment.

 configure.ac | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

commit 39a840ae65327b173e6eb1bb291e235a8305d7a1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 27 14:48:19 2011 -0400

    [API] Add hb_direction_from/to_string()

    And hb-view --direction argument.

 TODO               |  1 -
 src/hb-common.cc   | 36 ++++++++++++++++++++++++++++++++++++
 src/hb-common.h    |  6 ++++++
 src/hb-view.cc     | 13 ++++++++++---
 test/test-common.c | 21 ++++++++++++++++++++-
 5 files changed, 72 insertions(+), 5 deletions(-)

commit f1425a549fef360c3750532de23604cd318999d8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 27 12:15:06 2011 -0400

    Rename hb-view.c and test.c to .cc files

 src/Makefile.am               | 4 ++--
 src/{hb-view.c => hb-view.cc} | 2 +-
 src/{test.c => test.cc}       | 5 ++++-
 3 files changed, 7 insertions(+), 4 deletions(-)

commit eb5796f58897ecfb9d76fd99915bf1a30669a0fa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 27 12:14:53 2011 -0400

    [TODO] Add hb-view items

 TODO | 10 ++++++++++
 1 file changed, 10 insertions(+)

commit 65e0063eae2f3adb25315b8bd7b0e7757aa960f3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 27 09:33:58 2011 -0400

    Make buffer size growth start from 32 instead of 8

 src/hb-buffer.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit d4bee9f813bb299b1c4aab7c33d588be2a7d354b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 27 09:24:37 2011 -0400

    [API] Add hb_unicode_funcs_get_default()

 src/hb-buffer.cc          |  4 ++--
 src/hb-glib.cc            |  5 +++--
 src/hb-icu.cc             |  5 +++--
 src/hb-unicode-private.hh | 11 +++++++++++
 src/hb-unicode.cc         |  7 +++++++
 src/hb-unicode.h          |  8 ++++++++
 src/hb-view.c             | 13 ++++++-------
 test/test-unicode.c       | 11 ++++++++++-
 8 files changed, 50 insertions(+), 14 deletions(-)

commit 153142dac8dd9abaf164bb88af07c600c17fc3a1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 27 01:49:03 2011 -0400

    Replace simple macros with inline functions for better type safety

    Now that we use C++ for all source code, lets benefit from it!

    The hb_be_int16/32_get/put/eq() macros grow code size if replaced with
    inline functions, so leave them as is.

 src/hb-open-type-private.hh |  4 ++--
 src/hb-private.hh           | 30 +++++++++++++++++++++---------
 2 files changed, 23 insertions(+), 11 deletions(-)

commit 40a9b8154f929947f4693bf90c64301afa407c3f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 27 01:48:56 2011 -0400

    Add TODO item

 src/hb-object-private.hh | 1 +
 1 file changed, 1 insertion(+)

commit ebdc83467c31574daa118fc18cd2ef2dc819b503
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 27 01:41:24 2011 -0400

    Don't return in void function

    Would have been nice if gcc had warned...

 src/hb-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ec6f9c2fd03a49d1e91cbaefa5bdbbfb35dff92e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 21 18:35:58 2011 -0400

    Further simplify object handling

 src/hb-object-private.hh | 53
 ++++++++++++++++++++++++------------------------
 1 file changed, 27 insertions(+), 26 deletions(-)

commit fca368c4682624346a0aaee690e1ad6ed4c0b337
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 21 18:24:02 2011 -0400

    Add hb_object_header_t which is the common part of all objects

    Makes way for adding arbitrary user_data support.

 src/hb-blob-private.hh    |  3 +-
 src/hb-blob.cc            |  2 +-
 src/hb-buffer-private.hh  |  9 +++--
 src/hb-buffer.cc          |  2 +-
 src/hb-font-private.hh    |  7 ++--
 src/hb-font.cc            |  7 ++--
 src/hb-ft.cc              |  3 +-
 src/hb-glib.cc            |  3 +-
 src/hb-icu.cc             |  3 +-
 src/hb-object-private.hh  | 95
 ++++++++++++++++++++++++++---------------------
 src/hb-private.hh         |  5 +--
 src/hb-unicode-private.hh |  6 ++-
 src/hb-unicode.cc         |  3 +-
 13 files changed, 82 insertions(+), 66 deletions(-)

commit a9f24c802956d57180d71b83e96a0fb81197df4a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 21 17:18:22 2011 -0400

    Move hb_reference_count_t to hb-private.h

 src/hb-object-private.hh | 17 -----------------
 src/hb-private.hh        | 20 ++++++++++++++++++++
 2 files changed, 20 insertions(+), 17 deletions(-)

commit 2409d5f8d7dd8b535ce5ea29e933f7db27d33793
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 21 17:14:28 2011 -0400

    Update Copyright headers

 COPYING                                 | 15 ++++++++-------
 src/hb-blob-private.hh                  |  2 +-
 src/hb-blob.cc                          |  2 +-
 src/hb-blob.h                           |  2 +-
 src/hb-buffer-private.hh                |  4 ++--
 src/hb-buffer.cc                        |  6 +++---
 src/hb-buffer.h                         |  6 +++---
 src/hb-common.cc                        |  4 +++-
 src/hb-common.h                         |  4 +++-
 src/hb-font-private.hh                  |  4 +++-
 src/hb-font.cc                          |  2 +-
 src/hb-font.h                           |  2 +-
 src/hb-ft.cc                            |  4 ++--
 src/hb-ft.h                             |  2 +-
 src/hb-glib.cc                          |  4 +++-
 src/hb-glib.h                           |  4 +++-
 src/hb-icu.cc                           |  6 ++++--
 src/hb-icu.h                            |  4 +++-
 src/hb-object-private.hh                |  6 ++++--
 src/hb-open-file-private.hh             |  2 +-
 src/hb-open-type-private.hh             |  2 +-
 src/hb-ot-head-private.hh               |  2 +-
 src/hb-ot-layout-common-private.hh      |  4 ++--
 src/hb-ot-layout-gdef-private.hh        |  4 ++--
 src/hb-ot-layout-gpos-private.hh        |  4 ++--
 src/hb-ot-layout-gsub-private.hh        |  4 ++--
 src/hb-ot-layout-gsubgpos-private.hh    |  4 ++--
 src/hb-ot-layout-private.hh             |  2 +-
 src/hb-ot-layout.cc                     |  6 +++---
 src/hb-ot-layout.h                      |  2 +-
 src/hb-ot-map-private.hh                |  4 ++--
 src/hb-ot-map.cc                        |  4 ++--
 src/hb-ot-shape-complex-arabic-table.hh |  2 +-
 src/hb-ot-shape-complex-arabic.cc       |  2 +-
 src/hb-ot-shape-complex-private.hh      |  2 +-
 src/hb-ot-shape-private.hh              |  2 +-
 src/hb-ot-shape.cc                      |  4 ++--
 src/hb-ot-shape.h                       |  2 +-
 src/hb-ot-tag.cc                        |  4 +++-
 src/hb-ot-tag.h                         |  2 +-
 src/hb-ot.h                             |  2 +-
 src/hb-private.hh                       |  4 +++-
 src/hb-shape.cc                         |  2 +-
 src/hb-shape.h                          |  2 +-
 src/hb-unicode-private.hh               |  4 ++--
 src/hb-unicode.cc                       |  4 ++--
 src/hb-unicode.h                        |  4 +++-
 src/hb-view.c                           |  4 ++--
 src/hb.h                                |  2 +-
 src/main.cc                             |  2 +-
 src/test.c                              |  2 +-
 test/hb-test.h                          | 17 ++++++++++++++++-
 test/test-buffer.c                      |  2 +-
 test/test-c.c                           |  2 +-
 test/test-common.c                      |  2 +-
 test/test-cplusplus.cc                  |  2 +-
 test/test-unicode.c                     |  2 +-
 57 files changed, 122 insertions(+), 84 deletions(-)

commit 08da7a3841ca7dfcb627314cae1c3a668b9c7236
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 21 16:59:10 2011 -0400

    [hb-view] Accept numbers in feature tag name

    Reported by Adam Twardoch.

 src/hb-view.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 24229eb13268a422efffbcb28a094b726824c7f0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 21 16:55:17 2011 -0400

    Remove obsolete comment

    Talking to Ryan Lortie, he thinks my comment doesn't make sense.

    So I'm making the getter const.  Note that g_atomic_int_get()
    casts that away itself, so we don't need to worry about that
    (which kinda makes me uncomfortable actually).

 src/hb-object-private.hh | 16 ++--------------
 1 file changed, 2 insertions(+), 14 deletions(-)

commit dcb7026f33cbcdf60e9b7fcdd44c64cc08702c74
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 21 16:34:22 2011 -0400

    Add ASSERT_STATIC_EXPR macro

    Unused right now.

 src/hb-private.hh | 2 ++
 1 file changed, 2 insertions(+)

commit 3e8bdbf9414291da5cf61213d5f4275c1ae23ae5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 21 16:16:21 2011 -0400

    Cleanup hb_refrence_count_t

 src/hb-object-private.hh | 23 ++++++++++++++++++-----
 src/hb-private.hh        |  6 +++---
 2 files changed, 21 insertions(+), 8 deletions(-)

commit 783a7d69696bf0b1502ec9c1495e482e491c78e0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 21 16:03:59 2011 -0400

    [TODO] Remove finished items

 TODO         | 6 +-----
 src/hb-ft.cc | 1 -
 2 files changed, 1 insertion(+), 6 deletions(-)

commit da975419884a535281745f30f4b32fee0bc8a7a1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 21 15:08:01 2011 -0400

    [API] Allow negative font x_scale/y_scale

    I was reconsidering whether y should grow down, since all three/four
    times I've used this API I was tricked and got that wrong in my use.
    So I was very inclined to make y grow down instead of up.  However,
    considering that the font space has y up and it would be very
    confusing
    for callbacks to work against that, I decided that what I really want
    is for the user to be able to set y_scale to a negative number
    to imply
    that user-space y grows down.

    Changing x_scale/y_scale from unsigned int to int allows that,
    and I've
    made pango to use that instead of negating glyph y_offset later.
    hb-ft
    however still has y group up.  I *guess* that's how FreeType works?
    I'm not sure, FreeType docs don't make this clear...

    I'm happy with the resolution :-).

 src/hb-font.cc                     | 8 ++++----
 src/hb-font.h                      | 8 ++++----
 src/hb-ot-layout-common-private.hh | 6 +-----
 src/hb-ot-layout-private.hh        | 2 +-
 4 files changed, 10 insertions(+), 14 deletions(-)

commit 4d559cddbb3b3a5c12c5167eba69598618a9f283
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 21 14:58:23 2011 -0400

    [icu] Remove big script switch(), rely on reverse-lookup

 src/hb-icu.cc | 137
 ++++------------------------------------------------------
 1 file changed, 9 insertions(+), 128 deletions(-)

commit d18431b4cd8c1b14523733cd60a62b862f5b471f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 20 18:59:10 2011 -0400

    Move hb_reference_count_t from macros to inline methods

 src/hb-object-private.hh | 25 +++++++++++--------------
 1 file changed, 11 insertions(+), 14 deletions(-)

commit c57d454accff66e5f2c58006e8fb40bc020b6182
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 20 18:50:27 2011 -0400

    Rename all private sources and headers to C++ files

    So we can liberally use the simple features of C++ that parts of the
    codebase is already using.

 src/Makefile.am                                         | 17
 +++++++++--------
 src/{hb-blob-private.h => hb-blob-private.hh}           |  8 ++++----
 src/hb-blob.cc                                          |  4 ++--
 src/hb-buffer-private.hh                                |  2 +-
 src/{hb-common.c => hb-common.cc}                       |  8 ++++----
 src/{hb-font-private.h => hb-font-private.hh}           |  8 ++++----
 src/hb-font.cc                                          |  6 +++---
 src/{hb-ft.c => hb-ft.cc}                               |  4 ++--
 src/hb-glib.cc                                          |  2 +-
 src/hb-icu.cc                                           |  2 +-
 src/{hb-object-private.h => hb-object-private.hh}       | 10 ++++------
 src/hb-open-type-private.hh                             |  2 +-
 src/hb-ot-layout-gdef-private.hh                        |  2 +-
 src/hb-ot-layout-private.hh                             |  4 ++--
 ...abic-table.h => hb-ot-shape-complex-arabic-table.hh} |  8 ++++----
 src/hb-ot-shape-complex-arabic.cc                       |  2 +-
 src/hb-ot-shape-complex-private.hh                      |  2 +-
 src/hb-ot-shape-private.hh                              |  2 +-
 src/{hb-ot-tag.c => hb-ot-tag.cc}                       |  8 ++++----
 src/{hb-private.h => hb-private.hh}                     |  8 ++++----
 src/hb-shape.cc                                         |  2 +-
 src/hb-unicode-private.hh                               |  2 +-
 src/hb-unicode.cc                                       |  2 +-
 src/hb-view.c                                           |  6 ++++++
 24 files changed, 63 insertions(+), 58 deletions(-)

commit f19f4f9b0965ad7473a0f3a1ffcdbf16930e35d4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 20 18:25:56 2011 -0400

    Rename hb-blob.c to hb-blob.cc in preparation of more changes

 src/Makefile.am               | 2 +-
 src/{hb-blob.c => hb-blob.cc} | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 04744e73bad22d679986173b5f0d84dbbf49dd57
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 20 17:24:03 2011 -0400

    [TODO] Remove done items

 TODO | 6 ------
 1 file changed, 6 deletions(-)

commit 9417c1c0d2b005eadf0c087ca695121a6200d0f7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 20 17:21:23 2011 -0400

    [API] Make hb_face_reference_table() return empty blob instead of NULL

    The idea here is that:

      - Like pretty much all other API in harfbuzz, user does not have to
        check for NULL.

      - In any caller code, the case of missing table should be handled
        exactly the same way that a too-short table is handled.  Turning
        a non-existent talbe into a table of size 0 makes the user code
        safer.

 src/hb-font.cc              | 2 ++
 src/hb-open-type-private.hh | 3 ---
 2 files changed, 2 insertions(+), 3 deletions(-)

commit c035812feb0d385a9e8c334631738e4915912c71
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 20 17:03:00 2011 -0400

    [API] Rename hb_face_get_table() to hb_face_reference_table()

    That correctly reflects the reference ownership transfer happening.

 src/hb-font.cc      | 4 ++--
 src/hb-font.h       | 7 ++-----
 src/hb-ot-layout.cc | 6 +++---
 src/hb-shape.cc     | 2 +-
 4 files changed, 8 insertions(+), 11 deletions(-)

commit 2d7b61a4b0ed212ca414b3281c2eae3e3db19c13
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 20 16:40:56 2011 -0400

    [TODO] Remove done items

 TODO        | 10 ++--------
 src/hb-ft.h |  2 +-
 2 files changed, 3 insertions(+), 9 deletions(-)

commit af02933739e03a156b9f7761fd7a63e2a02d0df1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 20 15:49:31 2011 -0400

    [API] Remove hb_*_get_reference_count()

    This was a bizzare piece of API that I inherited from cairo.  It has
    been wrong adding them to cairo in the first place.  Remove them
    before
    someone uses them!

 src/hb-blob.c           |  6 ------
 src/hb-blob.h           |  3 ---
 src/hb-buffer.cc        |  6 ------
 src/hb-buffer.h         |  3 ---
 src/hb-font.cc          | 18 ------------------
 src/hb-font.h           |  9 ---------
 src/hb-object-private.h |  7 -------
 src/hb-unicode.cc       |  6 ------
 src/hb-unicode.h        |  3 ---
 test/test-unicode.c     | 24 ------------------------
 10 files changed, 85 deletions(-)

commit 440a76b630a36a7336c93e8b05d988c6407b085e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 20 14:20:00 2011 -0400

    [OT] Fix script to ot-script-tag conversion

 src/hb-ot-tag.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit a3036a3e97b14c8eb1df208aed944207f9b6cc0b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 20 14:13:23 2011 -0400

    Minor

 src/hb-view.c | 1 -
 1 file changed, 1 deletion(-)

commit fb6291d9c9224bedf207bf0077ad9f0a2690f867
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 20 03:15:31 2011 -0400

    [test] Add test for headers included from C and C++

 test/Makefile.am       | 17 +++++++++++++++++
 test/test-c.c          | 49
 +++++++++++++++++++++++++++++++++++++++++++++++++
 test/test-cplusplus.cc | 29 +++++++++++++++++++++++++++++
 3 files changed, 95 insertions(+)

commit 107a50581ccab7df7c390d5b927fdab1bbe8e713
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 20 03:04:56 2011 -0400

    [test] Add todo items

 test/test-unicode.c | 3 +++
 1 file changed, 3 insertions(+)

commit 5668189c12c264e8d2caf0d12dac918363ef6f80
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 20 03:03:32 2011 -0400

    [API] font: move user_data before destroy()

    This is the common convention for language binding tools.

 src/hb-font-private.h |  4 ++--
 src/hb-font.cc        | 30 +++++++++++++++---------------
 src/hb-font.h         | 12 ++++++------
 src/hb-ft.c           |  8 ++++----
 4 files changed, 27 insertions(+), 27 deletions(-)

commit e5847f75fb7bd25c5db6061d8e20d61fa469f9fe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 20 02:59:28 2011 -0400

    [API] blob: move user_data before destroy()

    This is the common convention for language binding tools.

 src/hb-blob-private.h |  2 +-
 src/hb-blob.c         | 16 ++++++++--------
 src/hb-blob.h         |  4 ++--
 3 files changed, 11 insertions(+), 11 deletions(-)

commit 1fd73b594d611624ccb73f614c61298debf48994
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 20 02:56:39 2011 -0400

    [test] Rename test-types to test-common

 test/Makefile.am                     | 2 +-
 test/{test-types.c => test-common.c} | 0
 2 files changed, 1 insertion(+), 1 deletion(-)

commit f144a8ea840c6452c1fece2fd988b42a8ea7c5a6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 20 02:54:42 2011 -0400

    [icu] Add two-way script conversion functions

    Also optimizes the common-direction script lookup.

 src/hb-common.c   |   5 +-
 src/hb-icu.cc     | 205
 +++++++++++++++++++++++++++++-------------------------
 src/hb-icu.h      |   9 +++
 test/test-types.c |   2 +-
 4 files changed, 124 insertions(+), 97 deletions(-)

commit 0809aadd4bbd5d0f256407def7cc10b79772a824
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 20 02:44:29 2011 -0400

    [glib] Add two-way script conversion functions

    Also optimizes the common-direction script lookup to be an array
    lookup.

 src/hb-glib.cc | 270
 ++++++++++++++++++++++++++++++---------------------------
 src/hb-glib.h  |   8 ++
 2 files changed, 148 insertions(+), 130 deletions(-)

commit 5c8c1b680c4fa23c8574b9aebd21113e276f57a3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 20 02:29:22 2011 -0400

    Remove verbose comments

 src/hb-glib.cc | 194 ++++++++++++++++++++---------------------
 src/hb-icu.cc  | 266
 ++++++++++++++++++++++++++++-----------------------------
 2 files changed, 230 insertions(+), 230 deletions(-)

commit fb194b8794898f51eb596fa4092c26606889d376
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 20 02:00:47 2011 -0400

    unicode: Cleanup implementation

 src/Makefile.am                                    |   8 +-
 src/hb-buffer-private.hh                           |   2 +-
 src/{hb-glib.c => hb-glib.cc}                      |  65 +++----
 src/{hb-icu.c => hb-icu.cc}                        |  30 +--
 src/hb-ot-shape.cc                                 |  14 +-
 src/hb-shape.cc                                    |   4 +-
 ...{hb-unicode-private.h => hb-unicode-private.hh} |  65 ++++---
 src/{hb-unicode.c => hb-unicode.cc}                | 213
 +++++++++------------
 src/hb-unicode.h                                   |  57 +++---
 test/test-unicode.c                                |  23 ++-
 10 files changed, 237 insertions(+), 244 deletions(-)

commit ecfb773829a5d98a4f5456a992f3e5ecd6731435
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 20 01:34:51 2011 -0400

    Cosmetic

 src/hb-unicode.h | 22 +++++++++-------------
 1 file changed, 9 insertions(+), 13 deletions(-)

commit 2fd0c577e322ccbf762927bc4600b3ea31db4c80
Author: Ryan Lortie <desrt@desrt.ca>
Date:   Wed Apr 20 00:19:20 2011 -0400

    [API] unicode: rework virtual functions for subclassing

    Unicode data providers can now be subclassed, including support for
    chain-up.  The interface should now be nicely bindable, as well.

    Also fix glib unicode funcs that where broken after hb_script_t
    changes.  Nicely caught by the test-unicode.c added in this commit.

 src/hb-glib.c            | 186 ++++++++++++++++++++++++++++++++++++--
 src/hb-icu.c             |  45 +++++++--
 src/hb-ot-shape.cc       |   9 +-
 src/hb-shape.cc          |   2 +-
 src/hb-unicode-private.h |  17 ++++
 src/hb-unicode.c         | 231
 +++++++++++++++++++++++++----------------------
 src/hb-unicode.h         |  68 +++++++-------
 test/Makefile.am         |   1 +
 test/test-unicode.c      | 215
 +++++++++++++++++++++++++++++++++++++++++++
 9 files changed, 610 insertions(+), 164 deletions(-)

commit f85faee9b3cb841ea977403945e2c877ab32b97a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 19 00:38:01 2011 -0400

    [API] Rename hb_buffer_add_glyph() to hb_buffer_add()

 src/hb-buffer.cc   | 10 +++++-----
 src/hb-buffer.h    |  8 ++++----
 test/test-buffer.c |  2 +-
 3 files changed, 10 insertions(+), 10 deletions(-)

commit aab0de50e23727b69fa8c3d4e05c50c114c62835
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 19 00:32:19 2011 -0400

    [API] Add hb_buffer_allocation_successful()

    Returns the error status of the buffer.

 src/hb-buffer.cc   | 6 ++++++
 src/hb-buffer.h    | 6 ++++++
 test/test-buffer.c | 2 +-
 3 files changed, 13 insertions(+), 1 deletion(-)

commit 02a534b23f2d1e7475109563b9f61221ed020e8b
Author: Ryan Lortie <desrt@desrt.ca>
Date:   Fri Apr 15 18:34:45 2011 -0400

    [API] Rename hb_buffer_ensure() to hb_buffer_pre_allocate()

    The new name is self-documenting.

 src/hb-buffer.cc | 4 ++--
 src/hb-buffer.h  | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

commit 70566befc59cfa8b9c43ac682749c40ea783b1dd
Author: Ryan Lortie <desrt@desrt.ca>
Date:   Fri Apr 15 18:32:36 2011 -0400

    [API} hb_buffer_get_glyph_{infos,positions}: Add length out parameter

    Return the length, whenever we return an array.  Makes it easier
    on the
    language bindings.

 src/hb-buffer.cc                 | 12 ++++++++++--
 src/hb-buffer.h                  |  6 ++++--
 src/hb-ot-layout-gpos-private.hh |  4 ++--
 src/hb-view.c                    |  4 ++--
 test/test-buffer.c               |  7 ++-----
 5 files changed, 20 insertions(+), 13 deletions(-)

commit 62879eebd9965179af8602ba29ac0a64a739b757
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 18 23:40:21 2011 -0400

    [API] Use ISO 15924 tags for hb_script_t

    This simplifies the code, reduces static data, and makes the design
    more extensible to future additions of new scripts.

 src/hb-common.c                    | 411
 ++++---------------------------------
 src/hb-common.h                    | 199 +++++++++---------
 src/hb-ot-map.cc                   |   4 +-
 src/hb-ot-shape-complex-private.hh |   3 +-
 src/hb-ot-tag.c                    | 228 +++++++++-----------
 src/hb-ot-tag.h                    |   6 +-
 src/hb-shape.cc                    |   4 +-
 test/test-types.c                  |   2 +-
 8 files changed, 252 insertions(+), 605 deletions(-)

commit c0af193c8e25c4f11d23b8893e9ce1c2d2615bb2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 15 19:26:24 2011 -0400

    Change buffer default properties to invalid

    This includes HB_DIRECTION_INVALID and HB_SCRIPT_INVALID.

    The INVALID will cause a "guess whatever from the text" in hb_shape().
    While it's not ideal, it works better than the previous defaults at
    least (HB_DIRECTION_LTR and HB_SCRIPT_COMMON).

 src/hb-buffer-private.hh |  9 +++------
 src/hb-buffer.cc         | 24 ++++++++++++++++--------
 src/hb-view.c            |  6 ++----
 test/test-buffer.c       |  4 ++--
 4 files changed, 23 insertions(+), 20 deletions(-)

commit 00bec2c969555e76c3f84650a1d3c45308e585ad
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 15 19:16:54 2011 -0400

    Move enum types to hb-common.h

 src/hb-common.c  | 406
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-common.h  | 170 +++++++++++++++++++++++
 src/hb-unicode.c | 406
 -------------------------------------------------------
 src/hb-unicode.h | 166 -----------------------
 4 files changed, 576 insertions(+), 572 deletions(-)

commit 5dd4609f4da5674966a0169d9fa533ac5bc9f464
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 15 19:16:34 2011 -0400

    [TODO] Add new item

 TODO | 1 +
 1 file changed, 1 insertion(+)

commit b54cd07b2623b68171e00179a9dc3ecbea7aa6a1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 15 19:12:01 2011 -0400

    Mark internal buffer variables private

 src/hb-buffer.h | 4 ++++
 1 file changed, 4 insertions(+)

commit 0e8d35c0932ddc20ebf430f2fd82c087da698954
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 15 19:07:10 2011 -0400

    Add hb_script_from_string()

 src/hb-unicode.c | 6 ++++++
 src/hb-unicode.h | 4 ++++
 src/hb-view.c    | 2 +-
 3 files changed, 11 insertions(+), 1 deletion(-)

commit 8f0d7e0c3fd4b05c43ac449be4f374dc2dc56127
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 15 18:59:56 2011 -0400

    Remove hb_buffer_clear_positions(), add hb_ot_layout_position_start()

 src/hb-buffer-private.hh |  6 +++++-
 src/hb-buffer.cc         | 24 ++++++++++++------------
 src/hb-buffer.h          |  5 +----
 src/hb-ot-layout.cc      |  6 ++++++
 src/hb-ot-layout.h       |  4 ++++
 src/hb-ot-shape.cc       |  2 +-
 6 files changed, 29 insertions(+), 18 deletions(-)

commit 2fc56edff6d64f190271454ccb1b5fd347d4f172
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 15 18:35:08 2011 -0400

    [API] Remove hb_buffer_clear()

    One should use hb_buffer_reset() really.

 src/hb-buffer.cc   | 16 +++++-----------
 src/hb-buffer.h    |  4 ----
 test/test-buffer.c |  4 ----
 3 files changed, 5 insertions(+), 19 deletions(-)

commit 7f5bdc80541cdc90aa1acafba5e9e0bd2df53ff4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 15 18:34:55 2011 -0400

    [TODO] Remove done items

 TODO | 4 ----
 1 file changed, 4 deletions(-)

commit 5814dfa3f5aa41bc3df06b78980d57d7bea0ba58
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 15 14:41:04 2011 -0400

    Cosmetic

 src/hb-ot-shape.cc | 14 +++++++-------
 src/hb-ot-shape.h  |  4 ++--
 src/hb-shape.cc    | 20 ++++++++++----------
 src/hb-shape.h     | 10 +++++-----
 4 files changed, 24 insertions(+), 24 deletions(-)

commit cfbfeb88a6ec059ea97a6624e63cfacc642b685a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 15 12:40:40 2011 -0400

    [TODO] Remove done items

 TODO | 4 ----
 1 file changed, 4 deletions(-)

commit 3cbdf70e0a92f1c24e16c0d4dcfbec4ac59a77a3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 15 12:32:06 2011 -0400

    Make hb_language_t typesafe

 src/hb-common.c | 18 +++++++++++-------
 src/hb-common.h |  2 +-
 2 files changed, 12 insertions(+), 8 deletions(-)

commit 2f2f448af35c232d18888c0e57cb21c9796ba7a8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 15 11:45:14 2011 -0400

    [test] Add more TODO items

 test/test-buffer.c | 2 ++
 1 file changed, 2 insertions(+)

commit c910bec863215f918c659f58debbc7fe5264d7b6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 13 15:49:06 2011 -0400

    Add hb_buffer_reset() and hb_buffer_set_length()

 src/hb-buffer.cc | 31 +++++++++++++++++++++++++++++++
 src/hb-buffer.h  | 15 ++++++++++++++-
 2 files changed, 45 insertions(+), 1 deletion(-)

commit 69ea23cb5d47dd1cfd3129f68375021ef79bf63b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 13 15:02:40 2011 -0400

    Minor

 src/hb-buffer.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 7dea908cd582c8c25555015940065c69c1e7e65b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 13 01:35:58 2011 -0400

    [test] Add todo items

 test/test-buffer.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 07cbaac07d7f43437b171e9275430b5fb3097716
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 13 01:11:19 2011 -0400

    [TODO] Add item re script iso15924 functions

 TODO | 2 ++
 1 file changed, 2 insertions(+)

commit d0f53fdbead15d9003b521b8ed47d02fd29a4c64
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 13 01:09:09 2011 -0400

    [test] Test hb-buffer.h

 test/Makefile.am   |   8 ++-
 test/test-buffer.c | 195
 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 202 insertions(+), 1 deletion(-)

commit 72d89404c2837d578f5305456c817130b6a15c73
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 13 01:07:42 2011 -0400

    [TODO] Add item re hb_buffer_reset()

 TODO | 2 ++
 1 file changed, 2 insertions(+)

commit 5015c12dfb4de8525325178ae6def9e80fd83669
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 13 01:06:02 2011 -0400

    [TODO] Add item re hb_buffer_resize()

 TODO | 2 ++
 1 file changed, 2 insertions(+)

commit 9329ec92078d0e2d7bb04f683e0c6a582aab92f7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 13 00:06:23 2011 -0400

    [TODO] Add API item

 TODO | 2 ++
 1 file changed, 2 insertions(+)

commit 4744379efc6063d94e15ff99381a7ab8b88ee567
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 11 19:47:33 2011 -0400

    Minor

 test/test-types.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9385caa8a693df0f06a511a71de9aa407637097c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 11 19:43:51 2011 -0400

    [test] Actually hook up hb_script_t tests

    I really shall find a way to automate the test enumeration.  Otherwise
    it's too easy to add a test and wrongly hook it up.  Did it twice
    today.

 test/test-types.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 8e4bb3cacc269ed32187aaaeaa166c64f41a0418
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 11 17:55:58 2011 -0400

    Fold hb-language.[ch] into hb-common.[ch]

 src/Makefile.am   |   2 -
 src/hb-buffer.h   |   1 -
 src/hb-common.c   |  92 ++++++++++++++++++++++++++++++++++++++++-
 src/hb-common.h   |  42 +++++++++++++------
 src/hb-language.c | 120
 ------------------------------------------------------
 src/hb-language.h |  46 ---------------------
 src/hb-ot-tag.h   |   1 -
 src/hb.h          |   1 -
 8 files changed, 120 insertions(+), 185 deletions(-)

commit 09125576ca745b3393f3dc49071df891400bbdc9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 11 17:49:33 2011 -0400

    [test] Test hb_language_t

 test/test-types.c | 26 +++++++++++++++++++++++++-
 1 file changed, 25 insertions(+), 1 deletion(-)

commit 316b7a1afb84a5dfeaed886a585669b4d549c9b7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 11 17:49:10 2011 -0400

    Make hb_language_from_string("") return NULL language

 src/hb-language.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit db60c96f20426111ffa71e9802ef6e248f8b28d0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 11 16:17:02 2011 -0400

    [teset] Test hb_script_t

 test/hb-test.h    |  8 ++++++++
 test/test-types.c | 35 ++++++++++++++++++++++++++++++++++-
 2 files changed, 42 insertions(+), 1 deletion(-)

commit 99b74760a4cddc798ab44b5ca897486bbb9c76d6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 11 15:47:40 2011 -0400

    Rename hb_category_t to hb_unicode_general_category_t

 src/hb-glib.c                     |  2 +-
 src/hb-icu.c                      | 64
 ++++++++++++++++++-------------------
 src/hb-ot-shape-complex-arabic.cc |  8 ++---
 src/hb-ot-shape-private.hh        |  2 +-
 src/hb-ot-shape.cc                |  2 +-
 src/hb-unicode.c                  |  4 +--
 src/hb-unicode.h                  | 66
 +++++++++++++++++++--------------------
 7 files changed, 74 insertions(+), 74 deletions(-)

commit 4188096a7722f09ffa9319986c0286071da10a27
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 11 14:58:28 2011 -0400

    Make HB_TAG_CHAR4 private

    It's just sugar.

 src/hb-common.h   | 5 +----
 src/hb-private.h  | 7 ++++++-
 test/test-types.c | 2 --
 3 files changed, 7 insertions(+), 7 deletions(-)

commit 7ff7401c9237cda661869c1cb196d685706ac4e9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 11 13:27:30 2011 -0400

    Make hb_tag_from_string(NULL) return HB_TAG_NONE

 src/hb-common.c   | 3 +++
 test/test-types.c | 3 +++
 2 files changed, 6 insertions(+)

commit 02f6e62d6cabc7808c188daef26a1fe7ac626b1f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 11 13:27:21 2011 -0400

    Build fix

 test/Makefile.am | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit db5227c40e5c35fe2ffb750f32b639cb44424a1d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 11 13:16:08 2011 -0400

    Move macros around

 src/hb-ot-tag.c  | 6 ++----
 src/hb-private.h | 7 +++++++
 2 files changed, 9 insertions(+), 4 deletions(-)

commit 07233581c9d953708d3c020907c42b8b89472b89
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 11 13:12:37 2011 -0400

    Rename HB_TAG_STR() to HB_TAG_CHAR4()

    The problem with HB_TAG_STR() was that it expected a string of size 4
    exactly, and unlike hb_tag_from_string() it doesn't pad the tag with
    space characters.  So, the new name is more appropriate.

 src/hb-common.c   | 2 +-
 src/hb-common.h   | 8 ++++----
 src/hb-ot-tag.c   | 2 +-
 test/test-types.c | 2 +-
 4 files changed, 7 insertions(+), 7 deletions(-)

commit 9faa980067f802f712c2adf8263152ed40c98088
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 11 12:46:49 2011 -0400

    Add an in-tree test suite

    Uses the glib testing framework.  Wrote unit tests for hb-common.h
    types.

 Makefile.am        |   2 +-
 test/Makefile.am   |  18 +++++++++
 test/Makefile.decl |  90 ++++++++++++++++++++++++++++++++++++++++++++
 test/hb-test.h     |  67 +++++++++++++++++++++++++++++++++
 test/test-types.c  | 108
 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 5 files changed, 284 insertions(+), 1 deletion(-)

commit d77b76200efbaa0611691920f9f2018b1e8be340
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 11 12:29:52 2011 -0400

    Add few more paratheses to the HB_TAG macro

    Never hurts.

 src/hb-common.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b13640de6992de9ee9d07e3581c33b8181b70ff9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 11 12:29:31 2011 -0400

    A few more ASSERTs

 src/hb-private.h | 3 +++
 1 file changed, 3 insertions(+)

commit ae9eeaff9300f3bb7bed588c5478e8e5461b3df0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 11 11:49:08 2011 -0400

    Remove warning message from public header file

    Since we now assert thos in hb-private.h, the int types cannot
    be wrong.
    (Except for when someone else includes hb-common.h in a very broken
    configuration, but that's not our problem!)

    Plus, we don't use inline in the public headers, so remove that too.

 src/hb-common.h  | 7 -------
 src/hb-private.h | 4 ++++
 2 files changed, 4 insertions(+), 7 deletions(-)

commit 6fd5364bdc3a2b459175377e9e16c86cff054232
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 11 11:47:14 2011 -0400

    Assert int types

 src/hb-private.h | 12 ++++++++++++
 1 file changed, 12 insertions(+)

commit bbdeff59646e5502b9fc53ab1761b3f014ee276c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 7 16:05:07 2011 -0400

    Add test directory

 configure.ac     | 1 +
 test/Makefile.am | 0
 2 files changed, 1 insertion(+)

commit 4accc92afc702177ea53280d977cec839af3c12c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 7 15:53:26 2011 -0400

    Update TODO items

 TODO | 31 ++++++++++++++++++++-----------
 1 file changed, 20 insertions(+), 11 deletions(-)

commit a71b9c8579d73aea4549f12524bbc2e89f43b5c5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 6 14:04:56 2011 -0400

    Disable 'cswh' by default except for Arabic shaper

    That better matches OpenType spec.  Note that we enable it for all
    Arabic-shaper scripts.  Ie. we enable it by default for Syriac too,
    but the SyriacOT spec does not require it.  I think this is a more
    useful compromise than special-casing for Arabic script alone.

 src/hb-ot-shape-complex-arabic.cc | 3 +++
 src/hb-ot-shape.cc                | 1 -
 2 files changed, 3 insertions(+), 1 deletion(-)

commit cab6f65bba560ac1651d9152f1ecf12eb88eca74
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 4 15:36:51 2011 -0400

    [hb-view] setlocale (LC_ALL, "")

    For now we don't use anything from the locale, but we should default
    to using $LANG, etc, if --language is not specified.  Right?

 src/hb-view.c | 3 +++
 1 file changed, 3 insertions(+)

commit fb9ca1bfabde7da0c274e7a1bd12bffaf7949c18
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 4 14:50:09 2011 -0400

    [hb-view] Rewrite --features parsing, with range support

    The --features parsing handles errors now.  More importantly, it
    allos limiting individual features to specific byte ranges.  The
    format is Python-esque.  Here is how it all works:

      Syntax:       Value:  Start:  End:

    Setting value:
      "kern"        1       0       ∞       # Turn feature on
      "+kern"       1       0       ∞       # Turn feature off
      "-kern"       0       0       ∞       # Turn feature off
      "kern=0"      0       0       ∞       # Turn feature off
      "kern=1"      1       0       ∞       # Turn feature on
      "kern=2"      2       0       ∞       # Choose 2nd alternate

    Setting index:
      "kern[]"      1       0       ∞       # Turn feature on
      "kern[:]"     1       0       ∞       # Turn feature on
      "kern[5:]"    1       5       ∞       # Turn feature on, partial
      "kern[:5]"    1       0       5       # Turn feature on, partial
      "kern[3:5]"   1       3       5       # Turn feature on, range
      "kern[3]"     1       3       3+1     # Turn feature on, single char

    Mixing it all:

      "kern[3:5]=0" 1       3       5       # Turn feature off for range

 src/hb-view.c | 169
 +++++++++++++++++++++++++++++++++++++++++++++-------------
 1 file changed, 132 insertions(+), 37 deletions(-)

commit ccc6745afaa68ce7497a6cd02ce85986d3c863d0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 4 14:49:50 2011 -0400

    [hb-view] Use cached hb-ft face creation

    Avoids recreating the face the second time we call draw().

 src/hb-view.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 1b4a2cc095d165dc573e0235f00fbbf2a5d3c2c5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 4 14:45:28 2011 -0400

    [hb-view] Add --debug

    Frees all allocated memory before exiting.  Useful for valgrind run.

 src/hb-view.c | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

commit b2da26d1e32a012f7feaad7c7cced61e4fb269f1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 1 15:48:43 2011 -0400

    [hb-view] Support --features

    Accepts values like:

      --features="-mkmk,aalt=2,calt=1,+cswh"

    A minus sign means "=0", a plus sign means "=1".  Default is "=1".
    A minus sign overrides an explicit value.

 src/hb-view.c | 70
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 68 insertions(+), 2 deletions(-)

commit f48ff19b629070d13cee3c0eeeb06c98992f93c6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 1 14:19:10 2011 -0400

    Sort options for clarity

 src/hb-view.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit 5d91c3d547f78163b36aa7436d4388a836cca94a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 16 17:36:32 2011 -0300

    Add script to/from ISO 15924 tag support

    Also adds --script support to hb-view.

    If a script tag is not known to us, we pass the ISO 15924 tag around.
    Right now, the OT layer ignores that, but we can fix it to blindly
    convert that to an OT script tag.

 src/hb-ot-tag.c  |   4 +
 src/hb-unicode.c | 273
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-unicode.h |   8 +-
 src/hb-view.c    |  10 +-
 4 files changed, 293 insertions(+), 2 deletions(-)

commit 3286fc0e9adc3f2874c9409e7fdb09e4d2b7dda1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 16 14:53:32 2011 -0300

    Let hb_shape() guess script and direction...

    - Rename HB_SCRIPT_INVALID_CODE to HB_SCRIPT_INVALID

    - Add HB_DIRECTION_INVALID

    - Make hb_script_get_horizontal_direction() public

    - Make hb_shape() guess script from buffer text (first non-common
      non-inherit script) if buffer script is set to HB_SCRIPT_INVALID
      (this
      is NOT the default.)

    - Make hb_shape() guess direction from buffer script if buffer
    direction
    is set to HB_DIRECTION_INVALID (this is NOT the default.)

    - Make hb-view.c set INVALID script and direction on the buffer.

    The above changes are meant to make hb-view fairly useful for
    uni-script
    uni-direction text.  The guessing behavior however is NOT the
    default of
    hb_shape() and must be asked for explicitly.  This is intended,
    because
    the guess is not a suitable substitute to full-fledged bidi and script
    segmentation.  It's just a testing tool.

 src/hb-common.h          |  3 ++-
 src/hb-icu.c             |  2 +-
 src/hb-ot-shape.cc       |  3 ++-
 src/hb-shape.cc          | 52
 ++++++++++++++++++++++++++++++++++++++++++------
 src/hb-unicode-private.h |  4 ----
 src/hb-unicode.c         |  2 +-
 src/hb-unicode.h         |  8 +++++++-
 src/hb-view.c            |  4 ++--
 8 files changed, 61 insertions(+), 17 deletions(-)

commit b7b29684df67af7280b74ca4cf18f02ad6521bdc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 2 01:01:03 2011 -0500

    [hb-view] Handle write_to_png errors

 src/hb-view.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

commit c2cb98c8185c5560cfd04de7ee7c64c9496b986c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Mar 1 23:18:09 2011 -0500

    [hb-view] Link with -lm

 src/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b5dd44e24669cd35affcd92788d39ff56cac94db
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 28 10:13:52 2011 -0800

    Fix possible overflow

 src/hb-buffer.cc | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

commit a4b781e93a0bee0549611e129b3564d9804d9090
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 23 12:47:56 2011 -0500

    Default background color shall either be white or transparent

    Definitely not black!

 src/hb-view.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 5353bf439c150492708ef9337078cfd73b83627b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 22 18:06:19 2011 -0500

    Add initial hb-view tool

    Currently doesn't handle script or direction.

 configure.ac    |  18 +++
 src/Makefile.am |  14 +++
 src/hb-view.c   | 342
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 374 insertions(+)

commit 82438c6ad5f60b6afc75c48cef72e18bef532468
Author: Bradley Grainger <bgrainger@logos.com>
Date:   Tue Feb 15 18:37:29 2011 -0500

    Fix #pragma message for MSVC.

    __LOC__ was renamed to _HB__LOC__ in cd7555 but the corresponding
    change wasn't made in hb-private.h.

 src/hb-private.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ba9ab8d6d9c863662c4b44ace4a4d89e29e592f2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 10 07:45:41 2011 -0500

    Fix language extension matching

 src/hb-ot-tag.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a07874300a669ec0ea09a67df2a3ee8b0612d6b9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 10 02:27:49 2011 -0500

    Don't use the m4/ dir

    We just require people to have libtool, pkg-config, etc installed
    when running autogen.sh

 Makefile.am  | 2 --
 configure.ac | 1 -
 2 files changed, 3 deletions(-)

commit 7bbe14bed8a886ea5b293c927c4bf937cbfc6f51
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 9 22:29:14 2011 -0500

    Fix 'make distcheck'

 src/Makefile.am | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit 2abe1264a580858bf7803af1701117a462375fb4
Author: Javier Jardón <jjardon@gnome.org>
Date:   Sun Jan 9 22:18:53 2011 -0500

    Bug 31174 - Update autotools configuration

 Makefile.am  |   2 +
 autogen.sh   | 188
 ++++-------------------------------------------------------
 configure.ac |  22 +++++--
 3 files changed, 29 insertions(+), 183 deletions(-)

commit cc1a8a938b4c13e76b58825a9e1951c4134e634a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 6 14:58:52 2011 -0500

    Fix ChanContext backtrack matching with GPOS

    Reported on mailing list by Keith Stribley and Khaled Hosny.

 src/hb-buffer-private.hh             | 5 +++--
 src/hb-buffer.cc                     | 2 +-
 src/hb-ot-layout-gsubgpos-private.hh | 6 +++---
 3 files changed, 7 insertions(+), 6 deletions(-)

commit 1c3183027fe823cd673866ba29d169b69f8efba1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 6 14:44:14 2011 -0500

    Remove unused realloc

    We always allocate and grow str and pos together.

 src/hb-buffer.cc | 6 ------
 1 file changed, 6 deletions(-)

commit 76691f0240d6de230e9b42280b54e91639464635
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 6 14:16:59 2011 -0500

    Fix ICU detection

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 756f794a1fce701092345a3f9afae039583fb55b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 26 20:52:40 2010 -0500

    Remove Graphite backend

    It was unmaintained and the code has to be replaced to use the new
    grphite-ng code base.

 configure.ac       |   6 --
 src/Makefile.am    |  14 ---
 src/hb-graphite.cc | 310
 -----------------------------------------------------
 src/hb-graphite.h  |  47 --------
 4 files changed, 377 deletions(-)

commit f3d9d9879364609502d9d3a3a9f4647adb167d78
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 22 01:39:29 2010 -0500

    Docs

 src/hb-unicode.h | 60
 ++++++++++++++++++++++++++++----------------------------
 1 file changed, 30 insertions(+), 30 deletions(-)

commit d86a5b3c5752abcc791724035ba4115958e6b5e2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 21 18:36:25 2010 -0500

    Bug 32274 - classic mongolian shaper

    Add support for classic Mongolian script to the Arabic shaper.

    Still work to be done around U+180E MONGOLIAN VOWEL SEPARATOR as it
    should not be included in the final glyph stream the same way that
    ZWNJ, etc should not appear in the final glyph stream.

    But the joining part should be done.

    There remains the question of how should the U+18A9 MONGOLIAN
    LETTER ALI
    GALI DAGALGA be handled as it has General Category NSM but a letter
    nonetheless.  For now, our generic logic makes this a joining
    T instead
    of joining D as other Mongolian letters are.

 src/hb-ot-shape-complex-arabic.cc  | 8 ++++++++
 src/hb-ot-shape-complex-private.hh | 1 +
 2 files changed, 9 insertions(+)

commit b0e7378fa9a4fc6fc74d9b3c27d927602eaacc5b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 21 14:19:32 2010 -0500

    Reroute Mandaic shaping through the Arabic shaper

    We added Mandaic joining data to the Arabic shaper a while ago, but
    were not actually using the Arabic shaper for Mandaic.  Fixed.

 src/hb-ot-shape-complex-private.hh | 1 +
 1 file changed, 1 insertion(+)

commit 88e7f37488e4e8590619d815b975232a0c9d2ea0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 21 14:18:24 2010 -0500

    Annotate the Arabic joining table with block information

 src/gen-arabic-joining-table.py        | 93
 +++++++++++++++++++++-------------
 src/hb-ot-shape-complex-arabic-table.h | 24 +++++++--
 2 files changed, 80 insertions(+), 37 deletions(-)

commit 1482a39e56cd4151874e5c073540274349240a87
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 17 20:15:05 2010 -0500

    Rename remaining metrics uses to extents

 src/hb-font.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 22c537657cee1f47a4056a21e2cddfcbe6ab1c01
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 14 23:51:29 2010 -0500

    Rename TableDirectory to TableRecord as per OpenType 1.6

 src/hb-open-file-private.hh | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

commit 33e8b86197239e667a887709104357bdc6566b7c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 13 15:54:56 2010 -0500

    Update 'head' table to OpenType 1.6

 src/hb-ot-head-private.hh | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

commit b7683335146bfe3a74d9419db92cd7a8019a9c10
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 13 14:22:35 2010 -0500

    Disallow ligature substitutions replacing one glyph

 src/hb-ot-layout-gsub-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 7eb875118dc31e9fb0e23c45985396a8bfe977e3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 13 14:13:35 2010 -0500

    Mozilla Bug 618592 - freeze on typekit

    Fix apply_lookup() for zero-input broken fonts.

 src/hb-ot-layout-gsubgpos-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit bbbbe80ec9bc45c5b685bc09c8f993e98496555c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 7 16:22:02 2010 -0500

    Rename original_direction to target_direction

 src/hb-ot-shape-private.hh | 2 +-
 src/hb-ot-shape.cc         | 6 +++---
 2 files changed, 4 insertions(+), 4 deletions(-)

commit ee8aaf976a6eb42be49b63b4c51c7a0a338e0298
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 7 16:20:42 2010 -0500

    Fix arabic shaping of LTR text

    We should ensure-direction before doing any complex work.  The only
    exception is mirroring that needs to see the original / final
    direction,
    not the native.  Handle that.

 src/hb-ot-shape.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit d1f1707adc03317760b0f75e04d0f3dd425e547f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 30 00:57:15 2010 -0500

    Bug 31965 - some GNU/Linux distributions lack icu.pc but have
    icu-config

    Patch from suzuki toshiya.

 configure.ac | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

commit 3c48982be6b2286088541ee55cac78b0f2b6e771
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 28 19:39:47 2010 -0500

    Adjust pyx files to reflect change from int to hb_var_int_t

    Patch from Thomas Hunger.

 contrib/python/lib/harfbuzz.pyx | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

commit 4f9e4a40bc248aeb1364ed6f4aa7f392aa364497
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 22 11:30:32 2010 -0500

    Fix failing checks

 src/hb-ot-shape-complex-arabic-table.h | 37
 ++++++++++++++++++++++++++++++++++
 1 file changed, 37 insertions(+)

commit 9da26d6669e7f3b91ba37e71f6f8a6e2ea806688
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 22 11:03:18 2010 -0500

    Remove email address from Copyright headers

 COPYING      | 2 +-
 src/hb-ft.c  | 2 +-
 src/hb-icu.c | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

commit a45f00019242734fca742adeb2ed507305baeda6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 18 13:58:32 2010 -0500

    Clarify copyright notice

 COPYING                 | 12 ++++++++++++
 README                  |  4 ++--
 src/hb-graphite.cc      |  4 ++--
 src/hb-object-private.h |  2 +-
 4 files changed, 17 insertions(+), 5 deletions(-)

commit 0884a8d9cd576f116400b3f7c8815e747c315d5e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 17 16:58:21 2010 -0500

    Move generated table to its own file

 src/Makefile.am                        |   1 +
 src/hb-ot-shape-complex-arabic-table.h | 619
 ++++++++++++++++++++++++++++++++
 src/hb-ot-shape-complex-arabic.cc      | 621
 +--------------------------------
 3 files changed, 621 insertions(+), 620 deletions(-)

commit 14d784116b08685425e4ddcb1c1f813dbe2b2986
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 17 16:52:58 2010 -0500

    Update Arabic joining table to include Mandaic

    Mandaic was added to Unicode 6.0, but the joining data was not
    updated.
    Draft ArabicShaping.txt from 6.1 includes the joining data for
    Mandaic.
    Use that.

 src/gen-arabic-joining-table.py   |  45 ++++++++++----
 src/hb-ot-shape-complex-arabic.cc | 123
 ++++++++++++++++++++++++++++++++------
 2 files changed, 137 insertions(+), 31 deletions(-)

commit 43bf2f7f1ec427c431e2ee2fd1a9345e7d5c9718
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 17 14:49:40 2010 -0500

    Add OpenType script tags for Unicode 5.2 and Unicode 6.0 scripts

    Based on tags proposed by Microsoft for inclusion in OpenType.

 src/hb-ot-tag.c | 34 +++++++++++++++++-----------------
 1 file changed, 17 insertions(+), 17 deletions(-)

commit afab01cf7caca79cf6dfabe6827d1703be1a74f7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 17 14:35:34 2010 -0500

    Add Unicode 6.0 scripts

 src/hb-icu.c     | 6 ++++++
 src/hb-ot-tag.c  | 7 ++++++-
 src/hb-unicode.c | 7 ++++++-
 src/hb-unicode.h | 7 ++++++-
 4 files changed, 24 insertions(+), 3 deletions(-)

commit f234b68d18d956f7e4eb4bf58d6dc408d9e5146e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 17 14:25:44 2010 -0500

    Change HB_SCRIPT_MEITEI_MAYEK to HB_SCRIPT_MEETEI_MAYEK

    The new name matches the Unicode name.  Reported by Jonathan Kew.

 src/hb-icu.c     | 2 +-
 src/hb-ot-tag.c  | 2 +-
 src/hb-unicode.h | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

commit 3ca9a6d1cffe950b325e1d522b20d4a645ae448e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 17 13:08:47 2010 -0500

    Add TODO item

 TODO | 3 +++
 1 file changed, 3 insertions(+)

commit 300cb41417d40473268e3b4089bed24e9e77a753
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 17 12:57:23 2010 -0500

    Add XXX marks

 src/hb-ot-layout-gsubgpos-private.hh | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit ea00aee9f94ae8c6cf03d620254817d5e1f51d64
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 5 10:51:37 2010 -0400

    Add TODO item

 TODO | 2 ++
 1 file changed, 2 insertions(+)

commit 3a852ae7fe6edfaadd75625d27515a3689503395
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 3 16:37:24 2010 -0400

    Save general category and combining class in the buffer for reuse

 src/hb-ot-layout-private.hh       |  3 ++-
 src/hb-ot-shape-complex-arabic.cc | 16 ++++++++++------
 src/hb-ot-shape-private.hh        |  6 ++++++
 src/hb-ot-shape.cc                | 26 +++++++++++++++++++++-----
 4 files changed, 39 insertions(+), 12 deletions(-)

commit a5ab682b9ba8224fc132624f93e6fef9973a68ca
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 3 15:50:36 2010 -0400

    More "unreached code" warning fixes

    Ugly :(.

 src/hb-blob.c | 48 ++++++++++++++++++++++++------------------------
 1 file changed, 24 insertions(+), 24 deletions(-)

commit 4e22c7e94102c9f00c32b8cb6aaa832f83909149
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 3 15:47:12 2010 -0400

    Add comment

 src/hb-ot-layout-common-private.hh | 3 +++
 1 file changed, 3 insertions(+)

commit 0342034d1cb577d34b42f7204da7fb930c12a464
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 3 15:40:07 2010 -0400

    Pedantic

 src/hb-ot-layout-gpos-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 4a2d844c2f12dc1b858ab4ddd737ded7c0852221
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 3 15:28:56 2010 -0400

    Minor code shuffling

 src/hb-ot-layout-private.hh | 21 +++-------------
 src/hb-ot-layout.cc         | 61
 +++++++++++++++++++++++++++++++++------------
 2 files changed, 48 insertions(+), 34 deletions(-)

commit 11e3ec444a85fc72541823c2e98cc92c4ceb19af
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 3 15:11:04 2010 -0400

    Fix a few more "unreachable code" warnings

 src/hb-blob.c                        |  2 +-
 src/hb-object-private.h              | 12 +++---
 src/hb-open-type-private.hh          | 84
 +++++++++++++++++-------------------
 src/hb-ot-layout-gsubgpos-private.hh |  2 +-
 src/hb-private.h                     |  3 +-
 5 files changed, 49 insertions(+), 54 deletions(-)

commit 2304856340782c72cb30873f7907191dc359e921
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 3 12:46:58 2010 -0400

    Remove another couple lines of dead code

 src/hb-ot-layout-gsubgpos-private.hh | 2 --
 1 file changed, 2 deletions(-)

commit b8783c85ac5dd9ea8f5a66eacb92dfcfbf649a6d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 3 11:50:21 2010 -0400

    Fix unreachable-code warning

 src/hb-ot-layout-gpos-private.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit c2709119c8c610a0d4d71884a7d4fdba7cb65b72
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 27 23:18:51 2010 -0400

    Move things around some more

 src/hb-ot-layout-gpos-private.hh     | 8 ++++----
 src/hb-ot-layout-gsub-private.hh     | 4 ++--
 src/hb-ot-layout-gsubgpos-private.hh | 9 +++++++--
 src/hb-ot-layout-private.hh          | 7 +++----
 src/hb-ot-layout.cc                  | 6 +++---
 5 files changed, 19 insertions(+), 15 deletions(-)

commit 194d4566ec054db03fa31d369a9f1c6cf4941e74
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 27 23:09:10 2010 -0400

    Move buffer var allocation local

 src/hb-ot-layout-gpos-private.hh | 19 ++++++++++++++-----
 src/hb-ot-layout-private.hh      |  2 --
 2 files changed, 14 insertions(+), 7 deletions(-)

commit 1e7c1fcbc33599faefc32d4a28e5d8506d2c56fa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 27 22:48:31 2010 -0400

    Move code around

 src/hb-ot-layout-gpos-private.hh | 59
 ++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-layout.cc              | 59
 ++--------------------------------------
 src/hb-ot-layout.h               |  4 +--
 src/hb-ot-shape.cc               |  2 +-
 4 files changed, 63 insertions(+), 61 deletions(-)

commit bf94b3ad22b2fe4730d4e64d673c63154fc5b5fe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 27 22:37:59 2010 -0400

    Move some more code around

 src/hb-ot-layout-gdef-private.hh | 21 +++++++++++++++
 src/hb-ot-layout-private.hh      | 27 ++++++++++++++++---
 src/hb-ot-layout.cc              | 56
 ++++++----------------------------------
 3 files changed, 52 insertions(+), 52 deletions(-)

commit 6334658fe79d6acfb46a2a147721b78f92510ebb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 27 22:11:32 2010 -0400

    Simplify mark skipping logic

 src/hb-ot-layout.cc | 17 +++--------------
 1 file changed, 3 insertions(+), 14 deletions(-)

commit 8c69e65abed961002d90024c92e18538c6516262
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 27 22:07:49 2010 -0400

    Rename lookup_flags to lookup_props since it's more than just flags

 src/hb-ot-layout-common-private.hh   |  6 +++++-
 src/hb-ot-layout-gpos-private.hh     | 14 +++++++-------
 src/hb-ot-layout-gsub-private.hh     |  8 ++++----
 src/hb-ot-layout-gsubgpos-private.hh | 10 +++++-----
 src/hb-ot-layout-private.hh          |  4 ++--
 src/hb-ot-layout.cc                  | 36
 ++++++++++++++++++------------------
 src/main.cc                          |  4 ++--
 7 files changed, 43 insertions(+), 39 deletions(-)

commit 98370e89d1bff248737b482d129c2a4deb8bfd95
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 27 17:39:01 2010 -0400

    WIP removing external synthesized GDEF support and implementing
    it internally

 TODO                                 |   2 -
 src/hb-buffer-private.hh             |   4 -
 src/hb-buffer.cc                     |   3 -
 src/hb-ot-layout-common-private.hh   |   8 +-
 src/hb-ot-layout-gdef-private.hh     |   6 +-
 src/hb-ot-layout-gpos-private.hh     |   4 +-
 src/hb-ot-layout-gsub-private.hh     |  66 ++++++-----------
 src/hb-ot-layout-gsubgpos-private.hh |  29 +++++++-
 src/hb-ot-layout-private.hh          |  29 +++-----
 src/hb-ot-layout.cc                  | 138
 +++++------------------------------
 src/hb-ot-layout.h                   |  26 -------
 src/hb-ot-shape.cc                   |  10 +++
 12 files changed, 98 insertions(+), 227 deletions(-)

commit 870e2d6eac01d004c72a925ea93e6823251d5fa2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 27 17:37:20 2010 -0400

    Remove unused function

 src/hb-buffer-private.hh | 10 ----------
 src/hb-buffer.cc         | 27 ---------------------------
 2 files changed, 37 deletions(-)

commit 1115890b90709fa5329a55d22f543020f3df9f6f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 27 17:07:04 2010 -0400

    More cleanup

 src/hb-buffer-private.hh    | 5 +----
 src/hb-ot-layout-private.hh | 6 ++++++
 2 files changed, 7 insertions(+), 4 deletions(-)

commit dbf56b1d94910f04823e53e39ace1e5145bddc04
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 27 17:06:12 2010 -0400

    More lig-id cleanup

 src/hb-buffer-private.hh         | 4 ++--
 src/hb-buffer.cc                 | 2 +-
 src/hb-ot-layout-gsub-private.hh | 8 +++++++-
 3 files changed, 10 insertions(+), 4 deletions(-)

commit f6a23a0b9171958f76c1d0473b09fc08d2b3a0d0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 27 17:01:03 2010 -0400

    More removal of lig-id code from buffer

 src/hb-buffer.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit dd2ffd282c059194fd87fb1664e2e0cdb56a87a0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 27 16:57:01 2010 -0400

    Minor renaming

 src/hb-buffer-private.hh         | 41
 ++++++++++++++++++++--------------------
 src/hb-buffer.cc                 | 20 ++++++++++----------
 src/hb-ot-layout-gsub-private.hh |  8 ++++----
 src/hb-ot-shape.cc               |  6 +++---
 4 files changed, 37 insertions(+), 38 deletions(-)

commit fe263272a2b26204bc39829a94d90ab537517f3f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 27 16:51:02 2010 -0400

    Move setting lig_id/component out of buffer and to the gsub code

 src/hb-buffer-private.hh         | 30 +++++++----------------
 src/hb-buffer.cc                 | 52
 +++++++---------------------------------
 src/hb-ot-layout-gsub-private.hh | 27 ++++++++++++---------
 3 files changed, 34 insertions(+), 75 deletions(-)

commit 2e2b2480c01c788ea702d78ca830c2bb659654a8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 27 16:25:28 2010 -0400

    Always allocate new ligature id

    No practical point in reusing ligature ids.

 src/hb-ot-layout-gsub-private.hh | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

commit bf07d5a29c61baf6fd683289c7764f487ad7e413
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 27 16:19:13 2010 -0400

    Set component=0 for ligature glyph

 src/hb-ot-layout-gsub-private.hh | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 37ab877149582c7ce7416425bb402340e3f948a2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 27 15:38:06 2010 -0400

    Remove comment

 src/hb-buffer.cc | 20 --------------------
 1 file changed, 20 deletions(-)

commit 88474c6fdaf35c56368694a5b164f4988a004d49
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 27 14:42:15 2010 -0400

    Get rid of the OpenType-specific internal buffer representation

    Add variant integers to buffer item types.  More cleanup coming.

 TODO                              |  2 --
 src/hb-buffer-private.hh          | 35 ++++++----------------
 src/hb-buffer.cc                  | 62
 +++++++++++++++++++--------------------
 src/hb-buffer.h                   |  2 +-
 src/hb-ot-layout-gpos-private.hh  | 24 +++++++--------
 src/hb-ot-layout-gsub-private.hh  |  2 +-
 src/hb-ot-layout-private.hh       |  4 +--
 src/hb-ot-layout.cc               | 39 ++++++++++++------------
 src/hb-ot-shape-complex-arabic.cc |  8 ++---
 9 files changed, 79 insertions(+), 99 deletions(-)

commit 6cb8c3493019e1497921666fc268cb81943f9f1f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 27 14:27:03 2010 -0400

    Add hb_var_int_t

 src/hb-buffer.h |  6 +++---
 src/hb-common.h | 10 ++++++++++
 2 files changed, 13 insertions(+), 3 deletions(-)

commit f22802431a983bd4bc60a7653b1103973c3475cb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 2 19:12:37 2010 -0400

    Remove trailing comma

 src/hb-ot-shape-complex-arabic.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 13528d0c78cadb1f67267c9a692558caef9fdaa6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 27 14:09:27 2010 -0400

    Supposedly implement vertical support in GPOS

    Not tested at all.

 src/hb-ot-layout-gpos-private.hh | 27 ++++++++++++++++++++-------
 src/hb-ot-layout.cc              | 39
 ++++++++++++++++++++++++---------------
 2 files changed, 44 insertions(+), 22 deletions(-)

commit 9624de5b496846cd89ee4f7b07d38029aca70ce1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 27 13:44:59 2010 -0400

    Clarify cursive_chain (and change its sign)

 src/hb-ot-layout-gpos-private.hh |  4 ++--
 src/hb-ot-layout.cc              | 13 +++++++------
 2 files changed, 9 insertions(+), 8 deletions(-)

commit d6c9eadb88240c40b3cb9a33f067e575cbc2f729
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 27 12:34:50 2010 -0400

    Remove more pointless LONGTERMTODO items

 src/hb-ot-layout-common-private.hh | 2 --
 1 file changed, 2 deletions(-)

commit e204674fe340a57c48a9fe7e1ed02a9a08f4aca4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 27 12:32:02 2010 -0400

    Rename hb_ot_layout_get_lig_carets() to
    hb_ot_layout_get_ligature_carets()

 src/hb-ot-layout.cc | 14 +++++++-------
 src/hb-ot-layout.h  | 14 +++++++-------
 2 files changed, 14 insertions(+), 14 deletions(-)

commit 3357d145f81cb7b746c910018fe3a0dfab00972c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 27 12:30:46 2010 -0400

    Implement vertical support in get_lig_carets()

 src/hb-ot-layout-gdef-private.hh | 34 ++++++++++++++++++----------------
 src/hb-ot-layout.cc              |  3 ++-
 src/hb-ot-layout.h               |  1 +
 3 files changed, 21 insertions(+), 17 deletions(-)

commit 8eeed7eddc789151cbffe62ed6bfd77612266bf1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 27 12:07:49 2010 -0400

    Remove LONGTERMTODO item that I'll never fix

 src/hb-ot-layout-gsubgpos-private.hh | 6 ------
 1 file changed, 6 deletions(-)

commit 184a5279c64f37bc2ceefbe2191bb64ca87f88d8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 27 12:00:49 2010 -0400

    Remove unused macro

 src/hb-ot-layout-gpos-private.hh | 2 --
 1 file changed, 2 deletions(-)

commit af5d02a269d55331300df1e382241893928d64e0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 27 11:54:26 2010 -0400

    Rewrite Cursive joining to act more like other pair lookups

    Look forward for next character instead of joining to the last
    character.

 src/hb-ot-layout-gpos-private.hh | 71
 ++++++++++++++++++----------------------
 src/hb-ot-layout-private.hh      | 10 ------
 2 files changed, 31 insertions(+), 50 deletions(-)

commit ea22c749c7371cf66ca44f0bfe7030aef1926edd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 27 11:09:48 2010 -0400

    Fix Cursive positioning

    Test case: "مرا" rendered using IranNastaliq.

 src/hb-ot-layout-gpos-private.hh | 124
 +--------------------------------------
 1 file changed, 3 insertions(+), 121 deletions(-)

commit aefdb64689aab19df76590a36c4a04052a8bffdb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 27 10:40:39 2010 -0400

    Fix segfault with Arabic combining marks

 src/hb-ot-shape-complex-arabic.cc | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 12b2d09a87adc1e1aac089cd2e09a68fb7129829
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 27 01:28:28 2010 -0400

    Remove obsolete TODO item

    We don't cache any metrics internally, so the correct way to add more
    glyph metrics items is to add new callbacks for them.  We already have
    separeate callbacks for advance vs extents.

 TODO | 2 --
 1 file changed, 2 deletions(-)

commit 248e3c2ba47889c247959e44166644872aed59ba
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 27 01:23:14 2010 -0400

    Oops, remove extra mask setting that broke complex shaping

 src/hb-ot-shape.cc | 2 --
 1 file changed, 2 deletions(-)

commit 502f4cba3e0bcd625d31f8fd295b8b18e2d02a5a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 27 01:13:56 2010 -0400

    Divide get_metrics into get_advance and get_extents

    Graphite module not updated.
    Bump version to 0.3.

 configure.ac          |  2 +-
 src/hb-font-private.h |  3 +-
 src/hb-font.cc        | 96
 +++++++++++++++++++++++++++++++++++----------------
 src/hb-font.h         | 61 ++++++++++++++++++++------------
 src/hb-ft.c           | 72 +++++++++++++++++++++++---------------
 src/hb-ot-shape.cc    |  7 ++--
 6 files changed, 154 insertions(+), 87 deletions(-)

commit ec6c0e54d322d58cbc835feb58dcec7ede6ab744
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 26 11:28:14 2010 -0400

    Fix blob leak

 src/hb-font.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit bd7378b2ef9793de4e7f57b920f29f48ac9d0c25
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 13 18:33:16 2010 -0400

    Massage mask setting a bit more

    Still finding the exact correct way the masks should be set.

 src/hb-buffer-private.hh | 19 ++++++++++++++++---
 src/hb-buffer.cc         |  9 +++++++++
 src/hb-ot-shape.cc       |  6 ++++--
 3 files changed, 29 insertions(+), 5 deletions(-)

commit 961f9baa7bc3556f1e4e7135859cebe1351f73a4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 13 17:17:00 2010 -0400

    Oops, actually set global mask

 src/hb-buffer.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 39dede9ffffe732f78cbd092ccb3b48d77ddd66d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 13 15:54:06 2010 -0400

    Make sure boolean features always use value=1

    Previously boolean features turned on the entire feature mask.
    This is
    wrong if feature is Alternate and user has provided values bigger
    than one.
    Though, I don't think other engines support such corner cases.

 src/hb-ot-map-private.hh          | 10 ++++++++--
 src/hb-ot-map.cc                  |  3 ++-
 src/hb-ot-shape-complex-arabic.cc |  2 +-
 src/hb-ot-shape.cc                |  2 +-
 4 files changed, 12 insertions(+), 5 deletions(-)

commit 3506b2e78db27e7835bd2c09c053a9807c9cac40
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 13 15:38:52 2010 -0400

    Return early if mask is 0

 src/hb-buffer.cc | 3 +++
 1 file changed, 3 insertions(+)

commit 5c1c8c9c50ddbe66ea595afb245a208b7775b27c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 13 15:36:38 2010 -0400

    Make sure feature values don't leak out of their mask

 src/hb-buffer.cc | 1 +
 1 file changed, 1 insertion(+)

commit 852912fc2db06b6183a2dc87c45ec1b563063572
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 13 15:34:50 2010 -0400

    Fix applying default-value for features

    Previously if a default global feature was overrided by a non-global
    user feature, we were not setting any default mask for the feature,
    essentially disabling the feature by default.  Fix that.

 TODO                     |  2 --
 src/hb-ot-map-private.hh | 10 ++++++----
 src/hb-ot-map.cc         | 13 +++++++------
 3 files changed, 13 insertions(+), 12 deletions(-)

commit 2989be4919242670c94825bded96db20a7b2035b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 13 15:18:29 2010 -0400

    Set user masks after complex masks

 src/hb-ot-shape.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit a7820b7b15a809b4a1a4077147ceed7bea528483
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 13 14:20:48 2010 -0400

    Add TODO item

 TODO | 2 ++
 1 file changed, 2 insertions(+)

commit 04a3023a66203d94b77f2d7a8d6bcdedf067e155
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 13 10:57:27 2010 -0400

    Cleanup TODO

    Looks like a roadmap now.

 TODO | 72
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------
 1 file changed, 59 insertions(+), 13 deletions(-)

commit 3111b8a0d5b38da57c0f6285aec2b92eb690188f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 13 10:41:53 2010 -0400

    Fix stupid bug, oops

 src/hb-font.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 3703f88b74707113e782eb6ca9a77603561760d0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 12 18:34:20 2010 -0400

    Step the version up to 0.2 now that Arabic shaper is in

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 758f68b860b44b5a04eb3dde5cb40b1b04cf634a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 12 17:37:44 2010 -0400

    Fix Arabic shaper

    It's tested now.  It works!

 src/hb-ot-shape-complex-arabic.cc | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit 13403bc67a01e0d4908fb964093fd02ddd11c580
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 12 17:23:54 2010 -0400

    Hookup Arabic shaper!

    Not tested yet.

 src/hb-ot-shape-complex-arabic.cc  |  6 +++---
 src/hb-ot-shape-complex-private.hh | 37
 ++++++++++++++++++++++---------------
 src/hb-ot-shape-private.hh         | 14 +++++++++++++-
 src/hb-ot-shape.cc                 |  3 ++-
 4 files changed, 40 insertions(+), 20 deletions(-)

commit 57ac0ecb7843533b2e6e6d6c8a12b2a44437cc1c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 12 17:07:02 2010 -0400

    Merge clearing masks and setting global masks

 src/hb-buffer-private.hh | 11 ++++++-----
 src/hb-buffer.cc         |  5 +++--
 src/hb-ot-map.cc         |  2 +-
 src/hb-ot-shape.cc       |  7 ++-----
 4 files changed, 12 insertions(+), 13 deletions(-)

commit fc96596b7c1c4e62491e951a3c256fb00dcde550
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 12 17:00:25 2010 -0400

    Form clusters before setting masks

 src/hb-ot-shape.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 1e80782244cdb1dedae9d1e61079d0508e57ca72
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 12 17:00:07 2010 -0400

    Clear masks before setting them up, not after!

 src/hb-ot-shape.cc | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

commit fd3d32d31cb6d74a9994b6850d539fd0b707d941
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 12 16:57:47 2010 -0400

    Add hb_ot_shape_execute()

    Not public yet.

 src/hb-ot-shape-private.hh |  5 ++---
 src/hb-ot-shape.cc         | 19 ++++++++++++++-----
 2 files changed, 16 insertions(+), 8 deletions(-)

commit 49baa1f69efb0e3c62e45bd59dd88459a84bf390
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 12 16:50:36 2010 -0400

    Add hb_ot_complex_shaper_t stuff and start hooking Arabic shaper up

 src/Makefile.am                                    |  3 +-
 src/hb-ot-map-private.hh                           |  2 +-
 src/hb-ot-map.cc                                   |  2 +-
 ...ape-arabic.cc => hb-ot-shape-complex-arabic.cc} |  9 +++
 src/hb-ot-shape-complex-private.hh                 | 88
 ++++++++++++++++++++++
 src/hb-ot-shape-private.hh                         | 12 +--
 src/hb-ot-shape.cc                                 |  8 +-
 7 files changed, 107 insertions(+), 17 deletions(-)

commit 605ed468f380f86d642031f6451447d270cb6de1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 12 16:19:29 2010 -0400

    Add hb_ot_shape_plan_t

    This is the object that a separate plan/execute shaping API will
    use in
    between the two stages.

 src/hb-ot-shape-private.hh | 12 ++++++++++--
 src/hb-ot-shape.cc         | 38 ++++++++++++++++++--------------------
 2 files changed, 28 insertions(+), 22 deletions(-)

commit 895fb5d364e7ae5d9d2e34b9f68b8651804369ef
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 12 16:00:21 2010 -0400

    Refactor, in a different direction

 src/hb-ot-map-private.hh   | 15 ++++++++-------
 src/hb-ot-map.cc           | 23 ++++++++++++-----------
 src/hb-ot-shape-private.hh | 13 +------------
 src/hb-ot-shape.cc         | 33 +++++++++++++++++----------------
 4 files changed, 38 insertions(+), 46 deletions(-)

commit d2ba016ca1ba7489537768b619980d5159b5870c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 12 15:35:45 2010 -0400

    More refactoring

 src/hb-ot-map-private.hh   | 32 +++++---------------------------
 src/hb-ot-map.cc           | 32 +++++++++++++++++++++++++++++---
 src/hb-ot-shape-private.hh | 16 ++++++++++++++--
 src/hb-ot-shape.cc         | 43
 ++++++++++++++++++++++++++++---------------
 src/hb-ot-shape.h          | 10 +++++-----
 5 files changed, 81 insertions(+), 52 deletions(-)

commit 66e487dfbfdccd0c4be8cd11661d412ca27c3425
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 12 13:51:19 2010 -0400

    Update Arabic shaping table to Unicode 6.0.0.

 src/hb-ot-shape-arabic.cc | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit f4792d99eee0e8cd72b7cb01c96a09f16e2a72ce
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 12 12:32:18 2010 -0400

    Fix infinite loop!

    Untested code is indeed buggy code.

    Mozilla bug #603352.

 src/hb-ot-tag.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

commit 993d1e786a32612b796dae8309ce402a4121bec7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 12 11:17:30 2010 -0400

    Fix missing negation in unreachable code!

    Mozilla bug #603346

 src/hb-open-type-private.hh | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

commit 52601275d5e4000dada4f925fb78723eeeee7bd4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 8 20:38:46 2010 -0400

    More separation

 src/hb-ot-shape.cc | 14 +++++---------
 1 file changed, 5 insertions(+), 9 deletions(-)

commit 6b7e6758626268ba1c7c266128e618ec73ae2c0f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 8 20:30:04 2010 -0400

    Minor

 src/hb-ot-shape.cc | 22 +++++++++++-----------
 1 file changed, 11 insertions(+), 11 deletions(-)

commit aa9c450bb2d7c3c9e36ea32e3558250391a0582d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 8 20:27:38 2010 -0400

    Enable 'rtlm' mirroring

 src/hb-ot-map-private.hh |  9 +++++----
 src/hb-ot-shape.cc       | 30 +++++++++++++++---------------
 2 files changed, 20 insertions(+), 19 deletions(-)

commit 36925f695d349a53d52ecc3a58f18240a6977463
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 8 20:20:32 2010 -0400

    Rename hb_mask_allocator_t to hb_ot_map_t

    hb_ot_plan_t may be a better name, donno.

 src/hb-ot-map-private.hh   |  4 ++--
 src/hb-ot-map.cc           |  2 +-
 src/hb-ot-shape-private.hh |  4 ++--
 src/hb-ot-shape.cc         | 49
 +++++++++++++++++++++-------------------------
 4 files changed, 27 insertions(+), 32 deletions(-)

commit f5dd3be46b5c77a2c5b97b82a0b67ac9e851b898
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 8 20:16:23 2010 -0400

    Improve checks

 src/check-c-linkage-decls.sh | 2 +-
 src/check-header-guards.sh   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 5a2b0b3878cd9c62121bb4fd6344e102a9ee1825
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 8 20:14:57 2010 -0400

    Add hb-ot-map.cc

 src/Makefile.am          |   1 +
 src/hb-ot-map-private.hh | 129 +-----------------------------------
 src/hb-ot-map.cc         | 165
 +++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 168 insertions(+), 127 deletions(-)

commit ecc4550ed7bc900a61081edfbcd0ad09cbf29b36
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 8 20:05:29 2010 -0400

    Fix feature overriding

 src/hb-ot-map-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 8f08c3275040870a645ef034a38d30c05c619f21
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 8 19:43:48 2010 -0400

    Minor cleanup

 src/hb-open-type-private.hh |  8 ++----
 src/hb-ot-map-private.hh    | 61
 +++++++++++++--------------------------------
 src/hb-ot-tag.c             | 11 ++++----
 src/hb-private.h            |  4 +++
 4 files changed, 28 insertions(+), 56 deletions(-)

commit a806762a314e83154793d96ee665e6668d6b56de
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 8 19:18:40 2010 -0400

    Add hb-ot-shape-private.hh

 src/Makefile.am            |  1 +
 src/hb-ot-shape-arabic.cc  |  2 +-
 src/hb-ot-shape-private.hh | 60
 ++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 62 insertions(+), 1 deletion(-)

commit 4924affe0f0adf75f2a0e2137a71206b0576d63f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 8 19:18:16 2010 -0400

    Add hb-ot-map-private.hh

 src/Makefile.am          |   1 +
 src/hb-ot-map-private.hh | 307
 +++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-shape.cc       | 274 ++----------------------------------------
 3 files changed, 315 insertions(+), 267 deletions(-)

commit a7c5046d6b676a32298b97403a49235f7f255161
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 8 18:47:47 2010 -0400

    Add private hb_segment_properties_t

 src/hb-buffer-private.hh | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)

commit b897c607d91d569f4eaa681d1f5b3d9f3d2bb093
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 8 18:41:57 2010 -0400

    Flip the OT bit-allocation vs gsub/gpos inside-out

    We now build our entire attack plan before jumping in.

 src/hb-ot-shape.cc | 333
 ++++++++++++++++++++++++++++-------------------------
 1 file changed, 176 insertions(+), 157 deletions(-)

commit e89b7d2a61b7f58e6c7cec00d5ce2246dee1e8a1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 8 12:29:59 2010 -0400

    Logically separate feature collection

 src/hb-ot-shape.cc | 29 ++++++++++++++++++-----------
 1 file changed, 18 insertions(+), 11 deletions(-)

commit 5b88908f12ad1d828dd6075fb8fc0036c2d6af3a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 8 12:23:01 2010 -0400

    Minor

 src/hb-ot-shape.cc | 18 ++++++------------
 1 file changed, 6 insertions(+), 12 deletions(-)

commit 5360ce0c5c33f921b3f9ad3f42529a19df5ad0fe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 7 21:21:11 2010 -0400

    Move some more code around

 src/hb-ot-shape.cc | 27 +++++++++++++--------------
 1 file changed, 13 insertions(+), 14 deletions(-)

commit d9c726078828d50db62e05407a3f38f2e7607533
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 7 21:19:54 2010 -0400

    Minor

 src/hb-ot-shape.cc | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

commit efe0d682e860ffd23a1d17c68c8273f17d51c1c9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 7 21:12:46 2010 -0400

    Simplify compiling lookups

 src/hb-ot-shape.cc | 66
 ++++++++++++++++++++++--------------------------------
 1 file changed, 27 insertions(+), 39 deletions(-)

commit 476c94218b4f5b8e119e82b0e10b641e0c10bf56
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 7 17:47:33 2010 -0400

    Rename

 src/hb-ot-shape.cc | 18 ++++++++++--------
 1 file changed, 10 insertions(+), 8 deletions(-)

commit 34db6f031d7ac009f554386ef990bad44886b9ee
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 7 01:21:19 2010 -0400

    Add XXX note

 src/hb-buffer.cc | 1 +
 1 file changed, 1 insertion(+)

commit 98aa3f65446496dc250d9b01d98cacfdf1157e06
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 6 00:23:36 2010 -0400

    Call hb_ot_shape_setup_lookups_complex()

 src/hb-ot-shape.cc | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

commit f1d07885dc358e79c237e824c94b3320c0a9c17d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 6 00:21:37 2010 -0400

    Rename setup_lookups()

 src/hb-ot-shape.cc | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit affc5abac7bdae51df85856a5478d34d96fda4fe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Oct 6 00:18:16 2010 -0400

    Move table_tag to hb_ot_shape_context_t

 src/hb-ot-shape.cc | 31 +++++++++++++++++--------------
 1 file changed, 17 insertions(+), 14 deletions(-)

commit 967240dd8b96802345ef273e75427066e91ea8fb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 5 23:00:05 2010 -0400

    Add internal hb_ot_shape_context_t

 src/hb-ot-shape-arabic.cc |  26 ++---
 src/hb-ot-shape.cc        | 237
 +++++++++++++++++++---------------------------
 2 files changed, 108 insertions(+), 155 deletions(-)

commit 3eb936f1539475098f39be78654b9c39b86f0799
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 5 18:36:58 2010 -0400

    Add Arabic/Syriac/N'ko shaping logic

    Not hooked up just yet.

 src/Makefile.am                 |   9 +
 src/gen-arabic-joining-table.py |  39 +++
 src/hb-ot-shape-arabic.cc       | 716
 ++++++++++++++++++++++++++++++++++++++++
 3 files changed, 764 insertions(+)

commit 0109816b50064a314389333ff64aaf22cb4b1e56
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Oct 5 18:36:45 2010 -0400

    Update build system

 autogen.sh   | 3 ---
 configure.ac | 1 +
 2 files changed, 1 insertion(+), 3 deletions(-)

commit e81d7afe6e0e9dd26025f3243a11cf0b408a8046
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 4 18:18:48 2010 -0400

    Add hb_face_get_upem()

 src/hb-font.cc | 6 ++++++
 src/hb-font.h  | 3 +++
 2 files changed, 9 insertions(+)

commit d47f79db92fa45d51cd5f7845db8a206f5ec122b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 4 18:13:30 2010 -0400

    Add TODO item

 TODO | 2 ++
 1 file changed, 2 insertions(+)

commit bd361945a89ea31e6c4525aa030e18744ea81fb3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 4 17:22:57 2010 -0400

    Add API comments

 src/hb-font.h | 17 +++++++++++++++--
 1 file changed, 15 insertions(+), 2 deletions(-)

commit 645f6f265b5f6fb85b3c0f59ea874d58c86e3917
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 4 17:01:01 2010 -0400

    Add is_mutable() functions

    Correspond to the make_mutable() ones.

 src/hb-font.cc   | 6 ++++++
 src/hb-font.h    | 2 ++
 src/hb-unicode.c | 6 ++++++
 src/hb-unicode.h | 2 ++
 4 files changed, 16 insertions(+)

commit 19c0eab8cf96d00e168c4b11ec435019c1ed44f7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Oct 4 16:45:21 2010 -0400

    Add getters for all setter APIs

    One in particular is not a straight getter: hb_font_unset_funcs() is
    special because of the specific needs of the lifecycle management of
    the user_data object.

 src/hb-font.cc   | 64
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-font.h    | 40 +++++++++++++++++++++++++++++++++++
 src/hb-unicode.c | 32 ++++++++++++++++++++++++++++
 src/hb-unicode.h | 31 ++++++++++++++++++++++++++-
 4 files changed, 166 insertions(+), 1 deletion(-)

commit f0feb084b0fd1510474b25404d1dcc5686ee0538
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Oct 3 19:09:39 2010 -0400

    Minor

 src/hb-ot-layout-private.hh | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

commit ac0c1663fa6e93a5a94c88fc7497bc11ca17f0a1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 1 19:09:23 2010 -0400

    Avoid div-by-zero, validate upem

 src/hb-ot-head-private.hh   | 7 +++++++
 src/hb-ot-layout-private.hh | 6 +++---
 2 files changed, 10 insertions(+), 3 deletions(-)

commit 7f97d2cd904ea999c099c73c52187c5d65aeec67
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Oct 1 18:58:50 2010 -0400

    Pedantic

 src/hb-open-type-private.hh        | 12 ++++++------
 src/hb-ot-layout-common-private.hh |  2 +-
 src/hb-ot-layout-gdef-private.hh   | 10 +++++-----
 src/hb-ot-layout-gpos-private.hh   |  6 +++---
 4 files changed, 15 insertions(+), 15 deletions(-)

commit 2841436926d6a406bd1f4a35c66a0e3c2fdbeca7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 29 12:20:36 2010 -0400

    Don't zero glyph advances in MarkToBase and similar lookups

    See email thread "Should MarkToBase attachment zero the mark advance?"
    started by Jonathan Kew on 23 August 2010 for details.

 src/hb-ot-layout-gpos-private.hh | 2 --
 1 file changed, 2 deletions(-)

commit 36b3862009c00ad922d68810173a69ac59723365
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 29 12:10:24 2010 -0400

    One fewer cmp() implementation...

 src/hb-ot-layout-common-private.hh | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 4e573715ae5f5ed486ad66382bb44c47a86591ff
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 28 16:23:58 2010 -0400

    Improve cmp function parameter namings and casts

    No semantic change.

 src/hb-open-type-private.hh        | 6 +++---
 src/hb-ot-layout-common-private.hh | 6 +++---
 src/hb-ot-shape.cc                 | 8 ++++----
 3 files changed, 10 insertions(+), 10 deletions(-)

commit dca8aff24652c83c53efbb9d06e5e1c7ef1c2fa5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 28 16:25:23 2010 -0400

    Add comment re DejaVu Sans Mono having 'dflt' script

 src/hb-ot-layout.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 9dc45401c07cb40114067cafbe286c63a9598f3b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Sep 28 16:23:28 2010 -0400

    Fix stupid bug in bsearch cmp function!

 src/hb-ot-layout-common-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6fca4c18c42bdcbc67ee8855499c51c7d6311eb2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 23 10:28:51 2010 -0400

    Add TODO iteam

 TODO | 2 ++
 1 file changed, 2 insertions(+)

commit f2a30bd605a57b99fce4b78e288c2ca62f7191ad
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Sep 23 10:27:08 2010 -0400

    Remove unimplemented method hb_font_get_funcs()

    Got to add a suitable replacement.

 src/hb-font.h | 3 ---
 1 file changed, 3 deletions(-)

commit 7b9a38a112aa2421d97187a9b30619360edeabbe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 22 17:42:59 2010 -0400

    Add test.c using public API

 src/Makefile.am |  6 +++-
 src/test.c      | 94
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 99 insertions(+), 1 deletion(-)

commit 9ea7368fce3fa373d8d2925961ad211f5cf6ce70
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 22 17:38:44 2010 -0400

    Fix hb_ot_layout leak

 src/hb-ot-layout.cc | 2 ++
 1 file changed, 2 insertions(+)

commit 8e577acae2e605547b6a1b9b3a941cb9e3c56a4c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 22 17:37:02 2010 -0400

    Fix blob refcounting with insane SFNT table directories

 src/hb-font.cc | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

commit 75371bea4fbf50b8604d2698b4935c011648a6b6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 22 17:12:10 2010 -0400

    Add TODO item

 TODO | 2 ++
 1 file changed, 2 insertions(+)

commit 5bd1e95236320aed60fb29ca1e93b9595d4aeeec
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Sep 22 16:46:18 2010 -0400

    Speedup Device table delta computation for common cases

 src/hb-ot-layout-common-private.hh | 25 +++++++++++++++++++++----
 1 file changed, 21 insertions(+), 4 deletions(-)

commit ed4acbde9c5e3323cc95037b500d1bf2878ed3ee
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 16 14:36:27 2010 -0400

    Fix NULL dereference

    Reported by Jonathan Kew.  Face table handling needs to be redone
    anyway, but fix this for now.

 src/hb-ot-layout.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 258305c2a5dd47bd2d83f12eaf9caa5b19ae5efb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 13 14:10:02 2010 -0400

    [GPOS] Fix div-by-zero

    Patch by Jonathan Kew.  Mozilla bug #465728.

 src/hb-ot-layout-gpos-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2422c4b96d32037a5cdaef4c427ed1d25db5f647
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 13 14:00:34 2010 -0400

    Add TODO

 src/hb-ot-shape.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 27f0b092a13344e8791c496c77a3c1e5de4f887c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 23 17:35:54 2010 -0400

    Logically separate feature allocation from application

 src/hb-ot-shape.cc | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 6cf63132dc771e1bcd5627720daf4bd2ea0800a5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 23 17:32:26 2010 -0400

    Minor

 src/hb-ot-shape.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 4e4ef24e46f273ad2bdda2f718223e05b37dd50f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 23 17:22:11 2010 -0400

    Towards separating bit allocation from shaping

 src/hb-buffer-private.hh         |  9 ++++++---
 src/hb-buffer.cc                 | 12 ++++++------
 src/hb-ot-layout-gpos-private.hh |  2 +-
 src/hb-ot-layout.cc              |  2 +-
 src/hb-ot-shape.cc               | 41
 ++++++++++++++++------------------------
 5 files changed, 30 insertions(+), 36 deletions(-)

commit da6cff3864d2ef4a061a29e5918359bafcd51f4c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 23 15:40:58 2010 -0400

    Add TODO items

 TODO | 3 +++
 1 file changed, 3 insertions(+)

commit acdba3f90b232fc12fcb200dca2584481b339118
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 23 15:11:18 2010 -0400

    Prefer C linkage

 src/Makefile.am                      |  1 +
 src/check-c-linkage-decls.sh         | 18 ++++++++++++++++++
 src/hb-blob-private.h                |  2 ++
 src/hb-blob.c                        | 18 ++++++++++++------
 src/hb-blob.h                        |  2 ++
 src/hb-buffer-private.hh             |  1 +
 src/hb-buffer.cc                     |  7 ++++++-
 src/hb-buffer.h                      |  1 +
 src/hb-common.c                      |  6 ++++++
 src/hb-common.h                      | 21 +++++++++++++--------
 src/hb-font-private.h                |  1 +
 src/hb-font.cc                       |  4 ++++
 src/hb-font.h                        |  1 +
 src/hb-ft.c                          | 10 ++++++++--
 src/hb-ft.h                          |  2 ++
 src/hb-glib.c                        |  6 ++++++
 src/hb-glib.h                        |  2 ++
 src/hb-graphite.cc                   |  6 ++++++
 src/hb-graphite.h                    |  3 ++-
 src/hb-icu.c                         |  6 ++++++
 src/hb-icu.h                         |  2 ++
 src/hb-language.c                    |  5 +++++
 src/hb-language.h                    |  2 ++
 src/hb-object-private.h              |  2 ++
 src/hb-open-file-private.hh          |  4 ++++
 src/hb-open-type-private.hh          |  5 +++++
 src/hb-ot-head-private.hh            |  5 +++++
 src/hb-ot-layout-common-private.hh   |  6 ++++++
 src/hb-ot-layout-gdef-private.hh     |  4 ++++
 src/hb-ot-layout-gpos-private.hh     |  6 ++++++
 src/hb-ot-layout-gsub-private.hh     |  7 ++++++-
 src/hb-ot-layout-gsubgpos-private.hh | 13 +++++++++++++
 src/hb-ot-layout-private.hh          |  3 ++-
 src/hb-ot-layout.cc                  |  5 +++++
 src/hb-ot-layout.h                   |  1 +
 src/hb-ot-shape.cc                   |  6 ++++++
 src/hb-ot-shape.h                    |  2 ++
 src/hb-ot-tag.c                      |  5 +++++
 src/hb-ot-tag.h                      |  2 ++
 src/hb-ot.h                          |  3 +++
 src/hb-private.h                     |  5 +++++
 src/hb-shape.cc                      |  5 +++++
 src/hb-shape.h                       |  1 +
 src/hb-unicode-private.h             |  1 +
 src/hb-unicode.c                     |  6 ++++++
 src/hb-unicode.h                     |  1 +
 src/hb.h                             |  3 +++
 src/main.cc                          |  6 ++++++
 48 files changed, 214 insertions(+), 20 deletions(-)

commit cc6d52279d10a2edcf0d86c3a18a79ff4f6d3858
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 23 15:00:13 2010 -0400

    De-C++ where possible

    Helps with avoiding many "extern C" declarations in source files.

 src/Makefile.am                               | 4 ++--
 src/check-header-guards.sh                    | 2 +-
 src/{hb-font-private.hh => hb-font-private.h} | 6 +++---
 src/hb-font.cc                                | 2 +-
 src/{hb-ft.cc => hb-ft.c}                     | 2 +-
 src/hb-graphite.cc                            | 2 +-
 src/hb-ot-layout-gdef-private.hh              | 2 +-
 src/hb-ot-layout-private.hh                   | 2 +-
 8 files changed, 11 insertions(+), 11 deletions(-)

commit 0dd200d28f51bf4062d8a377432c8977c80cb210
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 23 14:56:29 2010 -0400

    Header dep cleanup

 src/hb-font-private.hh      | 2 --
 src/hb-ot-layout-private.hh | 1 +
 2 files changed, 1 insertion(+), 2 deletions(-)

commit fb0d25246267851a1fc200ead28c56359a40047e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 23 14:54:22 2010 -0400

    dos2unix

 src/hb-ot-head-private.hh | 256
 +++++++++++++++++++++++-----------------------
 1 file changed, 128 insertions(+), 128 deletions(-)

commit 81408cd51ce575891e79e6483be187130f864c28
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 23 14:46:57 2010 -0400

    Don't use "operator ="

    Some compilers don't like operator = defined on members of union
    members
    either.  Reported by Ginn Chen for Sun Studio compilers.

 src/hb-open-type-private.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 39fe34d4c356516f0a92f42b13a168572829d24e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 22 18:12:38 2010 -0400

    Add TODO option

 TODO | 2 ++
 1 file changed, 2 insertions(+)

commit 243a96f41482edb83e4798358064bd3329dd278c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 21 17:21:12 2010 -0400

    Add arm build fix to TODO

 TODO | 1 +
 1 file changed, 1 insertion(+)

commit c407f05f99f9225916d3d0ae06eac8fbc8b55b97
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 21 17:20:44 2010 -0400

    Remove fixed TODO item

 TODO | 1 -
 1 file changed, 1 deletion(-)

commit 4f801bd6586defdbf70162e0c7f8968d2b476df2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 21 16:37:01 2010 -0400

    Mozilla bug 580233 - check for zero-length record in hb sanitizer.

    Patch / report by Jonathan Kew.

 src/hb-open-type-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 17e9ff938b638fd1cb80c990ba13bd47562116b8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 15 11:21:34 2010 -0700

    Fix 64bit issues with debug prints

 src/hb-blob.c               | 10 +++++-----
 src/hb-open-type-private.hh |  5 +++--
 2 files changed, 8 insertions(+), 7 deletions(-)

commit fd56ae49637b978ea3b36fab5b48f1a3cc99e90e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 8 00:53:40 2010 -0400

    Don't bother sorting, it's a safe font error if the array is not
    sorted

 src/hb-open-type-private.hh        | 29 -----------------------------
 src/hb-ot-layout-common-private.hh |  7 -------
 2 files changed, 36 deletions(-)

commit cc8a4abea68f2dba26feb5785f9e518e6853c744
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 8 00:40:04 2010 -0400

    Use bsearch where applicable

 src/hb-open-type-private.hh        |  49 +++++++++++++
 src/hb-ot-layout-common-private.hh | 145
 +++++++++++++------------------------
 2 files changed, 100 insertions(+), 94 deletions(-)

commit 2f418f5709b2b8b3ef2f6056b9d8c13b66f0b74a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 7 22:07:40 2010 -0400

    Remove useless TODO

 src/hb-open-file-private.hh | 1 -
 1 file changed, 1 deletion(-)

commit da8edbb62204dc39f93d500ef85929e234e0bd19
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 9 07:15:39 2010 -0400

    Fix header

 src/hb-buffer-private.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit d05d13df02fbe76814694fe49cc01bbb41c3d0e7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 9 07:15:03 2010 -0400

    Add a test for header preprocessor guards

 src/Makefile.am            |  4 +++-
 src/check-header-guards.sh | 20 ++++++++++++++++++++
 src/check-libstdc++.sh     |  1 -
 3 files changed, 23 insertions(+), 2 deletions(-)

commit 0f0cd9d361f1bb614aa3fd4616160d027062370e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 9 06:32:56 2010 -0400

    Fix header tags

 src/hb-font-private.hh      | 6 +++---
 src/hb-object-private.h     | 6 +++---
 src/hb-open-type-private.hh | 4 ++--
 src/hb-ot-layout-private.hh | 6 +++---
 src/hb-ot-shape.h           | 2 +-
 5 files changed, 12 insertions(+), 12 deletions(-)

commit f2a1b411b1d48c3dfac0df8e78c848d9aa3bb047
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jun 3 11:37:51 2010 -0400

    Followup fix for variation-selectors

    Patch from Jonathan Kew

 src/hb-ot-shape.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit a224b4d502d026fa642ee4098bf7bc0b4ba7ce27
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 2 22:24:54 2010 -0400

    Fix skipping variation-selectors

 src/hb-ot-shape.cc | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)

commit 81a77b115db401f69e869690f24b9047370bdfde
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jun 1 23:03:54 2010 -0400

    Make feature sorting stable

 src/hb-ot-shape.cc | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit fdc322a82047c4bda9fa3dab4338a0eac1c1bde7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 28 20:55:52 2010 -0400

    Minor

 src/hb-ot-shape.cc | 38 +++++++++++++++++++++-----------------
 1 file changed, 21 insertions(+), 17 deletions(-)

commit f062ec6bb24b1c21d37b12adc7e944a5fe53526a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 28 20:54:43 2010 -0400

    Further simplify mask allocator

 src/hb-ot-shape.cc | 23 +++++++----------------
 1 file changed, 7 insertions(+), 16 deletions(-)

commit 8af45fda475d075c5a285002463a00a0423d3926
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 28 20:41:20 2010 -0400

    Fix global feature handling

 src/hb-ot-shape.cc | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit e04685ee7be01695ec437fab50f919f1b7423c57
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 28 20:37:06 2010 -0400

    Simplify mask allocation

 src/hb-ot-shape.cc | 48 ++++++++++++++++++++----------------------------
 1 file changed, 20 insertions(+), 28 deletions(-)

commit 0e235d0fc9bdeeaffa7215c21abc5d40767a10c7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 28 20:21:47 2010 -0400

    Towards a mask allocator

 src/hb-ot-shape.cc | 291
 ++++++++++++++++++++++++++++++++++-------------------
 1 file changed, 186 insertions(+), 105 deletions(-)

commit 81c5e8724b740c6e42ed3a45e0574c7c5f3ad8e6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 28 18:31:16 2010 -0400

    Allow disabling default features

    Patch from Jonathan Kew

 src/hb-buffer-private.hh |  18 +++--
 src/hb-buffer.cc         |  15 ++--
 src/hb-ot-shape.cc       | 196
 ++++++++++++++++++++++++++++++++---------------
 3 files changed, 153 insertions(+), 76 deletions(-)

commit 2163afbf35044f59dbf449254e65b8c9feb6cdeb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 27 14:04:15 2010 -0400

    Add note about UTF-8 decoder

 src/hb-buffer.cc | 2 ++
 1 file changed, 2 insertions(+)

commit 226faa58f4e23eb655bebb0eff7206a3024c8d55
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 27 11:42:34 2010 -0400

    Fix loop

 src/hb-ot-tag.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 56bef5680cc76a67d16ca14ac69f0dda1a691968
Author: Martin Hosken <martin_hosken@sil.org>
Date:   Thu May 27 10:09:04 2010 +0100

    Fixes to Python and Graphite from Martin

 contrib/python/README             |  10 ++++
 contrib/python/lib/fontconfig.pyx |  47 +++++++++++++++++
 contrib/python/lib/harfbuzz.pyx   | 104
 ++------------------------------------
 contrib/python/scripts/hbtestfont | 103
 +++++++++++++++++++++++++++++++++----
 contrib/python/setup.py           |   3 +-
 src/hb-graphite.cc                |   8 +--
 6 files changed, 159 insertions(+), 116 deletions(-)

commit b485da0b719cb03cc33da57802c5151301664c2f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 27 11:39:19 2010 -0400

    Disable Graphite as it crashes all over the place...

 src/hb-shape.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 93ac709b1f6b015371c29bf244a9ece62baedff0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 26 16:22:00 2010 -0400

    Cypriot is RTL

 src/hb-unicode.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 15c7379c16dbb9ee8ed1c0333ca7492532ce8423
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 26 10:48:10 2010 -0400

    Revert "Merge remote branch 'martin/master'"

    This reverts commit 80af2812fb3b231ddcb4608ec13c6038a681c818,
    reversing
    changes made to c442672ec2fb83ed41f3994b3aa4f92a097664ab.

 contrib/python/README             |  10 ----
 contrib/python/lib/fontconfig.pyx |  47 -----------------
 contrib/python/lib/harfbuzz.pyx   | 104
 ++++++++++++++++++++++++++++++++++++--
 contrib/python/scripts/hbtestfont |  98
 ++++-------------------------------
 contrib/python/setup.py           |   3 +-
 src/Makefile.am                   |   2 +-
 src/hb-graphite.cc                |   8 +--
 src/hb-ot-shape.cc                |   2 +-
 src/hb-ot-tag.c                   |   1 -
 src/hb-ot.h                       |   2 +-
 src/hb-shape.cc                   |   2 +-
 11 files changed, 119 insertions(+), 160 deletions(-)

commit 80af2812fb3b231ddcb4608ec13c6038a681c818
Merge: c442672e 3109a86a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 24 18:14:24 2010 +0100

    Merge remote branch 'martin/master'

commit c442672ec2fb83ed41f3994b3aa4f92a097664ab
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 24 18:02:32 2010 +0100

    Fix struct initializers

 src/hb-ft.cc  | 12 ++++++------
 src/hb-glib.c | 14 +++++++-------
 src/hb-icu.c  | 14 +++++++-------
 3 files changed, 20 insertions(+), 20 deletions(-)

commit f5ac9de259773a5f86809892e58166a485d70a3d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 24 18:01:09 2010 +0100

    Minor

 src/hb-object-private.h | 24 +++++++++++++-----------
 1 file changed, 13 insertions(+), 11 deletions(-)

commit f97bf4f81257c97a46dff51be31b2ec214d6c270
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 24 17:50:19 2010 +0100

    Make sure we initialize all callbacks upon creation

    Also fixes issue with unicode callbacks never being set really.

 src/hb-font.cc   | 18 +++++++-----------
 src/hb-unicode.c |  9 ++-------
 2 files changed, 9 insertions(+), 18 deletions(-)

commit bf36a1074ab23abeab0a7a6c47db26770dc1ab0a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 24 17:46:21 2010 +0100

    Move all callback functions in a vtable structs

 src/hb-font-private.hh   | 10 ++++++----
 src/hb-font.cc           | 28 +++++++++++++++-------------
 src/hb-ot-shape.cc       |  4 ++--
 src/hb-unicode-private.h | 12 +++++++-----
 src/hb-unicode.c         | 32 +++++++++++++++++---------------
 5 files changed, 47 insertions(+), 39 deletions(-)

commit 3109a86add936ae4cc77541fc026c4fe2db4e328
Author: Martin Hosken <martin_hosken@sil.org>
Date:   Mon May 24 13:25:37 2010 +0100

    hb-graphite now no longer has -ve advances within clusters. Fix
    infinite loop in tag_to_script(). python fixed to use tag_to_script
    and allow hbtestfont to be passed font files, where fontconfig knows
    about them.

 contrib/python/lib/harfbuzz.pyx   | 4 ++--
 contrib/python/scripts/hbtestfont | 6 +++++-
 src/hb-graphite.cc                | 4 ++--
 src/hb-ot-tag.c                   | 1 +
 4 files changed, 10 insertions(+), 5 deletions(-)

commit e5bed0a37fe1b0576d08435179e455cb28eadcdb
Author: Martin Hosken <martin_hosken@sil.org>
Date:   Sat May 22 20:19:00 2010 +0100

    Tidy up hbtestfont and add README

 contrib/python/README             |  10 +++
 contrib/python/scripts/hbtestfont | 134
 +++++++++++++++++++-------------------
 2 files changed, 77 insertions(+), 67 deletions(-)

commit 70ae332fe66510500d303b6fcc79537833b42f05
Author: Martin Hosken <martin_hosken@sil.org>
Date:   Sat May 22 19:58:00 2010 +0100

    Add fontconfig to hbtestfont

 contrib/python/lib/fontconfig.pyx | 47 ++++++++++++++++++++++++++++
 contrib/python/scripts/hbtestfont | 64
 ++++++++++++++++++++++++---------------
 contrib/python/setup.py           |  3 +-
 3 files changed, 88 insertions(+), 26 deletions(-)

commit 72631c9d06b131d82080f212908e7d0b0266b841
Merge: 1432ab15 1094a294
Author: Martin Hosken <martin_hosken@sil.org>
Date:   Sat May 22 09:38:02 2010 +0100

    Merge branch 'master' of git://git.freedesktop.org/~behdad/harfbuzz-ng

commit 1432ab15c163eb0b5be3de66a4cb3df15ad73500
Author: Martin Hosken <martin_hosken@sil.org>
Date:   Sat May 22 00:56:40 2010 +0100

    Add graphical output to hbtestfont

 contrib/python/lib/harfbuzz.pyx   | 100
 +-------------------------------------
 contrib/python/scripts/hbtestfont |  62 ++++++++++++++++++++++-
 src/Makefile.am                   |   2 +-
 src/hb-ot-shape.cc                |   2 +-
 src/hb-ot.h                       |   2 +-
 src/hb-shape.cc                   |   2 +-
 6 files changed, 67 insertions(+), 103 deletions(-)

commit bbc7a99d01298f9be1ebaaceacbc9bc961e247e5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 21 18:24:34 2010 +0100

    Move mirroring around a bit

 src/hb-ot-shape.cc | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit bd0987386b3a4dddf208ccf1a70ebfff6242ba73
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 21 18:06:35 2010 +0100

    Add a few more standard features

 src/hb-ot-shape.cc | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

commit 75f3469ca6d626b08eb411984a2ba7fd48ca5b5f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 21 17:59:04 2010 +0100

    Add note

 src/hb-ot-shape.cc | 1 +
 1 file changed, 1 insertion(+)

commit 1094a294f6a44c47fc75867983f2b135a6442bab
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 21 17:58:20 2010 +0100

    Add rtlm

 src/hb-ot-shape.cc | 26 +++++++++++++++++++++-----
 1 file changed, 21 insertions(+), 5 deletions(-)

commit 074ea787493a37ae8f68d17be7820f13fff57520
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 21 17:53:10 2010 +0100

    Add ltra, ltrm, and rtla features

 src/hb-ot-shape.cc | 60
 +++++++++++++++++++++++++++++++++++++++++++-----------
 1 file changed, 48 insertions(+), 12 deletions(-)

commit 1ce7b87c4d8d1ab3ec1d5198351d71b7199f7c64
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 21 17:31:45 2010 +0100

    Cleanup bitmask allocation

 src/hb-buffer-private.hh | 16 +++++++++++++
 src/hb-buffer.cc         | 36 +++++++++++++++++++++++++++++
 src/hb-ot-shape.cc       | 60
 +++++++++++++++++++++---------------------------
 3 files changed, 78 insertions(+), 34 deletions(-)

commit dd22a8f7bfd424a69286e90f79d2a23af6e89ec1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 21 16:43:17 2010 +0100

    Add note

 src/hb-ot-layout-gsub-private.hh | 1 +
 1 file changed, 1 insertion(+)

commit cbd1d6a63a5d696b7d6a5aba9ee7305ea228416a
Author: Martin Hosken <martin_hosken@sil.org>
Date:   Fri May 21 15:16:43 2010 +0100

    Rename Grxxx to HbGrxxx

 src/hb-graphite.cc | 26 +++++++++++++-------------
 1 file changed, 13 insertions(+), 13 deletions(-)

commit 0375bdd2027767ee7bebef1ed289b33dc64f430e
Author: Martin Hosken <martin_hosken@sil.org>
Date:   Fri May 21 15:01:37 2010 +0100

    Rename classes from Grxxx to HbGrxxx

 src/hb-graphite.cc | 22 +++++++++++-----------
 1 file changed, 11 insertions(+), 11 deletions(-)

commit a5a72e004bb7123445c2c3a94352d358fc80d904
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 21 15:12:52 2010 +0100

    Add hb-ot-shape.h, oops.

 src/hb-ot-shape.h | 44 ++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 44 insertions(+)

commit aa62a402a72bdecad2a955dbfaf6e24cd2c00e55
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 21 14:42:11 2010 +0100

    Fix Makefile to install hb-ot-shape.h

 src/Makefile.am | 2 +-
 src/hb-ot.h     | 1 +
 2 files changed, 2 insertions(+), 1 deletion(-)

commit 9722b8f005a10fd16e841df4da3ccd80be66e296
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 21 14:37:47 2010 +0100

    Simple renames

 src/hb-ot-shape.cc | 36 ++++++++++++++++++------------------
 1 file changed, 18 insertions(+), 18 deletions(-)

commit 02f28550d785671cf92fd4239c5f913f7e71585f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 21 14:37:28 2010 +0100

    Graphite also forces us to link to libstdc++ currently

 src/Makefile.am | 3 +++
 1 file changed, 3 insertions(+)

commit ca663bb23c16f6a1f04efa6e10dad0e3e7c260a3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 21 14:34:23 2010 +0100

    Move main shaper code into hb_ot_shape()

 src/hb-ot-shape-private.hh |  53 -----------
 src/hb-ot-shape.cc         | 225
 ++++++++++++++++++++++++++++++++++++++++++---
 src/hb-shape.cc            | 209
 +----------------------------------------
 3 files changed, 214 insertions(+), 273 deletions(-)

commit 7acd232d36c2b2ed03823e6aa6bb2b814bf673b3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 21 14:20:48 2010 +0100

    Fix test failing

 src/hb-graphite.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit dd47924d88d86b83e7f3ab040de6e7136ac0ca09
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 21 14:18:08 2010 +0100

    Fix warnings

 src/hb-graphite.cc | 14 +++++---------
 1 file changed, 5 insertions(+), 9 deletions(-)

commit 305ba8671553cd955c20a54db622666c0bb02532
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 21 14:02:20 2010 +0100

    Import Graphite shaping backend by Martin Hosken

 configure.ac       |   6 ++
 src/Makefile.am    |  11 ++
 src/hb-graphite.cc | 308
 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-graphite.h  |  46 ++++++++
 src/hb-shape.cc    |  15 +++
 5 files changed, 386 insertions(+)

commit 3ba6818ba9be950e46902f0239f2451ec0e65d44
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 21 13:51:29 2010 +0100

    Update the Python module

 contrib/python/lib/harfbuzz.pyx | 40
 +++++++++++++++++++++-------------------
 1 file changed, 21 insertions(+), 19 deletions(-)

commit 83f34677bcbc6bb194940407b0fcb23575650e3d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 21 13:43:49 2010 +0100

    Add hb_tag_from_string()

 src/Makefile.am |  1 +
 src/hb-common.c | 41 +++++++++++++++++++++++++++++++++++++++++
 src/hb-common.h |  3 +++
 3 files changed, 45 insertions(+)

commit 4a9a5c0b06e8aa5d15327242609a7c766d3e0e94
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 21 13:33:46 2010 +0100

    Don't allocate bits for features not available

 src/hb-ot-shape.cc | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

commit e53d77142ac4ecbe38ab3235491fa93cb7ff16ab
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 21 13:32:38 2010 +0100

    Speed up feature mask setting

    Patch from Jonathan Kew.

 src/hb-ot-shape.cc | 31 +++++++++++++++++++++++++------
 1 file changed, 25 insertions(+), 6 deletions(-)

commit 4fa67f34ecc65056ce60a572213fbdae66e0423b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 21 13:29:12 2010 +0100

    Add Unicode 5.2 scripts

 src/hb-icu.c     | 29 ++++++++++++++++++++++++++++-
 src/hb-ot-tag.c  | 21 +++++++++++++++++++--
 src/hb-unicode.c | 19 ++++++++++++++++++-
 src/hb-unicode.h | 19 ++++++++++++++++++-
 4 files changed, 83 insertions(+), 5 deletions(-)

commit ee1b322100a6bd575b999904592abbd9fed5587f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 21 12:55:57 2010 +0100

    Fix feature mask setting

 src/hb-ot-shape.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit b490fa343322f1b5abaf880abc073287c1f34132
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 21 11:15:07 2010 +0100

    Add hb_ot_tag_to_script()

 src/hb-ot-tag.c | 14 ++++++++++++++
 src/hb-ot-tag.h |  3 +++
 2 files changed, 17 insertions(+)

commit 50355309047765558ef8f5d60aefed42a7f954cc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 21 10:33:23 2010 +0100

    Add Python wrapper from Martin Hosken

 contrib/python/lib/harfbuzz.pyx   | 306
 ++++++++++++++++++++++++++++++++++++++
 contrib/python/runpy              |   2 +
 contrib/python/scripts/hbtestfont |  35 +++++
 contrib/python/setup.py           |  24 +++
 4 files changed, 367 insertions(+)

commit 280af1bddb958ff97cf7ce12fe7ec2b6352e61d0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 20 18:33:35 2010 +0100

    Let hb_face_get_table() return NULL if table not found

 src/hb-font.cc              | 2 +-
 src/hb-font.h               | 1 +
 src/hb-open-type-private.hh | 3 +++
 3 files changed, 5 insertions(+), 1 deletion(-)

commit 1cdbfd944eecb58587461f57f037e47a44f39990
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 20 17:47:28 2010 +0100

    Fix alternate, again

 src/hb-ot-layout-gsub-private.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit fdca3d51603bd6bef6a4b0ee4a560f7dcd2f1d37
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 20 17:46:20 2010 +0100

    Fix alternate off-by-one

 src/hb-ot-layout-gsub-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b634beb39e0a4fef7167a8af646f6b2d8cafe69b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 20 17:44:52 2010 +0100

    Fix delta scale, again...

 src/hb-ot-layout-common-private.hh |  8 ++++++++
 src/hb-ot-layout-gdef-private.hh   |  3 +--
 src/hb-ot-layout-gpos-private.hh   | 12 ++++++------
 src/hb-ot-layout-private.hh        |  2 +-
 4 files changed, 16 insertions(+), 9 deletions(-)

commit 40335d4533ac2b08121c9dc6003f3ebc5b44a67b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 20 17:35:14 2010 +0100

    Remove unused operator

 src/hb-ot-layout-common-private.hh | 2 --
 1 file changed, 2 deletions(-)

commit f7acd8df5146155b51d6f50aeb04f54f3030c1c3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 20 17:26:35 2010 +0100

    Do alternate glyph selection!

    Kinda hand-wavy right now.  Not tested.

 src/hb-ot-layout-gpos-private.hh     | 12 +++++++-----
 src/hb-ot-layout-gsub-private.hh     | 20 +++++++++-----------
 src/hb-ot-layout-gsubgpos-private.hh |  1 +
 src/hb-private.h                     | 19 ++++++++++++++++++-
 4 files changed, 35 insertions(+), 17 deletions(-)

commit 750a2294553d252e28875b605fe61fd9d6696e0f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 20 16:23:27 2010 +0100

    get_table() is allowed to return NULL.  Use that to simplify code

 src/hb-font.cc | 2 +-
 src/hb-ft.cc   | 6 +++---
 2 files changed, 4 insertions(+), 4 deletions(-)

commit 99d9ef785f108df76f80a307eaa2784685ea86ba
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 20 15:47:49 2010 +0100

    Write hb_face_create_for_data() in terms of
    hb_face_create_for_tables()

    Fixes lack of head_table initialization in create_for_tables() also.

 src/hb-font.cc | 35 ++++++++++++-----------------------
 1 file changed, 12 insertions(+), 23 deletions(-)

commit 6774463883978b00b4d8c719ed75edfc4537c77f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 20 15:40:12 2010 +0100

    Apply user features to ranges!

 src/hb-ot-shape.cc | 23 ++++++++++++++++++++++-
 1 file changed, 22 insertions(+), 1 deletion(-)

commit 9b6023338530a2dbb8214eb4391ef3e8372f3892
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 20 15:31:12 2010 +0100

    Add _hb_bit_storage()

 src/hb-private.h | 35 ++++++++++++++++++++++-------------
 1 file changed, 22 insertions(+), 13 deletions(-)

commit 6b1b957f6d2955cbe4fa97e2659e033b3eaaf4d2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 20 15:14:44 2010 +0100

    Add lookup_map

 src/hb-ot-shape.cc | 48 +++++++++++++++++++++++++++++++++---------------
 1 file changed, 33 insertions(+), 15 deletions(-)

commit 60010a0c4d8efae5c61a0c9cf10cfe2c1860f41e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 20 14:05:02 2010 +0100

    Update always-apply mask from 0xFFFF to 1

    We plan to use the first bit to be always on.

 src/hb-ot-shape.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 009aad567863c05ee2ec4a3ee76fe0ee79c767bb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 20 14:00:57 2010 +0100

    Invert the mask logic

    Before, the mask in the buffer was inverted.  That is, a 0 bit meant
    feature should be applied and 1 meant not applied, whereas in the
    lookups, the logic was positive.

    Now both are in sync.  When calling hb_buffer_add_glyph() manually,
    the mask should be 1 instead of 0.

 src/hb-buffer.cc                 | 2 +-
 src/hb-ot-layout-gpos-private.hh | 2 +-
 src/hb-ot-layout-gsub-private.hh | 4 ++--
 3 files changed, 4 insertions(+), 4 deletions(-)

commit 7f411dbfd9f8d5360c948531ff9f6c3998d1d897
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 20 13:40:18 2010 +0100

    Apply user features

    No ranges yet

 src/hb-ot-shape.cc | 8 ++++++++
 1 file changed, 8 insertions(+)

commit 0db299ccad346d9ea5573ea8408b78d9997bd379
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 20 13:30:09 2010 +0100

    Change hb_feature_t to keep tag/int instead of string

 src/hb-shape.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 0a4399ca228d244e646abdb3487da0f13b228889
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 19 15:45:06 2010 -0400

    Fix scale issues

    hb_font_set_scale() now sets the value to be used to represent a unit
    pixel.  For example, if rendering a 10px font with a 26.6
    representation,
    you would set scale to (10 << 6).  For 10px in 16.16 you would set
    it to
    (10 << 16).  This space should be the same space that the
    get_glyph_metrics
    and get_kerning callbacks work in.

 src/hb-common.h                  |  1 -
 src/hb-font-private.hh           |  8 +++-----
 src/hb-font.cc                   | 12 ++++++------
 src/hb-font.h                    | 12 +++---------
 src/hb-ft.cc                     |  4 ++--
 src/hb-ot-layout-gdef-private.hh |  6 +++---
 src/hb-ot-layout-gpos-private.hh | 37
 +++++++++++++++++--------------------
 src/hb-ot-layout-gsub-private.hh |  2 +-
 src/hb-ot-layout-private.hh      | 20 +++++++++++---------
 src/hb-ot-layout.cc              | 31 +++++++++++++++----------------
 src/hb-private.h                 |  4 ----
 11 files changed, 61 insertions(+), 76 deletions(-)

commit cf5585cfa6cac6fdf627a99941299e76af5ae0f7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 19 12:03:35 2010 -0400

    Add 'head' table

 src/Makefile.am             |   1 +
 src/hb-font-private.hh      |   5 ++
 src/hb-font.cc              |   9 ++++
 src/hb-open-type-private.hh |   2 +-
 src/hb-ot-head-private.hh   | 128
 ++++++++++++++++++++++++++++++++++++++++++++
 5 files changed, 144 insertions(+), 1 deletion(-)

commit e29caf3f943b2b6f4997f469f7274252c82f465e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 19 11:47:17 2010 -0400

    Add LONGDATETIME

 src/hb-open-type-private.hh | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

commit f415755fdf011d3fa3b9aad04c38f2255dd7acf8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 17 15:14:14 2010 -0400

    Minor

 src/hb-ot-layout.cc | 52
 +++++++++++++++++++++++++++-------------------------
 1 file changed, 27 insertions(+), 25 deletions(-)

commit 73af7756dc6d3961f176854246e5722baff101fb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 14 23:38:08 2010 -0400

    Indent

 src/hb-ot-layout-gsub-private.hh | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit 3567b87cce541dfb0af7caf024ec67c9d3c09214
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 14 23:28:44 2010 -0400

    Add an inline version of hb_buffer_ensure()

 src/hb-buffer.cc | 117
 ++++++++++++++++++++++++++++++-------------------------
 1 file changed, 63 insertions(+), 54 deletions(-)

commit a6a79df5fe2ed2cd307e7a991346faee164e70d9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 14 23:20:16 2010 -0400

    Handle malloc failture in the buffer

 src/hb-buffer-private.hh |  5 ++--
 src/hb-buffer.cc         | 71
 +++++++++++++++++++++++++++++-------------------
 src/hb-buffer.h          |  2 +-
 3 files changed, 47 insertions(+), 31 deletions(-)

commit ca54a12658510f9aa0b2db82f20a8fac230d6bb6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 14 22:25:42 2010 -0400

    Minor

 src/hb-shape.cc | 60
 +++++++++++++++++++++++++--------------------------------
 1 file changed, 26 insertions(+), 34 deletions(-)

commit 910a33fe8457a8e13f7eb77fc92fa59c31f5e8fd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 14 22:13:38 2010 -0400

    Update buffer docs

 src/hb-buffer-private.hh | 13 +++++++------
 src/hb-buffer.cc         | 16 ++++++++--------
 2 files changed, 15 insertions(+), 14 deletions(-)

commit 36b73c80df91e96492357c6da945e081e9046a93
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 14 22:10:39 2010 -0400

    Shortening buffer accessors: rename buffer->in_pos to buffer->i

 src/hb-buffer-private.hh             |  2 +-
 src/hb-buffer.cc                     | 52 ++++++++++----------
 src/hb-ot-layout-gpos-private.hh     | 94
 ++++++++++++++++++------------------
 src/hb-ot-layout-gsub-private.hh     | 48 +++++++++---------
 src/hb-ot-layout-gsubgpos-private.hh | 46 +++++++++---------
 src/hb-shape.cc                      | 40 +++++++--------
 6 files changed, 141 insertions(+), 141 deletions(-)

commit 29427c5c51ac70aca53ed523fa5ddb3de4355fb0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 14 22:08:22 2010 -0400

    Shortening buffer accessors: rename buffer->out_length to
    buffer->out_len

 src/hb-buffer-private.hh             |  2 +-
 src/hb-buffer.cc                     | 52
 ++++++++++++++++++------------------
 src/hb-ot-layout-gsub-private.hh     |  2 +-
 src/hb-ot-layout-gsubgpos-private.hh |  6 ++---
 4 files changed, 31 insertions(+), 31 deletions(-)

commit 6960350be97f24e97140391025b56369c393a3df
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 14 22:07:46 2010 -0400

    Shortening buffer accessors: rename buffer->in_length to buffer->len

 src/hb-buffer-private.hh             |  2 +-
 src/hb-buffer.cc                     | 26 +++++++++++++-------------
 src/hb-ot-layout-gpos-private.hh     |  8 ++++----
 src/hb-ot-layout-gsub-private.hh     |  8 ++++----
 src/hb-ot-layout-gsubgpos-private.hh |  8 ++++----
 src/hb-shape.cc                      | 12 ++++++------
 6 files changed, 32 insertions(+), 32 deletions(-)

commit 1b621823f3e31b48c80cc8b0691dfa873ba086cd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 14 22:05:53 2010 -0400

    Shortening buffer accessors: rename buffer->positions to buffer->pos

 src/hb-buffer-private.hh         |  4 ++--
 src/hb-buffer.cc                 | 32 ++++++++++++++++----------------
 src/hb-ot-layout-gpos-private.hh | 26 +++++++++++++-------------
 src/hb-shape.cc                  | 10 +++++-----
 4 files changed, 36 insertions(+), 36 deletions(-)

commit 9d5e26df0877aa5b187764ba09bd7bf221e92968
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 14 22:03:11 2010 -0400

    Shortening buffer accessors: rename buffer->out_string to
    buffer->out_info

 src/hb-buffer-private.hh             |  2 +-
 src/hb-buffer.cc                     | 56
 ++++++++++++++++++------------------
 src/hb-ot-layout-gsubgpos-private.hh |  4 +--
 3 files changed, 31 insertions(+), 31 deletions(-)

commit 7e7007a1c9bf2c07a8369752126ece8fa6164248
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 14 22:02:37 2010 -0400

    Shortening buffer accessors: rename buffer->in_string to buffer->info

 src/hb-buffer-private.hh             |  2 +-
 src/hb-buffer.cc                     | 82
 ++++++++++++++++++------------------
 src/hb-ot-layout-gpos-private.hh     | 58 ++++++++++++-------------
 src/hb-ot-layout-gsub-private.hh     | 30 ++++++-------
 src/hb-ot-layout-gsubgpos-private.hh | 26 ++++++------
 src/hb-shape.cc                      | 18 ++++----
 6 files changed, 108 insertions(+), 108 deletions(-)

commit 8e6b6bb2932946ebc7b01c3abf575b654c741e20
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 14 21:58:22 2010 -0400

    Merge buffer->out_pos and buffer->out_length

 src/hb-buffer-private.hh             |  1 -
 src/hb-buffer.cc                     | 48
 +++++++++++++++---------------------
 src/hb-ot-layout-gsub-private.hh     |  2 +-
 src/hb-ot-layout-gsubgpos-private.hh |  6 ++---
 4 files changed, 24 insertions(+), 33 deletions(-)

commit 22f668eb9ad5f62d9fcd2e0c826ea78977687e5c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 14 21:41:04 2010 -0400

    Remove the unused BUFFER macro

 src/hb-buffer-private.hh             | 6 ------
 src/hb-ot-layout-gpos-private.hh     | 6 ------
 src/hb-ot-layout-gsub-private.hh     | 6 ------
 src/hb-ot-layout-gsubgpos-private.hh | 5 -----
 4 files changed, 23 deletions(-)

commit 7e53ebe478597778c25c197ff9f0cb379f1d0043
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 14 21:38:13 2010 -0400

    Remove the IN_CURGLYPH() macro

 src/hb-buffer-private.hh             |  3 ---
 src/hb-ot-layout-gpos-private.hh     | 24 ++++++++++++------------
 src/hb-ot-layout-gsub-private.hh     | 16 ++++++++--------
 src/hb-ot-layout-gsubgpos-private.hh | 16 ++++++++--------
 src/hb-shape.cc                      | 14 +++++++-------
 5 files changed, 35 insertions(+), 38 deletions(-)

commit d784da1923ff2ca093f8b0210449731d376b7513
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 14 21:37:18 2010 -0400

    Remove the IN_CURINFO() macro

 src/hb-buffer-private.hh             | 1 -
 src/hb-ot-layout-gpos-private.hh     | 2 +-
 src/hb-ot-layout-gsub-private.hh     | 4 ++--
 src/hb-ot-layout-gsubgpos-private.hh | 2 +-
 4 files changed, 4 insertions(+), 5 deletions(-)

commit 281f59b4fb16f7c73767eb042a91f70f4c109b3a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 14 21:34:22 2010 -0400

    Remove IN_INFO() and IN_NEXTGLYPH() macros

 src/hb-buffer-private.hh             |  2 --
 src/hb-ot-layout-gpos-private.hh     | 10 +++++-----
 src/hb-ot-layout-gsub-private.hh     |  2 +-
 src/hb-ot-layout-gsubgpos-private.hh |  4 ++--
 src/hb-shape.cc                      |  4 ++--
 5 files changed, 10 insertions(+), 12 deletions(-)

commit 6e489cdf7623ac627d06d59a80ecea03ca97dc1b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 14 21:07:35 2010 -0400

    Remove the IN_GLYPH() macro

 src/hb-buffer-private.hh             |  1 -
 src/hb-ot-layout-gpos-private.hh     | 12 ++++++------
 src/hb-ot-layout-gsub-private.hh     |  2 +-
 src/hb-ot-layout-gsubgpos-private.hh |  4 ++--
 src/hb-shape.cc                      |  2 +-
 5 files changed, 10 insertions(+), 11 deletions(-)

commit 01feb74c78a3a302fa3472a0be7b2a1d52fd1ba3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 14 21:00:08 2010 -0400

    Remove the IN_CLUSTER() macro

 src/hb-buffer-private.hh | 1 -
 src/hb-shape.cc          | 2 +-
 2 files changed, 1 insertion(+), 2 deletions(-)

commit d63a1e089acad9ab9f80addd936d36b6d38fb46a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 14 20:30:07 2010 -0400

    Remove the IN_MASK() macro

 src/hb-buffer-private.hh         | 1 -
 src/hb-ot-layout-gpos-private.hh | 2 +-
 src/hb-ot-layout-gsub-private.hh | 4 ++--
 3 files changed, 3 insertions(+), 4 deletions(-)

commit 89e2834dabd2d17f2823c51fe3a7fcadeaba7a59
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 14 20:25:55 2010 -0400

    Remove the IN_LIGID() macro

 src/hb-buffer-private.hh         | 1 -
 src/hb-ot-layout-gpos-private.hh | 4 ++--
 src/hb-ot-layout-gsub-private.hh | 2 +-
 3 files changed, 3 insertions(+), 4 deletions(-)

commit 4a871041f4718834afa312ed17cdd157603468b7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 14 20:25:04 2010 -0400

    Remove IN_COMPONENT() macro

 src/hb-buffer-private.hh         | 1 -
 src/hb-ot-layout-gpos-private.hh | 8 ++++----
 src/hb-ot-layout-gsub-private.hh | 2 +-
 3 files changed, 5 insertions(+), 6 deletions(-)

commit 27da6dd89a359f7ef340c646c4cb79373782261d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 14 20:17:50 2010 -0400

    Remove OUT_GLYPH() and OUT_INFO() macros

 src/hb-buffer-private.hh             | 2 --
 src/hb-ot-layout-gsubgpos-private.hh | 4 ++--
 2 files changed, 2 insertions(+), 4 deletions(-)

commit cc6ae7ff91eeb93bef153f331ed02b500062f90e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 14 20:09:48 2010 -0400

    Fix lookahead matching.  Oops!

 src/hb-ot-layout-gsubgpos-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 3109375b849f340b4807724218010c53dea58082
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 14 19:55:27 2010 -0400

    Remove POSITION() and CURPOSITION() macros

 src/hb-buffer-private.hh         |  2 --
 src/hb-ot-layout-gpos-private.hh | 54
 ++++++++++++++++++++--------------------
 src/hb-shape.cc                  | 10 ++++----
 3 files changed, 32 insertions(+), 34 deletions(-)

commit d7cfb3b2d1dd2e9fdae2b3e540bbe313660895e8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 13 14:18:49 2010 -0400

    s/\<context\>/c/g

 src/hb-open-file-private.hh          |  28 +--
 src/hb-open-type-private.hh          | 100 ++++----
 src/hb-ot-layout-common-private.hh   |  84 +++----
 src/hb-ot-layout-gdef-private.hh     |  98 ++++----
 src/hb-ot-layout-gpos-private.hh     | 460
 +++++++++++++++++------------------
 src/hb-ot-layout-gsub-private.hh     | 306 +++++++++++------------
 src/hb-ot-layout-gsubgpos-private.hh | 258 ++++++++++----------
 src/hb-ot-layout.cc                  |  24 +-
 8 files changed, 679 insertions(+), 679 deletions(-)

commit f679635893eebc13402c5ee51a6f106eed0c76be
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 13 13:34:17 2010 -0400

    Don't use variable-length-arrays

 src/hb-open-type-private.hh | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

commit 72071a8afaba2952fe42be093024ae9dbd37f233
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 13 13:22:24 2010 -0400

    Add a few more buffer convenience methods

 src/hb-buffer-private.hh         | 12 ++++++++++++
 src/hb-ot-layout-gsub-private.hh | 20 ++++++++++----------
 2 files changed, 22 insertions(+), 10 deletions(-)

commit 11a81612e51c598e857507c268312206423cbfca
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 13 00:01:40 2010 -0400

    Minor

 src/hb-unicode.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 3f93518a634cb1852bf050877db23b9b9203ad03
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 12 23:48:40 2010 -0400

    Improve check for internal symbols

 src/check-internal-symbols.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 357d0f29c431b842179ee4b56c21bcc402178ce7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 12 23:46:16 2010 -0400

    Make HB_PRIVATE more useful

    So we can apply it to class methods also.  Not sure if that works!

 src/hb-blob-private.h    | 2 +-
 src/hb-font-private.hh   | 4 ++--
 src/hb-private.h         | 2 +-
 src/hb-unicode-private.h | 3 +--
 4 files changed, 5 insertions(+), 6 deletions(-)

commit 1d5e78013696b10751d8a35027619e81978e1312
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 12 23:43:00 2010 -0400

    Add a few other buffer methods

 src/hb-buffer-private.hh             | 11 +++++++----
 src/hb-buffer.cc                     |  7 -------
 src/hb-ot-layout-gsub-private.hh     | 10 +++++-----
 src/hb-ot-layout-gsubgpos-private.hh |  4 ++--
 4 files changed, 14 insertions(+), 18 deletions(-)

commit d0316a81f59a4e814b0af78797d915d7ce04d119
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 12 23:34:52 2010 -0400

    Add buffer->swap()

 src/hb-buffer-private.hh         | 68
 ++++++++++++++++++++++------------------
 src/hb-ot-layout-gsub-private.hh |  2 +-
 2 files changed, 38 insertions(+), 32 deletions(-)

commit 3b649a38b5772dd7aba7f07ff7698a7f427f421f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 12 23:28:38 2010 -0400

    Add check for internal symbols

 src/Makefile.am               |  3 ++-
 src/check-internal-symbols.sh | 28 ++++++++++++++++++++++++++++
 2 files changed, 30 insertions(+), 1 deletion(-)

commit eee8598d75d3af692d9ececf7e8ac458e892ba9e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 12 23:22:55 2010 -0400

    Hide internal symbols

 src/hb-ot-layout-private.hh | 4 ++--
 src/hb-private.h            | 8 ++++----
 2 files changed, 6 insertions(+), 6 deletions(-)

commit 8951fc2c82f2db4865da6d9e303fce419b6363bb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 12 23:13:39 2010 -0400

    Add buffer->allocate_lig_id()

 src/hb-buffer-private.hh         | 5 ++---
 src/hb-buffer.cc                 | 6 ------
 src/hb-ot-layout-gsub-private.hh | 4 ++--
 3 files changed, 4 insertions(+), 11 deletions(-)

commit 1ce4dc95dbb28842085342aea4f9d12cbe9671a9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 12 18:29:25 2010 -0400

    Use bit tricks for HB_DIRECTION_IS_*

    We already depend on the exact values of the direction enum
    in HB_DIRECTION_REVERSE(), so we may as well use that.

 src/hb-common.h | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 22da7fd94d6318c52df69d70470a85464ffc533d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 12 18:23:21 2010 -0400

    Rename a few files to be C++ sources

    In anticipation for buffer revamp coming.

 src/Makefile.am                                         | 16
 ++++++++--------
 src/{hb-buffer-private.h => hb-buffer-private.hh}       |  2 +-
 src/{hb-buffer.c => hb-buffer.cc}                       | 14
 +++++++-------
 src/hb-common.h                                         |  1 +
 src/{hb-font-private.h => hb-font-private.hh}           |  2 +-
 src/hb-font.cc                                          |  4 ++--
 src/{hb-ft.c => hb-ft.cc}                               |  8 ++++----
 src/hb-ot-layout-common-private.hh                      |  2 +-
 src/hb-ot-layout-gdef-private.hh                        |  2 +-
 src/hb-ot-layout-gsubgpos-private.hh                    |  2 +-
 src/{hb-ot-layout-private.h => hb-ot-layout-private.hh} |  2 +-
 src/hb-ot-layout.cc                                     |  2 +-
 src/{hb-ot-shape-private.h => hb-ot-shape-private.hh}   |  0
 src/{hb-ot-shape.c => hb-ot-shape.cc}                   |  4 ++--
 src/{hb-shape.c => hb-shape.cc}                         |  6 +++---
 15 files changed, 34 insertions(+), 33 deletions(-)

commit c3df649f258b334e93c7626a43cd8ebfbd5a610e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 11 13:54:12 2010 -0400

    Fix comment

 src/hb-buffer-private.h | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 281f08954a1d96d7807153c25073b8eb7630703b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 11 11:37:58 2010 -0400

    Remove obsolete friend

 src/hb-ot-layout-gpos-private.hh | 1 -
 1 file changed, 1 deletion(-)

commit 70c9bfd5646a4a55a7f43c0cf0b5ac5993615d5b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 11 00:23:50 2010 -0400

    Simplify PairSet

 src/hb-ot-layout-gpos-private.hh | 101
 +++++++++++++++++++++------------------
 1 file changed, 54 insertions(+), 47 deletions(-)

commit 97e7f8f305c47caf2968a9da3b8407825547286d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 11 00:11:36 2010 -0400

    Add CONST_FUNC annotation

 src/hb-private.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 494d28ad988e505c1c45cc35a7ec6b880cfec5fc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 10 23:50:07 2010 -0400

    Simplify likely() implementation

    Shrinks .text by 1%!

 src/hb-private.h | 10 +---------
 1 file changed, 1 insertion(+), 9 deletions(-)

commit 75651b20871047d3ec17f4221794b8ef5d60e14b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 10 23:44:51 2010 -0400

    Fix warnings

 src/hb-open-type-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 4c20d8c057738b66150a88472714690e137884f8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 10 23:27:54 2010 -0400

    Sprinkle a few strategic likely()'s

    Shrinks the code size by some 2% even.

 src/hb-open-file-private.hh |  4 ++--
 src/hb-open-type-private.hh | 20 ++++++++++----------
 2 files changed, 12 insertions(+), 12 deletions(-)

commit 69cb28bc13d236a01acf40da62e345c7e83ccba7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 10 23:13:08 2010 -0400

    Remove a few likely()'s

 src/hb-ot-layout-common-private.hh | 2 +-
 src/hb-ot-layout-gpos-private.hh   | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

commit 24552ecf92982fe561dc47d5102fcf1a7b337c70
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 10 23:08:41 2010 -0400

    Remove excess sub_format sanitize

 src/hb-ot-layout-gpos-private.hh | 1 -
 src/hb-ot-layout-gsub-private.hh | 1 -
 2 files changed, 2 deletions(-)

commit f7adc5e9be352ac31ad3ab847abb6fceb239aa12
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 10 22:41:50 2010 -0400

    Shrink NullPool now that we have accurate size tracking

 src/hb-open-type-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 3d44fb6f15177dc6518166e435597936b044acc1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 10 22:22:54 2010 -0400

    Fix warning

 src/hb-ot-layout-common-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b5db4f1e4eefa266a71a28b5496f47ff9d1a81e8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 10 22:22:22 2010 -0400

    Clean up NO_INDEX

 src/hb-open-file-private.hh        |  2 +-
 src/hb-open-type-private.hh        | 10 ++++++----
 src/hb-ot-layout-common-private.hh | 17 ++++-------------
 src/hb-ot-layout.cc                |  8 ++++----
 src/main.cc                        |  2 +-
 5 files changed, 16 insertions(+), 23 deletions(-)

commit fe9bc070e1d545b0df2ea548eebf5a1fc4c92ddc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 10 21:39:24 2010 -0400

    Fix awful confusion between lookup format and subtable format

    As reported by John Daggett.

 src/hb-ot-layout-gpos-private.hh | 14 +++++++-------
 src/hb-ot-layout-gsub-private.hh | 14 +++++++-------
 2 files changed, 14 insertions(+), 14 deletions(-)

commit 458ecbb60bb7e8e32aca62a562586d921d5396aa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 10 21:11:35 2010 -0400

    Fix tracing order

 src/hb-open-type-private.hh          | 14 +++++---------
 src/hb-ot-layout-gsubgpos-private.hh |  3 +--
 2 files changed, 6 insertions(+), 11 deletions(-)

commit 48146e5612f6d272d6962f6829c6d64a31edef89
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 10 20:07:56 2010 -0400

    Don't fail sanitize on NULL data

 src/hb-open-type-private.hh | 5 +++++
 1 file changed, 5 insertions(+)

commit d2c2ca8faf62fc380d4717d286556139a62d2356
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 10 19:58:25 2010 -0400

    Fix comment

 src/hb-open-type-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b435ab7e29c388e3b100f729957319931625a3a8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 10 19:51:57 2010 -0400

    Fix accessing tables from NULL pointer

 src/hb-font.cc              | 2 +-
 src/hb-open-type-private.hh | 5 +++++
 src/hb-ot-layout.cc         | 6 +++---
 3 files changed, 9 insertions(+), 4 deletions(-)

commit dacebcadae36b35531d635d81df2afb937677b7a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 10 19:45:41 2010 -0400

    Simplify unions

 src/hb-open-file-private.hh          |  24 +++----
 src/hb-ot-layout-common-private.hh   |  24 +++----
 src/hb-ot-layout-gdef-private.hh     |  24 +++----
 src/hb-ot-layout-gpos-private.hh     | 120
 +++++++++++++++++------------------
 src/hb-ot-layout-gsub-private.hh     |  88 ++++++++++++-------------
 src/hb-ot-layout-gsubgpos-private.hh |  44 ++++++-------
 6 files changed, 163 insertions(+), 161 deletions(-)

commit fd671e02433bcbc1fd07901fa2d6065020f41ba8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 10 19:02:32 2010 -0400

    Remove unused macro

 src/hb-open-type-private.hh | 1 -
 1 file changed, 1 deletion(-)

commit 0eb9fc6e37935707dba2bf4b3705de2161a08cb7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 10 19:01:17 2010 -0400

    Change DEFINE_SIZE_VAR to DEFINE_SIZE_ARRAY

 src/hb-open-file-private.hh          |  4 ++--
 src/hb-open-type-private.hh          | 10 +++++-----
 src/hb-ot-layout-common-private.hh   | 27 +++++++++++++++------------
 src/hb-ot-layout-gdef-private.hh     | 10 +++++-----
 src/hb-ot-layout-gpos-private.hh     | 25 ++++++++++++-------------
 src/hb-ot-layout-gsub-private.hh     | 14 +++++++-------
 src/hb-ot-layout-gsubgpos-private.hh | 16 ++++++++--------
 7 files changed, 54 insertions(+), 52 deletions(-)

commit 596e471aa5053d955fb5d5b5923088c8814469b1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 10 18:47:48 2010 -0400

    Cleanup DEFINE_SIZE_VAR2

 src/hb-open-type-private.hh          | 18 +++++++++++-------
 src/hb-ot-layout-common-private.hh   |  6 +++---
 src/hb-ot-layout-gdef-private.hh     |  4 ++--
 src/hb-ot-layout-gpos-private.hh     |  4 ++--
 src/hb-ot-layout-gsub-private.hh     |  2 +-
 src/hb-ot-layout-gsubgpos-private.hh |  4 ++--
 6 files changed, 21 insertions(+), 17 deletions(-)

commit 33afa4e2dc352f08cc094703e3f01d3ecd83b354
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 10 18:35:02 2010 -0400

    Minor

 src/hb-open-type-private.hh | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

commit b961518b9611471ff7060e97686e5625974847eb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 10 18:20:54 2010 -0400

    Simplify array access

 src/hb-open-type-private.hh          | 29 ++++++++++-------------------
 src/hb-ot-layout-common-private.hh   |  8 ++++----
 src/hb-ot-layout-gsub-private.hh     |  6 +++---
 src/hb-ot-layout-gsubgpos-private.hh | 16 ++++++++--------
 4 files changed, 25 insertions(+), 34 deletions(-)

commit 54842374c2b291ef208c51ae1d853ec0403ccf84
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 10 18:13:32 2010 -0400

    Fix check_struct to check min_size instead of sizeof

 src/hb-open-type-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ed07422c33bbb52ff4d79e65986171e3f07697d8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 10 18:08:46 2010 -0400

    Further cleanup of sizeof

 src/hb-open-type-private.hh          |  7 +++++--
 src/hb-ot-layout-common-private.hh   |  4 ++++
 src/hb-ot-layout-gdef-private.hh     |  4 ++++
 src/hb-ot-layout-gpos-private.hh     | 10 +++++++---
 src/hb-ot-layout-gsub-private.hh     |  4 +++-
 src/hb-ot-layout-gsubgpos-private.hh |  2 ++
 6 files changed, 25 insertions(+), 6 deletions(-)

commit a82ef7a893b773a17f7548375de9f588dfc83aba
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 10 17:55:03 2010 -0400

    Remove CastP completely

 src/hb-open-type-private.hh | 39 +++++++++++++++++----------------------
 1 file changed, 17 insertions(+), 22 deletions(-)

commit 40cbefe858192531ed64dd51d402f7ca7b8153a3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 10 17:47:22 2010 -0400

    Remove unnecessary casts

 src/hb-open-type-private.hh          | 12 ++++++------
 src/hb-ot-layout-common-private.hh   |  2 +-
 src/hb-ot-layout-gpos-private.hh     | 34
 +++++++++++++++++-----------------
 src/hb-ot-layout-gsub-private.hh     |  4 ++--
 src/hb-ot-layout-gsubgpos-private.hh | 34
 +++++++++++++++++-----------------
 5 files changed, 43 insertions(+), 43 deletions(-)

commit 09766b1ec5ec55a61edbcd7a89ed3613cc92d4cb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 10 17:36:03 2010 -0400

    Make StructAtOffset take a pointer

    Is safer.

 src/hb-open-type-private.hh      | 26 +++++++++++++-------------
 src/hb-ot-layout-gpos-private.hh |  6 +++---
 src/hb-ot-layout-gsub-private.hh |  4 ++--
 3 files changed, 18 insertions(+), 18 deletions(-)

commit bea34c7cbb583cf7660776e95cab3171590b8427
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 10 17:28:16 2010 -0400

    Further cleanup of DEFINE_SIZE

 src/hb-open-file-private.hh          |  2 +-
 src/hb-open-type-private.hh          | 10 +++++-----
 src/hb-ot-layout-common-private.hh   | 16 ++++++++--------
 src/hb-ot-layout-gdef-private.hh     |  8 ++++----
 src/hb-ot-layout-gpos-private.hh     | 16 +++++-----------
 src/hb-ot-layout-gsub-private.hh     | 14 +++++++-------
 src/hb-ot-layout-gsubgpos-private.hh | 14 +++++++-------
 7 files changed, 37 insertions(+), 43 deletions(-)

commit 0abcc3b48cfd51a22695c9e988938b2f45cb19d8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 10 17:04:20 2010 -0400

    Cleanup

 src/hb-open-type-private.hh | 18 ++++++++++--------
 1 file changed, 10 insertions(+), 8 deletions(-)

commit b3651231bf80bb7009214547a75ed90e21815c68
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 10 16:57:29 2010 -0400

    Remove ASSERT_SIZE in favor of the safer DEFINE_SIZE_STATIC

 src/hb-open-file-private.hh          |  3 ++-
 src/hb-open-type-private.hh          | 20 +++++++++++++---
 src/hb-ot-layout-common-private.hh   | 24 ++++++++++++--------
 src/hb-ot-layout-gdef-private.hh     | 22 +++++++++++-------
 src/hb-ot-layout-gpos-private.hh     | 44
 ++++++++++++++++++++----------------
 src/hb-ot-layout-gsub-private.hh     | 32 ++++++++++++++++----------
 src/hb-ot-layout-gsubgpos-private.hh | 27 ++++++++++++++--------
 src/hb-private.h                     |  2 --
 8 files changed, 109 insertions(+), 65 deletions(-)

commit 569da92bc6956f42d9b2d65c784e184fb6380efe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 10 16:38:32 2010 -0400

    Cleanup ASSERT_SIZE_VAR

 src/hb-open-file-private.hh          |  9 ++++++---
 src/hb-open-type-private.hh          |  6 ++++--
 src/hb-ot-layout-common-private.hh   | 22 ++++++++++++----------
 src/hb-ot-layout-gdef-private.hh     |  3 ++-
 src/hb-ot-layout-gpos-private.hh     | 30 +++++++++++++++++++-----------
 src/hb-ot-layout-gsubgpos-private.hh | 10 ++++++----
 src/hb-private.h                     |  8 --------
 7 files changed, 49 insertions(+), 39 deletions(-)

commit 99bf03459ff2f00cf3fb7fa3c8b8336ec9fcca56
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 6 19:37:32 2010 -0400

    Whitespace

 src/hb-ot-layout-gpos-private.hh | 1 +
 1 file changed, 1 insertion(+)

commit 65f46b00333e20ab8a52a4b350747507541ec1db
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 6 19:35:19 2010 -0400

    Simplify DEFINE_NULL_DATA

    Using ::min_size.

 src/hb-open-type-private.hh        | 6 +++---
 src/hb-ot-layout-common-private.hh | 9 +++++----
 2 files changed, 8 insertions(+), 7 deletions(-)

commit e45d3f86f9a5f3d29ca35a282de7f98e702878f9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 6 19:33:31 2010 -0400

    Start cleaning up get_size()

    So we know when the size is static and when dynamic.

 src/hb-open-file-private.hh          |  7 +++---
 src/hb-open-type-private.hh          | 42
 +++++++++++++++++++++++++-----------
 src/hb-ot-layout-common-private.hh   | 14 ++++++------
 src/hb-ot-layout-gpos-private.hh     | 17 ++++++---------
 src/hb-ot-layout-gsubgpos-private.hh | 19 ++++++++--------
 5 files changed, 55 insertions(+), 44 deletions(-)

commit b157617644d1e38f680163889d1dc2e2f64d9ba3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 6 14:48:27 2010 -0400

    Remove the last of SANITIZE macros: SANITIZE_SELF

 src/hb-open-file-private.hh          |  4 ++--
 src/hb-open-type-private.hh          | 21 ++++++++++++---------
 src/hb-ot-layout-common-private.hh   | 16 ++++++++--------
 src/hb-ot-layout-gdef-private.hh     |  6 +++---
 src/hb-ot-layout-gpos-private.hh     | 26 +++++++++++++-------------
 src/hb-ot-layout-gsubgpos-private.hh |  6 +++---
 6 files changed, 41 insertions(+), 38 deletions(-)

commit 4f252fedc7136c66a9d7fbcb2978581986da6227
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 6 13:30:23 2010 -0400

    Remove SANITIZE macro

 src/hb-open-file-private.hh          |  4 ++--
 src/hb-open-type-private.hh          |  6 ++----
 src/hb-ot-layout-common-private.hh   | 18 +++++++++---------
 src/hb-ot-layout-gdef-private.hh     |  6 +++---
 src/hb-ot-layout-gpos-private.hh     | 18 +++++++++---------
 src/hb-ot-layout-gsub-private.hh     | 26 +++++++++++++-------------
 src/hb-ot-layout-gsubgpos-private.hh | 22 +++++++++++-----------
 7 files changed, 49 insertions(+), 51 deletions(-)

commit c2ddfd2d268385257c77c09a9abeacf4230d5377
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 6 13:06:15 2010 -0400

    Cleanup Value casts

 src/hb-ot-layout-gpos-private.hh | 34 +++++++++++++++++++++-------------
 1 file changed, 21 insertions(+), 13 deletions(-)

commit 41a93d2c1ff175ef06328a99983577459c2d34b0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 6 12:55:14 2010 -0400

    Remove SANITIZE_WITH_BASE

 src/hb-open-file-private.hh          |  2 +-
 src/hb-open-type-private.hh          |  2 -
 src/hb-ot-layout-common-private.hh   |  6 +--
 src/hb-ot-layout-gdef-private.hh     | 24 +++++-----
 src/hb-ot-layout-gpos-private.hh     | 90
 ++++++++++++++++++------------------
 src/hb-ot-layout-gsub-private.hh     | 31 ++++++-------
 src/hb-ot-layout-gsubgpos-private.hh | 44 +++++++++---------
 7 files changed, 98 insertions(+), 101 deletions(-)

commit f5fab0c71837371cce32dc3e9edca1ccb8d44e29
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 6 10:26:52 2010 -0400

    Remove SANITIZE_MEM

 src/hb-open-type-private.hh          | 4 +---
 src/hb-ot-layout-common-private.hh   | 2 +-
 src/hb-ot-layout-gpos-private.hh     | 2 +-
 src/hb-ot-layout-gsubgpos-private.hh | 6 +++---
 4 files changed, 6 insertions(+), 8 deletions(-)

commit 4ad2cc5dec6b0639da2b1846282bdd99d06d5ff1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 6 09:24:24 2010 -0400

    Rename check to check_range

 src/hb-open-type-private.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 1cd1e117d060d38e314618b627d7663cb01ed584
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 5 20:15:14 2010 -0400

    Remove SANITIZE_ARRAY

 src/hb-open-file-private.hh          |  2 +-
 src/hb-open-type-private.hh          | 16 +++++++---------
 src/hb-ot-layout-gpos-private.hh     |  8 ++++----
 src/hb-ot-layout-gsubgpos-private.hh |  4 ++--
 4 files changed, 14 insertions(+), 16 deletions(-)

commit 583d7f9586ce69754f1354aa3895e6d732a0c2ce
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 5 01:49:22 2010 -0400

    Cosmetic

 src/hb-open-file-private.hh          |  3 ++-
 src/hb-open-type-private.hh          |  6 ++++--
 src/hb-ot-layout-common-private.hh   | 15 ++++++++++-----
 src/hb-ot-layout-gpos-private.hh     |  5 ++---
 src/hb-ot-layout-gsub-private.hh     |  3 ++-
 src/hb-ot-layout-gsubgpos-private.hh |  9 +++++----
 6 files changed, 25 insertions(+), 16 deletions(-)

commit 705e215268aa95c2bc6af8af9b48b72b690ec1f7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 5 01:40:25 2010 -0400

    Minor

 src/hb-open-type-private.hh          | 4 ++--
 src/hb-ot-layout-gpos-private.hh     | 2 +-
 src/hb-ot-layout-gsub-private.hh     | 2 +-
 src/hb-ot-layout-gsubgpos-private.hh | 2 +-
 4 files changed, 5 insertions(+), 5 deletions(-)

commit b18eafd0f62f854d15276c78f99843aecd47acad
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 5 01:39:26 2010 -0400

    Minor

 src/hb-open-type-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 4169710911450e0f9bc045fe279bfc8ba9e8457c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 5 01:37:58 2010 -0400

    Simplify chaining

 src/hb-ot-layout-gsubgpos-private.hh | 61
 +++++++++++++++---------------------
 1 file changed, 25 insertions(+), 36 deletions(-)

commit 1911b9d21b2b7b6b8219ce6c888540e3a60aa9c3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 5 01:32:04 2010 -0400

    Remove APPLY_ARG_DEF and APPLY_ARG

 src/hb-ot-layout-gpos-private.hh     | 92
 ++++++++++++++++++------------------
 src/hb-ot-layout-gsub-private.hh     | 88
 +++++++++++++++++-----------------
 src/hb-ot-layout-gsubgpos-private.hh | 89
 ++++++++++++++++------------------
 3 files changed, 132 insertions(+), 137 deletions(-)

commit 6c42cddfe53a1c664081862bb9a3e1c38d05a823
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 5 01:30:48 2010 -0400

    Port apply to use hb_trace_t

 src/hb-ot-layout-gpos-private.hh     |  9 ++++-----
 src/hb-ot-layout-gsub-private.hh     | 11 +++++------
 src/hb-ot-layout-gsubgpos-private.hh | 13 +++++--------
 3 files changed, 14 insertions(+), 19 deletions(-)

commit 969c9705ae0c64577c3f69f5300fec975f952e1f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 5 01:23:44 2010 -0400

    Move context_length into apply_context

 src/hb-ot-layout-gpos-private.hh     |  9 ++---
 src/hb-ot-layout-gsub-private.hh     |  9 ++---
 src/hb-ot-layout-gsubgpos-private.hh | 70
 ++++++++++++++++++++----------------
 3 files changed, 50 insertions(+), 38 deletions(-)

commit 94a23aaeca39c662614037ef887412249bdc8d49
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 5 01:13:09 2010 -0400

    Move buffer into apply_context

 src/hb-buffer-private.h              | 30 +++++++++--------
 src/hb-ot-layout-gpos-private.hh     | 64
 ++++++++++++++++++++----------------
 src/hb-ot-layout-gsub-private.hh     | 45 ++++++++++++++-----------
 src/hb-ot-layout-gsubgpos-private.hh | 49 ++++++++++++++-------------
 4 files changed, 106 insertions(+), 82 deletions(-)

commit 63493f956dca519df49da0a6badc3cb0a1b92779
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 5 01:01:05 2010 -0400

    Move layout_context into apply_context

 src/hb-ot-layout-gpos-private.hh     | 105
 ++++++++++++++++++-----------------
 src/hb-ot-layout-gsub-private.hh     |  47 ++++++++--------
 src/hb-ot-layout-gsubgpos-private.hh |  11 ++--
 3 files changed, 82 insertions(+), 81 deletions(-)

commit fff9aa263d1daf7c5117cf383fafa5043d5eb5af
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 5 00:32:21 2010 -0400

    Minor

 src/hb-ot-layout-gsubgpos-private.hh | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit 27e302dc8e794ff6bf878bc76e17d336d510849e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 5 00:26:16 2010 -0400

    I keep changing my mind about this

 src/hb-open-type-private.hh | 30 ++++++++++--------------------
 1 file changed, 10 insertions(+), 20 deletions(-)

commit 39840474afd2cda9ff576c08aff9c87095496c27
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 5 00:23:19 2010 -0400

    Remove SANITIZE_ARG_DEF and SANITIZE_ARG

 src/hb-open-file-private.hh          |  16 ++---
 src/hb-open-type-private.hh          |  59 +++++++--------
 src/hb-ot-layout-common-private.hh   |  42 +++++------
 src/hb-ot-layout-gdef-private.hh     |  28 ++++----
 src/hb-ot-layout-gpos-private.hh     | 136
 +++++++++++++++++------------------
 src/hb-ot-layout-gsub-private.hh     |  72 +++++++++----------
 src/hb-ot-layout-gsubgpos-private.hh |  46 ++++++------
 7 files changed, 197 insertions(+), 202 deletions(-)

commit b261e2ad5c5a065599ce1dbc4ba437caa2cee1e9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 5 00:20:16 2010 -0400

    Remove trace from sanitize_shallow()

 src/hb-open-type-private.hh | 1 -
 1 file changed, 1 deletion(-)

commit dfc8cbe85479dde1ffdc6b2e73f4907331d77a19
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 5 00:19:46 2010 -0400

    Add hb_trace_t

 src/hb-open-type-private.hh | 33 +++++++++++++++++++--------------
 1 file changed, 19 insertions(+), 14 deletions(-)

commit 20e3dd5d292b65f70d2eae63b8d8713a1c889d47
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 4 23:21:57 2010 -0400

    Make sanitize_depth variable automatic and not passed through
    function args

 src/hb-open-type-private.hh | 72
 +++++++++++++++++++++++++++------------------
 1 file changed, 43 insertions(+), 29 deletions(-)

commit 4a446ac35136eff23d55f47bdd7b40095ad707ab
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 4 22:46:21 2010 -0400

    Use function template for pass-thru argument

 src/hb-open-type-private.hh      | 26 ++++++--------------------
 src/hb-ot-layout-gpos-private.hh |  6 +++---
 2 files changed, 9 insertions(+), 23 deletions(-)

commit 98daaf183d6dbf2b68959da608cd9876ba55d7aa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 4 22:42:49 2010 -0400

    Make _hb_sanitize_*() methods of the context object

 src/hb-open-type-private.hh | 190
 +++++++++++++++++++++++---------------------
 1 file changed, 98 insertions(+), 92 deletions(-)

commit bb029af943faa9905e652d58856998687e60c31d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 4 15:28:52 2010 -0400

    Remove SANITIZE_THIS

 src/hb-open-file-private.hh          |  2 +-
 src/hb-open-type-private.hh          |  3 +-
 src/hb-ot-layout-common-private.hh   |  4 +--
 src/hb-ot-layout-gdef-private.hh     | 25 ++++++++--------
 src/hb-ot-layout-gpos-private.hh     | 55
 ++++++++++++++++++++----------------
 src/hb-ot-layout-gsub-private.hh     | 29 ++++++++++---------
 src/hb-ot-layout-gsubgpos-private.hh | 42 +++++++++++++--------------
 7 files changed, 85 insertions(+), 75 deletions(-)

commit 2226fc93d1427b8830bfb892fe1b25b488ea36dc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 4 15:12:17 2010 -0400

    Rename SANITIZE_BASE to SANITIZE_WITH_BASE

 src/hb-open-type-private.hh        | 11 +++++++----
 src/hb-ot-layout-common-private.hh |  3 ++-
 src/hb-ot-layout-gpos-private.hh   | 15 ++++++++-------
 3 files changed, 17 insertions(+), 12 deletions(-)

commit 89da1346ec3a8dec8a368df46d61ca75356e22fa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 4 15:01:45 2010 -0400

    Remove SANITIZE_OBJ

 src/hb-open-type-private.hh | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 4d4cce96266b777a01cec03e8766dc8c0b159351
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 4 14:57:55 2010 -0400

    Remove SANITIZE_THIS2

 src/hb-open-type-private.hh          |  2 --
 src/hb-ot-layout-common-private.hh   |  3 ++-
 src/hb-ot-layout-gdef-private.hh     | 10 ++++++----
 src/hb-ot-layout-gpos-private.hh     |  9 ++++++---
 src/hb-ot-layout-gsub-private.hh     | 11 +++++++----
 src/hb-ot-layout-gsubgpos-private.hh | 14 +++++++++-----
 6 files changed, 30 insertions(+), 19 deletions(-)

commit 26bfcb64e473c40e439d6efbe974781dada28eca
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 4 14:49:45 2010 -0400

    Cosmetic

 src/hb-ot-layout-gdef-private.hh     | 5 ++---
 src/hb-ot-layout-gsubgpos-private.hh | 7 +++----
 2 files changed, 5 insertions(+), 7 deletions(-)

commit be74284673a1944e0f1884e861c3fe8f9855172c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 4 14:47:05 2010 -0400

    Remove SANITIZE_THIS3

 src/hb-open-type-private.hh          |  1 -
 src/hb-ot-layout-gpos-private.hh     | 21 +++++++++++++++------
 src/hb-ot-layout-gsubgpos-private.hh |  8 ++++++--
 3 files changed, 21 insertions(+), 9 deletions(-)

commit fbab9f9bd8ba59e7e5811f33c1dda198f95cf05a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 4 14:42:10 2010 -0400

    Remove SANITIZE_BASE2

 src/hb-open-type-private.hh      | 1 -
 src/hb-ot-layout-gpos-private.hh | 3 ++-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 73c7dbf7f5433c0cdd467ef32402f52867e9798e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 4 14:40:55 2010 -0400

    Remove SANITIZE2

 src/hb-open-type-private.hh      | 1 -
 src/hb-ot-layout-gsub-private.hh | 2 +-
 2 files changed, 1 insertion(+), 2 deletions(-)

commit c9f14687a30866181feb57ee2736a147ec9f25a1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 4 14:38:08 2010 -0400

    Remove the NEUTER macro, move code to a method

 src/hb-open-type-private.hh | 21 +++++++++++++--------
 1 file changed, 13 insertions(+), 8 deletions(-)

commit 30fa2821c277df99a14089749313dfe2b541e2d0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 4 14:28:18 2010 -0400

    Make internal method private

 src/hb-open-type-private.hh | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

commit ce5694c79671bf75990923c1da17bb611e4e7d15
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 4 14:10:18 2010 -0400

    [main] Recognize Apple SFNTs

 src/hb-open-file-private.hh | 4 ++--
 src/main.cc                 | 6 ++++++
 2 files changed, 8 insertions(+), 2 deletions(-)

commit 710500a93ecc2a0c595045602aa367073485ff91
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 3 23:11:16 2010 -0400

    Comment new SFNT tags

 src/hb-open-file-private.hh | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit 64d3fc8d0dada673245cc8c0b1c12cd849b30997
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 3 22:51:19 2010 -0400

    Cosmetic: Rename HB_LIKELY/HB_UNLIKELY to likely/unlikely

 src/hb-buffer.c                      | 14 ++++----
 src/hb-font.cc                       |  6 ++--
 src/hb-ft.c                          | 14 ++++----
 src/hb-language.c                    |  2 +-
 src/hb-object-private.h              | 10 +++---
 src/hb-open-file-private.hh          |  2 +-
 src/hb-open-type-private.hh          | 38 ++++++++++-----------
 src/hb-ot-layout-common-private.hh   | 16 ++++-----
 src/hb-ot-layout-gdef-private.hh     |  2 +-
 src/hb-ot-layout-gpos-private.hh     | 64
 ++++++++++++++++++------------------
 src/hb-ot-layout-gsub-private.hh     | 52 ++++++++++++++---------------
 src/hb-ot-layout-gsubgpos-private.hh | 40 +++++++++++-----------
 src/hb-ot-layout.cc                  | 12 +++----
 src/hb-ot-tag.c                      |  2 +-
 src/hb-private.h                     |  8 ++---
 src/hb-shape.c                       | 10 +++---
 src/hb-unicode.c                     |  2 +-
 17 files changed, 147 insertions(+), 147 deletions(-)

commit fa3b3d58443a7c22eca3f86243993ba2d4bd9f4a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 3 22:47:22 2010 -0400

    Mark a couple functions as inline

 src/hb-open-type-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 6b84198f9d471defb6f55d44d4f5423df70b2a10
Merge: 631d10b7 eaf29edb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 3 22:46:52 2010 -0400

    Merge remote branch 'jrmuizel/master'

commit eaf29edb8fa49390e5f48b78105dfd173aff445b
Author: Jeff Muizelaar <jmuizelaar@mozilla.com>
Date:   Mon May 3 22:27:56 2010 -0400

    HB_UNUSED is unneeded on static inline functions

 src/hb-object-private.h     | 2 +-
 src/hb-open-type-private.hh | 6 +++---
 src/hb-private.h            | 4 ++--
 3 files changed, 6 insertions(+), 6 deletions(-)

commit 4ce578ed369f1526c91deedcf9e72537b3e4328f
Author: Jeff Muizelaar <jmuizelaar@mozilla.com>
Date:   Mon May 3 15:03:53 2010 -0400

    Include the tags from the Apple specification for TrueType fonts

 src/hb-open-file-private.hh | 8 ++++++++
 1 file changed, 8 insertions(+)

commit 631d10b728d9e1a02c7dddf505d4fae5e244c6e8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 2 21:14:21 2010 -0400

    Remove unused method

 src/hb-open-file-private.hh | 5 -----
 1 file changed, 5 deletions(-)

commit f0abcd69408a3af65207cdf8847575ade4579bd4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 2 18:14:25 2010 -0400

    Whitespace

 src/hb-open-type-private.hh | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

commit a8d960bd26883ee937b04ca2a3c16a3644870356
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 29 14:31:56 2010 -0400

    [GPOS] Speedup apply_value()

 src/hb-ot-layout-gpos-private.hh | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

commit 2cd1ea4411d0808559a942ff3fa4e637f9c9a9c8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 29 14:15:32 2010 -0400

    [ft] Disallow getting the entire font data with tag=0

 src/hb-ft.c | 3 +++
 1 file changed, 3 insertions(+)

commit 33d13fdda99acaeffa9600737e8870278d053ebe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 29 13:56:44 2010 -0400

    Rename HB_GNUC_UNUSED -> HB_UNUSED

 src/hb-buffer.c                      |  6 ++---
 src/hb-font.cc                       | 44
 ++++++++++++++++++------------------
 src/hb-ft.c                          | 16 ++++++-------
 src/hb-object-private.h              |  2 +-
 src/hb-open-type-private.hh          | 18 +++++++--------
 src/hb-ot-layout-gdef-private.hh     |  4 ++--
 src/hb-ot-layout-gpos-private.hh     |  4 ++--
 src/hb-ot-layout-gsubgpos-private.hh |  6 ++---
 src/hb-ot-layout.cc                  |  4 ++--
 src/hb-ot-shape.c                    |  2 +-
 src/hb-private.h                     | 16 ++++++-------
 src/hb-shape.c                       | 32 +++++++++++++-------------
 src/hb-unicode.c                     |  8 +++----
 13 files changed, 81 insertions(+), 81 deletions(-)

commit 7d3a126334f8e6f6441561c1bb592bd3fa7a2c5c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 29 13:54:01 2010 -0400

    Define HB_FUNC for portability to non-gcc

 src/hb-open-type-private.hh          | 12 ++++++------
 src/hb-ot-layout-gsubgpos-private.hh |  2 +-
 src/hb-private.h                     |  9 +++++++++
 3 files changed, 16 insertions(+), 7 deletions(-)

commit fa030175ca998b00cc42cbced6e98de323ec01ec
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 29 13:48:26 2010 -0400

    [sanitize] Make debug code always available to the compiler

    Such that we don't break debug build all the time.

 src/hb-open-type-private.hh | 71
 ++++++++++++++++++++-------------------------
 1 file changed, 31 insertions(+), 40 deletions(-)

commit fde6f5bd682f5ad0cc5e2ec69fc831b0192bf90b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 29 04:41:41 2010 -0400

    Convert to uppercase in hb_ot_tag_from_language()

 src/hb-ot-tag.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit 6f729b45b04243c42ad7201b67cda9d5e5c363f1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 29 03:59:06 2010 -0400

    More contour point use

 src/hb-font.cc                   |  1 +
 src/hb-ot-layout-gdef-private.hh |  8 +++++---
 src/hb-ot-layout-gpos-private.hh | 13 +++++++++----
 3 files changed, 15 insertions(+), 7 deletions(-)

commit 3840b6b50503ba2c9a99f774284e0077baffa8a0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 29 03:48:27 2010 -0400

    [gdef] Fix delta scale

 src/hb-ot-layout-gdef-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 4ac6cc284b2c1eb670c2a3659ec385ed729acac4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 29 03:48:11 2010 -0400

    [gdef] Fix rounding

 src/hb-ot-layout-gdef-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit b52fbb1bab608bda76efb936f08344afaec600a1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 29 03:47:00 2010 -0400

    [gdef] Implement getting contour point

 src/hb-ot-layout-gdef-private.hh | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 4c5fbae011a33b9efef5aedd61c357fc0ded1113
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 29 03:39:39 2010 -0400

    Make sure mirroring is done in original direction

    Reported by Jonathan Kew.

 src/hb-shape.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit ce23c9234b87513d6460fb89bad178fb8537e161
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 29 03:31:03 2010 -0400

    Use BCP47 private-use tags for OpenType tag language string mapping

 src/hb-ot-tag.c | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

commit eaf1d9a46c4a320f3b0026c0a610f95a620d566f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 29 03:11:32 2010 -0400

    Minor

 src/hb-ot-tag.c | 1 +
 1 file changed, 1 insertion(+)

commit 3a4784fe88a0f14147ccdd3633952c9c0f3ae8f3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 29 02:58:38 2010 -0400

    Fix bug in hb_language_from_string()

    Reported by Jonathan Kew.

 src/hb-language.c | 2 ++
 1 file changed, 2 insertions(+)

commit 602e4f8d5512cdf48c696ad64ad62ff97f6dbdcc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 29 02:28:54 2010 -0400

    Use const_cast

 src/hb-open-type-private.hh | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit abff3580a5b229641086e0da097efee11d22ff81
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 29 02:27:20 2010 -0400

    Add const

 src/hb-object-private.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6617eada95928457a25e29f793f1a93c6b3edaec
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 29 02:25:30 2010 -0400

    Rename apply_context -> context

 src/hb-ot-layout-gpos-private.hh     | 22 +++++++++++-----------
 src/hb-ot-layout-gsub-private.hh     | 26 +++++++++++++-------------
 src/hb-ot-layout-gsubgpos-private.hh | 12 ++++++------
 3 files changed, 30 insertions(+), 30 deletions(-)

commit b4c7fab762935b9c182b3e2ac3415f29fc6a5558
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 29 02:24:25 2010 -0400

    Rename

 src/hb-ot-layout-gpos-private.hh     | 98
 ++++++++++++++++++------------------
 src/hb-ot-layout-gsub-private.hh     | 46 ++++++++---------
 src/hb-ot-layout-gsubgpos-private.hh | 12 ++---
 3 files changed, 78 insertions(+), 78 deletions(-)

commit 1376fb7bf9ef07970f0ba13dc64d6a8ab8252762
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 29 02:19:21 2010 -0400

    [apply] Use a context object to reduce number of parameters passed
    around

 src/hb-open-type-private.hh          |  5 ++---
 src/hb-ot-layout-gpos-private.hh     | 26 ++++++++++++++-----------
 src/hb-ot-layout-gsub-private.hh     | 37
 +++++++++++++++++++-----------------
 src/hb-ot-layout-gsubgpos-private.hh | 29 +++++++++++++++-------------
 4 files changed, 53 insertions(+), 44 deletions(-)

commit 173fde7087c0db3e99409f1119530477c14072f5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 29 01:47:30 2010 -0400

    Further simplify tracing

 src/hb-open-type-private.hh          | 31 +++++++++++++++----------------
 src/hb-ot-layout-gpos-private.hh     |  9 +++++----
 src/hb-ot-layout-gsub-private.hh     | 11 ++++++-----
 src/hb-ot-layout-gsubgpos-private.hh |  8 --------
 4 files changed, 26 insertions(+), 33 deletions(-)

commit bc200457430c083914a64bf4b056153506749610
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 29 01:40:26 2010 -0400

    Simplify trace code

 src/hb-open-type-private.hh          | 41 +++++++++---------------------
 src/hb-ot-layout-gsubgpos-private.hh | 25 +++++--------------
 src/hb-private.h                     | 48
 +++++++++++++++++++++++++-----------
 3 files changed, 51 insertions(+), 63 deletions(-)

commit 807c5b03a2251a3c29a520852639421783101b55
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 28 20:25:22 2010 -0400

    [sanitize] Make debug code always available to the compiler

    Such that we don't break debug build all the time.

 src/hb-open-type-private.hh          | 31 ++++++++++++++++++++-----------
 src/hb-ot-layout-gsubgpos-private.hh |  2 +-
 2 files changed, 21 insertions(+), 12 deletions(-)

commit 74e313c016704e1d9157c2763691c4151f049dfc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 28 15:15:09 2010 -0400

    [gsubgpos] Make debug code always available to the compiler

    Such that we don't break debug build all the time.

 src/hb-ot-layout-gsubgpos-private.hh | 52
 ++++++++++++++++++------------------
 1 file changed, 26 insertions(+), 26 deletions(-)

commit 41011a6ed7c4891b20c0eddbb6d4ad9c820cfddb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 28 13:33:09 2010 -0400

    Fix compiler warning about value unused

 src/hb-object-private.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 863df68e894b7644dcd12da88aa22f73edf829dc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 28 13:29:55 2010 -0400

    [object] Make debug code always available to the compiler

    Such that we don't break debug build all the time.

 src/hb-object-private.h | 42 +++++++++++++++++++++++++++---------------
 1 file changed, 27 insertions(+), 15 deletions(-)

commit 1d52151a19ed8ec776276aac5cc6ce3769e0d947
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 28 13:18:41 2010 -0400

    Minor

 src/hb-private.h | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

commit 444fffb1ab378cb3022e2a8e9f90d20a00c82f6a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 28 13:16:38 2010 -0400

    [blob] Make debug code always available to the compiler

    Such that we don't break debug build all the time.

 src/hb-blob.c | 78
 ++++++++++++++++++++++++-----------------------------------
 1 file changed, 32 insertions(+), 46 deletions(-)

commit ba51b25c7ba568aeced17f016eceba987569c5d9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 28 13:10:36 2010 -0400

    Fix build.  Ouch!

 src/hb-object-private.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a92f0fda7fee9d60b399b8865541bf73e6e30141
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 28 13:09:40 2010 -0400

    Fix debug build

 src/hb-open-type-private.hh          | 4 ++--
 src/hb-ot-layout-gsubgpos-private.hh | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

commit c165f25410f817d248ad5d07e1827d33efd1b0a0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 27 23:28:10 2010 -0400

    [object] Actually handle malloc() failure

    Caught by John Daggett.

 src/hb-object-private.h | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

commit caff7db93d205e32a535d49e51a3cad70f91dfdd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 26 10:07:35 2010 -0400

    Fix Device::get_size() calculation

 src/hb-ot-layout-common-private.hh | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

commit 66d6eb30eb0b8d61e00f86ea0c7829abaddb52fa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Apr 25 23:01:45 2010 -0400

    Rename Var to Obj

 src/hb-open-type-private.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 690b9194619589c32ffc0c092e45262ae7776e79
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Apr 25 22:51:05 2010 -0400

    Remove use of flexible arrays

    Also remove wrong ASSERT_SIZE that would trigger only when not using
    flexible arrays (which was the case on win32, but not with gcc).

 configure.ac                | 2 --
 src/hb-open-file-private.hh | 1 -
 src/hb-private.h            | 4 ----
 3 files changed, 7 deletions(-)

commit 1cebfbb0636b13dc5dc6a4b8b7acbb7da28129d2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 23 20:49:18 2010 -0400

    Cleanup hb_face_create_for_data()

 src/Makefile.am       |  1 +
 src/hb-blob-private.h | 57 +++++++++++++++++++++++++++++++
 src/hb-blob.c         | 20 ++---------
 src/hb-font-private.h |  3 --
 src/hb-font.cc        | 92
 +++++++++++++++++++++++++++++++++++----------------
 5 files changed, 123 insertions(+), 50 deletions(-)

commit d6b3c83a90f60bedb4049750ffb351161710980d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 23 19:59:53 2010 -0400

    Allow get_table() to return NULL

 src/hb-font.cc | 6 +++++-
 src/hb-ft.c    | 2 +-
 2 files changed, 6 insertions(+), 2 deletions(-)

commit ad3653751b1e4a03f7058200cb83f64db46722d5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 23 19:43:40 2010 -0400

    Typo

 src/hb-open-type-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 990443e5f282ad61de00dcf1ebff9cf1d5bc2d70
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 23 17:53:32 2010 -0400

    Remove lock_instance()

 src/hb-font.cc              | 2 +-
 src/hb-open-type-private.hh | 4 ----
 src/hb-ot-layout.cc         | 6 +++---
 3 files changed, 4 insertions(+), 8 deletions(-)

commit 187454c595559ce48d072fee6bccb51f3de283d4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 23 16:35:01 2010 -0400

    Add different casts from pointer and ref to avoid bugs

 src/hb-open-type-private.hh      | 22 +++++++++++++++-------
 src/hb-ot-layout-gpos-private.hh |  8 ++++----
 src/hb-ot-layout-gsub-private.hh | 12 ++++++------
 src/main.cc                      |  6 +++---
 4 files changed, 28 insertions(+), 20 deletions(-)

commit efb324a46ff64adb4ec8612b4089e8daff1e6d8e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 23 16:22:54 2010 -0400

    Remove GET_FOR_DATA macros

    The major-version check is now handled by sanitize.  If major
    doesn't match, we reject and fall back to the Null object.

 src/hb-open-file-private.hh          |  4 ----
 src/hb-open-type-private.hh          | 23 ++---------------------
 src/hb-ot-layout-gdef-private.hh     |  2 --
 src/hb-ot-layout-gpos-private.hh     |  3 ---
 src/hb-ot-layout-gsub-private.hh     |  3 ---
 src/hb-ot-layout-gsubgpos-private.hh |  2 --
 src/main.cc                          |  6 +++---
 7 files changed, 5 insertions(+), 38 deletions(-)

commit f1aaa2a43654c28405ffd393de2cb127437c99a5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 23 15:19:50 2010 -0400

    Add TODO

 src/hb-ft.c                        |  2 --
 src/hb-ft.h                        |  1 +
 src/hb-open-file-private.hh        |  2 +-
 src/hb-open-type-private.hh        |  2 ++
 src/hb-ot-layout-common-private.hh | 12 ++++++------
 5 files changed, 10 insertions(+), 9 deletions(-)

commit 33d4d4325e15e332105ea8f361bab79ee542f0f8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 23 14:56:55 2010 -0400

    Zero glyph metrics before calling user callback

 src/hb-font.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 4206e9511a222c0c50cc9b4fe72ec421983bba2c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 23 14:44:55 2010 -0400

    More warning fixes

 src/hb-ot-layout.cc |  4 ++--
 src/hb-ot-shape.c   |  9 ++++-----
 src/hb-shape.c      | 32 ++++++++++++++++----------------
 3 files changed, 22 insertions(+), 23 deletions(-)

commit ef66ebeabc6c234004bd9e9bb67eb5c9711f4a1e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 23 14:40:36 2010 -0400

    Remove unused parameter

 src/hb-open-file-private.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 1d720192b193f48b44be0385eda3c2c5d5cd28ad
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 23 14:39:10 2010 -0400

    Fix compile warnings (HB_GNUC_UNUSED)

 src/hb-buffer.c             |  6 +++---
 src/hb-font.cc              | 31 ++++++++++++++++++++++---------
 src/hb-ft.c                 | 29 +++++++++++++++++++++--------
 src/hb-open-type-private.hh |  2 +-
 src/hb-unicode.c            |  8 ++++----
 5 files changed, 51 insertions(+), 25 deletions(-)

commit 8dfdca599c0a3ba5255131002910bca3b381acac
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 23 14:07:34 2010 -0400

    No need to keep blob in sanitize context

 src/hb-open-type-private.hh | 13 +++++--------
 1 file changed, 5 insertions(+), 8 deletions(-)

commit 254933c397f1ce9796f59689a25f9fc2e58df4ea
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 23 13:57:10 2010 -0400

    When sanitizing, delay making writable

    Before, as soon as we needed to make an edit, we tried to make
    the blob
    writable inplace.  That grows code unnecessarily though.  We can
    simply
    fail, make writable, then start again.  That's indeed what the
    fallback
    was doing anyway.

 src/hb-open-type-private.hh | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

commit 71e735e915c85536ee4d3035576f7426e8cd19dd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 23 13:48:06 2010 -0400

    [blob] Fallback to copying if mprotect() fails

 src/hb-blob.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 1aa4666b914da7747fc58a8f6f2d913c94e3b8da
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 23 13:32:03 2010 -0400

    Cleanup OpenTypeFontFile

 src/hb-open-file-private.hh | 44
 ++++++++++++++++++++++++++------------------
 src/main.cc                 |  2 +-
 2 files changed, 27 insertions(+), 19 deletions(-)

commit ae4190cafe927649f8ff8be6a0082478d1298fda
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 23 12:33:02 2010 -0400

    Properly define separate structs for TTCHeader and TTCHeaderVersion1

 src/hb-open-file-private.hh | 71
 +++++++++++++++++++++++++++++++++++----------
 1 file changed, 55 insertions(+), 16 deletions(-)

commit a065f471b3bc23d33ef75217308efeaed4ffd033
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 22 20:15:11 2010 -0400

    Cleanup Extension lookups

    Two things:

    1. Allow nested Extension lookups.  The offset is always positive, so
    it can't loop circularly.

    2. Move the check for all Extension subtables having the same lookup
    type to the correct place.  Before it wasn't really working.

 src/hb-ot-layout-gpos-private.hh | 29 +-------------------
 src/hb-ot-layout-gsub-private.hh | 57
 ++++++++++++++++++++++------------------
 2 files changed, 33 insertions(+), 53 deletions(-)

commit a0bb49c5830f8a7f25d573ec57b79df2620ddba7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 22 18:47:03 2010 -0400

    Add comment re bsearch effect on sanitize

 src/hb-open-file-private.hh        | 2 +-
 src/hb-ot-layout-common-private.hh | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

commit d632ec4000b3079150e6424e88a3ab7509f7445c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 22 18:33:12 2010 -0400

    Cosmetic

 src/hb-open-type-private.hh          | 6 +++---
 src/hb-ot-layout-gsubgpos-private.hh | 2 +-
 2 files changed, 4 insertions(+), 4 deletions(-)

commit a3263aa773ad7a914496792466c69047048b093c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 22 18:29:09 2010 -0400

    Convert the last set of cast macros to templates

 src/hb-open-file-private.hh          |  4 +--
 src/hb-open-type-private.hh          | 53
 +++++++++++++++++++++++-------------
 src/hb-ot-layout-gpos-private.hh     | 16 +++++------
 src/hb-ot-layout-gsub-private.hh     | 14 +++++-----
 src/hb-ot-layout-gsubgpos-private.hh | 12 ++++----
 5 files changed, 57 insertions(+), 42 deletions(-)

commit c38188a1912f72d9ef90ae1bcbdbba7ecce63371
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 22 16:52:09 2010 -0400

    Remove unused macro

 src/hb-open-type-private.hh | 1 -
 1 file changed, 1 deletion(-)

commit 3b2c2df41b90f2a1d9e33b3dc15a92cff58a689a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 22 16:51:42 2010 -0400

    Cleanup Extension sanitize()

 src/hb-ot-layout-common-private.hh   | 20 +++-----------------
 src/hb-ot-layout-gpos-private.hh     | 20 +++++++++++++-------
 src/hb-ot-layout-gsub-private.hh     | 20 +++++++++++++-------
 src/hb-ot-layout-gsubgpos-private.hh | 13 ++++---------
 4 files changed, 33 insertions(+), 40 deletions(-)

commit 1856184b93760a1a54fb1a3c54281bb252df7ce6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 22 14:15:11 2010 -0400

    Fail sanitize on major version mismatch

    We handle major-version differences via get_for_data(), so sanitize
    should never see a major version mismatch.

 src/hb-open-file-private.hh          | 4 ++--
 src/hb-ot-layout-gdef-private.hh     | 2 +-
 src/hb-ot-layout-gsubgpos-private.hh | 2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)

commit df3f505dcfeefc8cd395900b116767d22549f756
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 22 14:11:33 2010 -0400

    More sanitize cleanup

 src/hb-open-file-private.hh | 24 ++----------------------
 src/main.cc                 |  4 ++--
 2 files changed, 4 insertions(+), 24 deletions(-)

commit 278a91f0cd802ac817c2603429bae1fa4a350ea0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 22 13:59:39 2010 -0400

    Minor cleanup of sanitize

    Done with an audit of all sanitize()

 src/hb-ot-layout-gpos-private.hh | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

commit 9ac7dc73bc24b6dafb94df5de9cbf8fa0c82d5bc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 22 13:50:22 2010 -0400

    Check for (impossible) overflow

 src/hb-ot-layout-gpos-private.hh | 1 +
 1 file changed, 1 insertion(+)

commit 9fc8684fd85ef6ec82b3b54323761bbdd4c3d891
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 22 13:37:58 2010 -0400

    Cleanup ContextFormat3 sanitize

 src/hb-ot-layout-gsubgpos-private.hh | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit e77302c61f1f1620d1f438a997575fa6ee5c172e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 22 13:34:00 2010 -0400

    Add comment

 src/hb-ot-layout-common-private.hh | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 7c469c3ca4ed4e45c50eff70df59b1a4780bae5b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 22 13:26:21 2010 -0400

    Minor

 src/hb-ot-layout-common-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit dc228048a813e43356373505168d3822deea5d72
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 22 13:22:41 2010 -0400

    Remove integrity check in Tag sanitize

    Serves no useful purpose.

 src/hb-open-type-private.hh        | 9 ---------
 src/hb-ot-layout-common-private.hh | 2 +-
 2 files changed, 1 insertion(+), 10 deletions(-)

commit 8015a8c762dc7be36998d529b7a3af59e3d14d87
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 22 11:06:30 2010 -0400

    Don't sanitize raw table data

    That part is performed by individual table sanitize.

 src/hb-open-file-private.hh | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

commit c293581e962b7982622e7d607fa3909b40da718e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 22 11:15:46 2010 -0400

    Add coment

 src/hb-open-type-private.hh | 1 +
 1 file changed, 1 insertion(+)

commit 1faa76c6e848c6b0e360d9ddcf567533b87f8f31
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 22 10:54:26 2010 -0400

    Remove unnecessary casts

 src/hb-open-type-private.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 079dc40112d3908ff7b7028ea3019bfe82bf606d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 22 10:47:12 2010 -0400

    Avoid overflow in TableDirectory sanitize

 src/hb-open-file-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit fb5904ec935d925a423401bc975ffaa22022ce1b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 22 10:43:30 2010 -0400

    Make casts more explicit

 src/hb-ot-layout-gpos-private.hh | 4 ++--
 src/hb-ot-layout-gsub-private.hh | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

commit 565c80bd2960366ace2d10dd71beaaf2a80213c8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 22 10:26:35 2010 -0400

    Make sure semicolon is expected after DEFINE_NULL_DATA()

 src/hb-open-type-private.hh | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit bb1e16335e537231246f44740f73cc23c0707364
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 22 01:01:35 2010 -0400

    Improve Subst/Pos SubTable access and sanitize

 src/hb-ot-layout-gpos-private.hh | 4 ++--
 src/hb-ot-layout-gsub-private.hh | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

commit 81f2af40f9afd5bb9695018e6baddcd4aa3361c1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 22 00:58:49 2010 -0400

    Simplify Extension offset now that our int types have no alignment

 src/hb-ot-layout-gsubgpos-private.hh | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

commit 19828ad42d8117563412aae3c70887aa117805a9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 22 00:49:16 2010 -0400

    Sanitize shallow in Lookup since the generic SubLookup has no methods

 src/hb-ot-layout-common-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e5546a4352c54311ac4a9ef138b187378155ebe1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 22 00:45:42 2010 -0400

    Watch for overflow in Array sanitize

 src/hb-open-type-private.hh        | 21 +++++++++++++++------
 src/hb-ot-layout-common-private.hh |  2 +-
 2 files changed, 16 insertions(+), 7 deletions(-)

commit 4f5f1c34dda1e0629bfa6d7b0ffa2e1ce003b7c7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 22 00:27:39 2010 -0400

    Rename const_sub_array to sub_array since all consts are implicit now

 src/hb-open-type-private.hh        | 2 +-
 src/hb-ot-layout-common-private.hh | 4 ++--
 src/hb-ot-layout-gdef-private.hh   | 4 ++--
 3 files changed, 5 insertions(+), 5 deletions(-)

commit 0795b784dd1009976c185482a376df250167e73b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 22 00:23:14 2010 -0400

    Cosmetic

 src/hb-ot-layout-common-private.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 2d98d3bbaa0ddadcb08b5a8f437b18c211c50768
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 22 00:19:30 2010 -0400

    Simplify Lookup sanitize

 src/hb-ot-layout-common-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c755cb3e3ac55156d0d2ec05adea7a650b97cc41
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 22 00:11:43 2010 -0400

    Change header comment

 README                               | 2 +-
 src/hb-blob.c                        | 2 +-
 src/hb-blob.h                        | 2 +-
 src/hb-buffer-private.h              | 2 +-
 src/hb-buffer.c                      | 2 +-
 src/hb-buffer.h                      | 2 +-
 src/hb-common.h                      | 2 +-
 src/hb-font-private.h                | 2 +-
 src/hb-font.cc                       | 2 +-
 src/hb-font.h                        | 2 +-
 src/hb-ft.c                          | 2 +-
 src/hb-ft.h                          | 2 +-
 src/hb-glib.c                        | 2 +-
 src/hb-glib.h                        | 2 +-
 src/hb-icu.c                         | 2 +-
 src/hb-icu.h                         | 2 +-
 src/hb-language.c                    | 2 +-
 src/hb-language.h                    | 2 +-
 src/hb-object-private.h              | 2 +-
 src/hb-open-file-private.hh          | 2 +-
 src/hb-open-type-private.hh          | 2 +-
 src/hb-ot-layout-common-private.hh   | 2 +-
 src/hb-ot-layout-gdef-private.hh     | 2 +-
 src/hb-ot-layout-gpos-private.hh     | 2 +-
 src/hb-ot-layout-gsub-private.hh     | 2 +-
 src/hb-ot-layout-gsubgpos-private.hh | 2 +-
 src/hb-ot-layout-private.h           | 2 +-
 src/hb-ot-layout.cc                  | 2 +-
 src/hb-ot-layout.h                   | 2 +-
 src/hb-ot-shape-private.h            | 2 +-
 src/hb-ot-shape.c                    | 2 +-
 src/hb-ot-tag.c                      | 2 +-
 src/hb-ot-tag.h                      | 2 +-
 src/hb-ot.h                          | 2 +-
 src/hb-private.h                     | 2 +-
 src/hb-shape.c                       | 2 +-
 src/hb-shape.h                       | 2 +-
 src/hb-unicode-private.h             | 2 +-
 src/hb-unicode.c                     | 2 +-
 src/hb-unicode.h                     | 2 +-
 src/hb.h                             | 2 +-
 src/main.cc                          | 2 +-
 42 files changed, 42 insertions(+), 42 deletions(-)

commit 243d20e011e251462a07947275e0e98cc19c7e9b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 21 23:57:01 2010 -0400

    More cast simplification

 src/hb-open-type-private.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 0dfcc13a4668cdd2c2ebdd5f4a7540a51222cf2f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 21 23:41:26 2010 -0400

    Rename ConstCharP to CharP (overloaded now)

 src/hb-open-file-private.hh          | 10 +++++-----
 src/hb-open-type-private.hh          | 24 ++++++++++++------------
 src/hb-ot-layout-gpos-private.hh     | 12 ++++++------
 src/hb-ot-layout-gsub-private.hh     |  4 ++--
 src/hb-ot-layout-gsubgpos-private.hh | 14 +++++++-------
 5 files changed, 32 insertions(+), 32 deletions(-)

commit 62c0fd75737a69721dbf29e773405a4c529f8b6d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 21 23:30:48 2010 -0400

    Cleanup de-const-casting during sanitize

 src/hb-open-file-private.hh        |  2 +-
 src/hb-open-type-private.hh        | 29 ++++++++++++++---------------
 src/hb-ot-layout-common-private.hh |  4 ++--
 src/hb-ot-layout-gpos-private.hh   | 12 ++++++------
 4 files changed, 23 insertions(+), 24 deletions(-)

commit dd155870567cfb9647b2e71593ace8b2705d7cff
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 21 23:13:33 2010 -0400

    Add more comments

 src/hb-open-type-private.hh | 1 +
 1 file changed, 1 insertion(+)

commit c85c3620675f38ffdca59134aeec2641485f40ca
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 21 23:12:54 2010 -0400

    Add comment

 src/hb-open-type-private.hh | 1 +
 1 file changed, 1 insertion(+)

commit 2467c669c2aee4de2a6621a9d06cba0262376d41
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 21 23:11:45 2010 -0400

    Add comment

 src/hb-open-type-private.hh | 1 +
 1 file changed, 1 insertion(+)

commit 29c3f5e1b6212c775a7b911becd44ba093b7b0eb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 21 23:01:00 2010 -0400

    Improve comment

 src/hb-open-type-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 01c01618e98283611628cd54d5ba4bf122f24cd9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 21 22:49:56 2010 -0400

    Further simplify IntType struct defs

 src/hb-open-type-private.hh | 21 ++++++++++++---------
 1 file changed, 12 insertions(+), 9 deletions(-)

commit 2cb08458f674301cde9d962c13911035a251f7c5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 21 22:37:31 2010 -0400

    Rename const_array() to array() (overloaded)

 src/hb-open-type-private.hh          | 12 ++++++------
 src/hb-ot-layout-common-private.hh   |  4 ++--
 src/hb-ot-layout-gsub-private.hh     |  6 +++---
 src/hb-ot-layout-gsubgpos-private.hh | 16 ++++++++--------
 4 files changed, 19 insertions(+), 19 deletions(-)

commit 2e2f43edf2f49f4047e28b1ce2ea95938536de9c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 21 22:30:36 2010 -0400

    Remove ArrayAfter, use StructAfter in place

 src/hb-open-type-private.hh | 21 ++++++---------------
 1 file changed, 6 insertions(+), 15 deletions(-)

commit e961c86c579fd98ee604342a9c70c4e7f8d4f220
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 21 15:56:11 2010 -0400

    Convert NEXT() and ARRAY_AFTER() macros to templates

 src/hb-open-type-private.hh          | 40
 ++++++++++++++++++++++++++----------
 src/hb-ot-layout-common-private.hh   |  4 ++--
 src/hb-ot-layout-gsub-private.hh     |  8 ++++----
 src/hb-ot-layout-gsubgpos-private.hh | 24 +++++++++++-----------
 4 files changed, 47 insertions(+), 29 deletions(-)

commit 198facdc55756cb48cdfb8ba7fa50916fac54ec3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 21 13:35:36 2010 -0400

    Use templates for const char * casts

 src/hb-open-file-private.hh          | 12 ++++-----
 src/hb-open-type-private.hh          | 48
 ++++++++++++++++++------------------
 src/hb-ot-layout-common-private.hh   |  2 +-
 src/hb-ot-layout-gpos-private.hh     | 32 ++++++++++++------------
 src/hb-ot-layout-gsub-private.hh     |  4 +--
 src/hb-ot-layout-gsubgpos-private.hh | 14 +++++------
 6 files changed, 56 insertions(+), 56 deletions(-)

commit 1922ffe7013c46014803a9f18c42e193a25b1968
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 21 04:19:51 2010 -0400

    Const correctness

 src/hb-ot-layout-gsub-private.hh     |  4 ++--
 src/hb-ot-layout-gsubgpos-private.hh | 30 +++++++++++++++---------------
 2 files changed, 17 insertions(+), 17 deletions(-)

commit e032ed9f75d4a0f365649a25706871bbb5ae6651
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 21 03:11:46 2010 -0400

    Use templates for defining int typess

 src/hb-open-type-private.hh | 66
 ++++++++++++++++++++++++++++++---------------
 src/hb-private.h            | 10 ++-----
 2 files changed, 46 insertions(+), 30 deletions(-)

commit 2c9fd2adce5a6a9dcd62c874bd64613ea68d8d9b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 21 02:15:39 2010 -0400

    Remove unused macro

 src/hb-open-type-private.hh | 15 ---------------
 1 file changed, 15 deletions(-)

commit 7a52f281178867379adb6e6c6fb0022102f75d17
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 21 02:14:44 2010 -0400

    Rename macros

 src/hb-open-type-private.hh |  6 +++---
 src/hb-private.h            | 30 +++++++++++++++---------------
 2 files changed, 18 insertions(+), 18 deletions(-)

commit ffff7dc44cb2a35a60f92831165e9d3c3a61ce19
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 21 02:13:55 2010 -0400

    Minor

 src/hb-private.h | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit f60f2166c48d07f556ff83f04e95181946eb03df
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 21 02:12:45 2010 -0400

    Move macros around

 src/hb-private.h | 122
 ++++++++++++++++++++++++++++---------------------------
 1 file changed, 62 insertions(+), 60 deletions(-)

commit 649a4344ca363da3d44cdd908350449ec40ed0f9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 21 02:11:59 2010 -0400

    Remove unused macros

 src/hb-private.h | 7 -------
 1 file changed, 7 deletions(-)

commit eba8b4f644701cc6b78b0fcb4e932dce15561598
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Mar 29 00:04:12 2010 -0400

    GNOME Bug 613015 - [HB] Does not sanitize Device tables referenced
    from ValueRecords

 src/hb-ot-layout-gpos-private.hh | 47
 ++++++++++++++++++++++++++++++----------
 1 file changed, 36 insertions(+), 11 deletions(-)

commit 673a4efcbc72a62105a24d9b0b54047417160f7d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 21 02:02:57 2010 -0400

    WIP

 src/hb-ot-layout-gpos-private.hh | 102
 +++++++++++++++++++++++++++++++--------
 1 file changed, 81 insertions(+), 21 deletions(-)

commit 40d73bc68dd828cf68f90fde0f9499a6ce9fbb19
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 21 00:49:40 2010 -0400

    Improve comments

 src/hb-open-type-private.hh | 22 ++++++++++++++--------
 1 file changed, 14 insertions(+), 8 deletions(-)

commit 394bad41a76f90e441e327cef76efb99997e9ae0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 21 00:40:50 2010 -0400

    Remove stale TODO item

 src/hb-open-type-private.hh | 1 -
 1 file changed, 1 deletion(-)

commit 9d3677899f90abdc7fb3e3d854db654a8707a84b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 21 00:32:47 2010 -0400

    Use a function template instead of struct template for Null

 src/hb-open-type-private.hh | 24 ++++++++++--------------
 1 file changed, 10 insertions(+), 14 deletions(-)

commit ffd321afd91429c5de7ab03d71ef1030044f53cb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 21 00:14:12 2010 -0400

    Simplify Tag struct

 src/hb-open-file-private.hh        | 3 ++-
 src/hb-open-type-private.hh        | 6 +-----
 src/hb-ot-layout-common-private.hh | 3 ++-
 3 files changed, 5 insertions(+), 7 deletions(-)

commit 00e23fcc6fd0eee5c582251bf3de6a2703fbbd3e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 20 23:50:45 2010 -0400

    Cosmetic

 src/hb-open-type-private.hh        | 8 ++++----
 src/hb-ot-layout-common-private.hh | 6 +++---
 2 files changed, 7 insertions(+), 7 deletions(-)

commit a87072db5d41e25b2e31191545298bca4838c65c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 20 15:52:47 2010 -0400

    Fix Class operator return type

 src/hb-ot-layout-common-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f9b37727985191c9b4aedb0e9835736027e59260
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 20 15:51:53 2010 -0400

    Add couple consts to operators

 src/hb-open-type-private.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 53d237ec6352d7c6fab3b2805b48154a25506beb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Apr 20 15:25:27 2010 -0400

    Remove ASSERT_SIZE_DATA

 src/hb-open-type-private.hh        | 4 ----
 src/hb-ot-layout-common-private.hh | 9 ++++++---
 2 files changed, 6 insertions(+), 7 deletions(-)

commit 06558d2a745b8f3af11a8d6dce956ae52187a7e5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 19 02:34:10 2010 -0400

    Round instead of trunc

 src/hb-ot-layout-gpos-private.hh | 20 ++++++++++----------
 src/hb-private.h                 |  2 +-
 2 files changed, 11 insertions(+), 11 deletions(-)

commit 0e206de98621ed8a55824b42e9e6bf320f4c6cc8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 19 02:29:04 2010 -0400

    Fix warnings

 src/hb-open-type-private.hh          | 2 +-
 src/hb-ot-layout-gdef-private.hh     | 2 +-
 src/hb-ot-layout-gpos-private.hh     | 4 ++--
 src/hb-ot-layout-gsubgpos-private.hh | 6 +++---
 4 files changed, 7 insertions(+), 7 deletions(-)

commit d5943407a4251cb947fbfc130c0facb2f6216bd6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Apr 19 02:27:56 2010 -0400

    Fix debug build

 src/hb-open-type-private.hh          | 2 +-
 src/hb-ot-layout-gsubgpos-private.hh | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 12b27ed91de0192deee4e9feffcaf4aca4c78113
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Mar 27 17:00:19 2010 -0400

    Fix leak when duplicating blob

 src/hb-blob.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit 4b8487d83e0c10076a6c573cb3487790ce366607
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Mar 16 03:46:17 2010 -0400

    Fix the mystery bug!

    A couple bugs joined forces to exhibit the mystery behavior of
    crashes / infinite loops on OS X / wrong kerning / invalid memory
    access.  Pooh!

    The bugs were involved:

      - Wrong pointer math with ValueRecord in PairPosFormat1

      - Fallout from avoiding flex arrays, code not correctly updated
        to remove sizeof() usage.

    We strictly never use sizeof() directly now.  And the PairPos code
    is cleaned up.  Should fix them all.  Bugs are:

      Bug 605655 - Pango 1.26.2 introduces kerning bug
      Bug 611229 - Pango reads from uninitialized memory
      Bug 593240 - (pangoosx) Crash / infinite loop with Mac OS X

    We were also doing wrong math converting Device adjustments to
    hb_position_t.  Fallout from FreeType days.  Should shift 16, not
    6.  Fixed that too.

    There's still another bug: we don't sanitize Device records
    referenced from value records.  Fixing that also.

 src/hb-open-file-private.hh          |  4 +++-
 src/hb-open-type-private.hh          | 11 ++++++-----
 src/hb-ot-layout-common-private.hh   | 10 ++++++++--
 src/hb-ot-layout-gpos-private.hh     | 37
 ++++++++++++++++++++----------------
 src/hb-ot-layout-gsubgpos-private.hh | 15 ++++++++-------
 5 files changed, 46 insertions(+), 31 deletions(-)

commit 9b39755d104603d1163738f77637cc1923d4055b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 15 14:00:25 2010 -0400

    Typo

 src/hb-open-type-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit f85ec1c7da36d2c2c9b1c94a988563697dcc79c9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Mar 10 04:14:40 2010 -0500

    Cosmetic

 src/hb-open-type-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e48ed72230a83499dabbd02af2ac63340220a353
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Mar 1 22:33:45 2010 -0500

    [ft] Check stream->read instead of stream->base

    The former is more robust.  See discussion on freetype-devel.

 src/hb-ft.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 917c227500305aee543981ad24a39f868c5ca0b7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 23 16:47:51 2010 -0500

    Make blob unlocking 64bit-safe

    GNOME Bug 604128 - Applications crash when displaying Hebrew
    characters

 src/hb-blob.c | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

commit ecd2e996d2137fef30011a41dd57ea45f9a796de
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Feb 23 02:42:00 2010 -0500

    Improve the alignment for NullPool

 src/hb-open-type-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit bc7830e4259755ce7549025c6f5bf750e78c2ff1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Feb 17 15:14:57 2010 -0500

    Use __attribute__((unused)) only with gcc 4 and later

    See discussion at:
    https://bugzilla.gnome.org/show_bug.cgi?id=610183

 src/hb-private.h | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

commit 555d11273ee4c30e84eda3a78ffadb3ee7da65d0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 26 12:58:59 2010 -0500

    [GDEF] Fix bug in building synthetic GDEF

 src/hb-ot-layout.cc | 5 +++--
 src/hb-ot-layout.h  | 1 -
 2 files changed, 3 insertions(+), 3 deletions(-)

commit 70834d89c30a56fcd78825fbc28fc9c6bec31124
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 26 12:17:37 2010 -0500

    [TODO] Add kern/GPOS interaction

 TODO | 3 +++
 1 file changed, 3 insertions(+)

commit cd11a98fa1426e9dbc4b61e702913b23a4794ae2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 20 23:05:02 2009 +0100

    Fix compile with older FreeType

 configure.ac | 7 +++++++
 src/hb-ft.c  | 2 ++
 2 files changed, 9 insertions(+)

commit 7f7448a354c43650348b4e91b4e40ecf18718d66
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 20 21:42:14 2009 +0100

    Indent

 src/hb-ot-layout-gpos-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit e70f45eb522bcb41388cc218b79bbd6aaecf8050
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 20 21:26:24 2009 +0100

    Revert "Fallback to 'kern' if no GPOS applied"

    This reverts commit d740c8f78bcbe80a8bcd8a9468830a406da37cc0.

    The change is wrong.  If there is a GPOS table, we should not use
    'kern'.

 src/hb-ot-shape.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit d740c8f78bcbe80a8bcd8a9468830a406da37cc0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 20 21:23:56 2009 +0100

    Fallback to 'kern' if no GPOS applied

 src/hb-ot-shape.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 2f78c17197892b2bdc2f64caeb1c1c806ef44545
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 20 21:03:11 2009 +0100

    Remove glibism!

 src/hb-ot-shape-private.h | 4 ++--
 src/hb-ot-shape.c         | 4 ++--
 src/hb-shape.c            | 4 ++--
 3 files changed, 6 insertions(+), 6 deletions(-)

commit 907e67da13b5ed719362702138703fe2f90e790d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 20 20:59:51 2009 +0100

    Oops, add file.

 src/hb-ot-shape-private.h | 53
 +++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 53 insertions(+)

commit 2014b8d110231b13e524008282ece7451f1ae9e7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 20 20:58:26 2009 +0100

    Hook OpenType shaping up

    Default features only for now.

 src/Makefile.am     |   2 +
 src/hb-ot-layout.cc |  28 +++++++++
 src/hb-ot-layout.h  |   7 +++
 src/hb-ot-shape.c   | 165
 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-shape.c      |   8 +--
 5 files changed, 206 insertions(+), 4 deletions(-)

commit 196610ba4c7071c2b802d0fc921a63cbc0753114
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 20 19:01:14 2009 +0100

    Pass features down

 src/hb-shape.c | 49 +++++++++++++++++++++++++++++++++----------------
 1 file changed, 33 insertions(+), 16 deletions(-)

commit 51f141a7f38a73f671b23f58cadf97a72c43b625
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 20 18:22:28 2009 +0100

    Avoid overflow

 src/hb-shape.c | 2 ++
 1 file changed, 2 insertions(+)

commit 26d7a75752631b2596a5bcb7e645b34cc3d139ab
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 20 17:58:25 2009 +0100

    Refactor hb_shape a bit

 src/hb-shape.c | 87
 +++++++++++++++++++++++++++++++++++++++++++++++++---------
 1 file changed, 74 insertions(+), 13 deletions(-)

commit 001fc2d2aa22f14302739fe4ca45f7535855e0fb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 20 17:24:05 2009 +0100

    Add TrueType kern support

 src/hb-shape.c | 74
 +++++++++++++++++++++++++++++++++++++---------------------
 1 file changed, 48 insertions(+), 26 deletions(-)

commit 2c1b85cf66e5ecb7521b6018b76f0e161fb68967
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 20 16:29:17 2009 +0100

    Direct unicode->get_mirroring directly

 src/hb-shape.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 6a2ef5aa5459def232708af30ef8a484906b868b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 20 16:28:01 2009 +0100

    Do mirroring

 src/hb-shape.c | 18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)

commit 0465e69832393cc1ed36508ec5d597fbab64877a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 20 16:25:18 2009 +0100

    Protect against NULL funcs

 src/hb-buffer.c | 3 +++
 src/hb-font.cc  | 3 +++
 2 files changed, 6 insertions(+)

commit 5ceefa1d8dbd310570ea8d1c47107fe8d3dc96d9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 20 15:29:16 2009 +0100

    Add hb_unicode_get_*() functions

 src/hb-unicode.c | 37 +++++++++++++++++++++++++++++++++++++
 src/hb-unicode.h | 21 +++++++++++++++++++++
 2 files changed, 58 insertions(+)

commit b8a53e44ce05911ce98b7cff34dee165e19d87ba
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 20 14:56:25 2009 +0100

    We'll have to link to libstdc++ if linking to ICU, so disable test
    for now

    We have to get rid of the ICU in main lib.  Still thinking about
    best way
    to do it.

 src/Makefile.am | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

commit 314905d7548d5be58354546d660754b807b6efb2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 20 14:50:42 2009 +0100

    Explicitly track whether the buffer has positions

 src/hb-buffer-private.h |  3 ++-
 src/hb-buffer.c         | 27 ++++++++++++++-------------
 2 files changed, 16 insertions(+), 14 deletions(-)

commit 314b460d8a02ed4b2789ff527cf6c9bc19769114
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Dec 20 13:58:50 2009 +0100

    Add HB_DIRECTION_IS_FORWARD/BACKWARD

 src/hb-common.h | 2 ++
 src/hb-shape.c  | 3 +--
 2 files changed, 3 insertions(+), 2 deletions(-)

commit bdd0ff5290bae4db65c3fdf95c5728031f13ca84
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 15 04:07:40 2009 -0500

    Make main.cc compile without glib

 src/main.cc | 18 ++++++++++++++++--
 1 file changed, 16 insertions(+), 2 deletions(-)

commit 8a7d16808200f4fa02d6d12a8b8492bdedeb2c24
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 15 03:53:45 2009 -0500

    Distribute autogen.sh

 Makefile.am | 3 +++
 1 file changed, 3 insertions(+)

commit 807b8aa486753474e05e09f4fcca8ac94021b97c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 19 20:28:03 2009 -0500

    Another C++ strictness fix

    Pango Bug 602408 - Invalid C++ code breaks compile with Sun C++
    Compiler
    (Error: A union member cannot have a user-defined assignment operator)

    According to the bug:

    C++ Programming Language by Bjarne Stroustrup: Chapter 10.4.12 forbids
    explicitly using of union members with constructors, destructors
    or assignment
    operations.

    So we use a set() method instead of the assignment operator.  Ugly,
    but hey,
    that's life.

 src/hb-open-type-private.hh        | 8 ++++----
 src/hb-ot-layout-common-private.hh | 2 +-
 2 files changed, 5 insertions(+), 5 deletions(-)

commit 8b9b866d3e495c186f0530fcf4e00ffcdc170d3f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 19 20:27:57 2009 -0500

    Fix warning

 src/hb-ot-layout-gdef-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c65b26acf28bd1a5b346fd8f6f28bec1f7d17a2a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 18 11:27:33 2009 -0500

    Use autoconf FLEXIBLE_ARRAY_MEMBER when available

 configure.ac                     |  2 ++
 src/hb-ot-layout-gpos-private.hh |  4 ++--
 src/hb-private.h                 | 13 ++++++++++---
 3 files changed, 14 insertions(+), 5 deletions(-)

commit d33f674cb793af40f1612df3660b138383f2de95
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 18 09:47:44 2009 -0500

    Add Mongolian variation selectors

 src/hb-shape.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit d6387757de2c27867d6f57c4ee7c4ef436b3a74f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 11 17:15:03 2009 -0500

    Fix sanitize

 src/hb-ot-layout-common-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 636f017e387d46d4083c9f9ee57647a94dc5dc6d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 10 12:56:35 2009 -0500

    Remove obsolete TODO item

 src/hb-open-file-private.hh | 2 --
 1 file changed, 2 deletions(-)

commit bf2b25dd8591e92f3944c763641b613a70c379a7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 6 19:52:47 2009 -0500

    Remove done item

 src/hb-shape.c | 1 -
 1 file changed, 1 deletion(-)

commit 4a8605315901e0ff1e6e09437a92dd5ac39164cc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 6 19:52:01 2009 -0500

    Reverse buffer at the end if RTL

 src/hb-shape.c | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

commit ff44f88df2c46920f3ec2384ef321a4c7bb0f6ef
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 6 19:48:16 2009 -0500

    Handle shaping in non-native direction

 src/hb-buffer-private.h  |   1 +
 src/hb-buffer.c          |  42 +++++++++++++++++--
 src/hb-buffer.h          |  10 ++---
 src/hb-common.h          |  11 +++++
 src/hb-shape.c           |  38 +++++++++++++++--
 src/hb-unicode-private.h |   5 +++
 src/hb-unicode.c         | 103
 +++++++++++++++++++++++++++++++++++++++++++++++
 7 files changed, 196 insertions(+), 14 deletions(-)

commit b4b4272c8d19ba3e0cb8f12b3b7d1590349e3d14
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 6 17:46:33 2009 -0500

    Oops, wrong change

 src/hb-ot-layout.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 52ea47767c7c35650ebddfba6ddc8203a3e33d3a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 6 17:45:38 2009 -0500

    Change order of font and face for API consistency

 src/hb-ot-layout.cc | 14 +++++++-------
 src/hb-ot-layout.h  | 14 +++++++-------
 2 files changed, 14 insertions(+), 14 deletions(-)

commit f4f1fc970b3e37d9903cbf5e05bbd38be4df3047
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 6 17:42:38 2009 -0500

    Remove debug info that crept in

 src/hb-ot-layout.cc | 2 --
 1 file changed, 2 deletions(-)

commit aa196d6026b496ec70be3d3588cc8cd2b8ccdb36
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 6 17:23:31 2009 -0500

    [GSUB] More ligature/component fixing

    We can only reuse the ligid if it belongs to a previous ligature,
    not a
    component!

 src/hb-ot-layout-gsub-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 25e7ef704633447f109b148620336c42d6fb310e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 6 17:21:01 2009 -0500

    Add _hb_buffer_add_output_glyphs() that takes codepoint_t*

 src/hb-buffer-private.h          | 10 ++++++++-
 src/hb-buffer.c                  | 45
 ++++++++++++++++++++++++++++++++++++++--
 src/hb-ot-layout-gsub-private.hh | 16 +++++++-------
 3 files changed, 60 insertions(+), 11 deletions(-)

commit 9db8ad75317d589807e7725455f49cafece58d5d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 6 16:47:31 2009 -0500

    Add hb_ot_layout_position_finish()

    We expect buffer to be setup with default positions before GPOS.

 src/hb-buffer-private.h          |  6 +----
 src/hb-buffer.h                  | 11 +--------
 src/hb-ot-layout-gpos-private.hh |  8 +++----
 src/hb-ot-layout.cc              | 52
 ++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-layout.h               | 16 +++++++++----
 5 files changed, 69 insertions(+), 24 deletions(-)

commit edb54e9aeca25f4120a69ed3d5562cbb68fdb348
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 6 15:19:22 2009 -0500

    Fix FT_Face finalizer call

 src/hb-ft.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 3d14528b8b2e7da425a9df7057fc9fb326d8298c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 6 15:13:17 2009 -0500

    Rename hb_buffer_get_len() to hb_buffer_get_length()

 src/hb-buffer.c | 2 +-
 src/hb-buffer.h | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 1ff7775051559a8ca442be3938450c7ed3817806
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 6 13:52:57 2009 -0500

    Minor.

 src/hb-shape.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit 3648bdf5b221adfe01ad99714de420b49964921e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 5 20:17:53 2009 -0500

    Fix FT_Face generic finalizer

 src/hb-ft.c | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

commit 5a11c875d8c95d480e6f32b57e969ee34ca1940d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 5 20:08:17 2009 -0500

    Cosmetic

 src/hb-blob.c | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

commit 44533e773f75b9a1171d884fcbe91a2f3879e2d8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 5 19:58:02 2009 -0500

    Fix warning

 src/hb-object-private.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit bcc0406a525ca3fe597aec5f2a97e5c50965d49c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 5 19:54:23 2009 -0500

    include errno.h

 src/hb-blob.c | 1 +
 1 file changed, 1 insertion(+)

commit 799b3c375ad0e1293fd37a0e3a0d422a3166dcd8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 5 19:37:58 2009 -0500

    Add debugging to object lifecycle

 src/hb-object-private.h | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

commit 25edb940ab050545f47a06648e73c192fa213548
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 5 19:20:06 2009 -0500

    Cosmetic

 src/hb-ft.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 850dc5bb551409bb9bf6113ec2199bb3fb905e43
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 5 18:26:52 2009 -0500

    Return 0 from get_glyph_nil

 src/hb-font.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 85555a953376ee68a8fcc64485e74d44a353577b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 5 18:25:56 2009 -0500

    Initialize font->klass

 src/hb-font.cc | 2 ++
 1 file changed, 2 insertions(+)

commit bcd26bd7b1c96057bf154d7d50a61018d40f0d29
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 5 18:03:26 2009 -0500

    Add TODO item

 src/hb-ft.c | 1 +
 1 file changed, 1 insertion(+)

commit f4281e0a92a40746fa630fb15b877adaf3ff15b1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 5 17:58:41 2009 -0500

    Fix ref counting

 src/hb-ft.c | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

commit 6358ff45ae8cfc0b58b4976619319e3dde43add2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 5 17:39:16 2009 -0500

    Add hb_ft_face_create_cached

 src/hb-ft.c | 16 ++++++++++++++++
 src/hb-ft.h |  3 +++
 2 files changed, 19 insertions(+)

commit 2027f74b286cabe3c60c275170c4f4b437a30f55
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 5 16:34:47 2009 -0500

    Add default positioning to hb-shape

 src/hb-shape.c | 28 ++++++++++++++++++++++++----
 1 file changed, 24 insertions(+), 4 deletions(-)

commit c3f9f7e59d865f8664862b7ca99d9a3a9221e456
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 5 16:16:14 2009 -0500

    Fix MarkMark issue with ligid and components

 src/hb-ot-layout-gpos-private.hh | 11 ++++++-----
 src/hb-ot-layout-gsub-private.hh |  6 +-----
 2 files changed, 7 insertions(+), 10 deletions(-)

commit d0351314cd29fbdf0efb5c7f89a569648f7a7fc7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 5 16:16:06 2009 -0500

    Include stdio.h if debugging

 src/hb-blob.c                        | 4 ++++
 src/hb-open-type-private.hh          | 1 +
 src/hb-ot-layout-gsubgpos-private.hh | 1 +
 3 files changed, 6 insertions(+)

commit 2e336692913405976392bf505028481a5caa53b4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 5 13:55:41 2009 -0500

    Add hb_font_get_*

 src/hb-font.cc | 35 +++++++++++++++++++++++++++++++++++
 src/hb-font.h  | 18 ++++++++++++++++++
 src/hb-shape.c |  2 +-
 3 files changed, 54 insertions(+), 1 deletion(-)

commit 9bef3611f07b45ba8199a4a339c72f49d266216a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 5 12:20:11 2009 -0500

    Rename [xy]_pos to [xy]_offset since we don't accumulate positions

 src/hb-buffer-private.h          |  4 ++--
 src/hb-buffer.h                  |  4 ++--
 src/hb-font.h                    |  4 ++--
 src/hb-ft.c                      | 10 +++++-----
 src/hb-ot-layout-gpos-private.hh | 40
 ++++++++++++----------------------------
 src/hb-shape.c                   | 14 +++++++-------
 src/hb-shape.h                   |  4 ++--
 7 files changed, 32 insertions(+), 48 deletions(-)

commit 2daa47e9cdbfb027f76765301b3a78950e92eb09
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Nov 5 12:08:34 2009 -0500

    Cosmetic

 src/hb-shape.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2f50d873680ce0a43b6ec79df1ac946b91f31e63
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 21:07:03 2009 -0500

    Start filling hb_shape() in

 src/hb-buffer-private.h |  1 +
 src/hb-shape.c          | 40 +++++++++++++++++++++++++++++++++++++++-
 2 files changed, 40 insertions(+), 1 deletion(-)

commit ae070b7d39d03bd8bc1244f687b24db505f4af3f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 20:29:54 2009 -0500

    Add script and language to buffer

 TODO                    |  1 -
 src/hb-buffer-private.h |  6 +++---
 src/hb-buffer.c         | 26 ++++++++++++++++++++++++++
 src/hb-buffer.h         | 15 ++++++++++++++-
 4 files changed, 43 insertions(+), 5 deletions(-)

commit 8a3511ac6c795226699c2b36e03401ecdf88f5f8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 19:45:39 2009 -0500

    Add hb_language_t as well as language/script conversion to OT tags

 src/Makefile.am     |   4 +
 src/hb-language.c   | 113 +++++++++
 src/hb-language.h   |  44 ++++
 src/hb-ot-layout.cc |   6 +-
 src/hb-ot-layout.h  |   4 +-
 src/hb-ot-tag.c     | 662
 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-tag.h     |  49 ++++
 src/hb-ot.h         |   1 +
 src/hb-private.h    |   3 +
 src/hb.h            |   1 +
 10 files changed, 882 insertions(+), 5 deletions(-)

commit 4591753ad4b5ec0224e3f1befdfe4fc5f6075562
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 18:15:59 2009 -0500

    Define ARRAY_LENGTH

 src/hb-private.h | 15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)

commit 214ac7c1ff51b397d227832526f882e824cb9ea3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 18:12:32 2009 -0500

    Another one

 src/hb-unicode.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 1e91434569a9e9535ef021ca52b60b2e2af75d19
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 18:12:09 2009 -0500

    Minor

 src/hb-open-type-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 48de3730cdf91b9f6473509e22260a902ccec992
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 16:59:50 2009 -0500

    Fix previous commit, ouch!

 src/hb-open-type-private.hh        | 12 ++++++++++++
 src/hb-ot-layout-common-private.hh | 12 ++++--------
 src/hb-ot-layout-gdef-private.hh   | 12 ++++--------
 3 files changed, 20 insertions(+), 16 deletions(-)

commit e21899bc3593aa0d3adf64cee21c5de2ea219783
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 16:36:14 2009 -0500

    Fix array query API

    The array query APIs now all do:

      - Return the total number of items
      - Take a start_offset, such that individual items can be fetched
      - The _count IN/OUT variable always has number of items written
        into the array upon return of the function

 TODO                                 |  1 -
 src/hb-ot-layout-common-private.hh   | 59 ++++++++++++++-----------
 src/hb-ot-layout-gdef-private.hh     | 84
 +++++++++++++++++++++---------------
 src/hb-ot-layout-gsubgpos-private.hh | 14 +++---
 src/hb-ot-layout.cc                  | 40 ++++++++++-------
 src/hb-ot-layout.h                   | 24 +++++++----
 6 files changed, 131 insertions(+), 91 deletions(-)

commit 3b59306b858d31d97be0ea8c64461de1d0d03572
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Nov 4 15:48:32 2009 -0500

    Finish FT glue.  Rough and untested

 src/hb-font.cc |   2 +-
 src/hb-font.h  |   2 +-
 src/hb-ft.c    | 114
 ++++++++++++++++++++++++++++++---------------------------
 3 files changed, 63 insertions(+), 55 deletions(-)

commit f8be443aecd54b479470e6559b1dfbc8f33c5f55
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 3 20:28:27 2009 -0500

    Add TODO item

 TODO | 1 +
 1 file changed, 1 insertion(+)

commit 7951279b4a52b48f13631e7838dbc180c7249ea4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 3 20:27:05 2009 -0500

    Implement nil font functions

 TODO                             |  1 +
 src/hb-font-private.h            |  8 ++---
 src/hb-font.cc                   | 72
 +++++++++++++++++++++++++++++++++++++---
 src/hb-font.h                    |  9 +++--
 src/hb-ot-layout-gpos-private.hh |  7 ++--
 src/hb-ot-layout-gsub-private.hh |  2 +-
 src/hb-private.h                 | 18 +++++-----
 7 files changed, 91 insertions(+), 26 deletions(-)

commit 8fb3d1aa4e613cdf965a83bd650c668884c58ad8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 3 18:34:20 2009 -0500

    Start ft glue

 TODO                  |   3 -
 src/Makefile.am       |  16 ++++-
 src/hb-font-private.h |   4 +-
 src/hb-font.cc        |  17 ++++-
 src/hb-font.h         |   6 +-
 src/hb-ft.c           | 192
 ++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-ft.h           |  52 ++++++++++++++
 src/hb-glib.h         |   2 -
 src/hb-icu.h          |   2 -
 src/hb.h              |   4 +-
 10 files changed, 281 insertions(+), 17 deletions(-)

commit d94647e2cd187bf4a4c8fb1c0c15c3d23c1293ac
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 3 16:35:10 2009 -0500

    Add ICU glue

 configure.ac    |   8 +-
 src/Makefile.am |  23 +++++-
 src/hb-icu.c    | 221
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-icu.h    |  41 +++++++++++
 4 files changed, 288 insertions(+), 5 deletions(-)

commit b7dd4b945b4ec384526439b365a25739bf9cd2df
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 3 15:21:15 2009 -0500

    Fix hb_be_uint16()

 src/hb-private.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit cd7555eef27cb18857c0c06d2afdaf3a354a3c15
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 3 15:16:10 2009 -0500

    Namespace MSVC defines in public header

 src/hb-common.h | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 5ebabecef382c3e8b0a2a5657b2c01f7ff37d796
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 3 15:15:07 2009 -0500

    Move unicode_funcs to buffer

 TODO                    |  1 -
 src/hb-buffer-private.h | 12 +++++++++++-
 src/hb-buffer.c         | 47
 ++++++++++++++++++++++++++++++++++++++---------
 src/hb-buffer.h         | 10 ++++++++++
 src/hb-font-private.h   |  3 ---
 src/hb-font.cc          | 17 -----------------
 src/hb-font.h           |  9 ++++-----
 7 files changed, 63 insertions(+), 36 deletions(-)

commit d5a8e46099e363d928b54de104126b1b34ba401c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 3 15:14:40 2009 -0500

    [Makefile] Install hb-unicode.h

    Separate OT headers also.

 src/Makefile.am | 27 ++++++++++++++++-----------
 1 file changed, 16 insertions(+), 11 deletions(-)

commit 63d7a41dd0704a7e89bd2872ad096f470f51866a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 3 15:14:08 2009 -0500

    [TODO] Add item for fixing buffer error handling

 TODO | 1 +
 1 file changed, 1 insertion(+)

commit 21d0fce3d5364c91e5582bd530210f03e054d1a4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 3 14:28:32 2009 -0500

    Add check for not linking to libstdc++

 TODO                   |  3 +--
 src/Makefile.am        |  4 ++++
 src/check-libstdc++.sh | 28 ++++++++++++++++++++++++++++
 3 files changed, 33 insertions(+), 2 deletions(-)

commit ca95ce460adf2ca6901595d4a6107fd000d90151
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 3 14:18:33 2009 -0500

    Use the C linker, not C++ linker

    Such that we don't link to libstdc++.

 src/Makefile.am | 2 ++
 1 file changed, 2 insertions(+)

commit eb4ebda2d10637b966f42a4ed5cfaec46082a050
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 3 14:09:32 2009 -0500

    [configure] Fix check for FreeType

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit cb0e99a5a76136c128faba1c27d7e7eac2f219ee
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 3 14:09:10 2009 -0500

    [TODO] Remove obsolete item

 TODO | 2 --
 1 file changed, 2 deletions(-)

commit 3a59ec37c5576b711c7c36dcfa2a63f6c00a3f5c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 3 11:36:06 2009 -0500

    Add bunch of TODO items

 TODO | 15 ++++++++++++---
 1 file changed, 12 insertions(+), 3 deletions(-)

commit ffbe0a853d5e7defa85d0eef53814c22d1ecb412
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 3 10:52:45 2009 -0500

    More MSVC fixes from Jonathan Kew

 src/hb-common.h  | 7 ++++++-
 src/hb-private.h | 5 +++++
 2 files changed, 11 insertions(+), 1 deletion(-)

commit d3480ba37fbb5d4be75b094060f5b2f1ce98fb53
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Nov 3 10:47:29 2009 -0500

    Don't use zero-sized arrays

    It's not part of the standard and MSVC doesn't like it.  It makes
    the code
    a lot less elegant than it used to be, but I think it should work now.

 src/hb-open-file-private.hh          |  4 +-
 src/hb-open-type-private.hh          | 36 +++++++++++------
 src/hb-ot-layout-common-private.hh   | 33 ++++++++--------
 src/hb-ot-layout-gdef-private.hh     | 14 +++----
 src/hb-ot-layout-gpos-private.hh     | 76
 ++++++++++++++----------------------
 src/hb-ot-layout-gsub-private.hh     | 44 ++++++++-------------
 src/hb-ot-layout-gsubgpos-private.hh | 47 +++++++++++-----------
 src/hb-private.h                     |  5 +++
 8 files changed, 122 insertions(+), 137 deletions(-)

commit 6bec81aa3a58b8be255568b2ea63b7854e1b0ea7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 2 19:17:36 2009 -0500

    Cosmetic

 src/hb-ot-layout-common-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f94cf6b969281cf8a7f701ff26ea4f134ff9746e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 2 18:55:19 2009 -0500

    Another try at build without glib

 configure.ac | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

commit 2f3e69f3cb7e571cc62b0840d0b3f2072b29345a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 2 18:53:15 2009 -0500

    Fix build without glib, again

 src/Makefile.am | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit d03f81865914b40e941bf680557c0d8f98e30ad5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 2 18:52:21 2009 -0500

    Disable configure cache

 autogen.sh | 1 -
 1 file changed, 1 deletion(-)

commit a6451aa626fa5850d7c3b716bd52126995154e27
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 2 18:35:12 2009 -0500

    We don't really use gthread directly

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 63a792a811e0ad69d05e8805d4f347bd533db4c3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 2 18:33:52 2009 -0500

    Update Makefile to build without glib

 src/Makefile.am | 12 +++++++++---
 src/hb-glib.c   |  2 ++
 2 files changed, 11 insertions(+), 3 deletions(-)

commit 68a2c771e2b923461a552bf3673e9e8245e1bfea
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 2 18:31:53 2009 -0500

    Build without glib

    Thready-safety disabled in that case, until we add support for
    pthread, etc.
    Fun...

 src/hb-private.h | 19 +++++++++++++++++--
 1 file changed, 17 insertions(+), 2 deletions(-)

commit cc4c096a7e08ae96b3030fe27f871ce5b797f370
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 2 18:13:17 2009 -0500

    MSVC has no stdint.h

 src/hb-common.h | 13 +++++++++++++
 1 file changed, 13 insertions(+)

commit 9a204c7ab57ca0a866c72e1431c54a8883b15605
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 2 18:11:55 2009 -0500

    Remove use of GINT16_FROM_BE

 src/hb-private.h | 10 ++--------
 1 file changed, 2 insertions(+), 8 deletions(-)

commit 1f0ceeb8cf2fad0a0dfd338ce1472470a81789d4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 2 16:28:39 2009 -0500

    Install library

 autogen.sh      | 2 +-
 src/Makefile.am | 5 ++---
 2 files changed, 3 insertions(+), 4 deletions(-)

commit 5932f8f7c3b73ade3752020351fa8b6a9a3bf500
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 2 16:38:41 2009 -0500

    Generate ChangeLog

 Makefile.am | 39 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 39 insertions(+)

commit 29aa40018301a4f138cd5e73463079c7704bf3ac
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 2 16:28:39 2009 -0500

    Add build system

 AUTHORS                |   0
 src/COPYING => COPYING |   0
 Makefile.am            |   3 +
 NEWS                   |   0
 src/README => README   |   0
 src/TODO => TODO       |   0
 autogen.sh             | 189
 +++++++++++++++++++++++++++++++++++++++++++++++++
 configure.ac           |  40 +++++++++++
 git.mk                 | 184
 +++++++++++++++++++++++++++++++++++++++++++++++
 harfbuzz.pc.in         |  11 +++
 src/.gitignore         |   1 -
 src/Makefile.ng        |  11 ---
 12 files changed, 427 insertions(+), 12 deletions(-)

commit c09ed9801ead002d6f8e507ce664b83707b202e9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 29 03:08:42 2009 -0400

    [HB] Add glyph_metrics typedef

 src/hb-font.h | 9 +++++++++
 1 file changed, 9 insertions(+)

commit 91b1e03e0312be2a7a165308239b40449e3ab360
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 29 03:05:18 2009 -0400

    [HB] Add point_index to get_contour_point()

    Pointed out by Keith Stribley on HarfBuzz list.

 src/hb-font.h | 1 +
 1 file changed, 1 insertion(+)

commit aa87d951739f6beacb66daa235cd033fdcfcadd7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Oct 29 03:00:44 2009 -0400

    [HB] Fix lookup_flag ignoring

    Reported by Keith Stribley on HarfBuzz list.

 src/hb-ot-layout-common-private.hh | 1 +
 src/hb-ot-layout.cc                | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

commit 52e9a71d578c5171bbb0f4bfc1b70841c3270328
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 21 13:58:56 2009 -0400

    [HB] Add comment

 src/hb-ot-layout-gsubgpos-private.hh | 5 +++++
 1 file changed, 5 insertions(+)

commit f9c0a2dad09cd168fb28cdee09b4303f307ea56d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 21 13:43:54 2009 -0400

    [HB] Fix apply_lookup() loop

    Part of Bug 595539 - Regressions in rendering certain Thai sequences
    with
    OpenType font

 src/hb-ot-layout-gsubgpos-private.hh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit c0ab43c05833e8fc06d770a89370bec58a627e74
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Sep 21 13:40:38 2009 -0400

    [HB] Fix bug in chain_context_lookup() invocations

    Part of Bug 595539 - Regressions in rendering certain Thai sequences
    with
    OpenType font

 src/hb-ot-layout-gsubgpos-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit e6bd4e93bd5722249ab977dfa98bdc8eb765318c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 30 21:02:28 2009 -0400

    [HB] Add TODO item

 src/TODO | 1 +
 1 file changed, 1 insertion(+)

commit 3e2401f6c53d2b047954d75c37aef5e5e7cdc51a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 28 17:17:11 2009 -0400

    [HB] Rename DEBUG to TRACE where appropriate

 src/hb-open-file-private.hh          |  8 ++--
 src/hb-open-type-private.hh          | 50 ++++++++++----------
 src/hb-ot-layout-common-private.hh   | 32 ++++++-------
 src/hb-ot-layout-gdef-private.hh     | 20 ++++----
 src/hb-ot-layout-gpos-private.hh     | 92
 ++++++++++++++++++------------------
 src/hb-ot-layout-gsub-private.hh     | 72 ++++++++++++++--------------
 src/hb-ot-layout-gsubgpos-private.hh | 78 +++++++++++++++---------------
 7 files changed, 176 insertions(+), 176 deletions(-)

commit 0535b50f436f3dac85e6df1761957f86c2bd7213
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 28 17:14:33 2009 -0400

    [HB] Add GSUB/GPOS tracing

 src/hb-ot-layout-gpos-private.hh     | 29 ++++++++++++++++++---
 src/hb-ot-layout-gsub-private.hh     | 28 ++++++++++++++++++---
 src/hb-ot-layout-gsubgpos-private.hh | 49
 ++++++++++++++++++++++++++++++++++--
 3 files changed, 98 insertions(+), 8 deletions(-)

commit 95e202403ffa543c817f45cca21fbc116eb8e807
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 28 16:31:20 2009 -0400

    [HB] Allow enabling different debug facilities individually

 src/hb-blob.c               | 28 ++++++++++++++++------------
 src/hb-open-type-private.hh | 32 ++++++++++++++++++--------------
 2 files changed, 34 insertions(+), 26 deletions(-)

commit 37006bd1bd107ac1a1c1b131579e9c494ba3a20f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 28 09:46:14 2009 -0400

    Fix stupid array growing bug

 src/hb-ot-layout.cc | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 9897749113f76dc26a83bfae8de62e55d384fcad
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 27 01:32:17 2009 -0400

    [HB] Simplify counting

 src/hb-ot-layout.cc | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

commit 81a5c4df94e7c6066314d5fe75bbaf24483bc022
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 27 00:21:04 2009 -0400

    [HB] Indent

 src/hb-blob.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit c91facd83b5dc3b9aed75617c7c35585ff18889f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 26 18:53:43 2009 -0400

    [HB] Bug 593231 - < c99 compiler dislikes ValueRecord

 src/hb-ot-layout-gpos-private.hh | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit f0c7540c4e217a7354072365a7301453d1e25b80
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 20 14:01:37 2009 -0400

    Bug 592484 -  invalid write in HB

    Fix off-by-one.

 src/hb-ot-layout.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit b614b004723ead60849dd37e7ba2faee67cebd93
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 20 13:07:50 2009 -0400

    [HB][glib] Make glib unicode funcs static

 src/hb-glib.c | 36 +++++++++++++++++-------------------
 1 file changed, 17 insertions(+), 19 deletions(-)

commit 8b5346130425c7c101f6ff2432874ba2fd372edc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 19 18:16:50 2009 -0400

    [HB] Fix more casts

 src/hb-open-type-private.hh | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit 9d2e02db74deb3b3b92beab96f112cc387c8bd88
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 19 18:07:36 2009 -0400

    [HB] Rename CAIRO_ in macro prefix to HB_

    Hiss!

 src/hb-private.h | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 388ad037ff399c23c5e24bbcede27e0e35bed07e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 19 16:45:41 2009 -0400

    [HB] Remove HB_MEMORY_MODE_READONLY_NEVER_DUPLICATE

    Unlike the rest of the memory-mode enum, this one didn't only
    describe the access mode of the input memory region.  Remove it.

    If someone wants to inhibit duplicating, they can lock the blob
    and throw away the key.

    Based on mailing list discussion with Carl Worth.

 src/hb-blob.c | 51 +++++++++++++++++++++++++--------------------------
 src/hb-blob.h |  1 -
 2 files changed, 25 insertions(+), 27 deletions(-)

commit 977eeb714454630bd045bb11f58ff6397f10b143
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 19 16:17:24 2009 -0400

    [HB] s/writeable/writable/g

 src/hb-blob.c               | 38 +++++++++++++++++++-------------------
 src/hb-blob.h               | 10 +++++-----
 src/hb-open-type-private.hh |  6 +++---
 3 files changed, 27 insertions(+), 27 deletions(-)

commit 2f5931e404cb56e31d24b2eb7ff0a849fb077b55
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 19 16:07:40 2009 -0400

    [HB] Hide lig_id and component members of hb_glyph_info_t

 src/hb-buffer.h | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

commit 6b600dd6199104cff01b3fa43d2abb52ae4319ea
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 19 14:45:24 2009 -0400

    [HB] Fix typo

 src/hb-font.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 32c65a5ca3bde673bf2aa8fca911dd32914d3122
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 18 18:37:36 2009 -0400

    [HB] Add font funcs prototypes

 src/hb-font-private.h |  2 --
 src/hb-font.cc        | 14 ++++++--------
 src/hb-font.h         | 23 ++++++++++++++++-------
 3 files changed, 22 insertions(+), 17 deletions(-)

commit 8f034d5849627ee95a5889fa34c9ba294fff13ca
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 18 16:41:59 2009 -0400

    Fix a few other pedantic warnings

 src/hb-ot-layout-common-private.hh | 2 +-
 src/hb-ot-layout-gdef-private.hh   | 2 +-
 src/hb-ot-layout-gpos-private.hh   | 4 ++--
 src/hb-ot-layout-gsub-private.hh   | 2 +-
 4 files changed, 5 insertions(+), 5 deletions(-)

commit 864e2560b627f1e73be3b0635e02f00844cb67c3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 18 16:38:48 2009 -0400

    [HB] Fix pedantic warnings

 src/hb-blob.h           |  2 +-
 src/hb-buffer-private.h | 18 +++++++++---------
 src/hb-buffer.h         |  6 +++---
 3 files changed, 13 insertions(+), 13 deletions(-)

commit 3e09722214d9bbcc9014409342072c79d0c4447f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 18 16:32:31 2009 -0400

    [HB] Fix more wrong method signatures

 src/hb-ot-layout-common-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 822e99fe9ae920df41a0bd3f1125495c2ea96b45
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 18 16:27:48 2009 -0400

    [HB] Fix wrong method signature

 src/hb-ot-layout-common-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 4ff2a58952f010c6252f06e5f404d6840d257250
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 18 15:49:23 2009 -0400

    Bug 592194 -  Fix missing _SC_PAGE_SIZE macro

    Autoconfiscate a simple call to mprotect() even more.

 src/hb-blob.c | 94
 ++++++++++++++++++++++++++++++++++++++---------------------
 1 file changed, 60 insertions(+), 34 deletions(-)

commit 3c69bd46e27069fac0bfdefdecf5492c17eb01df
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 17 16:48:13 2009 -0400

    [HB] Avoid int overflow in GPOS

    Bug 592036 - integer overflow bug causes misrendering of Nepali
    characters

 src/hb-ot-layout-gpos-private.hh | 20 ++++++++++----------
 src/hb-private.h                 |  3 +++
 2 files changed, 13 insertions(+), 10 deletions(-)

commit b2b18ef43c5bac6a5bb8412da7c9a37f815d4deb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 14 19:37:18 2009 -0400

    [HB] Simplify loop

 src/hb-ot-layout-gpos-private.hh | 31 ++++++++++++++-----------------
 1 file changed, 14 insertions(+), 17 deletions(-)

commit b41f210d12d8df48e645823463343f7e14b0ddd0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 14 19:33:24 2009 -0400

    [HB] Merge mark positionin code between three types of lookups

 src/hb-ot-layout-gpos-private.hh | 95
 ++++++++++++----------------------------
 1 file changed, 29 insertions(+), 66 deletions(-)

commit cd33cb9ed84308da72bd7c64b9355dc2410c63ec
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 14 18:42:42 2009 -0400

    [HB] More minor shuffling

 src/hb-open-type-private.hh        | 3 ---
 src/hb-ot-layout-common-private.hh | 5 +++++
 2 files changed, 5 insertions(+), 3 deletions(-)

commit 80e2aa2e1bfa2c8ecedcfa4cce8cadeb15792ac3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 14 18:40:56 2009 -0400

    [HB] Move code around

 src/hb-open-type-private.hh        | 21 +++++++++++++++++++++
 src/hb-ot-layout-common-private.hh | 19 -------------------
 2 files changed, 21 insertions(+), 19 deletions(-)

commit 3564ee5216004d45d30b0ded61184cf8dde5dd89
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 14 18:32:56 2009 -0400

    [HB] Correctly sanitize LigatureAttach

 src/hb-open-type-private.hh        | 14 ++++++++++----
 src/hb-ot-layout-common-private.hh |  4 ++++
 src/hb-ot-layout-gdef-private.hh   |  4 ++--
 src/hb-ot-layout-gpos-private.hh   |  6 +++---
 4 files changed, 19 insertions(+), 9 deletions(-)

commit cb71a2fb76c6ddee050f775eb299ee44230c3ac9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 14 18:14:03 2009 -0400

    [HB] Simplify MarkBase and MarkLig too

 src/hb-ot-layout-gpos-private.hh | 127
 +++++++++++++++------------------------
 1 file changed, 48 insertions(+), 79 deletions(-)

commit dfa54f4440960c39d37ef02fff4c0d9eb315d4b4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 14 17:53:31 2009 -0400

    [HB] Simplify MarkMark

 src/hb-ot-layout-gpos-private.hh | 29 ++++++++++++++++-------------
 1 file changed, 16 insertions(+), 13 deletions(-)

commit 815a73e4202ca17677f12e862b70ca8724cf2f57
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 14 17:31:16 2009 -0400

    [HB] Fix possible int overflows during sanitize

 src/TODO                         |  1 -
 src/hb-open-type-private.hh      | 22 ++++++++++++++++++++++
 src/hb-ot-layout-gpos-private.hh | 15 ++++++++-------
 3 files changed, 30 insertions(+), 8 deletions(-)

commit ae728e51e94d18d731b7c8dc524da1a4f427d63b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 14 16:41:00 2009 -0400

    [HB] Debug output for SANITIZE_MEM()

 src/hb-open-type-private.hh | 34 +++++++++++++++++++++++-----------
 1 file changed, 23 insertions(+), 11 deletions(-)

commit 41895506cb6a41b1a833866f8822261ea449ea0b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 14 16:25:33 2009 -0400

    [HB] Use inline function for SANITIZE_MEM()

 src/hb-open-type-private.hh | 33 ++++++++++++++++++++-------------
 1 file changed, 20 insertions(+), 13 deletions(-)

commit 95528131b5ab9fc9e265ace715832135ebd457a4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 14 16:17:32 2009 -0400

    [HB] Use SANITIZE_THIS() when applicable

 src/hb-open-type-private.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 5769538abfe153c503da4801649493e57a9854c2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 14 16:12:22 2009 -0400

    [HB] Add note about auditing sanitize code for overflows

 src/TODO                         | 1 +
 src/hb-ot-layout-gpos-private.hh | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

commit 15232e26f4a89dab1b6de35ad9d3d16e75bf93d0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 13 17:13:25 2009 -0400

    [HB] Add empty hb_shape() API

 src/Makefile.am |  2 ++
 src/hb-shape.c  | 40 ++++++++++++++++++++++++++++++++++++++++
 src/hb-shape.h  | 53
 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 95 insertions(+)

commit 2866d2974b6768e93cc7d473d14c5a8abae5f7fd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 13 11:47:08 2009 -0400

    [HB] Bitfield packing *is* very delicate

    Fix the second instance.

 src/hb-buffer.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ec90ee23b29aab187c3fa209970aa97434c84b1b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 13 05:25:23 2009 -0400

    Bug 591511 – hh-blob.c does not compile using mingw on windows

    Check for sys/mman.h, not mprotect().

 src/hb-blob.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 12eae6d55d468ff2fbe2bc12bec188d313c671f9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 13 05:20:46 2009 -0400

    [HB] Fix buffer sizing issue with mingw gcc

    Bit field packing is a delicate field.  Issue reported in comment
    3 here:
    http://bugzilla.gnome.org/show_bug.cgi?id=591511

 src/hb-buffer-private.h | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

commit 6936706cd77f96961a1239d0c9dc8ede64d7f06d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 12 19:45:50 2009 -0400

    Bug 591413 – needs to link with libstdc++

    Enforce -fno-exceptions better.

 src/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c486ea9c3582710474c1085c21c1dc5e2700adc3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 12 19:36:29 2009 -0400

    Bug 591511 – hb-blob.c does not compile using mingw on windows

    Only call mprotect() when available.  For optimal performance, a win32
    way to make memory writeable needs to be added.

 src/hb-blob.c | 8 ++++++++
 1 file changed, 8 insertions(+)

commit a579584594f1ca4781f1c5b92ad78513c0b37480
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 12 19:23:16 2009 -0400

    [HB] Add comment

 src/hb-buffer-private.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b6e66ee102eb5b64d945e5a73ab63fe8cac5edcb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 12 16:50:28 2009 -0400

    [HB] Always clear positions if dirty, before returning to user

 src/hb-buffer.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit e4679d9fae43f3219c476c5b9e411d1f5d0d5bae
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 12 16:47:27 2009 -0400

    [HB] Fix _hb_buffer_next() when positioning

    We were copying glyphs to output.  This should not happen when in
    GPOS.  Back then it was fine, then some optimizations broke then
    assumption.

 src/hb-buffer-private.h |  1 +
 src/hb-buffer.c         | 12 ++++++++++++
 2 files changed, 13 insertions(+)

commit 5ccf1ba339d6ffb4469f1c4f20d8d8d00012c857
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 12 15:55:23 2009 -0400

    [HB] Fixed signedness warnings

 src/hb-open-type-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit f71329147bd3087588cfeafd6feff45f29d1ca7a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 12 15:48:44 2009 -0400

    [HB] Ouch.  Fix compilation.

 src/hb-ot-layout-gpos-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0532ed160c678b5404b20594fd2ca9a640bf6a0a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 12 15:40:04 2009 -0400

    [HB] Fix invalid access / overflow on x86-64

    Bug 591557 – [HB] crash scrolling the evolution message list
    Bug 591576 – crashed with SIGSEGV at pango

 src/hb-ot-layout-gpos-private.hh | 21 ++++++++++++---------
 src/hb-ot-layout-gsub-private.hh |  2 --
 2 files changed, 12 insertions(+), 11 deletions(-)

commit 8d70312c7b899131c3aafa7a43527ef3ced33bfe
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 10 23:50:51 2009 -0400

    [HB] Add hb_font_funcs_make_immutable()

 src/hb-font-private.h |  4 ++++
 src/hb-font.cc        | 17 +++++++++++++++--
 src/hb-font.h         |  3 +++
 3 files changed, 22 insertions(+), 2 deletions(-)

commit 3284d05da27c338d94f0da99df66d924cd9d6717
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 10 23:45:57 2009 -0400

    [HB] Add missing initializer

 src/hb-font.cc | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 081819ea8b98c0a4b4dffe8d4aca3512f9798719
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 10 23:40:28 2009 -0400

    [OT] Hookup glib unicode funcs

 src/hb-buffer.c     | 14 +++++++-------
 src/hb-glib.c       |  4 +++-
 src/hb-glib.h       |  4 ++--
 src/hb-ot-layout.cc | 10 +++++-----
 src/hb-private.h    |  2 +-
 5 files changed, 18 insertions(+), 16 deletions(-)

commit 49f261df2aa753e8b09e97f7835e6a827f92970a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 10 23:35:05 2009 -0400

    [HB] Add hb-glib

 src/Makefile.am          |  4 +++-
 src/hb-glib.c            | 56
 ++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-glib.h            | 41 +++++++++++++++++++++++++++++++++++
 src/hb-unicode-private.h |  2 +-
 src/hb-unicode.c         | 10 ++++-----
 src/hb-unicode.h         |  6 +++---
 6 files changed, 109 insertions(+), 10 deletions(-)

commit eb27ec0cef0d92740875ab5035b53acc639e5fae
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 10 23:25:28 2009 -0400

    [HB] Add hb_unicode_funcs_make_immutable()

 src/hb-unicode-private.h |  2 ++
 src/hb-unicode.c         | 22 +++++++++++++++++-----
 src/hb-unicode.h         |  2 ++
 3 files changed, 21 insertions(+), 5 deletions(-)

commit af9e104028b7cdc1fbba0eb1d86cfa4d5258657f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 10 23:21:33 2009 -0400

    [HB] Use nil unicode funcs in nil face

 src/hb-font.cc           | 7 ++++---
 src/hb-unicode-private.h | 3 +++
 src/hb-unicode.c         | 2 +-
 3 files changed, 8 insertions(+), 4 deletions(-)

commit 48910f8f0034c54b4e11cef3d08aa40e52c06b28
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 10 23:05:05 2009 -0400

    [HB] Initialize unicode funcs to nil getters

 src/hb-unicode.c | 29 +++++++++++++++++++----------
 1 file changed, 19 insertions(+), 10 deletions(-)

commit 04cc0a29ee1472c318c36efcd19b9c1a6657d9ea
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 10 22:58:56 2009 -0400

    [HB] Flesh out Unicode funcs

 src/hb-object-private.h  |  2 +-
 src/hb-unicode-private.h | 12 ++++-----
 src/hb-unicode.c         | 67
 ++++++++++++++++++++++++++++++++++++++++++------
 src/hb-unicode.h         |  3 ---
 4 files changed, 65 insertions(+), 19 deletions(-)

commit 299f08961ffcea27e8def4f0743d0c86ef8dadf1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 10 22:47:57 2009 -0400

    [HB] Implement buffer UTF-X input

 src/hb-buffer.c | 110
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-buffer.h |  12 +++----
 2 files changed, 116 insertions(+), 6 deletions(-)

commit 1b7b97f28ac192006ca5b6d1cc9fbc80fa2bdb55
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 10 21:10:37 2009 -0400

    [HB] Add buffer UTF-X API

 src/hb-buffer.h | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

commit fbaf8ffa098bd2b6fb4f4bc2d04b360a319c4af5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 10 20:59:25 2009 -0400

    [HB] Add hb_buffer_reverse()

 src/hb-buffer.c | 32 +++++++++++++++++++++++++++++---
 src/hb-buffer.h |  7 +++++++
 2 files changed, 36 insertions(+), 3 deletions(-)

commit cbe5a4e08e6c2ccfdf98e630d48ec9da69374516
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 10 20:24:49 2009 -0400

    [HB] Reuse the positions array as alt string array

 src/hb-buffer-private.h |  1 -
 src/hb-buffer.c         | 28 +++++++++-------------------
 2 files changed, 9 insertions(+), 20 deletions(-)

commit 5c44188455ca1b696aa24b20c3a83877dfae2fb2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 10 20:05:16 2009 -0400

    [HB] Start adding Unicode funcs

 src/Makefile.am          |   3 +
 src/hb-font-private.h    |  29 ++-----
 src/hb-font.cc           | 163 ++++++++++-------------------------
 src/hb-font.h            | 140 ++++++++++--------------------
 src/hb-unicode-private.h |  54 ++++++++++++
 src/hb-unicode.c         |  89 +++++++++++++++++++
 src/hb-unicode.h         | 220
 +++++++++++++++++++++++++++++++++++++++++++++++
 7 files changed, 463 insertions(+), 235 deletions(-)

commit 20b035dad41247076815a2bbb0346d63058b322f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 10 19:00:36 2009 -0400

    [HB] Put C++ inline's back

    Apparetly in C++, inline means a totally different thing.

 src/hb-open-file-private.hh          | 14 +++++++-------
 src/hb-open-type-private.hh          | 16 ++++++++--------
 src/hb-ot-layout-common-private.hh   | 12 ++++++------
 src/hb-ot-layout-gdef-private.hh     |  4 ++--
 src/hb-ot-layout-gpos-private.hh     | 12 ++++++------
 src/hb-ot-layout-gsub-private.hh     | 12 ++++++------
 src/hb-ot-layout-gsubgpos-private.hh | 12 ++++++------
 7 files changed, 41 insertions(+), 41 deletions(-)

commit a62f776d8e7e3e57d28ee71b34abab0a5b8471eb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 10 13:57:02 2009 -0400

    [HB] Don't override CXX compiler

    Just add couple of options to it (still assuming gcc)

 src/Makefile.am | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 6bdab706ecb41c1305e85d041a586e86c54d0ab7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 10 09:35:11 2009 -0400

    [HB] Indent

 src/hb-ot-layout.h | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 797724904a3ab294f8390d4ff80c299d8213a5c6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 9 22:25:17 2009 -0400

    [HB] Remove unused code

 src/hb-ot-layout-gdef-private.hh | 10 ----------
 1 file changed, 10 deletions(-)

commit 284899ccbe79fda7405ab09d3092fc25fd89e810
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 9 22:10:39 2009 -0400

    [HB] Add a NEXT() macro

 src/hb-open-type-private.hh          |  2 ++
 src/hb-ot-layout-common-private.hh   |  4 ++--
 src/hb-ot-layout-gsub-private.hh     |  8 ++++----
 src/hb-ot-layout-gsubgpos-private.hh | 24 ++++++++++++------------
 4 files changed, 20 insertions(+), 18 deletions(-)

commit 918572fc870dfd7596155ce700247a5bb024fb1a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 9 18:31:47 2009 -0400

    [HB] Remove done TODO item

 src/TODO | 1 -
 1 file changed, 1 deletion(-)

commit 67cb8111f209de26b3afa46e9fb7e4d01c9ecad4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 9 13:05:08 2009 -0400

    [HB] Print mark sets in main.cc

 src/main.cc | 2 ++
 1 file changed, 2 insertions(+)

commit 17878255fa88e76cd503461fc1ade2ed365cebd2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 8 16:57:27 2009 -0400

    [HB] Remove hb_ot_layout_table_find_feature()

    That function doesn't make much sense as multiple features in the
    table may
    have the same tag.

 src/hb-ot-layout.cc | 16 ----------------
 src/hb-ot-layout.h  |  6 ------
 2 files changed, 22 deletions(-)

commit 468769b8f5332940278244e744ec2bd5a5dc5ee9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 8 16:53:23 2009 -0400

    [HB] Rename hb_ot_layout_feature_mask_t to hb_mask_t

 src/TODO                         |  1 -
 src/hb-buffer-private.h          |  4 ++--
 src/hb-buffer.c                  | 12 ++++++------
 src/hb-buffer.h                  |  4 ++--
 src/hb-common.h                  |  1 +
 src/hb-ot-layout-gpos-private.hh | 12 ++++++------
 src/hb-ot-layout-gsub-private.hh | 14 +++++++-------
 src/hb-ot-layout.cc              | 18 +++++++++---------
 src/hb-ot-layout.h               | 34 +++++++++-------------------------
 9 files changed, 42 insertions(+), 58 deletions(-)

commit 7f96b39a9d5a81ba77e0c3dea8fe2cdb9957c4c7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 8 16:37:22 2009 -0400

    [HB] Fix bug introduced recently

 src/hb-open-type-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit bff3c0fde5da04a70d1f7aeeb9fa2a75fe5c07f6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Aug 7 19:46:30 2009 -0400

    [HB] Remove clumsy macros and improve API

 src/TODO                             |   2 -
 src/hb-open-file-private.hh          |  41 ++++++++--
 src/hb-open-type-private.hh          | 104 +------------------------
 src/hb-ot-layout-common-private.hh   | 103 ++++++++++++++++++------
 src/hb-ot-layout-gsubgpos-private.hh |  35 +++++++--
 src/hb-ot-layout.cc                  | 146
 ++++++++++++-----------------------
 src/hb-ot-layout.h                   | 101 ++++++++++--------------
 7 files changed, 240 insertions(+), 292 deletions(-)

commit d0b657379bbe63602953412d6bc944b2a0f430eb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 6 18:34:47 2009 -0400

    [HB] Fix various XXX issues

 src/hb-open-type-private.hh      | 13 ++++++++++---
 src/hb-ot-layout-gdef-private.hh |  5 ++---
 2 files changed, 12 insertions(+), 6 deletions(-)

commit 82199868fb036b63799af761762225d45d36f575
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 6 18:28:45 2009 -0400

    [HB] Remove unused var

 src/hb-ot-layout-private.h | 2 --
 1 file changed, 2 deletions(-)

commit 07e69226cbd4167741fd868a3125487bbabb99dc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 6 18:28:00 2009 -0400

    [HB] Remove another stale XXX

 src/hb-ot-layout.cc | 2 --
 1 file changed, 2 deletions(-)

commit e605c367c5627e7ab05af9cb59247a89290e598a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 6 18:27:28 2009 -0400

    [HB] Rebrand XXX as TODO

 src/hb-open-file-private.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit c5a13048e21fcfcfd3b74f800e8d521e6245b451
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 6 18:26:38 2009 -0400

    [HB] Remove stale XXX

 src/hb-blob.c | 2 --
 1 file changed, 2 deletions(-)

commit 9e826ea2832f0444bcef9075b445d481a58a09c2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 6 18:24:55 2009 -0400

    [HB] Fix unaligned access

 src/hb-open-type-private.hh | 20 +++++++++++++++++---
 src/hb-private.h            | 22 ++++++++++++++++++++++
 2 files changed, 39 insertions(+), 3 deletions(-)

commit 71a8344a5eeaa34e31d53138cf3bbe30b819f83c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 6 14:28:18 2009 -0400

    [HB] Remove a few 'inline's, though the compiler mostly ignores them

 src/hb-open-file-private.hh          |  1 -
 src/hb-open-type-private.hh          | 16 ++++++++--------
 src/hb-ot-layout-gsubgpos-private.hh |  6 +++---
 3 files changed, 11 insertions(+), 12 deletions(-)

commit 7f3d5c8166e5205e9d9bf8b4b2f31d44387a8006
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 6 13:33:51 2009 -0400

    [HB] Fix blob to use a actual mutex

 src/hb-blob.c           | 125
 +++++++++++++++++++++++++++++++++++-------------
 src/hb-object-private.h |   4 +-
 src/hb-private.h        |  20 +++++---
 3 files changed, 106 insertions(+), 43 deletions(-)

commit a794ebf4be9896393f4badf02905a4007981a588
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 6 12:32:35 2009 -0400

    [HB] Use glib again

 src/Makefile.am         |  5 +++--
 src/hb-blob.c           |  4 ++--
 src/hb-object-private.h | 19 ++++++-------------
 src/hb-private.h        | 45
 ++++++++++++++++++++++++++-------------------
 4 files changed, 37 insertions(+), 36 deletions(-)

commit 9b76a290a94f2603f3cb9498ae976125347cf54b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 6 10:27:38 2009 -0400

    [HB] Improve debug output

 src/hb-open-type-private.hh | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit 9faee63034d3965735bd6362c0beeca1613bd771
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Aug 6 10:24:49 2009 -0400

    [HB] Minor

 src/hb-private.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f72059ee6946d9b4812b794f662ee83c7e25fe53
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 5 15:35:02 2009 -0400

    [HB] Add a few TODO items

 src/TODO | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

commit 0d77ab8a73f57c9fca4c6f9301dae394d79526e3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 5 15:27:42 2009 -0400

    [HB] Improve debug output

 src/hb-open-type-private.hh | 8 ++++++++
 1 file changed, 8 insertions(+)

commit 268cac4c9ef8cb592cfb8507273332165b8d3ad3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 5 15:21:48 2009 -0400

    [HB] Fix blob unlock

 src/hb-blob.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 7acb389569cf99c6bae9db31a8ed7c7007fbb566
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 5 15:20:34 2009 -0400

    [HB] Improve debug output and fix mprotect bug

 src/hb-blob.c               | 57
 ++++++++++++++++++++++++++++++++++++++-------
 src/hb-open-type-private.hh | 30 +++++++++++-------------
 src/hb-private.h            |  3 ++-
 3 files changed, 65 insertions(+), 25 deletions(-)

commit ec9f8db0d3cad146801b7dc5c59e517de3b6fa34
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 5 14:52:03 2009 -0400

    [HB] Minor

 src/hb-private.h | 3 +++
 1 file changed, 3 insertions(+)

commit d341881d9a0f835f691b121480046081ad162918
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Aug 5 14:49:25 2009 -0400

    [HB] Fix build of main.cc

 src/Makefile.am | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 8f3be25e7ec88ea451ee8097bf32e5f729f4fef9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 23:43:40 2009 -0400

    [HB] turn debugging off

 src/hb-private.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 62ed5850d9e0e0d0231889470d58e815420c21e5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 23:30:32 2009 -0400

    [HB] Fix another sanitize() bug;  hopefully it's the last one

 src/hb-ot-layout-common-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 90482b68178b687c0f0a3f82cd6a36b2c0bb9384
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 23:24:35 2009 -0400

    [HB] Fix a couple other sanitize() bugs

 src/hb-ot-layout-gpos-private.hh | 4 ++--
 src/hb-ot-layout-gsub-private.hh | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

commit 4f3ad9115a4161fc23fa559c26082440196217ec
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 23:01:23 2009 -0400

    [HB] More debugging output

 src/hb-open-type-private.hh | 45
 ++++++++++++++++++++++++++++++++++++++++-----
 1 file changed, 40 insertions(+), 5 deletions(-)

commit 8cd6fa28d1b77100491519b8dedb2e113508bf59
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 22:55:44 2009 -0400

    [HB] Fix fatal Sanitizer bug

 src/hb-open-type-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2870ac5e5d5d87646a4b273a9805fb3fcf280f97
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 22:43:47 2009 -0400

    [HB] Add missing sanitize

 src/hb-open-file-private.hh | 1 +
 1 file changed, 1 insertion(+)

commit b28815c1f6e46d38471cacbc31248ca6fda8c4d1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 22:35:36 2009 -0400

    [HB] Add sanitize debugging facilities

 src/hb-open-file-private.hh          |  4 ++++
 src/hb-open-type-private.hh          | 43
 +++++++++++++++++++++++++++++++-----
 src/hb-ot-layout-common-private.hh   | 17 ++++++++++++++
 src/hb-ot-layout-gdef-private.hh     | 10 +++++++++
 src/hb-ot-layout-gpos-private.hh     | 28 +++++++++++++++++++++++
 src/hb-ot-layout-gsub-private.hh     | 18 +++++++++++++++
 src/hb-ot-layout-gsubgpos-private.hh | 16 ++++++++++++++
 src/hb-private.h                     |  6 ++++-
 8 files changed, 136 insertions(+), 6 deletions(-)

commit 7edb430f9182723b7b720708c56088cec1200a70
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 22:06:57 2009 -0400

    [HB] Rename open-types to open-type; beauty

 src/Makefile.am                                           | 2 +-
 src/hb-open-file-private.hh                               | 2 +-
 src/{hb-open-types-private.hh => hb-open-type-private.hh} | 0
 src/hb-ot-layout-common-private.hh                        | 2 +-
 4 files changed, 3 insertions(+), 3 deletions(-)

commit f4b58d3fc2956a9d1b6178588d809c781f7a5c0c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 21:47:29 2009 -0400

    [HB] Save edit even if not writeable

 src/hb-open-types-private.hh | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

commit 9bd629ccd064e739789e504c41ad875eed93abba
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 21:42:23 2009 -0400

    [HB] Fix warnings

 src/hb-open-file-private.hh      | 1 +
 src/hb-open-types-private.hh     | 5 +++++
 src/hb-ot-layout-gsub-private.hh | 3 +--
 3 files changed, 7 insertions(+), 2 deletions(-)

commit 5ff4e13143c227fa57854c987b5a98e610f89361
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 21:35:32 2009 -0400

    [HB] Avoid infinite recusion in Extension sanitize()

 src/hb-ot-layout-gpos-private.hh | 1 +
 src/hb-ot-layout-gsub-private.hh | 1 +
 2 files changed, 2 insertions(+)

commit d60bb8ca2ae6edf29b2227b56c57f0d16879370b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 21:32:57 2009 -0400

    [HB] Hook Sanitizer up.  Hell's breaking loose right now

 src/hb-font.cc               |  7 ++-----
 src/hb-open-types-private.hh |  2 +-
 src/hb-ot-layout.cc          | 12 ++++++------
 3 files changed, 9 insertions(+), 12 deletions(-)

commit 679f41fe61242aa8d7f45b64bdb66395aa530fe2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 21:32:06 2009 -0400

    [HB] Fix leak

 src/hb-ot-layout.cc | 2 ++
 1 file changed, 2 insertions(+)

commit 4e8a0602bb0b3cbf7f26cc38790e37cdec7b0b37
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 20:52:47 2009 -0400

    [HB] Add Sanitizer

 src/hb-open-types-private.hh | 58
 ++++++++++++++++++++++++++++++++++++++++----
 1 file changed, 53 insertions(+), 5 deletions(-)

commit 2765d333e523a13dbd932fa33f3b39a5cf83f0f7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 20:50:18 2009 -0400

    [HB] Add XXX

 src/hb-open-file-private.hh | 3 +++
 1 file changed, 3 insertions(+)

commit a328d66e6a8122f7d4d71941449d4d0136203e08
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 20:27:05 2009 -0400

    [HB] Minor cleanup

 src/hb-ot-layout-gdef-private.hh     | 2 +-
 src/hb-ot-layout-gpos-private.hh     | 2 +-
 src/hb-ot-layout-gsub-private.hh     | 2 +-
 src/hb-ot-layout-gsubgpos-private.hh | 4 ++--
 4 files changed, 5 insertions(+), 5 deletions(-)

commit 577c1116493d785d3455626612f97dabb383abf0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 19:31:02 2009 -0400

    [HB] Shuffle code around

 src/hb-open-types-private.hh | 127
 ++++++++++++++++++++++---------------------
 1 file changed, 65 insertions(+), 62 deletions(-)

commit b1e187fc6365f5355c652a61494a5e9f6acf51b4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 15:28:49 2009 -0400

    [HB] More sanitize infrastructure

 src/hb-open-types-private.hh | 29 ++++++++++++++++++++++++++++-
 1 file changed, 28 insertions(+), 1 deletion(-)

commit b508e5ccd528f3f0f49f545bd5f30a525d5abd5a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 15:07:24 2009 -0400

    [HB] open-file sanitize()

 src/hb-open-file-private.hh  | 46
 ++++++++++++++++++++++++++++++++++++++++----
 src/hb-open-types-private.hh | 13 +++++++++++++
 2 files changed, 55 insertions(+), 4 deletions(-)

commit 738c54d9caa3affc4b434e56bfb810ff6dc9b0b3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 14:42:46 2009 -0400

    [HB] Tag sanitize()

 src/hb-open-types-private.hh       | 8 ++++++++
 src/hb-ot-layout-common-private.hh | 6 +-----
 2 files changed, 9 insertions(+), 5 deletions(-)

commit e49a84c9e37c08808880e74e94c8160731ababa1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 14:33:23 2009 -0400

    [HB] GDEF sanitize()

 src/hb-ot-layout-gdef-private.hh     | 54
 ++++++++++++++++++++++++++++++++++++
 src/hb-ot-layout-gpos-private.hh     |  2 +-
 src/hb-ot-layout-gsub-private.hh     |  2 +-
 src/hb-ot-layout-gsubgpos-private.hh |  2 +-
 4 files changed, 57 insertions(+), 3 deletions(-)

commit 18939487d04dba86880b0af8e89cf2cc44a431f5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 14:27:56 2009 -0400

    [HB] Fix Extension sanitize()

 src/hb-ot-layout-gpos-private.hh     | 3 ++-
 src/hb-ot-layout-gsub-private.hh     | 3 ++-
 src/hb-ot-layout-gsubgpos-private.hh | 2 +-
 3 files changed, 5 insertions(+), 3 deletions(-)

commit f2be750981be58a723831e69b1670275851d4be9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 14:12:46 2009 -0400

    [HB] Remove stale TODO

 src/hb-ot-layout.cc | 2 --
 1 file changed, 2 deletions(-)

commit ac26e2a838d1266bb5f39c43245eb2a52c5e072d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 14:10:39 2009 -0400

    [HB] Hookup NEUTER()

 src/hb-open-types-private.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 15164d9258a74122a4db748d35532bd72c47cec2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 13:57:41 2009 -0400

    [HB] Fix mix warnings

 src/Makefile.am                    |  2 +-
 src/hb-font.cc                     | 15 +++------------
 src/hb-open-types-private.hh       |  2 +-
 src/hb-ot-layout-common-private.hh |  6 +++---
 src/hb-ot-layout-gdef-private.hh   |  2 +-
 src/hb-ot-layout-gpos-private.hh   |  9 ++++-----
 src/hb-ot-layout.cc                |  2 +-
 src/main.cc                        |  4 +---
 8 files changed, 15 insertions(+), 27 deletions(-)

commit 42b778f89e0818fe06910ce04e2203485823da09
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 13:30:49 2009 -0400

    [HB] GPOS sanitize()

 src/hb-open-types-private.hh     |  22 ++++-
 src/hb-ot-layout-gpos-private.hh | 195
 ++++++++++++++++++++++++++++++++++++++-
 src/hb-ot-layout-gsub-private.hh |   2 -
 3 files changed, 213 insertions(+), 6 deletions(-)

commit dc9c4d93cd0f3ac991f32df08c1c17fc389054c0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 12:26:26 2009 -0400

    [HB] Sanitize DeviceTable

 src/hb-open-types-private.hh       |  8 ++++----
 src/hb-ot-layout-common-private.hh | 17 ++++++++++++++---
 src/hb-ot-layout-gsub-private.hh   |  2 +-
 3 files changed, 19 insertions(+), 8 deletions(-)

commit ad3a3cd4955661c591b20af1f2c493432f0bebf0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 12:13:52 2009 -0400

    [HB] More casts

 src/hb-ot-layout-gsub-private.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 95639fccc1ef18eadeb737e8b611d1d1f1315fc2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 12:05:24 2009 -0400

    [HB] Fix couple of bugs

 src/hb-open-types-private.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 2b5a59c277f4c5bf7aac9a9005054763e322e02d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 11:38:50 2009 -0400

    [HB] More cast cleanup

 src/hb-open-types-private.hh         | 23 ++++++++-----
 src/hb-ot-layout-common-private.hh   |  7 ++--
 src/hb-ot-layout-gsub-private.hh     | 27 ++++++---------
 src/hb-ot-layout-gsubgpos-private.hh | 64
 +++++++++++++-----------------------
 4 files changed, 50 insertions(+), 71 deletions(-)

commit 196598bbccff08415ff5192314cba044df258cad
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 11:04:32 2009 -0400

    [Hb] Use reinterpret casts instead of direct casts to char *

 src/hb-open-file-private.hh          |  4 ++--
 src/hb-open-types-private.hh         | 19 +++++++++++-----
 src/hb-ot-layout-common-private.hh   |  8 +++----
 src/hb-ot-layout-gpos-private.hh     | 12 +++++-----
 src/hb-ot-layout-gsub-private.hh     | 20 ++++++++--------
 src/hb-ot-layout-gsubgpos-private.hh | 44
 ++++++++++++++++++------------------
 6 files changed, 57 insertions(+), 50 deletions(-)

commit 92b5dd8e71e1bdeaa6e86a53f167683a3f5f4289
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 10:41:32 2009 -0400

    [HB] Merge more templates

 src/hb-open-types-private.hh | 167
 ++++++++++++++-----------------------------
 1 file changed, 55 insertions(+), 112 deletions(-)

commit e6ab2c59ba2d37942ac5fcbfe61d38b7e359ac8c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 10:23:01 2009 -0400

    [HB] Simplify indirect sanitize()

 src/hb-open-types-private.hh       | 52
 ++++++++++++++++++--------------------
 src/hb-ot-layout-common-private.hh | 11 +-------
 2 files changed, 26 insertions(+), 37 deletions(-)

commit 29d8644a315ebe6976f15db2fe96069376d9b8cd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 02:27:37 2009 -0400

    [HB] Finish GSUB sanitize()

 src/hb-ot-layout-gsub-private.hh | 21 ++++++++++++++++++++-
 1 file changed, 20 insertions(+), 1 deletion(-)

commit cf086adca1b7b5a361a248808f9a847e513d3630
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 02:14:24 2009 -0400

    [HB] Add comment

 src/hb-ot-layout-common-private.hh | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit a97ce570ab693190350886e4e80942851c4d5727
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 02:10:48 2009 -0400

    [HB] Optimize sanitize()

 src/hb-open-types-private.hh | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

commit cd3827ee567612c5500206b62840702fc956e0f5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 02:09:34 2009 -0400

    [HB] More sanitize()

 src/hb-open-file-private.hh          |  2 +-
 src/hb-open-types-private.hh         | 12 ++++---
 src/hb-ot-layout-common-private.hh   | 64
 +++++++++++++++++++++++++++++++-----
 src/hb-ot-layout-gdef-private.hh     |  2 +-
 src/hb-ot-layout-gsubgpos-private.hh | 15 +++++++--
 5 files changed, 79 insertions(+), 16 deletions(-)

commit 70de50c11ed7037b20eb6814ff60f6e32a9944e4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Aug 4 00:58:28 2009 -0400

    [HB] Start sanitize()

 src/hb-open-types-private.hh         | 105 ++++++++++++++++++++++++++++-
 src/hb-ot-layout-common-private.hh   |  48 +++++++++++++-
 src/hb-ot-layout-gsub-private.hh     | 125
 ++++++++++++++++++++++++++++++++++-
 src/hb-ot-layout-gsubgpos-private.hh | 104 +++++++++++++++++++++++++++++
 4 files changed, 376 insertions(+), 6 deletions(-)

commit 5fc22e647c8a2bf6d3cb59185e351ac625e7e322
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 3 22:43:02 2009 -0400

    [HB] Remove use of typeof()

 src/hb-blob.c           |  4 ++--
 src/hb-buffer.c         |  2 +-
 src/hb-font.cc          | 14 +++++++-------
 src/hb-object-private.h |  4 ++--
 4 files changed, 12 insertions(+), 12 deletions(-)

commit 70e0f2a75ec1559f2f70ada837ce4bc4baca49e3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 3 22:01:47 2009 -0400

    [HB] Make it all work again

 src/hb-font.cc             | 23 ++++++++++++---------
 src/hb-ot-layout-private.h |  9 +++++---
 src/hb-ot-layout.cc        | 51
 +++++++++++++++++++++++-----------------------
 3 files changed, 44 insertions(+), 39 deletions(-)

commit 23c86aa0009324433e78fcd0c47f2c0ff14b1949
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 3 21:40:20 2009 -0400

    [HB] Use face_t directly instead of ot_layout_t

 src/TODO                             |   1 +
 src/hb-font-private.h                |   4 +
 src/hb-font.cc                       |  74 +++++++++---
 src/hb-font.h                        |   3 +
 src/hb-object-private.h              |  36 +++---
 src/hb-ot-layout-gdef-private.hh     |   2 +
 src/hb-ot-layout-gpos-private.hh     |  14 +--
 src/hb-ot-layout-gsub-private.hh     |  32 ++---
 src/hb-ot-layout-gsubgpos-private.hh |   8 +-
 src/hb-ot-layout-private.h           |  40 ++++---
 src/hb-ot-layout.cc                  | 220
 +++++++++++++++--------------------
 11 files changed, 237 insertions(+), 197 deletions(-)

commit fc6c94002dd5478cf9fbdaff12d8374a786c85e1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 3 21:27:08 2009 -0400

    [HB] Simplify sub-blob support

 src/hb-blob.c | 172
 ++++++++++++++++++++++------------------------------------
 src/hb-blob.h |  14 +++--
 2 files changed, 74 insertions(+), 112 deletions(-)

commit a26442437ae9f11674e0d68cd5cbf395ade7695d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Aug 3 17:53:29 2009 -0400

    [HB] Add sub-blobs

 src/hb-blob.c | 162
 +++++++++++++++++++++++++++++++++++++++++++++++++---------
 src/hb-blob.h |  12 ++++-
 2 files changed, 147 insertions(+), 27 deletions(-)

commit b28e21b90c4105a0c2e17009b748777294614664
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 2 20:06:48 2009 -0400

    [HB] Rename hb-font.c to hb-font.cc

 src/Makefile.am               | 2 +-
 src/{hb-font.c => hb-font.cc} | 0
 2 files changed, 1 insertion(+), 1 deletion(-)

commit 5f5b24f99f52bbc922e238b65c06061ba07c8548
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 2 20:03:12 2009 -0400

    [OT] Rename C++ header files from *.h to *.hh

 src/Makefile.am                                            | 14
 +++++++-------
 src/{hb-open-file-private.h => hb-open-file-private.hh}    |  8 ++++----
 src/{hb-open-types-private.h => hb-open-types-private.hh}  |  6 +++---
 ...out-common-private.h => hb-ot-layout-common-private.hh} |  8 ++++----
 ...-layout-gdef-private.h => hb-ot-layout-gdef-private.hh} |  8 ++++----
 ...-layout-gpos-private.h => hb-ot-layout-gpos-private.hh} |  8 ++++----
 ...-layout-gsub-private.h => hb-ot-layout-gsub-private.hh} |  8 ++++----
 ...gsubgpos-private.h => hb-ot-layout-gsubgpos-private.hh} |  8 ++++----
 src/hb-ot-layout.cc                                        |  8 ++++----
 src/main.cc                                                |  6 +++---
 10 files changed, 41 insertions(+), 41 deletions(-)

commit 2098a021a826e76ee27d5db74e32738d7d1c3d30
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 2 19:57:00 2009 -0400

    [HB] Move OT file handling out of ot-layout

 src/Makefile.am                                    |   3 +-
 src/hb-open-file-private.h                         | 145
 +++++++++++++++++++++
 ...yout-open-private.h => hb-open-types-private.h} | 117
 +----------------
 src/hb-ot-layout-common-private.h                  |   4 +-
 src/hb-ot-layout.cc                                |   2 +-
 src/main.cc                                        |   4 +-
 6 files changed, 157 insertions(+), 118 deletions(-)

commit 0ead481a5a8623103565fd7d924666e7342278dd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 2 17:41:36 2009 -0400

    [HB] Port ot-layout to new public API

 src/TODO                            |   1 +
 src/hb-common.h                     |   1 +
 src/hb-font.c                       |   9 +
 src/hb-font.h                       |   3 +
 src/hb-ot-layout-gdef-private.h     |  32 ++--
 src/hb-ot-layout-gpos-private.h     | 106 ++++++------
 src/hb-ot-layout-gsub-private.h     |  50 +++---
 src/hb-ot-layout-gsubgpos-private.h |  12 +-
 src/hb-ot-layout-private.h          |  36 +++-
 src/hb-ot-layout.cc                 | 334
 ++++++++++++++++++++----------------
 src/hb-ot-layout.h                  | 207 ++++++++++------------
 11 files changed, 415 insertions(+), 376 deletions(-)

commit 678bed433371d90536976a2d57195c1e1867f766
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 2 15:35:31 2009 -0400

    [HB] Add top-level header files

 src/Makefile.am |  2 ++
 src/hb-ot.h     | 34 ++++++++++++++++++++++++++++++++++
 src/hb.h        | 35 +++++++++++++++++++++++++++++++++++
 3 files changed, 71 insertions(+)

commit 2c80296aa5991ad67483889147f5c84fefe54af2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Aug 2 15:20:22 2009 -0400

    [HB] Add XXX marks

 src/hb-ot-layout-private.h | 2 ++
 src/hb-ot-layout.cc        | 7 ++-----
 2 files changed, 4 insertions(+), 5 deletions(-)

commit c46f8efd6ddd981b5724b2600ac98a80193385be
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 1 23:06:27 2009 -0400

    [HB] Rename _duplicate to _copy

    To be in line with cairo

 src/hb-font.c | 4 ++--
 src/hb-font.h | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

commit f1ebe44985e2192844cf1747a4e36ed81e715ce6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 1 22:55:11 2009 -0400

    [HB] Cleanup TODO

 src/TODO | 10 +---------
 1 file changed, 1 insertion(+), 9 deletions(-)

commit f1322e52d557726baa010be8d35a594748e8fa1a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 1 22:53:04 2009 -0400

    [HB] Cleanup public buffer structs

 src/hb-buffer-private.h         | 46
 +++++++++++++++++++++++++++++++-------
 src/hb-buffer.c                 | 49
 +++++++++++++++++++++--------------------
 src/hb-buffer.h                 | 35 ++++++++++++++---------------
 src/hb-ot-layout-gpos-private.h |  8 +++----
 src/hb-ot-layout-private.h      |  5 +++--
 src/hb-ot-layout.cc             | 20 ++++++++---------
 6 files changed, 97 insertions(+), 66 deletions(-)

commit 6d5bb18e93d2a53350b342869a3ec8f25f0396c2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 1 22:25:04 2009 -0400

    [OT] Match struct with HB's

 src/hb-buffer.c     |  6 +++---
 src/hb-buffer.h     |  2 +-
 src/hb-ot-layout.cc | 12 ++++++------
 3 files changed, 10 insertions(+), 10 deletions(-)

commit 11fbb5487d9900a019440ef8235f35c9f525decb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 1 22:19:06 2009 -0400

    [HB] Port buffert to new object API

 src/hb-buffer-private.h | 24 +++++++++++++++---
 src/hb-buffer.c         | 65
 +++++++++++++++++++++++++++++++++++++------------
 src/hb-buffer.h         | 53 +++++++++++++++++++++++++---------------
 3 files changed, 104 insertions(+), 38 deletions(-)

commit 0cc7bc59ea6e8f38bf1e196c558cca9862ac3302
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 1 21:38:39 2009 -0400

    [HB] Move typedef's around

 src/hb-blob.h   |  2 ++
 src/hb-common.h |  9 ---------
 src/hb-font.h   | 10 ++++++++++
 3 files changed, 12 insertions(+), 9 deletions(-)

commit a12dd324a3859496a95602d426aee34ce6c5c8a6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 1 21:36:15 2009 -0400

    [HB] Add get_reference_count()

 src/hb-blob.c           |  6 ++++++
 src/hb-blob.h           |  3 +++
 src/hb-font.c           | 24 ++++++++++++++++++++++++
 src/hb-font.h           | 12 ++++++++++++
 src/hb-object-private.h |  7 +++++++
 5 files changed, 52 insertions(+)

commit baec684fde2303edb16341bfcf1022cd72acf129
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 1 21:06:11 2009 -0400

    [HB] Remove glib dependency

 src/Makefile.am  |  7 ++-----
 src/hb-buffer.c  |  2 +-
 src/hb-private.h | 30 ++++++++++++++++++------------
 src/main.cc      |  1 +
 4 files changed, 22 insertions(+), 18 deletions(-)

commit df66028781a7609a515980e64396e6f1044d764a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 1 20:46:02 2009 -0400

    [HB] Assorted compiler macros

 src/hb-ot-layout-open-private.h |  4 +-
 src/hb-private.h                | 88
 +++++++++++++++++++++++++++++++----------
 2 files changed, 70 insertions(+), 22 deletions(-)

commit ba8d94ce3360bfaf2c530d01f2af69237018a531
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 1 20:29:22 2009 -0400

    [HB] Simplify object creation

 src/Makefile.am                                    |  2 +-
 src/hb-blob.c                                      |  6 +---
 src/hb-font-private.h                              |  1 -
 src/hb-font.c                                      | 37
 +++++++---------------
 src/{hb-refcount-private.h => hb-object-private.h} | 14 ++++++--
 src/hb-private.h                                   |  2 ++
 6 files changed, 27 insertions(+), 35 deletions(-)

commit c62b503770325819f249885dfc9d4683a69c9efd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 1 19:54:49 2009 -0400

    [HB] Add abstract font and face API

    Not used yet.

 src/Makefile.am           |   3 +
 src/hb-blob.c             |   6 +-
 src/hb-font-private.h     | 108 +++++++++++++++
 src/hb-font.c             | 331
 ++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-font.h             | 182 +++++++++++++++++++++++++
 src/hb-refcount-private.h |  14 +-
 6 files changed, 636 insertions(+), 8 deletions(-)

commit 35a7383c6138fd705560f0d4bb30659cbd1ab64c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 1 19:30:31 2009 -0400

    [HB] Simplify refcounting functions

 src/hb-blob.c             | 32 ++++++++++----------------------
 src/hb-common.h           |  2 ++
 src/hb-private.h          |  2 ++
 src/hb-refcount-private.h | 31 ++++++++++++++++++++++++++++++-
 4 files changed, 44 insertions(+), 23 deletions(-)

commit 23af767a4475fecc1fe9fe9108f12c05c89bc8c9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 1 19:10:41 2009 -0400

    [HB] Fix for dfont's with multiple faces

 src/hb-ot-layout-open-private.h | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit e97a95f2ea2770689bbf076d3c3ac404f273271e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Aug 1 19:05:44 2009 -0400

    [HB] Use calloc instead of malloc where feasible

 src/hb-blob.c   | 8 +++++---
 src/hb-buffer.c | 4 ++--
 2 files changed, 7 insertions(+), 5 deletions(-)

commit 0090dc0f67b553d2f6eaaedc289c0956ade09ef6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 30 16:28:45 2009 -0400

    [HB] Remove hinting setting and use ppem==0 to mean "no hinting"

 src/hb-blob.h                   |  3 ---
 src/hb-common.h                 |  9 +++++++++
 src/hb-ot-layout-gpos-private.h | 36 ++++++++++++++++++++++++------------
 src/hb-ot-layout-private.h      |  2 --
 src/hb-ot-layout.cc             |  7 -------
 src/hb-ot-layout.h              |  4 ----
 6 files changed, 33 insertions(+), 28 deletions(-)

commit f0954d1e08ae288eda9904e17108fc73f48c0b98
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 30 15:33:57 2009 -0400

    [HB] Add a "blob" manager

 src/Makefile.am           |   5 +-
 src/hb-blob.c             | 181
 ++++++++++++++++++++++++++++++++++++++++++++++
 src/hb-blob.h             |  74 +++++++++++++++++++
 src/hb-private.h          |   2 +
 src/hb-refcount-private.h |  54 ++++++++++++++
 5 files changed, 315 insertions(+), 1 deletion(-)

commit 02a370697d25b986dbf1d5c38f46a89a4833b495
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 29 18:41:25 2009 -0400

    [HB] Move direction to buffer

 src/hb-buffer.c                 |  9 +++++++++
 src/hb-buffer.h                 | 14 ++++++++++++++
 src/hb-ot-layout-gpos-private.h |  2 +-
 src/hb-ot-layout-private.h      |  1 -
 src/hb-ot-layout.cc             |  7 -------
 src/hb-ot-layout.h              |  5 -----
 6 files changed, 24 insertions(+), 14 deletions(-)

commit 7cda6fa24c26887c5543d0657b07aad466452cb3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jul 29 18:37:57 2009 -0400

    [HB] Rename internal vars

 src/hb-ot-layout-gsubgpos-private.h | 56
 ++++++++++++++++++-------------------
 1 file changed, 28 insertions(+), 28 deletions(-)

commit b196e6f2743d631ef181f1116370be3055063d36
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 28 15:50:42 2009 -0400

    [HB] Fix buffer enlargement.  Ouch

 src/hb-buffer.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f9cd1014f8f4d0394b5e0e9eefc1e2af13c59cab
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jul 28 15:43:34 2009 -0400

    Apply patch from Jonathan Kew

 src/hb-buffer.c     | 75
 ++++++++++++++++++++++++++++-------------------------
 src/hb-buffer.h     |  6 ++++-
 src/hb-ot-layout.cc | 31 ++++++++++++++++++++++
 src/hb-ot-layout.h  | 15 +++++++++++
 src/hb-private.h    |  2 +-
 5 files changed, 91 insertions(+), 38 deletions(-)

commit 2ebb89d63dd27e800f2b6cbf624924601105f48a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jul 25 19:09:01 2009 -0400

    Revert "XX"

    This reverts commit c939f6aff405ca7b10b1f1538f46148bff719fcb.

 src/Makefile.am                     |   2 -
 src/hb-buffer.c                     |   9 ---
 src/hb-buffer.h                     |  14 -----
 src/hb-common.h                     |   3 -
 src/hb-ot-layout-gdef-private.h     |  32 +++++------
 src/hb-ot-layout-gpos-private.h     | 108
 ++++++++++++++++++------------------
 src/hb-ot-layout-gsub-private.h     |  46 +++++++--------
 src/hb-ot-layout-gsubgpos-private.h |  68 +++++++++++------------
 src/hb-ot-layout-private.h          |  28 ++++------
 src/hb-ot-layout.cc                 |  30 ++++++++++
 src/hb-ot-layout.h                  |   5 ++
 src/hb-private.h                    |  16 ------
 12 files changed, 174 insertions(+), 187 deletions(-)

commit 55520d2af172f5f6617b909e80cbd7d898f2bc15
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jun 10 23:26:51 2009 -0400

    XX

 src/Makefile.am                     |   2 +
 src/hb-buffer.c                     |   9 +++
 src/hb-buffer.h                     |  14 +++++
 src/hb-common.h                     |   3 +
 src/hb-ot-layout-gdef-private.h     |  32 +++++------
 src/hb-ot-layout-gpos-private.h     | 108
 ++++++++++++++++++------------------
 src/hb-ot-layout-gsub-private.h     |  46 +++++++--------
 src/hb-ot-layout-gsubgpos-private.h |  68 +++++++++++------------
 src/hb-ot-layout-private.h          |  28 ++++++----
 src/hb-ot-layout.cc                 |  30 ----------
 src/hb-ot-layout.h                  |   5 --
 src/hb-private.h                    |  16 ++++++
 12 files changed, 187 insertions(+), 174 deletions(-)

commit f53d434b9151c4ec43c148734b49bb165e522cc9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat May 30 22:17:32 2009 -0400

    [GPOS] Advance buffer cursor in SinglePos lookups.  Ouch!

 src/hb-ot-layout-gpos-private.h | 4 ++++
 1 file changed, 4 insertions(+)

commit e35bbd570a5d914f86f1ea83941ee4328f268059
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat May 30 12:02:46 2009 -0400

    [HB] Improve buffer.  Don't dup out buffer unless out is longer
    than in

    That is, we work in-place even for ligatures now.

 src/hb-buffer.c | 156
 ++++++++++++++++++++++++--------------------------------
 src/hb-buffer.h |   7 ++-
 2 files changed, 71 insertions(+), 92 deletions(-)

commit 6734ed4b6b2ce382917bf644aaf1acfa993f00ad
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 27 18:16:55 2009 -0400

    [GPOS] Fix property checking

 src/hb-ot-layout-gpos-private.h | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit cc83ae12484108586fba6586bd9008971338b322
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 27 00:17:37 2009 -0400

    [GPOS] Add vertical TODO

 src/hb-ot-layout-gpos-private.h | 2 ++
 1 file changed, 2 insertions(+)

commit b69d38e7eaea544ba6c1876cdc6ddac61a698dd3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 26 22:29:02 2009 -0400

    [HB] Remove useless include

 src/hb-ot-layout-private.h | 3 ---
 1 file changed, 3 deletions(-)

commit 6c8108cb583292a679b05844ab613b7f4587adc6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 26 22:26:08 2009 -0400

    [GPOS] Remove unused variables

 src/hb-ot-layout-gpos-private.h | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 09c292e3b688a67fbae67b645d1e6ffcf8d8eb6e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 26 19:48:16 2009 -0400

    [HB] Fix glyph properties

 src/hb-ot-layout-common-private.h | 6 +++---
 src/hb-ot-layout-open-private.h   | 2 +-
 src/hb-ot-layout.cc               | 2 +-
 3 files changed, 5 insertions(+), 5 deletions(-)

commit 64e33f008ff9cc807fdfdc4553ad3fe01bb0615f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 26 18:57:56 2009 -0400

    [GPOS] Fix PairPos signedness

 src/hb-ot-layout-gpos-private.h | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

commit 80ea5bd10e72561a7627a5196621a6d7eccd91b7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 26 17:58:37 2009 -0400

    [GPOS] Fix mark matching

 src/hb-ot-layout-gpos-private.h | 44
 +++++++++++++++++++----------------------
 1 file changed, 20 insertions(+), 24 deletions(-)

commit 4189b92aaa41e4a1756c561cc6e08b0ed024afda
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 26 17:31:56 2009 -0400

    [HB] When looking back/forward, skip marks only

 src/TODO                            |  1 -
 src/hb-ot-layout-gpos-private.h     | 13 ++-----
 src/hb-ot-layout-gsub-private.h     | 38 +++++++++-----------
 src/hb-ot-layout-gsubgpos-private.h | 14 ++++----
 src/hb-ot-layout-private.h          |  6 ++++
 src/hb-ot-layout.cc                 | 69
 ++++++++++++++++++++++++-------------
 6 files changed, 76 insertions(+), 65 deletions(-)

commit 1246e41021ab1d782b4c97e5d81c4917a57e3ed4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 26 15:58:34 2009 -0400

    [GDEF] Support MarkFilteringSets

 src/hb-ot-layout.cc | 59
 +++++++++++++++++++----------------------------------
 1 file changed, 21 insertions(+), 38 deletions(-)

commit 5130c35e93528bcf3095fee5baf3847589167a58
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 26 15:45:41 2009 -0400

    [HB] Simplify MarkAttachmentType handling

 src/hb-ot-layout-gpos-private.h |  6 +++---
 src/hb-ot-layout-gsub-private.h |  6 ++----
 src/hb-ot-layout.cc             | 18 ++++++++----------
 3 files changed, 13 insertions(+), 17 deletions(-)

commit e4b92b85a7750bd4271ad607b3c41f0184e89feb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 26 15:38:53 2009 -0400

    [HB] Support parsing MarkFilteringSets introduced in OpenType 1.6

 src/hb-ot-layout-gdef-private.h | 55
 +++++++++++++++++++++++++++++++++++------
 src/hb-ot-layout-gpos-private.h |  1 +
 src/hb-ot-layout.cc             |  6 ++---
 3 files changed, 51 insertions(+), 11 deletions(-)

commit 515ce4ceb2ab0151d8dfc03ff0bfc7d110dd93b5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 26 13:08:00 2009 -0400

    [HB] More de-C++'ization

 src/hb-ot-layout-gsubgpos-private.h | 24 ++++++++++++------------
 1 file changed, 12 insertions(+), 12 deletions(-)

commit d7df42d7ee586219475878d160f85ae5a188bd59
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 26 13:04:59 2009 -0400

    [HB] Start MarkFilteringSet support

 src/hb-ot-layout-common-private.h | 24 +++++++++++++++++++-----
 1 file changed, 19 insertions(+), 5 deletions(-)

commit 62964afcecd96038cfaa8bc2bc931f43ee83be7e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 26 12:40:10 2009 -0400

    [HB] Implement get_lig_carets()

 src/hb-ot-layout-gdef-private.h | 57
 ++++++++++++++++++++++++++++++++---------
 src/hb-ot-layout.cc             | 17 +++++++++---
 src/hb-ot-layout.h              |  8 +++++-
 src/main.cc                     |  9 +------
 4 files changed, 66 insertions(+), 25 deletions(-)

commit 79420ad9caf2d5fc94c3693e8292edfa27060b2d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 26 12:24:16 2009 -0400

    [HB] Add get_attach_points()

 src/Makefile.am                 |  2 +-
 src/hb-ot-layout-gdef-private.h | 35 +++++++++++++++++++++++++----------
 src/hb-ot-layout-gpos-private.h | 28 +++++++---------------------
 src/hb-ot-layout-gsub-private.h | 28 +++++++---------------------
 src/hb-ot-layout-open-private.h | 12 +++---------
 src/hb-ot-layout.cc             |  9 +++++++++
 src/hb-ot-layout.h              |  6 ++++++
 src/main.cc                     |  8 ++++----
 8 files changed, 62 insertions(+), 66 deletions(-)

commit 855720ca47bf5a7a44eb5b84dce9f7da6e7156bd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 26 12:00:28 2009 -0400

    [HB] Remove more macros

 src/hb-ot-layout-gdef-private.h | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

commit c968fc2dc87cf85b53f60a40db59d5ee7b992edf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 25 04:04:24 2009 -0400

    [HB] More buffer cleanup

 src/hb-buffer-private.h             |  39 +++--------
 src/hb-buffer.c                     | 136
 ++++++++++++++++++------------------
 src/hb-buffer.h                     |  22 +++---
 src/hb-ot-layout-gpos-private.h     |  29 ++++----
 src/hb-ot-layout-gsub-private.h     |  10 +--
 src/hb-ot-layout-gsubgpos-private.h |   8 +--
 src/hb-ot-layout-private.h          |  13 ++--
 src/hb-ot-layout.cc                 |  16 ++---
 src/hb-private.h                    |  29 --------
 9 files changed, 125 insertions(+), 177 deletions(-)

commit 88a5f5a49b6809d88560791f9cf6b8f78f22a4ad
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 25 03:39:11 2009 -0400

    [HB] Cleanup buffer

 src/hb-buffer-private.h             |  2 +-
 src/hb-buffer.c                     | 26 ++++++++------
 src/hb-ot-layout-gsub-private.h     | 26 +++++---------
 src/hb-ot-layout-gsubgpos-private.h |  2 +-
 src/hb-ot-layout.cc                 | 71
 -------------------------------------
 5 files changed, 25 insertions(+), 102 deletions(-)

commit 347f0b8621d3adfec157e5634ff3defc818ea37f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 25 03:30:31 2009 -0400

    [HB] Clean more

 src/hb-ot-layout-private.h | 10 ++++------
 src/hb-ot-layout.cc        |  8 ++++----
 2 files changed, 8 insertions(+), 10 deletions(-)

commit d9d2a07f4a8696666a12f5a206aa9cfb56dc2b35
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 25 03:24:19 2009 -0400

    [HB] Remove one XXX, add another

 src/hb-buffer.h            | 2 ++
 src/hb-ot-layout-private.h | 3 +--
 2 files changed, 3 insertions(+), 2 deletions(-)

commit 6c78683c042250a7b5a6fc6ebae4717b03fadf9e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 25 03:22:19 2009 -0400

    [HB] Update copyright years

 src/hb-buffer-private.h    | 2 +-
 src/hb-buffer.h            | 2 +-
 src/hb-common.h            | 2 +-
 src/hb-ot-layout-private.h | 2 +-
 src/hb-ot-layout.h         | 2 +-
 src/hb-private.h           | 2 +-
 6 files changed, 6 insertions(+), 6 deletions(-)

commit 4497af0069a94c69fc1518b1db2c1282721b732a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 25 03:20:18 2009 -0400

    [HB] Would have helped if I actually knew C++ before using it...

 src/hb-ot-layout-gsubgpos-private.h |  4 ++--
 src/hb-ot-layout-open-private.h     | 24 ++++++++++++------------
 2 files changed, 14 insertions(+), 14 deletions(-)

commit cc6c644ff2af5f6669b6ec100ff13e904872b21c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 25 03:10:06 2009 -0400

    [HB] More cleanup

 src/hb-ot-layout-common-private.h | 4 ++--
 src/hb-ot-layout-open-private.h   | 9 +++++----
 2 files changed, 7 insertions(+), 6 deletions(-)

commit 20cc86b3592db33731de671f008d7d222776be49
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 25 02:41:49 2009 -0400

    [HB] Simplify Tag

 src/hb-ot-layout-open-private.h | 46
 ++++++++++++++++-------------------------
 1 file changed, 18 insertions(+), 28 deletions(-)

commit 3ec0092c5e2d48e8c4fc1618d3bee427adddb1e7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 25 02:34:25 2009 -0400

    [HB] Simplify more

 src/hb-ot-layout-open-private.h | 31 ++++++++++---------------------
 1 file changed, 10 insertions(+), 21 deletions(-)

commit 6ad8d5f3c7028147b371137ae4bca6aae66b3489
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 25 02:27:29 2009 -0400

    [HB] Simplify some basic things

 src/hb-ot-layout-open-private.h | 90
 +++++++++++++++++++++++++++--------------
 src/main.cc                     |  8 ++--
 2 files changed, 64 insertions(+), 34 deletions(-)

commit f96ffd43bce0ac6d9c897933c9be0e51d543e570
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 24 15:01:16 2009 -0400

    [HB] simplify macros

 src/hb-buffer-private.h    | 4 ++--
 src/hb-buffer.h            | 4 ++--
 src/hb-common.h            | 8 ++++----
 src/hb-ot-layout-private.h | 4 ++--
 src/hb-ot-layout.h         | 4 ++--
 5 files changed, 12 insertions(+), 12 deletions(-)

commit 8e7b30782a12f3997b9a5a18e6b9d01f6bff8b46
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 24 14:27:24 2009 -0400

    [HB] Update text files

 src/COPYING |  7 -------
 src/README  | 13 ++-----------
 2 files changed, 2 insertions(+), 18 deletions(-)

commit fa7d47249496fe00ea1ab6943b385c8dd80e5ce6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 24 14:24:35 2009 -0400

    [HB] Remove stale makefile.msc too

 src/makefile.msc | 19 -------------------
 1 file changed, 19 deletions(-)

commit da2c52abcd75d46929b34cad55c4fb2c8892bc08
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 24 14:22:22 2009 -0400

    [HB] Remove old code!

    Goodbye 16 thousand lines of ten-year old code!

 src/harfbuzz-dump-main.c      |   97 -
 src/harfbuzz-dump.c           |  768 ------
 src/harfbuzz-dump.h           |   41 -
 src/harfbuzz-gdef-private.h   |  124 -
 src/harfbuzz-gdef.c           | 1160 --------
 src/harfbuzz-gdef.h           |  135 -
 src/harfbuzz-global.h         |   84 -
 src/harfbuzz-gpos-private.h   |  712 -----
 src/harfbuzz-gpos.c           | 6071
 -----------------------------------------
 src/harfbuzz-gpos.h           |  174 --
 src/harfbuzz-gsub-private.h   |  476 ----
 src/harfbuzz-gsub.c           | 4304 -----------------------------
 src/harfbuzz-gsub.h           |  140 -
 src/harfbuzz-impl.c           |   84 -
 src/harfbuzz-impl.h           |  126 -
 src/harfbuzz-open-private.h   |  102 -
 src/harfbuzz-open.c           | 1405 ----------
 src/harfbuzz-open.h           |  282 --
 src/harfbuzz-stream-private.h |   83 -
 src/harfbuzz-stream.c         |  257 --
 src/harfbuzz.c                |   31 -
 src/harfbuzz.h                |   35 -
 22 files changed, 16691 deletions(-)

commit e5372f1621602dcee4e14a4b22dc182c21502a50
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 24 14:21:27 2009 -0400

    [HB] Remove stale TODO mark

 src/hb-ot-layout-open-private.h | 1 -
 1 file changed, 1 deletion(-)

commit 96908b898476ca5d7da5f386b15be76f9e83d76e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 24 12:30:40 2009 -0400

    [HB] Add FixedVersion cast to int

 src/hb-ot-layout-open-private.h | 2 ++
 1 file changed, 2 insertions(+)

commit 957740dd253475020a94a62ec5dfcd03e3358176
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 24 12:29:55 2009 -0400

    [HB] Simplify tag

 src/hb-ot-layout-open-private.h | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit 87fcdcbe3644da10154688765db2d62eb9ac079a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 24 01:03:24 2009 -0400

    [HB] Remove unused data types

 src/hb-ot-layout-gdef-private.h     |  2 +-
 src/hb-ot-layout-gsubgpos-private.h |  2 +-
 src/hb-ot-layout-open-private.h     | 54
 ++++---------------------------------
 3 files changed, 7 insertions(+), 51 deletions(-)

commit 5876bf1b73fcb56cc41b4d348248a4817f9688cb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 24 00:53:28 2009 -0400

    [HB] Simplify version check in GSUB/GPOS

 src/hb-ot-layout-gpos-private.h | 5 ++++-
 src/hb-ot-layout-gsub-private.h | 5 ++++-
 2 files changed, 8 insertions(+), 2 deletions(-)

commit 212aba6189d7aaac0bab169b77ae6bdab16800a5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 24 00:50:27 2009 -0400

    [HB] Check for GDEF/GSUB/GPOS versions

 src/hb-ot-layout-gdef-private.h     |  3 +--
 src/hb-ot-layout-gpos-private.h     |  3 +--
 src/hb-ot-layout-gsub-private.h     |  3 +--
 src/hb-ot-layout-gsubgpos-private.h |  5 ++---
 src/hb-ot-layout-open-private.h     | 11 ++++++++++-
 5 files changed, 15 insertions(+), 10 deletions(-)

commit a21b5062cc32c04eeee3c4b20d26c7e2b34133e9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat May 23 22:39:42 2009 -0400

    [HB] Minor

 src/hb-ot-layout-gdef-private.h | 6 +++---
 src/hb-ot-layout-open-private.h | 4 ++--
 2 files changed, 5 insertions(+), 5 deletions(-)

commit a080b1cc2f66d6e109d431a1e09519d7cf53bb9a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat May 23 18:50:44 2009 -0400

    [HB] Add TODO items

 src/TODO | 6 ++++++
 1 file changed, 6 insertions(+)

commit e4efdd80a8fa4edbcdec9cd84f35f5f4521943c2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 22 18:54:24 2009 -0400

    [GDEF] Add some get_carret_value() code

 src/hb-ot-layout-gdef-private.h | 36 ++++++++++++++++++------------------
 1 file changed, 18 insertions(+), 18 deletions(-)

commit 9b006bc0322723d065271e4b0ea4f137f81101e1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 22 18:29:45 2009 -0400

    [GPOS] MarkLigPosFormat1

    GPOS is complete now!  Yay!

 src/hb-ot-layout-gpos-private.h | 128
 +++++++++++++++++++++++++++++-----------
 1 file changed, 92 insertions(+), 36 deletions(-)

commit 923923feb248250626c637c11a886804011197b0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 22 17:58:09 2009 -0400

    [HB] Remove apply_subtables() again

 src/hb-ot-layout-gpos-private.h | 31 +++++++++++--------------------
 src/hb-ot-layout-gsub-private.h | 33 ++++++++++++---------------------
 2 files changed, 23 insertions(+), 41 deletions(-)

commit d468f9af5b9fdc2713b0b86f28129e4190ee5053
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 21 22:31:33 2009 -0400

    [HB] Share Extension lookup code between GSUB and GPOS

 src/hb-ot-layout-gpos-private.h     | 64 +++++-----------------------
 src/hb-ot-layout-gsub-private.h     | 83
 +++++++------------------------------
 src/hb-ot-layout-gsubgpos-private.h | 52 +++++++++++++++++++++++
 3 files changed, 77 insertions(+), 122 deletions(-)

commit 498f1909e0f7a32484b2058622c4a018cbfc1334
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 21 15:51:04 2009 -0400

    [GPOS] Remove printf.  MarkMarkPos1 is working

    The "bug" was in the font.

 src/hb-ot-layout-gpos-private.h | 1 -
 1 file changed, 1 deletion(-)

commit c7d457aa3ae7138630f52ca7263f663a3ea284c0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 21 12:46:29 2009 -0400

    [HB] Ouch.  Add files.

 src/hb-common.h  | 13 +++++-----
 src/hb-private.h | 74
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++--
 2 files changed, 78 insertions(+), 9 deletions(-)

commit fe550f4dd815285e9de8c3cbff810b0a1c7b377f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 21 08:27:07 2009 -0400

    [GPOS] MarkMarkPosFormat1

    Still not quite working.

 src/TODO                        |   4 +-
 src/hb-ot-layout-gpos-private.h | 105
 +++++++++++++++++++++++++++++-----------
 2 files changed, 79 insertions(+), 30 deletions(-)

commit 357ccde36bba01a405d59b7da061fc5048cdc7b4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 21 06:32:01 2009 -0400

    [GPOS] MarkBasePosFormat1

 src/TODO                        |  1 +
 src/hb-ot-layout-gpos-private.h | 62
 +++++++++++++++++++++++++++++++++++++----
 2 files changed, 58 insertions(+), 5 deletions(-)

commit 377bfc5860ae018f54e4a2dd737b4b000383ab54
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 21 04:58:24 2009 -0400

    [GPOS] Implement MarkArray interface

 src/hb-ot-layout-gpos-private.h | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit c18ec2b1d7b8c7abe6ebf4b53c9ec75d5c9bb255
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 21 04:54:01 2009 -0400

    [GPOS] Implement Device support in AnchorFormat3

 src/hb-ot-layout-gpos-private.h | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

commit fca6a0d158b847181dcf67a13f34499177df899b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 21 04:49:04 2009 -0400

    [GPOS] Remove apply_value() return value

 src/hb-ot-layout-gpos-private.h | 75
 +++++++++++++++++++----------------------
 1 file changed, 34 insertions(+), 41 deletions(-)

commit fb3b5ccfefc4c38c9184d432703e81f73e1f5bc7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 21 04:47:05 2009 -0400

    [GPOS] Start MarkBasePosFormat1

 src/TODO                        |  1 +
 src/hb-ot-layout-gpos-private.h | 38
 +++++++++++++++++---------------------
 2 files changed, 18 insertions(+), 21 deletions(-)

commit ee8776d9e009a7fb8e1f3c1f9cf3ad42d9746a16
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 20 15:46:12 2009 -0400

    [HB] Add TODO item

 src/hb-ot-layout-gpos-private.h | 1 +
 src/hb-ot-layout-gsub-private.h | 1 +
 2 files changed, 2 insertions(+)

commit c6456ca5cfc35095378dcf29f8edc33ece9c3ea1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 20 06:15:23 2009 -0400

    [HB] Add TODO item

 src/TODO | 1 +
 1 file changed, 1 insertion(+)

commit 3015c4175179a1816aad2a4950da9a3b8baf2578
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 20 06:01:16 2009 -0400

    [HB] Remove last dependence on the old code base!

 src/hb-buffer-private.h         | 88
 ++++++++++++++++++++---------------------
 src/hb-buffer.c                 | 47 +++++++++++-----------
 src/hb-ot-layout-gpos-private.h | 11 ++----
 src/hb-ot-layout-gsub-private.h | 12 +++---
 src/hb-ot-layout.cc             | 16 ++++----
 5 files changed, 85 insertions(+), 89 deletions(-)

commit 5c0adce1ccc739415c4b26ff13ffd2d77ea4bc6c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 20 05:42:12 2009 -0400

    [HB] Rename harfbuzz-buffer to hb-buffer

 src/Makefile.am                                        | 5 +++--
 src/{harfbuzz-buffer-private.h => hb-buffer-private.h} | 8 ++++----
 src/{harfbuzz-buffer.c => hb-buffer.c}                 | 6 ++----
 src/{harfbuzz-buffer.h => hb-buffer.h}                 | 8 ++++----
 src/hb-ot-layout-gsubgpos-private.h                    | 2 +-
 src/hb-ot-layout-private.h                             | 2 +-
 src/hb-ot-layout.cc                                    | 5 +++--
 src/hb-ot-layout.h                                     | 2 +-
 8 files changed, 19 insertions(+), 19 deletions(-)

commit b857b49c82782d29d6d189f1a9f4a84d39cd84ea
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 20 05:35:14 2009 -0400

    [HB] Remove all references to the old code!

 src/Makefile.am            |  76 +++++++---------------
 src/harfbuzz-buffer.c      | 154
 +++++++++++++++++++--------------------------
 src/harfbuzz-buffer.h      |  80 +++++++++++------------
 src/hb-ot-layout-private.h |   6 +-
 src/hb-ot-layout.cc        |  17 ++---
 src/hb-ot-layout.h         |   1 +
 6 files changed, 137 insertions(+), 197 deletions(-)

commit e1593a6e620ee6a8184487185d1c95e0d1820ba5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 20 04:51:30 2009 -0400

    [GPOS] Finally it's working, up to Cursive

    Wow, IranNastaliq renders perfectly again!

 src/hb-ot-layout.cc | 24 ++++++++++++++++++++++++
 src/hb-ot-layout.h  | 12 ++++++++++++
 2 files changed, 36 insertions(+)

commit 0f7e6b2cead0c7d527ef68ededb27e0afd71d819
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 20 04:16:35 2009 -0400

    [GPOS] Fix more brokenness

 src/Makefile.am                 |  2 +-
 src/hb-ot-layout-gpos-private.h | 37
 ++++++++++++++++++++-----------------
 src/hb-ot-layout.cc             |  7 +++++++
 src/hb-ot-layout.h              |  5 +++++
 4 files changed, 33 insertions(+), 18 deletions(-)

commit ff05d257dd43221b7c8ebead188e78495daa8eda
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 20 03:53:00 2009 -0400

    [HB] Move lookup types enum into subtable class

 src/hb-ot-layout-gpos-private.h | 66
 ++++++++++++++++++++---------------------
 src/hb-ot-layout-gsub-private.h | 44 +++++++++++++--------------
 2 files changed, 55 insertions(+), 55 deletions(-)

commit 263bbef7670b59aa88ef9ba910579dfa51226524
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 20 00:00:09 2009 -0400

    [GDEF] Simplify Device access

 src/hb-ot-layout-gdef-private.h | 12 +++---------
 1 file changed, 3 insertions(+), 9 deletions(-)

commit 60d77cf05fddc5304b4b1fc19cdedba15cbee1e9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 19 23:58:54 2009 -0400

    [HB] Indentation

 src/hb-ot-layout-common-private.h   | 170
 +++++++++++++++++-------------------
 src/hb-ot-layout-gdef-private.h     |  65 +++++++-------
 src/hb-ot-layout-gsubgpos-private.h | 150 +++++++++++++++++--------------
 src/hb-ot-layout-open-private.h     | 159
 ++++++++++++++++-----------------
 src/hb-ot-layout-private.h          |   9 +-
 5 files changed, 288 insertions(+), 265 deletions(-)

commit 90de3dfff9e82dae20b7517642511aebaf736b74
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 19 23:43:04 2009 -0400

    [HB] Remove unused methods

 src/hb-ot-layout-common-private.h | 6 ------
 1 file changed, 6 deletions(-)

commit 4c44d830d79431fcb143df2b5a29cdc8e8fccef3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 19 23:42:30 2009 -0400

    [HB] Indentation

 src/hb-ot-layout-gpos-private.h | 253
 +++++++++++++++++++++-----------------
 src/hb-ot-layout-gsub-private.h | 262
 ++++++++++++++++++++++------------------
 2 files changed, 284 insertions(+), 231 deletions(-)

commit d18fd8e3f7185f531fa4c4988d3f5d5c5282b8eb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 19 23:25:41 2009 -0400

    [GPOS] CursivePosFormat1

 src/hb-ot-layout-gpos-private.h | 174
 ++++++++++++++++++++++++++++++++++++++--
 src/hb-ot-layout-private.h      |   2 +-
 2 files changed, 169 insertions(+), 7 deletions(-)

commit 70632add333e4ab38f8f485bb87b25116128cf92
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 19 22:30:09 2009 -0400

    [GSUB] PairPosFormat2

 src/hb-ot-layout-gpos-private.h | 43
 ++++++++++++++++++++++++++++++++++++-----
 1 file changed, 38 insertions(+), 5 deletions(-)

commit b24ecbadf44d56fd3286d1d3ff6928151ccec9bd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 19 22:16:04 2009 -0400

    [GPOS] PairPosFormat1

 src/hb-ot-layout-gpos-private.h | 91
 +++++++++++++++++++++++++++++++++--------
 1 file changed, 73 insertions(+), 18 deletions(-)

commit 056c7ec1aea1eca60a3b20b583b8a8072be9d758
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 18 19:47:52 2009 -0400

    [GPOS] Start filling apply() functions in

 src/harfbuzz-buffer-private.h     |   1 +
 src/harfbuzz-buffer.c             |   3 -
 src/hb-ot-layout-common-private.h |  35 ++++++-----
 src/hb-ot-layout-gpos-private.h   | 127
 ++++++++++++++++++++++++++++----------
 4 files changed, 116 insertions(+), 50 deletions(-)

commit 4fa77d3c4305a76b956de8c1a9b83a961d035a80
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 18 18:44:54 2009 -0400

    [HB] Use enums

 src/hb-ot-layout-common-private.h | 14 ++++++++------
 src/hb-ot-layout-gdef-private.h   | 22 +++++++++++++---------
 2 files changed, 21 insertions(+), 15 deletions(-)

commit 6b54c5d0446b514fbb6521e7e9e614d153435f0e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 18 18:30:25 2009 -0400

    [HB] More reference cast simplification

 src/hb-ot-layout-gsub-private.h     |  8 ++++----
 src/hb-ot-layout-gsubgpos-private.h | 28 ++++++++++++++--------------
 src/hb-ot-layout-open-private.h     |  2 +-
 3 files changed, 19 insertions(+), 19 deletions(-)

commit eb0dfc830e09405492f494c85380e133ac5d0ea3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 18 18:22:44 2009 -0400

    [HB] Rename LOOKUP_ARGS to APPLY_ARGS

 src/hb-ot-layout-gpos-private.h     | 88
 ++++++++++++++++++------------------
 src/hb-ot-layout-gsub-private.h     | 84
 +++++++++++++++++-----------------
 src/hb-ot-layout-gsubgpos-private.h | 90
 ++++++++++++++++++-------------------
 3 files changed, 131 insertions(+), 131 deletions(-)

commit 2a8e6accdf798a78ff180dcb593140592d62b872
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 18 18:21:44 2009 -0400

    [HB] Internally rename position() and substitute() to apply()

 src/hb-ot-layout-gpos-private.h | 110
 ++++++++++++++++++++--------------------
 src/hb-ot-layout-gsub-private.h | 104
 ++++++++++++++++++-------------------
 2 files changed, 107 insertions(+), 107 deletions(-)

commit f6c8a6eacf27fd1c509d07c85985f0367c5e475f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 18 18:01:19 2009 -0400

    [HB] Simplify casts

 src/hb-ot-layout-gdef-private.h |  2 +-
 src/hb-ot-layout-gpos-private.h |  6 +++---
 src/hb-ot-layout-gsub-private.h |  6 +++---
 src/hb-ot-layout-open-private.h | 10 +++++-----
 4 files changed, 12 insertions(+), 12 deletions(-)

commit 9c42f05a5ccbb48a9367b80ecdf3679e88088fcf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 18 17:43:49 2009 -0400

    Switch Pango to new, defunt, GPOS

 src/hb-ot-layout-gpos-private.h | 22 +++++++++++++++-------
 src/hb-ot-layout.cc             | 13 +++++++++++++
 src/hb-ot-layout.h              |  5 +++++
 3 files changed, 33 insertions(+), 7 deletions(-)

commit 5e5eb0573f7ea2ce2cf037fef0df70a4351e82c0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 18 17:09:33 2009 -0400

    [HB] Start GPOS!

 src/hb-ot-layout-gpos-private.h | 915
 ++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-layout-gsub-private.h |   2 -
 src/hb-ot-layout-private.h      |  15 +-
 src/hb-ot-layout.cc             |   5 +-
 src/hb-ot-layout.h              |   8 +-
 5 files changed, 936 insertions(+), 9 deletions(-)

commit 64e67f7599deeec98b104f8b70d0d321cf96799d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 18 15:32:40 2009 -0400

    [GSUB] Minor

 src/hb-ot-layout-gsub-private.h | 16 ++++++----------
 1 file changed, 6 insertions(+), 10 deletions(-)

commit d79cae0b4eef8c2694ada791bb8e427c1202875e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 18 13:50:15 2009 -0400

    [HB] Minor

 src/hb-ot-layout-gsub-private.h | 22 +++++++++++-----------
 1 file changed, 11 insertions(+), 11 deletions(-)

commit 8533bb985e6af2b656d7c45620d8f11f36330b85
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 18 06:00:12 2009 -0400

    [GSUB] Protect against mismatching Extension subtable types

 src/hb-ot-layout-gsub-private.h | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

commit 969afd706e9b52adc79f6210c0088b2c6bbae9bc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 18 05:47:47 2009 -0400

    [GSUB] Implement ReverseChainSingleSubst

    GSUB is done!

 src/hb-ot-layout-gsub-private.h     | 55
 +++++++++++++++++++++++++++----------
 src/hb-ot-layout-gsubgpos-private.h | 43 +++++++++--------------------
 2 files changed, 54 insertions(+), 44 deletions(-)

commit 4acaffd786a11b5bd7d41b39fc65625fd8cd5077
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 18 05:29:29 2009 -0400

    [HB] Don't use G_LIKELY!

 src/hb-ot-layout-gsub-private.h     | 12 ++++++------
 src/hb-ot-layout-gsubgpos-private.h | 12 ++++++------
 src/hb-ot-layout-open-private.h     |  4 ++--
 src/hb-ot-layout.cc                 |  6 +++---
 4 files changed, 17 insertions(+), 17 deletions(-)

commit 3dcb12f171ebbf44461e6ce6439d286c9520dd88
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 18 05:22:32 2009 -0400

    [GSUB] Oops, fix Extension check

 src/hb-ot-layout-gsub-private.h | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 2e8fb6c38dbc01cb77b384c0ae0212514dfbb588
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 18 04:37:37 2009 -0400

    [HB] Tweak some constants and fix Coverage

 src/hb-ot-layout-common-private.h   | 11 ++++++-----
 src/hb-ot-layout-gsubgpos-private.h |  2 ++
 src/hb-ot-layout-open-private.h     |  6 +++---
 3 files changed, 11 insertions(+), 8 deletions(-)

commit d6aae5f5cad54fc5dac8b0ff10a3921ebda533d4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 18 04:25:22 2009 -0400

    [HB] Cleanup TODOs

 src/hb-ot-layout-gsub-private.h | 12 ++++++------
 src/hb-ot-layout-open-private.h |  2 +-
 src/hb-ot-layout.cc             |  4 ++--
 3 files changed, 9 insertions(+), 9 deletions(-)

commit 122f21fb9a3a0b914575929a3be11884f1ae00c0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 18 04:21:53 2009 -0400

    [GSUB] Fix context_length handling in Ligature too

 src/hb-ot-layout-gsub-private.h     | 9 ++++-----
 src/hb-ot-layout-gsubgpos-private.h | 5 +++--
 2 files changed, 7 insertions(+), 7 deletions(-)

commit 47958dea214fd55725bf04aa13d233870255fb03
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 18 04:17:47 2009 -0400

    [HB] Minor cleanup

 src/hb-ot-layout-gsubgpos-private.h | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)

commit e73a0c2a903112ce9a35b95e14e10ab8ea2dc337
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 18 04:15:25 2009 -0400

    [HB] Correctly skip glyphs when applying (Chain)Context lookups

 src/hb-ot-layout-gsubgpos-private.h | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)

commit 7cff75babd64cd49dd2b3faaa15193d12c098f42
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 18 04:09:05 2009 -0400

    [HB] Fix context_length checking

 src/hb-ot-layout-gsubgpos-private.h | 23 +++++++++++++----------
 src/hb-ot-layout-open-private.h     |  2 +-
 2 files changed, 14 insertions(+), 11 deletions(-)

commit d0ba0557007798db2c60ddd0b7a5a0624cd1698d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 18 03:56:39 2009 -0400

    [HB] ChainContext complete

    IranNastaliq renders perfectly again!

 src/hb-ot-layout-gsubgpos-private.h | 63
 +++++++++++++++++++++++++++----------
 1 file changed, 46 insertions(+), 17 deletions(-)

commit e072c24e79f0e7c1e078a87c782ab5dd8f21dcda
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 18 03:47:31 2009 -0400

    [HB] Implement backtrack matching

 src/hb-ot-layout-gsubgpos-private.h | 61
 +++++++++++++++++++++++++++----------
 1 file changed, 45 insertions(+), 16 deletions(-)

commit 02e1e5c63fa4f896053fa3c21e495239e1e9caa2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 18 02:47:57 2009 -0400

    [HB] One more step to go, for fully working GSUB and ChainContext

 src/hb-ot-layout-gsubgpos-private.h | 107
 ++++++++++++++++++++----------------
 1 file changed, 61 insertions(+), 46 deletions(-)

commit f14c2b7acfba75b8a6880f41ceec758f9a56abce
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 18 02:36:18 2009 -0400

    [HB] Further modularize Context matching

 src/hb-ot-layout-gsubgpos-private.h | 92
 +++++++++++++++++++++++++------------
 1 file changed, 63 insertions(+), 29 deletions(-)

commit 13ed4405c558e445b052360f1ed8ee27ecf48e6e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 18 02:14:37 2009 -0400

    [HB] A step closer to working ChainContext

 src/hb-ot-layout-gsubgpos-private.h | 36
 ++++++++++++++++++++++++++----------
 1 file changed, 26 insertions(+), 10 deletions(-)

commit e8cbaaf6d538036ff9b880b018db402e0895ed01
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 18 02:03:58 2009 -0400

    [HB] Add HeadlessArrayTo<>

 src/hb-ot-layout-gsub-private.h     | 10 ++++------
 src/hb-ot-layout-gsubgpos-private.h |  5 ++---
 src/hb-ot-layout-open-private.h     | 19 +++++++++++++++++++
 3 files changed, 25 insertions(+), 9 deletions(-)

commit dcb6b60254951a2831c03f3196962d229f7e556c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 18 01:49:57 2009 -0400

    [HB] More template goodness

 src/hb-ot-layout-gsubgpos-private.h | 37
 +++++++++++++++----------------------
 1 file changed, 15 insertions(+), 22 deletions(-)

commit aa3d7adca5c821c91a2a1b5380fd6b3d19656ab1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 17 23:17:56 2009 -0400

    [HB] More churning towards ChainContext lookups

 src/hb-ot-layout-common-private.h   |   6 +-
 src/hb-ot-layout-gsub-private.h     |  15 +++-
 src/hb-ot-layout-gsubgpos-private.h | 174
 ++++++++++++++++++++++--------------
 3 files changed, 125 insertions(+), 70 deletions(-)

commit 48f16ed96ac7041b511d9e0864623d2aa09c6da3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 17 22:11:30 2009 -0400

    [HB] Towards sharing Context and ChainContext code

 src/hb-ot-layout-gsubgpos-private.h | 220
 ++++++++++++++++--------------------
 1 file changed, 99 insertions(+), 121 deletions(-)

commit 6cf2a52593cb4b23e3efe5e16228e3172bdcdd05
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 17 21:11:49 2009 -0400

    [HB] Add check to avoid infinite recursion

 src/hb-ot-layout-gsub-private.h | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

commit 887c4b44165eeb8ac7fb09bc4474d11720b94a9e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 17 21:06:08 2009 -0400

    [HB] Cosmetic

 src/hb-ot-layout-gsub-private.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit ca5290f4994e1b2db4dac03f7a22b7071441ba06
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 17 20:48:27 2009 -0400

    [HB] Start ChainContext and ReverseChainSingleSubst lookups

 src/hb-ot-layout-gsub-private.h     | 269
 ++++++++----------------------------
 src/hb-ot-layout-gsubgpos-private.h | 214 +++++++++++++++++++++++++++-
 2 files changed, 268 insertions(+), 215 deletions(-)

commit 433f4aea741e39df079126769441b79ab64fd236
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 17 20:30:05 2009 -0400

    [HB] Remove stale TODO

 src/hb-ot-layout-private.h | 2 --
 1 file changed, 2 deletions(-)

commit 6f20f72e9c58ba23db2e31afa5d331acfea3d77e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 17 20:28:01 2009 -0400

    [HB] Split Layout-common tables into new files

 src/hb-ot-layout-common-private.h   | 429
 ++++++++++++++++++++++++++++++++++++
 src/hb-ot-layout-gdef-private.h     |   3 +-
 src/hb-ot-layout-gsub-private.h     |   1 +
 src/hb-ot-layout-gsubgpos-private.h |   2 +
 src/hb-ot-layout-open-private.h     | 408
 ----------------------------------
 5 files changed, 434 insertions(+), 409 deletions(-)

commit f45107fe0904414f1266648a6c42849c494fe611
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 17 20:13:02 2009 -0400

    [HB] More shuffling

 src/hb-ot-layout-gsub-private.h     | 71
 +++++++++++++++++++++----------------
 src/hb-ot-layout-gsubgpos-private.h | 30 ++++++++++++++++
 src/hb-ot-layout-open-private.h     | 41 ---------------------
 3 files changed, 71 insertions(+), 71 deletions(-)

commit f8dc67b3c24dfc805da756a73cb217b36e16b4b8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 17 19:47:54 2009 -0400

    [HB] Cleanup format unions

 src/hb-ot-layout-gdef-private.h     | 18 ++++----
 src/hb-ot-layout-gsub-private.h     | 87
 +++++++++++++++++++------------------
 src/hb-ot-layout-gsubgpos-private.h | 16 +++----
 src/hb-ot-layout-open-private.h     | 41 +++++++----------
 4 files changed, 77 insertions(+), 85 deletions(-)

commit da1097bc3b1995776c205707fd2b17603b804646
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 17 19:31:18 2009 -0400

    [HB] Use four bytes for Null Tag, not 5

 src/hb-ot-layout-open-private.h | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 19fc24f268b985d30971307ac2055622d11cb21f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 17 09:45:32 2009 -0400

    [HB] Couple size checks

 src/hb-ot-layout-gsub-private.h     | 7 +++++--
 src/hb-ot-layout-gsubgpos-private.h | 4 ++--
 src/hb-ot-layout-open-private.h     | 4 ++--
 3 files changed, 9 insertions(+), 6 deletions(-)

commit ecf17e849db19599bbb816d0018380ebf979576b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 17 09:34:41 2009 -0400

    [HB] Propagate property of first glyph

    This slightly grows code size.

 src/hb-ot-layout-gsub-private.h     | 100
 +++++++++++++++++++-----------------
 src/hb-ot-layout-gsubgpos-private.h |   7 +--
 2 files changed, 56 insertions(+), 51 deletions(-)

commit eca8e33710cfce51454e64d974ff0c28b0eefa14
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 17 09:07:27 2009 -0400

    [GSUB] Further optimize the main switch

 src/hb-ot-layout-gsub-private.h | 31 +++++++++++++++++--------------
 1 file changed, 17 insertions(+), 14 deletions(-)

commit 13068232e7054748ae5ba0d961ee5a95b959e92e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 17 08:59:01 2009 -0400

    [HB] Unify first glyph property checking

 src/hb-ot-layout-gsub-private.h     | 81
 ++++++++++++++++---------------------
 src/hb-ot-layout-gsubgpos-private.h | 12 ------
 2 files changed, 35 insertions(+), 58 deletions(-)

commit 66bf7ce4e3135535c110a917178b84c4a2b1d11f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 17 08:28:42 2009 -0400

    [HB] Move Context matching logic out of GSUB

 src/hb-ot-layout-gdef-private.h     |   2 -
 src/hb-ot-layout-gsub-private.h     | 331
 +---------------------------------
 src/hb-ot-layout-gsubgpos-private.h | 347
 ++++++++++++++++++++++++++++++++++++
 3 files changed, 352 insertions(+), 328 deletions(-)

commit a1625528cd5ed94bc8f18903da3300e823ee5b54
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 17 07:52:11 2009 -0400

    [GSUB] Unify ContextSubst matching

 src/hb-ot-layout-gsub-private.h | 378
 ++++++++++++++++------------------------
 1 file changed, 154 insertions(+), 224 deletions(-)

commit c36238bea40e9e2b589028eb6de0710455b31585
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 17 07:39:34 2009 -0400

    [HB] Renames

 src/hb-ot-layout-gsub-private.h | 122
 ++++++++++++++++++++--------------------
 1 file changed, 61 insertions(+), 61 deletions(-)

commit 15c3e75b39797a153b6bc0598f87b27c4a487228
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 17 06:03:42 2009 -0400

    [HB] Simplify buffer

 src/harfbuzz-buffer-private.h   | 14 ++++++--------
 src/harfbuzz-buffer.c           | 35 ++++++++++++++++-------------------
 src/harfbuzz-gsub.c             |  6 +++---
 src/hb-ot-layout-gsub-private.h | 12 ++++++------
 4 files changed, 31 insertions(+), 36 deletions(-)

commit 36f78446cef8a7cbae000d5e742c9d13e1cc7f83
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 17 05:52:32 2009 -0400

    [HB] Add TODO item

 src/TODO              | 1 +
 src/harfbuzz-buffer.c | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

commit ee58aaebd296ea8237516754fd4e825d524b11b7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 17 05:14:33 2009 -0400

    [HB] Update copyright years

 src/hb-ot-layout-gdef-private.h | 2 +-
 src/hb-ot-layout-open-private.h | 2 +-
 src/hb-ot-layout.cc             | 2 +-
 src/main.cc                     | 2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

commit f4c9514935cf97a58dcb3b1962ac3f3b5ba61264
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 17 04:59:56 2009 -0400

    [HB] Simplify more arrays

 src/hb-ot-layout-open-private.h | 241
 ++++++++++++++++------------------------
 src/hb-ot-layout.cc             |   8 +-
 2 files changed, 100 insertions(+), 149 deletions(-)

commit c9a7cbe9cb52264af9954e5ce9ac7a45d7e310cd
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 17 01:22:51 2009 -0400

    [HB] Use ArrayOf<> in GSUB

 src/hb-ot-layout-gdef-private.h |   3 +-
 src/hb-ot-layout-gsub-private.h | 157
 +++++++++++++---------------------------
 src/hb-ot-layout-open-private.h |   5 --
 3 files changed, 53 insertions(+), 112 deletions(-)

commit 5f810363acc3ad3cba631a68620e3d37e54c95c4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 17 00:54:25 2009 -0400

    [HB] Add ArrayOf<>

 src/hb-ot-layout-gdef-private.h | 62 ++++++++-------------------------
 src/hb-ot-layout-open-private.h | 77
 ++++++++++++++++++++++++++++++-----------
 2 files changed, 71 insertions(+), 68 deletions(-)

commit 238c855fcd4f0ef97a94a8662d2a2f2bb5c21ecb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 17 00:22:37 2009 -0400

    [HB] Use OffsetTo<> for Coverage

 src/hb-ot-layout-gdef-private.h |  1 +
 src/hb-ot-layout-gsub-private.h | 55
 ++++++++++++++++-------------------------
 src/hb-ot-layout-open-private.h | 10 +-------
 3 files changed, 23 insertions(+), 43 deletions(-)

commit 3d54bd1293069fc3d3bdeeea8ad45036f3ee65f3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 17 00:15:51 2009 -0400

    [HB] Use OffsetTo<> in more places

 src/hb-ot-layout-gdef-private.h | 12 +++++-------
 src/hb-ot-layout-open-private.h |  4 ++++
 2 files changed, 9 insertions(+), 7 deletions(-)

commit 9e4d9d7b2721859172bc9c59c1aea27b01eb9c07
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun May 17 00:09:20 2009 -0400

    [HB] Add OffsetTo template.

 src/hb-ot-layout-gdef-private.h | 26 ++++++++++++++------------
 src/hb-ot-layout-gsub-private.h |  6 +++---
 src/hb-ot-layout-open-private.h | 27 ++++++++++++++++++---------
 3 files changed, 35 insertions(+), 24 deletions(-)

commit e07f89295b9b38d233dfd4acec1f6b4a3416f267
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat May 16 23:20:48 2009 -0400

    [HB] Automate int-type size assertion

 src/hb-ot-layout-open-private.h | 13 +++----------
 1 file changed, 3 insertions(+), 10 deletions(-)

commit 8b8358033184198ff638ee1379093717596e162d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat May 16 22:48:14 2009 -0400

    [HB] Use templates for Null objects

    Also use a common pool for all nul-content ones.

 src/hb-ot-layout-gdef-private.h |  12 ++--
 src/hb-ot-layout-gsub-private.h |  28 ++++----
 src/hb-ot-layout-open-private.h | 142
 +++++++++++++++++++++++-----------------
 src/hb-ot-layout.cc             |   8 +--
 4 files changed, 105 insertions(+), 85 deletions(-)

commit 6e13d4140158aff736647fc53d8c0ae3a02c2afc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat May 16 20:15:16 2009 -0400

    [HB] Remove obsolete comment

 src/hb-ot-layout-gdef-private.h | 1 -
 1 file changed, 1 deletion(-)

commit 9f721cf380954d67415dbfd0404a983cdd75b7df
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat May 16 19:59:15 2009 -0400

    [GSUB] Start ChainContextSubst

 src/hb-ot-layout-gsub-private.h | 50
 ++++++++++++++++++++++++++++++++---------
 1 file changed, 39 insertions(+), 11 deletions(-)

commit 7fca9e5245d2d283e8b5354eb1ddf553a7ffc033
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat May 16 19:44:24 2009 -0400

    [GSUB] Implement ContextSubstFormat3

 src/hb-ot-layout-gsub-private.h | 62
 ++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 61 insertions(+), 1 deletion(-)

commit 1ff926a5681b5d4bfce65351062cda9dc1ffeba2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 15 20:25:37 2009 -0400

    [GSUB] Implement ContextSubstFormat2

 src/hb-ot-layout-gsub-private.h | 105
 +++++++++++++++++++++++++++++++++++++---
 1 file changed, 97 insertions(+), 8 deletions(-)

commit fc36d9453ed7edb0a570abc44d7caa87aafb0fcf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 15 20:11:10 2009 -0400

    [GSUB] Add GSUB::substitute_lookup()

 src/hb-ot-layout-gsub-private.h | 7 +++++++
 src/hb-ot-layout.cc             | 5 +----
 2 files changed, 8 insertions(+), 4 deletions(-)

commit c43562b2a7587fa3f9ef4c1c4338e4eda77368b5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 15 18:54:53 2009 -0400

    [GSUB] Finish ContextSubstFormat1

 src/hb-ot-layout-gsub-private.h | 77
 ++++++++++++++++++++++++++++++++---------
 src/hb-ot-layout-private.h      | 14 ++++++++
 src/hb-ot-layout.cc             | 13 -------
 3 files changed, 74 insertions(+), 30 deletions(-)

commit 5ee21896224e3a9835a9695037a94ccf1c35a217
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 15 13:28:56 2009 -0400

    [HB] Fix typo

 src/hb-ot-layout-open-private.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6b59c9b445b6d2454008c83a2c7d6a995ea5995e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 15 01:00:36 2009 -0400

    [HB] Add TODO item

 src/TODO | 1 +
 1 file changed, 1 insertion(+)

commit c5419b6cf28822e07f1ef9b0394825e9cb01a445
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 8 21:17:56 2009 -0400

    [HB] Remove DEFINE_NON_INSTANTIABLE

 src/hb-ot-layout-gdef-private.h |  2 --
 src/hb-ot-layout-gsub-private.h |  3 ---
 src/hb-ot-layout-open-private.h | 18 +-----------------
 3 files changed, 1 insertion(+), 22 deletions(-)

commit 0dff25f0368c5f14ebb0a4af35f3bb6658740d57
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 8 21:12:18 2009 -0400

    [HB] Remove get_size()

 src/hb-ot-layout-gdef-private.h |  9 ------
 src/hb-ot-layout-gsub-private.h | 63
 -----------------------------------------
 src/hb-ot-layout-open-private.h | 42 ++-------------------------
 3 files changed, 3 insertions(+), 111 deletions(-)

commit 25c6c9a3f6c062ec639d9202a8b9844be64d6fc0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 8 19:09:17 2009 -0400

    [GSUB] ContextSubst format 1

 src/hb-ot-layout-gsub-private.h | 52
 +++++++++++++++++++++++++++++++++++------
 1 file changed, 45 insertions(+), 7 deletions(-)

commit f70229510303109bd0f71423cdf13aa200066d17
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 8 18:45:53 2009 -0400

    [GSUB] Shuffle

 src/hb-ot-layout-gsub-private.h | 170
 ++++++++++++++++++++--------------------
 1 file changed, 86 insertions(+), 84 deletions(-)

commit a83e08f8728439ef75e3dfab2191ac913d8f907b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 7 12:53:02 2009 -0400

    [HarfBuzz] Start a TODO file

 src/TODO | 1 +
 1 file changed, 1 insertion(+)

commit eed05b04ebc2cbb3fa699c99200db12a0081cefb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 6 00:25:59 2009 -0400

    [GSUB] minor

 src/hb-ot-layout-open-private.h | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit cdb317bc4e188421cad997b448abb19223d39e96
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 6 00:12:29 2009 -0400

    [GSUB] Towards Context subtitutes

 src/hb-ot-layout-gsub-private.h | 137
 +++++++++++++++++++++++++++++++---------
 1 file changed, 108 insertions(+), 29 deletions(-)

commit c9c6a78aec2b16ac06dfca8cbfaf28a77a10bae2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 5 16:22:02 2009 -0400

    [GSUB] Minor refactoring

 src/hb-ot-layout-gsub-private.h | 42
 ++++++++++++++++++++++-------------------
 1 file changed, 23 insertions(+), 19 deletions(-)

commit bb3899a579b00134b24df8891b69bf1621a8190f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 5 13:25:13 2009 -0400

    [GSUB] Implement ligature substitutions

 src/Makefile.am                 |   2 +
 src/hb-ot-layout-gsub-private.h | 113
 ++++++++++++++++++++++++++++++++--------
 2 files changed, 93 insertions(+), 22 deletions(-)

commit 38b011a293181856463dd08d43e2106e5bf1d56e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 4 20:21:57 2009 -0400

    [GSUB] Hook new GSUB up in Pango

 src/hb-ot-layout-gsub-private.h | 15 ++++++++++-----
 1 file changed, 10 insertions(+), 5 deletions(-)

commit a84e71ad11a72feff47ead16772a8c4bcf4f69d5
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 16 16:53:40 2009 -0400

    [GSUB] Start Ligature subtable support

 src/hb-ot-layout-gsub-private.h | 132
 +++++++++++++++++++++++++++++-----------
 src/hb-ot-layout.h              |   2 +-
 2 files changed, 96 insertions(+), 38 deletions(-)

commit 52886ca56b24a8335614b1df16a33dd4e2d7ae56
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 16 14:19:42 2009 -0400

    [GSUB] Implement Alternate subtables

 src/hb-ot-layout-gsub-private.h | 104
 ++++++++++++++++++++++++++++++++++++----
 src/hb-ot-layout-open-private.h |   2 +-
 2 files changed, 97 insertions(+), 9 deletions(-)

commit 4f27ce7e0213ac5ba356f0fd2ec0a175ffd002e6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 16 13:40:13 2009 -0400

    [GSUB] Implement Extension subtables

 src/hb-ot-layout-gsub-private.h | 169
 +++++++++++++++++++++++++---------------
 1 file changed, 108 insertions(+), 61 deletions(-)

commit 83e61ff4702121d3418fe82a8fe7ef6bb63bb5d2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 16 12:30:51 2009 -0400

    [GSUB] Fix reverse lookup loop like we did in the old code before

 src/hb-ot-layout-gsub-private.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 5a0b791184cf6ef39eae0570e14aca21abc32845
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 16 04:45:30 2009 -0400

    [harfbuzz/GSUB] towards a partially working GSUB

 src/harfbuzz-buffer.c           |   2 +-
 src/harfbuzz-impl.h             |   2 +-
 src/harfbuzz.c                  |   1 -
 src/hb-ot-layout-gdef-private.h |   4 +-
 src/hb-ot-layout-gsub-private.h | 383
 +++++++++++++++++++++++++++++-----------
 src/hb-ot-layout-open-private.h |  31 +++-
 src/hb-ot-layout-private.h      |   6 +-
 src/hb-ot-layout.cc             |  94 +++++++---
 src/hb-ot-layout.h              |   2 -
 9 files changed, 381 insertions(+), 144 deletions(-)

commit 30bd763fa2fa4aceee51433ec9fc8dc28480b5d7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 15 22:56:15 2009 -0400

    Implement the first substitute()

 src/harfbuzz-buffer-private.h   |  8 ++--
 src/harfbuzz-buffer.c           |  4 +-
 src/harfbuzz-buffer.h           |  2 +-
 src/harfbuzz-gdef-private.h     |  4 +-
 src/harfbuzz-gdef.c             |  6 +--
 src/harfbuzz-gdef.h             |  2 +-
 src/harfbuzz-gpos.c             |  8 ++--
 src/harfbuzz-gpos.h             |  2 +-
 src/harfbuzz-gsub.h             |  2 +-
 src/hb-ot-layout-gsub-private.h | 88
 +++++++++++++++++++++++++++++++++++++----
 src/hb-ot-layout-open-private.h |  2 +-
 src/hb-ot-layout-private.h      | 23 ++++++-----
 src/hb-ot-layout.cc             | 54 +++++++++++++++++--------
 src/hb-ot-layout.h              |  2 +-
 14 files changed, 151 insertions(+), 56 deletions(-)

commit ce48f03946bef895912019046bdbe62bb1301d0b
Merge: 0e13beeb 2d15e72c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Nov 2 14:35:51 2009 -0500

    Merge harfbuzz-ng

commit 0e13beeb93077750183a8242780158b88df81e26
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Apr 17 17:03:39 2009 -0400

    Use git.mk

 src/Makefile.am | 2 ++
 1 file changed, 2 insertions(+)

commit 2d15e72c75931398db5e027e660f1320bb979117
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Apr 15 19:50:16 2009 -0400

    Give it a start at GSUB

 src/hb-common.h                 |   5 +-
 src/hb-ot-layout-gdef-private.h |  24 ++++----
 src/hb-ot-layout-gsub-private.h | 120
 +++++++++++++++++++++++++++++++++++++++-
 src/hb-ot-layout-open-private.h |  51 ++++++++++-------
 src/hb-ot-layout-private.h      |   2 +-
 src/hb-ot-layout.cc             |  63 +++++++++++++++++++--
 src/hb-ot-layout.h              |  29 +++++++++-
 src/main.cc                     |   4 +-
 8 files changed, 253 insertions(+), 45 deletions(-)

commit 9d870f2a558f4e463e3ff953312202a8d144158b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Apr 9 13:30:26 2009 -0400

    Bug 577952 – Error loading {GDEF,GSUB,GPOS} table 0x6EAD

    Detect TrueType Collections by checking the font data header instead
    of checking for "face->num_faces >1".

 src/harfbuzz-stream.c | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

commit d49caf1f77743550d83fc7feced1293ba34a4e99
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Mar 2 15:16:11 2009 +0330

    [opentype] Protect against illegal access for arrays of length zero

 src/harfbuzz-gpos.c | 22 ++++++++++++++++++----
 src/harfbuzz-gsub.c |  6 ++++++
 2 files changed, 24 insertions(+), 4 deletions(-)

commit 66871797af194f9d2161faf8bfbc9684f09e207e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Mar 2 14:20:20 2009 +0330

    [opentype] Use size_t instead of uint for malloc wrappers

 src/harfbuzz-impl.c | 4 ++--
 src/harfbuzz-impl.h | 6 ++++--
 2 files changed, 6 insertions(+), 4 deletions(-)

commit 3664e59c52ed56486a3e38126c0c3abb78f42233
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Mar 2 11:09:29 2009 +0330

    Fix Bug 572529 – Poor -I ordering can break build

 src/Makefile.am | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit aca4d11388eedd532a73bd34747abb65c0ea9291
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Mon Feb 2 00:13:07 2009 +0000

    Allocate all array rows in a single ALLOC call. Saves over 100
    alloc calls

    2009-01-31  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/harfbuzz-gpos.c (Load_Mark2Array),
            (Free_Mark2Array):
            Allocate all array rows in a single ALLOC call.  Saves over
            100
            alloc calls when loading DejaVu Sans,

 src/harfbuzz-gpos.c | 59
 +++++++++++++++--------------------------------------
 1 file changed, 17 insertions(+), 42 deletions(-)

commit c561d69c721105b78bb06d1e3c5f21ca314d924a
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Thu Jan 29 09:20:08 2009 +0000

    Remove ClassDef->Defined field. This is the comment accompanying it:

    2009-01-29  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/harfbuzz-open.h:
            * pango/opentype/harfbuzz-gdef.c (Make_ClassRange),
            (HB_GDEF_Build_ClassDefinition):
            * pango/opentype/harfbuzz-gpos.c (Load_PosClassRule),
            (Load_ChainPosClassRule):
            * pango/opentype/harfbuzz-gsub.c (Load_SubClassRule),
            (Load_ChainSubClassRule):
            * pango/opentype/harfbuzz-open.c (Load_ClassDef1),
            (Load_ClassDef2), (_HB_OPEN_Load_ClassDefinition),
            (_HB_OPEN_Load_EmptyClassDefinition),
            (_HB_OPEN_Free_ClassDefinition):
            Remove ClassDef->Defined field.  This is the comment
            accompanying it:

              The `Defined' field is not defined in the OpenType
              specification
              but apparently needed for processing fonts like trado.ttf:
              This
              font refers to a class which contains not a single element.
              We
              map such classes to class 0.

            The comment is correct that trado.ttf (MS Traditional
            Arabic) uses
            such classes.  However, in my testing I couldn't identify any
            problems with the font if the special handling is removed.
            I also
            processed as many fonts as I could get my hand on and
            trado.ttf was
            the only not-totally-broken font hitting the special-case
            code.
            DejaVu fonts hit it too, but I'm sure they do not require the
            special-handling code.  Most probably, that code introduces
            bugs
            in them.

            The special-casing was consuming lots of memory.
            EIGHT MEGABYTES
            for loading DejaVu Sans!  While this could be complete
            fixed, I
            decided to remove the special-handling code altogether.
            I don't
            think it will make any real difference, and if it does,
            we'll fix
            fonts.  Such hacks will not be in harfbuzz-ng anyway.

            Bug originally reported by nsf.

 src/harfbuzz-gdef.c |  8 --------
 src/harfbuzz-gpos.c | 32 --------------------------------
 src/harfbuzz-gsub.c | 31 -------------------------------
 src/harfbuzz-open.c | 30 +++---------------------------
 src/harfbuzz-open.h |  8 --------
 5 files changed, 3 insertions(+), 106 deletions(-)

commit 9372edd6f020c92609853609dcb504c72551c9c3
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Thu Jan 29 09:19:56 2009 +0000

    Use calloc(), instead of malloc()ing and memset()ing.

    2009-01-29  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/harfbuzz-impl.c (_hb_alloc): Use calloc(),
            instead of malloc()ing and memset()ing.

 src/harfbuzz-impl.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

commit 94c21d26ba878b3168a21f2e76f02bc52e8fe6fd
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Thu Jan 29 09:19:43 2009 +0000

    Remove old cruft.

    2009-01-29  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/harfbuzz-dump-main.c (main): Remove old
            cruft.

 src/harfbuzz-dump-main.c | 144
 +----------------------------------------------
 1 file changed, 1 insertion(+), 143 deletions(-)

commit 0a47c4f78e8a9e81cd305f24ec92ea61ead7dd8d
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Thu Jan 29 09:19:20 2009 +0000

    Allocate all array rows in a single ALLOC call. Saves over 2000 alloc

    2009-01-29  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/harfbuzz-gpos.c (Load_BaseArray),
            (Free_BaseArray):
            Allocate all array rows in a single ALLOC call.  Saves over
            2000
            alloc calls when loading DejaVu Sans!

 src/harfbuzz-gpos.c | 57
 ++++++++++++++++-------------------------------------
 1 file changed, 17 insertions(+), 40 deletions(-)

commit 549be924bccd187f53791dfa27647981ac909545
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Fri Dec 26 02:31:47 2008 +0000

    Bug 469049 – Fix all compiler warnings

    2008-12-25  Behdad Esfahbod  <behdad@gnome.org>

            Bug 469049 – Fix all compiler warnings

            * pango-view/viewer-pangocairo.c (render_callback):
            * pango/fonts.c (append_field),
            (pango_font_description_to_string):
            * pango/opentype/harfbuzz-dump.c:
            * pango/pango-bidi-type.c
            (pango_log2vis_get_embedding_levels):
            * pango/pango-coverage.c (pango_coverage_set):
            * pango/pango-markup.c (span_parse_func):
            * pango/pango-renderer.c
            (pango_renderer_default_draw_error_underline):
            * pango/pango-utils.c (pango_scan_string):
            * pango/pangocairo-render.c
            (pango_cairo_renderer_draw_trapezoid),
            (draw_error_underline), (pango_cairo_renderer_class_init):
            Fix all the remaining warnings.

 src/harfbuzz-dump.c | 3 +++
 1 file changed, 3 insertions(+)

commit 719f9eaa755396ff377da10c5eeced01d3456b1b
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Fri Dec 26 02:31:35 2008 +0000

    Fix more warnings.

    2008-12-25  Behdad Esfahbod  <behdad@gnome.org>

            * pango/modules.c (pango_module_load), (script_info_free):
            * pango/opentype/harfbuzz-gpos.c (HB_Load_GPOS_Table):
            * pango/pango-bidi-type.c:
            * pango/pango-coverage.c (pango_coverage_ref),
            (pango_coverage_unref):
            * pango/pango-engine.c (pango_engine_shape_real_covers),
            (fallback_engine_shape), (fallback_engine_covers):
            * pango/pango-fontmap.c (pango_font_map_init):
            * pango/pango-ot-ruleset.c (pango_ot_ruleset_finalize),
            (pango_ot_ruleset_new):
            * pango/pangofc-decoder.c (pango_fc_decoder_init),
            (pango_fc_decoder_class_init):
            * pango/pangofc-font.c (pango_fc_font_find_shaper),
            (pango_fc_font_get_coverage):
            * pango/pangofc-fontmap.c (pango_fc_font_map_list_families),
            (pango_fc_make_pattern), (pango_fc_font_map_get_patterns),
            (get_first_font), (_pango_fc_font_map_get_coverage),
            (cleanup_font), (pango_fc_font_description_from_pattern),
            (pango_fc_face_list_sizes), (pango_fc_family_list_faces):
            * pango/pangoft2-fontmap.c
            (pango_ft2_font_map_get_resolution):
            * pango/pangoft2-render.c (pango_ft2_renderer_init),
            (pango_ft2_renderer_draw_trapezoid):
            * pango/pangoft2.c (pango_ft2_font_get_face),
            (pango_ft2_font_real_unlock_face),
            (pango_ft2_free_glyph_info_callback):
            Fix more warnings.

 src/harfbuzz-gpos.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 21f7d507f4b50e2743ab47954270f4c72d5a722a
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Wed Oct 15 03:45:29 2008 +0000

    Bug 528272 – "Error loading GPOS table 5503" when using katakana

    2008-10-14  Behdad Esfahbod  <behdad@gnome.org>

            Bug 528272 – "Error loading GPOS table 5503" when using
            katakana
            characters

            * pango/opentype/harfbuzz-gpos.c (Load_Mark2Array): Skip
            parsing
            null anchor tables.

 src/harfbuzz-gpos.c | 7 +++++++
 1 file changed, 7 insertions(+)

commit a26c6ae70502b4d60c52a0648662b1619c688b9a
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Mon Sep 29 22:28:47 2008 +0000

    Fix left-to-right positioning. Reported by Peter Hunter.

    2008-09-29  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/harfbuzz-gpos.c (Position_CursiveChain):
            Fix left-to-right positioning.  Reported by Peter Hunter.

 src/harfbuzz-gpos.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b6c06c56a33f1e1ec15e3b525ecafe8fadc679db
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Sun Jun 29 18:30:14 2008 +0000

    Bug 540592 – Crash in HB_GSUB_Apply_String with Linux-Libertine font

    2008-06-29  Behdad Esfahbod  <behdad@gnome.org>

            Bug 540592 – Crash in HB_GSUB_Apply_String with
            Linux-Libertine font

            * pango/opentype/harfbuzz-gsub.c (GSUB_Do_String_Lookup):
            Fix reverse
            loops for type 8 lookups.

 src/harfbuzz-gsub.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c44733596c6648e209c12349e18e35424edf3d59
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 18 21:14:23 2008 -0500

    [hb-ot-layout] Add proper namespace to accessors

 src/hb-ot-layout.cc | 165
 ++++++++++++++++++++++++++++++++++++++--------------
 src/hb-ot-layout.h  | 115 +++++++++++++++++++++++-------------
 2 files changed, 198 insertions(+), 82 deletions(-)

commit 57225672098ebdafb0c06ae091a1b55635daca29
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Feb 18 20:58:39 2008 -0500

    Fix typo, add TODOs

 src/hb-ot-layout-open-private.h | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 4a26ea408c87f0bb59deca9ff44008d138471aa3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 28 07:40:10 2008 -0500

    Finish script, language, and feature public API

 src/hb-ot-layout-open-private.h |  22 ++++++---
 src/hb-ot-layout.cc             | 107
 +++++++++++++++++++++++++++++++---------
 src/hb-ot-layout.h              |  34 ++++++++++++-
 3 files changed, 132 insertions(+), 31 deletions(-)

commit 706ab25a4cb043d46e6088aa0a7184ee200276c9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 28 05:58:50 2008 -0500

    Add script and language public getter API

 src/hb-ot-layout-open-private.h |  40 ++++++++-----
 src/hb-ot-layout.cc             | 127
 +++++++++++++++++++++++++++++++++++++++-
 src/hb-ot-layout.h              |  56 ++++++++++++++++++
 src/main.cc                     |   2 +-
 4 files changed, 207 insertions(+), 18 deletions(-)

commit 40a81314fa3eb7c701aea47b43f81bfad985f717
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 28 02:30:48 2008 -0500

    Make main.cc compile again, which means finished getter API

 src/hb-ot-layout-open-private.h | 117
 +++++++++++++++++++++++++++++-----------
 src/main.cc                     |  99 +++++++++++++++++++++++-----------
 2 files changed, 155 insertions(+), 61 deletions(-)

commit e50c3978d37b2c0d6ddd4ced6a6196f6857cd596
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 28 00:16:49 2008 -0500

    Rename HB_OT_Layout to hb_ot_layout_t

 src/hb-ot-layout-private.h |  8 ++++----
 src/hb-ot-layout.cc        | 34 +++++++++++++++++-----------------
 src/hb-ot-layout.h         | 33 +++++++++++++++------------------
 3 files changed, 36 insertions(+), 39 deletions(-)

commit dfa811965133bc4d1696fa5a0166e17ed4142c98
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Jan 28 00:12:21 2008 -0500

    Rename hb_ot_layout_create() to hb_ot_layout_create_for_data()

 src/hb-ot-layout.cc | 4 ++--
 src/hb-ot-layout.h  | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

commit 54e5aac5e2947d4e2864c6f2987e4d275da73100
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 27 21:19:51 2008 -0500

    GDEF completely working now

 src/hb-ot-layout-open-private.h | 11 ++++++++---
 src/hb-ot-layout-private.h      | 16 +++++++++-------
 src/hb-ot-layout.cc             | 19 +++++++++----------
 src/hb-private.h                |  7 +++++++
 src/main.cc                     | 12 ++++++------
 5 files changed, 39 insertions(+), 26 deletions(-)

commit 6f425b11799aa20dab553085f05744191b7318e2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 24 19:38:56 2008 -0500

    [GDEF] Finish internal API

 src/hb-ot-layout-private.h | 15 +++++++-
 src/hb-ot-layout.cc        | 95
 ++++++++++++++++++++++------------------------
 src/hb-ot-layout.h         | 16 ++++----
 3 files changed, 66 insertions(+), 60 deletions(-)

commit 590d55cbb9e21ef74dfd88eee51fd0a763958cd2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 24 19:13:50 2008 -0500

    [GDEF] Finish public API

 src/hb-common.h                 |  11 ++++
 src/hb-ot-layout-gdef-private.h |  28 +++++----
 src/hb-ot-layout-open-private.h |  25 ++++----
 src/hb-ot-layout-private.h      |  23 ++------
 src/hb-ot-layout.cc             | 123
 +++++++++++++++++++++++++++++++++++++---
 src/hb-ot-layout.h              |  29 ++++++----
 6 files changed, 176 insertions(+), 63 deletions(-)

commit aff831ed6787abe8e24a977e34d97ff2e0b7dc21
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 24 06:03:45 2008 -0500

    Implement glyph properties

 src/hb-ot-layout-gdef-private.h | 10 ++++-
 src/hb-ot-layout-private.h      | 16 +++++++-
 src/hb-ot-layout.cc             | 84
 +++++++++++++++++++++++++++++++++++++----
 src/hb-ot-layout.h              | 25 ++++++++----
 4 files changed, 117 insertions(+), 18 deletions(-)

commit ead428d7a0bf4dc84340a99f3959e5cc58123e99
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 24 03:54:09 2008 -0500

    More public api

 src/hb-ot-layout-open-private.h | 32 +++++++++++++++++++-------------
 src/hb-ot-layout-private.h      |  9 ++++++---
 src/hb-ot-layout.cc             | 21 ++++++++++++++-------
 src/hb-ot-layout.h              |  2 --
 4 files changed, 39 insertions(+), 25 deletions(-)

commit fd92a3dde32fd10df30c9eeb97641bc3c15b1e9b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 24 03:11:09 2008 -0500

    Starting public interface

 src/{Makefile => Makefile.ng}   |  0
 src/hb-ot-layout-gdef-private.h | 17 ++++----
 src/hb-ot-layout-gsub-private.h |  3 +-
 src/hb-ot-layout-open-private.h | 92
 +++++++++++++++++++++++++++++------------
 src/hb-ot-layout-private.h      | 51 +++++++++++++++++++++++
 src/hb-ot-layout.cc             | 67 ++++++++++++++++++++++++++++++
 src/hb-ot-layout.h              | 35 ++++++++++++++--
 src/main.cc                     |  1 +
 8 files changed, 225 insertions(+), 41 deletions(-)

commit 7d6b95b000ec6cd8ca93113b2d81a049ad2f9bbe
Author: Behdad Esfahbod <behdad@src.gnome.org>
Date:   Thu Jan 24 04:42:24 2008 +0000

    Remove unused macro

 src/harfbuzz-impl.h | 2 --
 1 file changed, 2 deletions(-)

commit 7586089c6fa8185cad8387869d3703c637e5cbb1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 23 18:02:28 2008 -0500

    Minor

 src/hb-ot-layout-gdef-private.h | 37 +++++++++++++++++++++++++------
 src/hb-ot-layout-gsub-private.h | 13 +++++++++++
 src/hb-ot-layout-open-private.h | 49
 ++++++++++++++++++++++++++++++++++-------
 src/hb-private.h                |  2 ++
 4 files changed, 86 insertions(+), 15 deletions(-)

commit aefaafe5bc4fc6d37a412c135b1079c287be7045
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 23 17:25:29 2008 -0500

    Minor renaming

 src/hb-ot-layout-gdef-private.h | 10 +++++-----
 src/hb-ot-layout-open-private.h | 16 +++++++---------
 src/main.cc                     |  4 ++--
 3 files changed, 14 insertions(+), 16 deletions(-)

commit a16ecbf0564a6e2576da22c12827f3c0719da549
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 23 17:01:55 2008 -0500

    Initial gsub stub

 src/hb-ot-layout-gdef-private.h |   4 +
 src/hb-ot-layout-gsub-private.h | 453
 ++++++++++++++++++++++++++++++++++++++++
 src/hb-ot-layout-open-private.h |   3 +
 src/main.cc                     |   1 +
 4 files changed, 461 insertions(+)

commit 64aef3a54999496fd1de4f5aa5b019e4c03b3836
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 23 16:14:38 2008 -0500

    Add copyright notices.

 src/hb-common.h                 | 26 ++++++++++++++++++++++++++
 src/hb-ot-layout-gdef-private.h | 26 ++++++++++++++++++++++++++
 src/hb-ot-layout-open-private.h | 26 ++++++++++++++++++++++++++
 src/hb-ot-layout.h              | 26 ++++++++++++++++++++++++++
 src/hb-private.h                | 26 ++++++++++++++++++++++++++
 src/main.cc                     | 26 ++++++++++++++++++++++++++
 6 files changed, 156 insertions(+)

commit 12360f7c159826ae72271b34486dee59d96aa8ca
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 23 15:50:38 2008 -0500

    Minor cleanup, add LIKELY and UNLIKELY annotations

 src/hb-ot-layout-gdef-private.h | 63
 +++++++++++++++++++++++------------------
 src/hb-ot-layout-open-private.h | 36 ++++++++---------------
 src/hb-private.h                | 15 ++++++++++
 3 files changed, 63 insertions(+), 51 deletions(-)

commit 8dd1c8b8d6797d899d0f5b0a8015886bf6520ca2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 23 05:00:30 2008 -0500

    Clean up file names, add namespace

 src/harfbuzz-common.h                                      | 14
 --------------
 src/harfbuzz-gdef.h                                        | 11
 -----------
 src/hb-common.h                                            | 14
 ++++++++++++++
 ...harfbuzz-gdef-private.h => hb-ot-layout-gdef-private.h} |  8 ++++----
 ...harfbuzz-open-private.h => hb-ot-layout-open-private.h} | 10
 +++++-----
 src/{harfbuzz-open.h => hb-ot-layout.h}                    | 12
 ++++++------
 src/{harfbuzz-private.h => hb-private.h}                   |  6 +++---
 src/main.cc                                                |  4 ++--
 8 files changed, 34 insertions(+), 45 deletions(-)

commit 1f437e6f47fb6c15761021bd2078f31778f2179c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 23 04:36:40 2008 -0500

    Make all code NULL-free and assert-free

 src/harfbuzz-gdef-private.h | 125 ++++++++++---------
 src/harfbuzz-open-private.h | 285
 +++++++++++++++++++++++---------------------
 src/main.cc                 |   8 +-
 3 files changed, 214 insertions(+), 204 deletions(-)

commit 600e5eb80f553ea8eb862e6784133574c74ca513
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 23 02:01:37 2008 -0500

    Define get_for_data() factories

 src/harfbuzz-gdef-private.h |  3 +++
 src/harfbuzz-open-private.h | 42
 +++++++++++++++++++++++++++++-------------
 src/main.cc                 | 10 ++++------
 3 files changed, 36 insertions(+), 19 deletions(-)

commit b9d7688fb3d45894901484b74095c4f11cab6196
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 23 01:38:10 2008 -0500

    Finish and test GDEF

 src/harfbuzz-gdef-private.h | 72
 ++++++++++++++++++++++++++++++++-------------
 src/harfbuzz-open-private.h | 23 ++++++++-------
 src/harfbuzz-open.h         |  4 +++
 src/main.cc                 | 10 +++++++
 4 files changed, 77 insertions(+), 32 deletions(-)

commit 303fe62824d4e99df554b6bfaacba05d068522fb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 23 00:20:48 2008 -0500

    Misc cleanup

 src/Makefile                |  10 ++++-
 src/harfbuzz-gdef-private.h |  65 +++++++++++++++++++++-------
 src/harfbuzz-open-private.h | 102
 ++++++++++++++++++++++++++++++++++++++++----
 src/harfbuzz-private.h      |   6 +++
 src/main.cc                 |  12 +++---
 5 files changed, 163 insertions(+), 32 deletions(-)

commit 17843245fde4cc8cddc7da8ef30357d3d8778187
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Wed Jan 16 20:39:29 2008 +0000

    Remove COPYING.GPL and COPYING.FTL that are no longer there.

    2008-01-16  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/Makefile.am: Remove COPYING.GPL and
            COPYING.FTL that
            are no longer there.

 src/Makefile.am | 2 --
 1 file changed, 2 deletions(-)

commit a2a9a023f6472ba262f89e5327318996b8258d25
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Tue Jan 15 22:46:32 2008 +0000

    HarfBuzz was relicensed to a more generous and simpler
    license. Adapt. See

    2008-01-15  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/*:
            HarfBuzz was relicensed to a more generous and simpler
            license.
            Adapt.  See pango/opentype/COPYING for the new license
            which is
            LGPL-compatible.

 src/COPYING                   |  39 +++--
 src/COPYING.FTL               | 174 ---------------------
 src/COPYING.GPL               | 340
 ------------------------------------------
 src/harfbuzz-buffer-private.h |  32 ++--
 src/harfbuzz-buffer.c         |  27 +++-
 src/harfbuzz-buffer.h         |  32 ++--
 src/harfbuzz-dump-main.c      |  34 +++--
 src/harfbuzz-dump.c           |  34 +++--
 src/harfbuzz-dump.h           |  35 +++--
 src/harfbuzz-gdef-private.h   |  29 +++-
 src/harfbuzz-gdef.c           |  29 +++-
 src/harfbuzz-gdef.h           |  29 +++-
 src/harfbuzz-global.h         |  29 +++-
 src/harfbuzz-gpos-private.h   |  29 +++-
 src/harfbuzz-gpos.c           |  31 +++-
 src/harfbuzz-gpos.h           |  29 +++-
 src/harfbuzz-gsub-private.h   |  29 +++-
 src/harfbuzz-gsub.c           |  31 +++-
 src/harfbuzz-gsub.h           |  29 +++-
 src/harfbuzz-impl.c           |  31 +++-
 src/harfbuzz-impl.h           |  29 +++-
 src/harfbuzz-open-private.h   |  29 +++-
 src/harfbuzz-open.c           |  29 +++-
 src/harfbuzz-open.h           |  29 +++-
 src/harfbuzz-stream-private.h |  29 +++-
 src/harfbuzz-stream.c         |  31 +++-
 src/harfbuzz.c                |  28 +++-
 src/harfbuzz.h                |  29 +++-
 28 files changed, 564 insertions(+), 741 deletions(-)

commit 4ccedd22eaa6e47bd8bbf255627a8b55fbb44736
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Wed Dec 5 03:41:29 2007 +0000

    Bug 501575 – Compile errors Patch from Jens Granseuer

    2007-12-04  Behdad Esfahbod  <behdad@gnome.org>

            Bug 501575 – Compile errors
            Patch from Jens Granseuer

            * pango/opentype/harfbuzz-stream.c (_hb_font_goto_table):
            * pango/pango-utils.c (handle_alias_line):
            Fix C99ism.

 src/harfbuzz-stream.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit cd55cfa2b0a1fe35d5a4ad1c8feaa399d7fb7ab3
Author: Behdad Esfahbod <behdad@src.gnome.org>
Date:   Fri Nov 30 04:31:29 2007 +0000

    Undo accidental change.

 src/harfbuzz-impl.c | 2 --
 1 file changed, 2 deletions(-)

commit 3f05da638c8d7b13e7f860aeda1a6321e5ebd92e
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Fri Nov 30 04:29:58 2007 +0000

    Bug 485536 – underline_position can be zero

    2007-11-29  Behdad Esfahbod  <behdad@gnome.org>

            Bug 485536 – underline_position can be zero

            * pango/pango-utils.c (pango_cairo_quantize_line_geometry):
            Document that returned position may be zero.

            * pango/pangocairo-win32font.c
            (pango_cairo_win32_font_create_metrics_for_context):
            * pango/pangofc-font.c (get_face_metrics):
            Handle case of underline_position==0 after rounding.

 src/harfbuzz-impl.c | 2 ++
 1 file changed, 2 insertions(+)

commit e58278fedb67cbaac4bf4d6dfc33209cb22eec08
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Sat Nov 24 01:40:13 2007 +0000

    Remove unused macro.

    2007-11-23  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/harfbuzz-impl.c: Remove unused macro.

 src/harfbuzz-impl.c | 18 ------------------
 1 file changed, 18 deletions(-)

commit 3b047380aec4ccc707c4579327d54172c19820fd
Author: Behdad Esfahbod <behdad@src.gnome.org>
Date:   Sun Nov 18 22:34:08 2007 +0000

    Minor

 src/harfbuzz-dump-main.c |  4 +--
 src/harfbuzz-stream.c    | 89
 ++++++++++++++++++++++++------------------------
 2 files changed, 46 insertions(+), 47 deletions(-)

commit 10d6a25a26bdbab4ece4edf0e34ffd3d22410ebe
Author: Behdad Esfahbod <behdad@src.gnome.org>
Date:   Wed Nov 7 10:04:11 2007 +0000

    Remove dead code.

 src/harfbuzz-gdef.c | 88
 -----------------------------------------------------
 src/harfbuzz-gpos.h |  4 +--
 2 files changed, 1 insertion(+), 91 deletions(-)

commit 47d2c33e3d099fae79e199367de5011bc5c12273
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Wed Nov 7 09:59:18 2007 +0000

    And some more.

    2007-11-07  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/*: And some more.

 src/harfbuzz-buffer.h         |  8 ++---
 src/harfbuzz-dump-main.c      | 22 ++++++------
 src/harfbuzz-gdef.c           | 14 ++++----
 src/harfbuzz-gdef.h           |  4 +--
 src/harfbuzz-global.h         | 21 +++++------
 src/harfbuzz-gpos.c           | 82
 +++++++++++++++++++++----------------------
 src/harfbuzz-gpos.h           | 12 +++----
 src/harfbuzz-gsub.c           |  4 +--
 src/harfbuzz-gsub.h           |  4 +--
 src/harfbuzz-stream-private.h |  4 +--
 src/harfbuzz-stream.c         | 16 ++++-----
 11 files changed, 95 insertions(+), 96 deletions(-)

commit 78ef65ba08967fe1b5f97bcb27074bd635f4b898
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Wed Nov 7 08:06:01 2007 +0000

    Some more cleanup and merging.

    2007-11-07  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/*: Some more cleanup and merging.

 src/Makefile.am               |   6 +-
 src/harfbuzz-buffer-private.h |  33 ++++++
 src/harfbuzz-buffer.c         |   4 +-
 src/harfbuzz-dump-main.c      |   3 +-
 src/harfbuzz-gdef-private.h   |   9 +-
 src/harfbuzz-gdef.c           |  39 +++++++
 src/harfbuzz-global.h         |   2 +
 src/harfbuzz-gpos-private.h   |   1 +
 src/harfbuzz-gpos.c           |  32 +-----
 src/harfbuzz-gsub-private.h   |   1 +
 src/harfbuzz-gsub.c           |  33 +-----
 src/harfbuzz-impl.c           | 216
 ++------------------------------------
 src/harfbuzz-impl.h           | 100 +-----------------
 src/harfbuzz-open-private.h   |   4 +-
 src/harfbuzz-stream-private.h |  70 +++++++++++++
 src/harfbuzz-stream.c         | 234
 ++++++++++++++++++++++++++++++++++++++++++
 src/harfbuzz.c                |   1 +
 src/harfbuzz.h                |   3 +-
 18 files changed, 419 insertions(+), 372 deletions(-)

commit 5c9bd379950d914982bdb91d0f82b8036908db37
Author: Behdad Esfahbod <behdad@src.gnome.org>
Date:   Mon Oct 29 23:51:48 2007 +0000

    Fix typo.

 src/Makefile.am | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit ef1f481752fa6e478f649e826c96927c98f21981
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Thu Oct 25 23:37:11 2007 +0000

    Even more cleanup and more type renames.

    2007-10-25  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/*: Even more cleanup and more type renames.

 src/harfbuzz-buffer.h |  3 +--
 src/harfbuzz-global.h |  6 ++++++
 src/harfbuzz-impl.c   | 16 ++++++++--------
 src/harfbuzz-impl.h   | 22 +++++++++++-----------
 src/harfbuzz-open.h   |  3 ---
 5 files changed, 26 insertions(+), 24 deletions(-)

commit 282c60a0eea0db784b0a094958bec35b5f3dc399
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Thu Oct 25 23:22:17 2007 +0000

    More cleanup, remove redundant error types.

    2007-10-25  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/*: More cleanup, remove redundant error
            types.

 src/harfbuzz-dump-main.c |   4 +-
 src/harfbuzz-dump.c      |  14 +++---
 src/harfbuzz-gdef.c      |  25 +++++-----
 src/harfbuzz-gdef.h      |   3 --
 src/harfbuzz-global.h    |  31 ++++++------
 src/harfbuzz-gpos.c      | 124
 +++++++++++++++++++++++------------------------
 src/harfbuzz-gpos.h      |   3 --
 src/harfbuzz-gsub.c      |  86 ++++++++++++++++----------------
 src/harfbuzz-gsub.h      |   3 --
 src/harfbuzz-impl.c      |  18 +++----
 src/harfbuzz-impl.h      |   2 +
 src/harfbuzz-open.c      |  24 ++++-----
 src/harfbuzz-open.h      |   6 +--
 13 files changed, 170 insertions(+), 173 deletions(-)

commit 4280ec4df45ae86c10c3cd24ddb9c05e47223d39
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Thu Oct 25 00:23:46 2007 +0000

    Rename ftglue.c to harfbuzz-impl.c and more type renames and
    moving code

    2007-10-24  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/*: Rename ftglue.c to harfbuzz-impl.c
            and more
            type renames and moving code around.

 src/Makefile.am                   |   3 +-
 src/ftglue.h                      | 151
 --------------------------------------
 src/harfbuzz-dump-main.c          |  48 ++----------
 src/harfbuzz-dump.c               |  30 ++++----
 src/harfbuzz-gdef.c               |  18 ++---
 src/harfbuzz-global.h             |  18 +++++
 src/harfbuzz-gpos-private.h       |   2 +-
 src/harfbuzz-gpos.c               |  90 +++++++++++------------
 src/harfbuzz-gsub-private.h       |   2 +-
 src/harfbuzz-gsub.c               |  64 ++++++++--------
 src/{ftglue.c => harfbuzz-impl.c} |  64 ++++++++--------
 src/harfbuzz-impl.h               | 114 ++++++++++++++++++++++++++--
 src/harfbuzz-open-private.h       |  14 ++--
 src/harfbuzz-open.c               |  32 ++++----
 src/harfbuzz-open.h               |  16 ----
 src/harfbuzz.c                    |   4 +-
 16 files changed, 289 insertions(+), 381 deletions(-)

commit 5716ae278a82d318ddbfeba01d0785d4efbe1454
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Wed Oct 24 22:44:47 2007 +0000

    New header file harfbuzz-global.h. Rename FT_* int types to HB_*
    types.

    2007-10-24  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/*: New header file harfbuzz-global.h.  Rename
            FT_* int types to HB_* types.

 src/Makefile.am               |   1 +
 src/ftglue.c                  |  30 +--
 src/ftglue.h                  |  26 +-
 src/harfbuzz-buffer-private.h |  26 +-
 src/harfbuzz-buffer.c         |  40 ++--
 src/harfbuzz-buffer.h         |  42 ++--
 src/harfbuzz-dump-main.c      |  24 +-
 src/harfbuzz-dump.c           |  14 +-
 src/harfbuzz-dump.h           |   4 +-
 src/harfbuzz-gdef-private.h   |  30 +--
 src/harfbuzz-gdef.c           | 104 ++++----
 src/harfbuzz-gdef.h           |  32 +--
 src/harfbuzz-global.h         |  34 +++
 src/harfbuzz-gpos-private.h   | 182 +++++++-------
 src/harfbuzz-gpos.c           | 540
 +++++++++++++++++++++---------------------
 src/harfbuzz-gpos.h           |  52 ++--
 src/harfbuzz-gsub-private.h   | 142 +++++------
 src/harfbuzz-gsub.c           | 432 ++++++++++++++++-----------------
 src/harfbuzz-gsub.h           |  50 ++--
 src/harfbuzz-impl.h           |   6 +-
 src/harfbuzz-open-private.h   |  26 +-
 src/harfbuzz-open.c           | 146 ++++++------
 src/harfbuzz-open.h           |  88 +++----
 src/harfbuzz.h                |   1 +
 24 files changed, 1056 insertions(+), 1016 deletions(-)

commit 2130d852c76cccb94350a4aea222359640ffa8a4
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Wed Oct 24 21:35:03 2007 +0000

    Add commented-out dummy struct for Extension lookups.

    2007-10-24  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/harfbuzz-gpos-private.h:
            * pango/opentype/harfbuzz-gsub-private.h:
            Add commented-out dummy struct for Extension lookups.

 src/harfbuzz-gpos-private.h | 13 +++++++++++++
 src/harfbuzz-gsub-private.h | 13 +++++++++++++
 2 files changed, 26 insertions(+)

commit 13b2b963848ada169c2fe3d3669fbc1c337f7fe7
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Sun Oct 21 18:17:02 2007 +0000

    Bug 488840 – harfbuzz: protect against ligid overflow

    2007-10-21  Behdad Esfahbod  <behdad@gnome.org>

            Bug 488840 – harfbuzz: protect against ligid overflow

            * pango/opentype/harfbuzz-buffer.c
            (_hb_buffer_allocate_ligid):
            Never return zero, even in case of overflow.

            * pango/opentype/harfbuzz-impl.h: Define dummy HB_LIKELY() and
            HB_UNLIKELY(), to be filled later.

 src/harfbuzz-buffer.c | 6 +++++-
 src/harfbuzz-impl.h   | 3 +++
 2 files changed, 8 insertions(+), 1 deletion(-)

commit 6b347138b597c41af24453f630336ba2fc033dc5
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Thu Oct 11 08:30:50 2007 +0000

    Mark internal symbols as HB_INTERNAL and define that to static in

    2007-10-11  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/*: Mark internal symbols as HB_INTERNAL and
            define that to static in harfbuzz.c.

            * pango/opentype/harfbuzz-buffer-internal.h: New file.

 src/Makefile.am               |   1 +
 src/ftglue.c                  |  18 +++----
 src/ftglue.h                  |  20 ++++----
 src/harfbuzz-buffer-private.h |  60 +++++++++++++++++++++++
 src/harfbuzz-buffer.c         | 108
 +++++++++++++++++++++-------------------
 src/harfbuzz-buffer.h         |  38 +--------------
 src/harfbuzz-gdef-private.h   |  17 ++++---
 src/harfbuzz-gdef.c           |  20 ++++----
 src/harfbuzz-gpos-private.h   |  13 +++--
 src/harfbuzz-gpos.c           |  16 +++---
 src/harfbuzz-gsub-private.h   |  14 +++---
 src/harfbuzz-gsub.c           |  20 ++++----
 src/harfbuzz-impl.h           |  12 +++--
 src/harfbuzz-open-private.h   |  81 +++++++++++++++++-------------
 src/harfbuzz-open.c           | 111
 ++++++++++++++++++++++++------------------
 src/harfbuzz.c                |   1 +
 16 files changed, 315 insertions(+), 235 deletions(-)

commit 7cdfb61deefd8f43edb5eb79d45d38dbbbef9051
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Thu Oct 11 07:46:33 2007 +0000

    Remove FTGLUE_API/APIDEF cruft.

    2007-10-11  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/ftglue.[ch]: Remove FTGLUE_API/APIDEF cruft.

 src/ftglue.c | 16 ++++++++--------
 src/ftglue.h | 24 ++++++++----------------
 2 files changed, 16 insertions(+), 24 deletions(-)

commit 61ddbafaaad31ccacde54cad7e60a84abffc0a9f
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Thu Oct 11 07:45:26 2007 +0000

    Build harfbuzz.c instead of individual source files, to let
    compiler go

    2007-10-11  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/Makefile.am: Build harfbuzz.c instead
            of individual
            source files, to let compiler go wild with optimizations!

 src/Makefile.am | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

commit a219b3d003d6727c79dc51282d21e9ac48c44458
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Thu Oct 11 07:34:08 2007 +0000

    Same here.

    2007-10-11  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/harfbuzz.c: Same here.

 src/harfbuzz.c | 1 -
 1 file changed, 1 deletion(-)

commit 6567e16e3b14c08659342bbcc9f2735e71f9114e
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Thu Oct 11 07:33:19 2007 +0000

    Don't include harfbuzz-dump.[ch] in libharfbuzz.a. Those are just
    used by

    2007-10-11  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/Makefile.am: Don't include harfbuzz-dump.[ch]
            in
            libharfbuzz.a.  Those are just used by the harfbuzz-dump tool.

 src/Makefile.am | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 0b032549ba7581c879a0fc4e794b0e9a4723ae85
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Thu Oct 11 07:24:47 2007 +0000

    Some more cleanup.

    2007-10-11  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/harfbuzz-buffer.c: Some more cleanup.

 src/harfbuzz-buffer.c | 11 ++---------
 1 file changed, 2 insertions(+), 9 deletions(-)

commit 7a26864308bd1ca8d5f47d798411cac7239b7d38
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Thu Oct 11 07:21:31 2007 +0000

    Move some code around.

    2007-10-11  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/harfbuzz-buffer.c: Move some code around.

 src/harfbuzz-buffer.c | 91
 +++++++++++++++++++++++++++------------------------
 1 file changed, 48 insertions(+), 43 deletions(-)

commit 7a5405c8261573a0f29d28fb533e800d698f6129
Author: Behdad Esfahbod <behdad@src.gnome.org>
Date:   Thu Oct 11 07:15:16 2007 +0000

    Minor.

 src/harfbuzz-buffer.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 986f4fd96892ebda550793941bb1daed862c4a34
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Thu Oct 11 07:12:49 2007 +0000

    Rename buffer->inplace to buffer->separate_out with the inverted
    meaning,

    2007-10-11  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/harfbuzz-buffer.[ch]: Rename buffer->inplace
            to
            buffer->separate_out with the inverted meaning, such that
            buffer
            is initialization is memset(0).

 src/harfbuzz-buffer.c | 34 +++++++++++++++++-----------------
 src/harfbuzz-buffer.h |  2 +-
 2 files changed, 18 insertions(+), 18 deletions(-)

commit 06003908ccf2473366816935dd1b144cde587be9
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Thu Oct 11 07:05:09 2007 +0000

    Allocate buffer->positions lazily.

    2007-10-11  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/*: Allocate buffer->positions lazily.

 src/harfbuzz-buffer.c | 25 +++++++++++++++++++++++--
 src/harfbuzz-buffer.h |  3 +++
 src/harfbuzz-gpos.c   | 13 ++++++++-----
 src/harfbuzz-gsub.c   |  5 +++--
 4 files changed, 37 insertions(+), 9 deletions(-)

commit fc3d6f575826704a0ae9ee9018323f6a3c422f4b
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Thu Oct 11 06:52:07 2007 +0000

    Bug 485621 – Get rid of freetype memory allocator in harfbuzz

    2007-10-11  Behdad Esfahbod  <behdad@gnome.org>

            Bug 485621 – Get rid of freetype memory allocator in
            harfbuzz

            * pango/opentype/*: Remove all occurences of FT_Memory.  Use
            malloc/realloc/free directly.

            * pango/pango-ot*: Update to above.

 src/ftglue.c                |  52 ++---
 src/ftglue.h                |  28 ++-
 src/harfbuzz-buffer.c       |  16 +-
 src/harfbuzz-buffer.h       |   4 +-
 src/harfbuzz-gdef.c         | 106 ++++------
 src/harfbuzz-gdef.h         |   6 +-
 src/harfbuzz-gpos-private.h |   1 -
 src/harfbuzz-gpos.c         | 462
 ++++++++++++++++++--------------------------
 src/harfbuzz-gpos.h         |   2 -
 src/harfbuzz-gsub-private.h |   1 -
 src/harfbuzz-gsub.c         | 312 +++++++++++-------------------
 src/harfbuzz-gsub.h         |   2 -
 src/harfbuzz-open-private.h |  25 ++-
 src/harfbuzz-open.c         | 127 ++++++------
 14 files changed, 441 insertions(+), 703 deletions(-)

commit a8abb8b994c3cd89808e8f7128a0c04b23eb3ede
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Thu Oct 11 00:07:58 2007 +0000

    Bug 485559 – Boston Summit HarfBuzz optimizations

    2007-10-10  Behdad Esfahbod  <behdad@gnome.org>

            Bug 485559 – Boston Summit HarfBuzz optimizations

            * pango/opentype/*: HarfBuzz hacking to:

              - Rename last remaining FT_Err stuff to HB_Err.

              - Fix a couple invalid table paths to be permissive so
                fonts work better.  Particularly GDEF table for Nafees
                Nastaliq is loaded and works great now.

              - Optimize harfbuzz buffer to not copy/swap for simple
              one-to-one and "copy" GSUB operations.

            * pango/pango-ot*: Update to FT_Err to HB_Err renaming.

 src/ftglue.c                |  51 ++-
 src/ftglue.h                |  21 +-
 src/harfbuzz-buffer.c       | 190 +++++++--
 src/harfbuzz-buffer.h       |  26 +-
 src/harfbuzz-dump-main.c    |  14 +-
 src/harfbuzz-dump.c         |  15 +-
 src/harfbuzz-gdef-private.h |   4 +-
 src/harfbuzz-gdef.c         | 149 +++----
 src/harfbuzz-gdef.h         |  10 +-
 src/harfbuzz-gpos-private.h |   2 +-
 src/harfbuzz-gpos.c         | 810 ++++++++++++++++++--------------------
 src/harfbuzz-gpos.h         |  30 +-
 src/harfbuzz-gsub-private.h |   2 +-
 src/harfbuzz-gsub.c         | 919
 +++++++++++++++++++-------------------------
 src/harfbuzz-gsub.h         |  24 +-
 src/harfbuzz-impl.h         |  22 +-
 src/harfbuzz-open-private.h |  20 +-
 src/harfbuzz-open.c         | 238 ++++++------
 src/harfbuzz-open.h         |  13 +-
 19 files changed, 1253 insertions(+), 1307 deletions(-)

commit dd810b76bc554278d3a226cf89901d16992cf56d
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Wed Aug 29 08:46:50 2007 +0000

    Bug 302952 – The placement of a diacritic marks for an arabic
    ligature

    2007-08-29  Behdad Esfahbod  <behdad@gnome.org>

            Bug 302952 – The placement of a diacritic marks for an
            arabic ligature
            is not correct

            * pango/opentype/harfbuzz-buffer.c (hb_buffer_allocate_ligid):
            Don't
            use zero as allocated ligature id.  Zero means no ligature id.

 src/harfbuzz-buffer.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e90d19919434b90d79e67aaf199bddd991f8e5d8
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Tue Aug 21 08:03:26 2007 +0000

    Bug 463430 – Gets stuck while "formatting message"

    2007-08-21  Behdad Esfahbod  <behdad@gnome.org>

            Bug 463430 – Gets stuck while "formatting message"

            * pango/opentype/harfbuzz-gpos.c (Lookup_PairPos1),
            (Lookup_PairPos2), (Lookup_PairPos), (Do_ContextPos):
            * pango/opentype/harfbuzz-gsub.c (Do_ContextSubst):
            Change type of intermediate index variable from FT_UShort to
            FT_ULong as it was overlowing with more than 65536 glyphs.

 src/harfbuzz-gpos.c | 15 ++++++++++-----
 src/harfbuzz-gsub.c |  2 +-
 2 files changed, 11 insertions(+), 6 deletions(-)

commit 13b86ee398905f96f57df001309312f6dfdfea9a
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Tue Aug 21 01:38:07 2007 +0000

    Don't ignore error return value of
    hb_buffer_copy_output_glyph(). Patch

    2007-08-20  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/harfbuzz-gsub.c (GSUB_Do_String_Lookup):
            Don't
            ignore error return value of hb_buffer_copy_output_glyph().
            Patch
            sent to harfbuzz-list.

 src/harfbuzz-gsub.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 4c2556cb4c38a56c3a5087deb54aa6262ab3aff9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 6 11:29:21 2007 -0400

    [gdef] Initial implementation

 src/harfbuzz-gdef-private.h | 144
 +++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 142 insertions(+), 2 deletions(-)

commit 5b2e947fd2b7c5ea49b2bef1e0190d99a525058c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jul 6 02:03:26 2007 -0400

    [open] small fixes, including not using unions for main structs

 src/harfbuzz-open-private.h | 54
 ++++++++++++++++++++++++---------------------
 1 file changed, 29 insertions(+), 25 deletions(-)

commit 151df44346990728b5dd249db5740a9543ae33b9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jul 5 17:22:07 2007 -0400

    Improve stupid Makefile

 src/Makefile | 2 ++
 1 file changed, 2 insertions(+)

commit 6c49bebc70a0118a803a5bc979f4436a82b48240
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Tue May 1 02:32:12 2007 +0000

    Link freetype to harfbuzz-dump, for those systems that don't track

    2007-04-30  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/Makefile.am: Link freetype to harfbuzz-dump,
            for
            those systems that don't track dependencies automatically.

 src/Makefile.am | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 7341a116916c8470f1211f0cb3c65b189b42ec9e
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Tue Apr 3 22:45:29 2007 +0000

    Copy fixes from harfbuzz stable branch. Includes a leak fix, a kerning

    2007-04-03  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/harfbuzz-gdef.c (_HB_GDEF_Check_Property):
            * pango/opentype/harfbuzz-gpos.c (HB_Done_GPOS_Table),
            (Lookup_PairPos):
            * pango/opentype/harfbuzz-open.c (Get_Class1):
            Copy fixes from harfbuzz stable branch.  Includes a leak fix,
            a kerning fix, and an array out-of-bound access fix.

 src/harfbuzz-gdef.c | 2 ++
 src/harfbuzz-gpos.c | 8 ++++++++
 src/harfbuzz-open.c | 2 +-
 3 files changed, 11 insertions(+), 1 deletion(-)

commit 999a6f05758c10a902354457ecbf6c943bfed514
Author: Hans Breuer <hans@breuer.org>
Date:   Sat Jan 13 21:31:41 2007 +0000

    updated

    2007-01-13  Hans Breuer  <hans@breuer.org>

            * pango/makefile.msc pango/opentype/makefile.msc : updated

 src/makefile.msc | 16 ++++++----------
 1 file changed, 6 insertions(+), 10 deletions(-)

commit 3c038d40da4bfe5037cc4e9de22bad08fa408465
Author: Behdad Esfahbod <behdad@src.gnome.org>
Date:   Tue Jan 9 03:32:12 2007 +0000

    Remove .cvsignore files (moved to svn:ignore prop)

 src/.cvsignore | 7 -------
 1 file changed, 7 deletions(-)

commit 5b3f7702a64fe0513d08a67bdb72704e46fd7cd4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 28 06:42:37 2006 -0500

    Add stub GDEF files

 src/harfbuzz-gdef-private.h |  8 ++++++++
 src/harfbuzz-gdef.h         | 11 +++++++++++
 src/harfbuzz-open-private.h |  3 +--
 src/harfbuzz-private.h      |  6 ++++++
 src/main.cc                 |  1 +
 5 files changed, 27 insertions(+), 2 deletions(-)

commit b3395a7aa36ff1ba5a17f494fbf359ec317a7e69
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 28 06:31:18 2006 -0500

    Don't shift down the mark attachment type

 src/harfbuzz-open-private.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 193b66d52ae2cb5ced7969e15b7f56dc1978ca8a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 28 06:12:18 2006 -0500

    Remove stale comment

 src/harfbuzz-open-private.h | 10 ----------
 1 file changed, 10 deletions(-)

commit 12c4568c680ea2b9b98a16a8b7402ca185c90ef6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 28 06:10:59 2006 -0500

    Break and rename, in the layout of old HarfBuzz codebase

 src/.gitignore                                  |   1 +
 src/Makefile                                    |   2 +-
 src/harfbuzz-common.h                           |  14 +++
 src/{harfbuzz-ng.cc => harfbuzz-open-private.h} | 117
 ++----------------------
 src/harfbuzz-open.h                             |  13 +++
 src/main.cc                                     |  98
 ++++++++++++++++++++
 6 files changed, 133 insertions(+), 112 deletions(-)

commit 3158d84b0dfe5032e7c56c03f2da97b8ab549d94
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 27 20:08:07 2006 -0500

    Oops. s/OpenTypeFontFaceFile/OpenTypeFontFile/g

 src/harfbuzz-ng.cc | 22 +++++++++++-----------
 1 file changed, 11 insertions(+), 11 deletions(-)

commit bf0f9dd61375c5afce8e6b1664d0df5f6c8b2494
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 27 20:06:42 2006 -0500

    Use union for ClassDef

 src/harfbuzz-ng.cc | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

commit c46196d09c4ea879bf45182e8a0d649d4c750c39
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 27 20:05:16 2006 -0500

    Use union for Coverage

 src/harfbuzz-ng.cc | 21 +++++++++++----------
 1 file changed, 11 insertions(+), 10 deletions(-)

commit 86f450243dbaa82f187cf2d36364e9a59c0e64c7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 27 19:59:07 2006 -0500

    Add GPOS stub

 src/harfbuzz-ng.cc | 3 +++
 1 file changed, 3 insertions(+)

commit 133466177e104ddcd2501a88735670540252167c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 27 19:58:32 2006 -0500

    s/OpenTypeFont/OpenTypeFontFace/g

 src/harfbuzz-ng.cc | 44 +++++++++++++++++++++++---------------------
 1 file changed, 23 insertions(+), 21 deletions(-)

commit 71d62baab0429cdf56ba4019fd2a205f08188503
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 27 01:29:24 2006 -0500

    GSUBGPOSHeader

 src/harfbuzz-ng.cc | 103
 ++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 file changed, 98 insertions(+), 5 deletions(-)

commit eebabd8b2ec5296deba6b09d7755933da0a7d9dc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Dec 27 00:21:31 2006 -0500

    Finished OpenType Common Table Formats

 src/harfbuzz-ng.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2b7374519766825971f9f4ff5b1cb49b74cfcaf8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 26 20:55:37 2006 -0500

    Device tables.

 src/harfbuzz-ng.cc | 49 +++++++++++++++++++++++++++++++++++++++++++++----
 1 file changed, 45 insertions(+), 4 deletions(-)

commit eb32e374f4d6de8d428d36144f6eef93514820d2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 26 20:00:33 2006 -0500

    ClassDef

 src/harfbuzz-ng.cc | 121
 ++++++++++++++++++++++++++++++++++++++++++-----------
 1 file changed, 97 insertions(+), 24 deletions(-)

commit 53502c6723dbf9cd3b6ba91b733678b3c7871715
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 26 19:29:08 2006 -0500

    Rename CoverageFormat to Coverage

 src/harfbuzz-ng.cc | 18 +++++++++++++-----
 1 file changed, 13 insertions(+), 5 deletions(-)

commit 0d6db2abcbe98456569ccf7934ba0a8b37c7f6f3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 26 18:53:55 2006 -0500

    Define more structs using DEFINE_INT_TYPE.

 src/harfbuzz-ng.cc | 39 +++++++++++++++++++--------------------
 1 file changed, 19 insertions(+), 20 deletions(-)

commit 915931b74a30e8652fac5fec153d499485513f63
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 26 15:30:14 2006 -0500

    s/DEFINE_NOT_INSTANTIABLE/DEFINE_NON_INSTANTIABLE/

 src/harfbuzz-ng.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 0c0d55330ef4090f3e4864538e83a4344caaf3ba
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Dec 26 15:29:38 2006 -0500

    Coverage.

 src/harfbuzz-ng.cc | 91
 +++++++++++++++++++++++++++++++++++++++++++++++-------
 1 file changed, 79 insertions(+), 12 deletions(-)

commit 882e52f59196535495af8ca8069df32308ad52cf
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 25 10:28:31 2006 -0500

    Rename to harfbuzz-ng.cc

 src/Makefile                                | 2 +-
 src/{hb-types-private.cc => harfbuzz-ng.cc} | 0
 2 files changed, 1 insertion(+), 1 deletion(-)

commit f8ba99f6f322800a915428ffc3b5eaf1be2e6c21
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 25 09:58:02 2006 -0500

    LookupFlags

 src/hb-types-private.cc | 52
 ++++++++++++++++++++++++++++++++++++++++++++-----
 1 file changed, 47 insertions(+), 5 deletions(-)

commit 25ad92c8a68bf72464601a644ed57b9213126a78
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 25 09:35:06 2006 -0500

    Implement Feature

 src/hb-types-private.cc | 46
 ++++++++++++++++++++++++++++++++++++++++++----
 1 file changed, 42 insertions(+), 4 deletions(-)

commit befc022affd2386b3f46cd7d11e4262f6c8bce9f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 25 09:14:52 2006 -0500

    LangSys

 src/hb-types-private.cc | 51
 ++++++++++++++++++++++++++++++++++++++++++-------
 1 file changed, 44 insertions(+), 7 deletions(-)

commit c81efca149b08832d5d96a944fb5f303f3d0ca42
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 25 06:22:08 2006 -0500

    Use CamelCaseTags.

 src/hb-types-private.cc | 29 ++++++++++++++---------------
 1 file changed, 14 insertions(+), 15 deletions(-)

commit 808dbe283c1ad66091f2cb67380888b7cf265c01
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 25 06:18:52 2006 -0500

    Make types not instantiable

 src/hb-types-private.cc | 104
 ++++++++++++++++++++++++++----------------------
 1 file changed, 57 insertions(+), 47 deletions(-)

commit b739c05ca4b7acfa45bd4b0812ecbb3747f726f0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon Dec 25 05:39:20 2006 -0500

    Add OpenTypeFontFile.

 src/Makefile            |   2 +-
 src/hb-types-private.cc | 113
 +++++++++++++++++++++++++++++++++++++++++++++---
 2 files changed, 107 insertions(+), 8 deletions(-)

commit 8596944b7421f982960e825019fc0263442520cb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Dec 23 17:49:25 2006 -0500

    Add Makefile

 src/Makefile | 3 +++
 1 file changed, 3 insertions(+)

commit b6e62bc5db76ae342177b2b646c37f45eccad975
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Dec 22 02:21:55 2006 -0500

    After DEFINE_SCRIPT_ARRAY

 src/hb-types-private.cc | 215
 +++++++++++++++++++++++++++++++-----------------
 1 file changed, 140 insertions(+), 75 deletions(-)

commit 01e4fcb032be601f272e62228881e2aabfb9d925
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 21 22:31:31 2006 -0500

    Remove the annoying HB_ prefix.

 src/hb-types-private.cc | 107
 +++++++++++++++++++++++-------------------------
 1 file changed, 52 insertions(+), 55 deletions(-)

commit 6b4ce01da121e12e1c78ad7eaedf469f35f3568d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 21 22:31:10 2006 -0500

    Second version.  Complete redesign, based on C++ classes to ensure
    endian
    correctness.

 src/hb-types-private.cc | 300
 +++++++++++++++++++++++++++++++++---------------
 1 file changed, 205 insertions(+), 95 deletions(-)

commit f78e70c301311ffcfb007c7fc4125d71cbcff1e2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Dec 21 22:30:38 2006 -0500

    First version.

 src/hb-types-private.cc | 116
 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 116 insertions(+)

commit f726b20e56e8b1106dfde0bf8d575c73e83957c4
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Tue Jul 25 01:02:27 2006 +0000

    Bug 347073 – Allow empty GPOS table

    2006-07-24  Behdad Esfahbod  <behdad@gnome.org>

            Bug 347073 – Allow empty GPOS table

            * pango/opentype/harfbuzz-open.c (_HB_OPEN_Load_ScriptList):
            Don't
            err on empty GPOS/GSUB tables.

 src/harfbuzz-open.c | 5 +++++
 1 file changed, 5 insertions(+)

commit 52481a5c55d466f41654dcdc67245d0ca8cefbcf
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Thu Jun 22 18:09:04 2006 +0000

    Bug 345600 – cvs build error in pango/opentype/Makefile

    2006-06-22  Behdad Esfahbod  <behdad@gnome.org>

            Bug 345600 – cvs build error in pango/opentype/Makefile

            * pango/opentype/Makefile.am: Rename variable SOURCES to
            MAINSOURCES.
            Some automake versions seem to use it or something.

 src/Makefile.am | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit ffb2d5c1e7af33644d0a4058befa4b8358c9a7bf
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Wed May 31 07:42:55 2006 +0000

    Bug 341138 – Using TTC font, Gtk2 programs begin to eating big
    memory

    2006-05-31  Behdad Esfahbod  <behdad@gnome.org>

            Bug 341138 – Using TTC font, Gtk2 programs begin to eating
            big memory
            and have many cpu usage.
            Patch from Yong Li.

            * pango/opentype/ftglue.c (_hb_ftglue_face_goto_table):
            TrueType table
            offsets are absolute, not relative.

 src/ftglue.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f8f7bd2451eeafb57f5c80c7b4e88a1e50b97c4f
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Wed May 31 07:23:02 2006 +0000

    Bug 336153 – Mark to mark positioning (Lookup Type 6) isn't
    correct when

    2006-05-31  Behdad Esfahbod  <behdad@gnome.org>

            Bug 336153 – Mark to mark positioning (Lookup Type 6)
            isn't correct
            when using MarkAttchmentType
            Patch from Tin Myo Htet.

            * pango/opentype/harfbuzz-gpos.c (Lookup_MarkMarkPos):
            Ignore marks
            of non-matchin attachment type.

 src/harfbuzz-gpos.c | 37 ++++++++++++++++++++++---------------
 1 file changed, 22 insertions(+), 15 deletions(-)

commit d2a613187c1257371d62153b55c89336965e0754
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Wed Apr 12 18:47:50 2006 +0000

    Fix loop variables. (coverity found bug.)

    2006-04-12  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/harfbuzz-gpos.c: Fix loop
            variables. (coverity
            found bug.)

 src/harfbuzz-gpos.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 14022e826f63c48b689f9037645c9a3a3302d9b6
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Tue Apr 11 08:31:44 2006 +0000

    Bug 337924 – cleanups for issues reported by various compilers Patch

    2006-04-11  Behdad Esfahbod  <behdad@gnome.org>

            Bug 337924 – cleanups for issues reported by various
            compilers
            Patch from Kjartan Maraas.

            * examples/viewer-x.c (update):
            * modules/arabic/arabic-fc.c (fallback_shape),
            (arabic_engine_shape):
            * modules/basic/basic-fc.c (fallback_shape),
            (basic_engine_shape):
            * modules/basic/basic-x.c:
            * modules/hangul/hangul-fc.c:
            * modules/hebrew/hebrew-fc.c (hebrew_engine_shape):
            * modules/indic/indic-fc.c:
            * modules/khmer/khmer-fc.c:
            * modules/syriac/syriac-fc.c:
            * modules/thai/thai-fc.c:
            * modules/tibetan/tibetan-fc.c:
            * pango/break.c:
            * pango/modules.c:
            * pango/opentype/ftglue.c (_hb_ftglue_face_goto_table):
            * pango/pango-attributes.c (pango_attr_list_filter):
            * pango/pango-engine.c:
            * pango/pango-fontset.c:
            * pango/pango-layout.c (pango_layout_set_text),
            (pango_layout_xy_to_index), (pango_layout_get_cursor_pos):
            * pango/pango-markup.c (text_handler):
            * pango/pango-utils.c (read_alias_file):
            * pango/pangocairo-fcfont.c (G_DEFINE_TYPE_WITH_CODE):
            * pango/pangocairo-fcfontmap.c (G_DEFINE_TYPE_WITH_CODE):
            * pango/pangocairo-font.c
            (_pango_cairo_font_get_hex_box_info):
            * pango/pangox-fontmap.c (pango_x_make_matching_xlfd):
            * tests/dump-boundaries.c (fail):
            Remove unused variables.  Remove excess semicolon after
            DEFINE_TYPE
            macros.

 src/ftglue.c | 2 --
 1 file changed, 2 deletions(-)

commit 59aafd07806a2f0d4f399eff13aec74557f60522
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Mon Apr 10 10:33:17 2006 +0000

    Fix minor bugs reported by the Coverity scan report.

    2006-04-10  Behdad Esfahbod  <behdad@gnome.org>

            Fix minor bugs reported by the Coverity scan report.

            * pango/opentype/harfbuzz-gdef.c
            (HB_GDEF_Build_ClassDefinition):
            * pango/opentype/harfbuzz-gpos.c (HB_GPOS_Query_Scripts),
            (HB_GPOS_Query_Languages), (HB_GPOS_Query_Features): Do
            not access
            structs before we check them for nullity.

            * pango/pango-layout.c (pango_layout_index_to_line),
            (pango_layout_index_to_line_and_extents),
            (pango_layout_index_to_pos): Check for invalid iterators
            outside the
            loop, so we don't crash.

            * pango/pango-layout.c (pango_layout_line_x_to_index): Set
            char_trailing instead of trailing in one of too many paths.
            Should
            have been a typo.

            * pango/pangox.c (get_font_metrics_from_subfonts): Check
            for nullity
            somewhere.

 src/harfbuzz-gdef.c | 3 ++-
 src/harfbuzz-gpos.c | 9 ++++++---
 2 files changed, 8 insertions(+), 4 deletions(-)

commit b31d6def96ff99e89ba42e09661992498bda460d
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Thu Apr 6 18:23:49 2006 +0000

    Update from HarfBuzz. Lars Knoll fixed all the warnings.

    2006-04-06  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype: Update from HarfBuzz.  Lars Knoll fixed
            all the
            warnings.

 src/harfbuzz-dump.c |  94 ++++++++++++++++++++++++++++---------------
 src/harfbuzz-gpos.c |  80 ++++++++++++++++++++++--------------
 src/harfbuzz-gsub.c | 114
 +++++++++++++++++++++++++++++-----------------------
 src/harfbuzz-impl.h |   4 ++
 4 files changed, 179 insertions(+), 113 deletions(-)

commit ca57250bc9d9f92c88a2ea516e251b9cbfdebda0
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Mon Apr 3 20:13:17 2006 +0000

    Make sure TTAG_GDEF and frineds are defined, needed for FreeType
    <= 2.1.7

    2006-04-03  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/harfbuzz-impl.h: Make sure TTAG_GDEF and
            frineds are
            defined, needed for FreeType <= 2.1.7 (pointed by Tim Janik).

 src/harfbuzz-gdef.c |  3 ---
 src/harfbuzz-gpos.c |  3 ---
 src/harfbuzz-gsub.c |  3 ---
 src/harfbuzz-impl.h | 11 +++++++++++
 4 files changed, 11 insertions(+), 9 deletions(-)

commit f618288e00914b6606ec977d506c18e4abdd3ce4
Author: Behdad Esfahbod <behdad@src.gnome.org>
Date:   Fri Mar 31 13:19:29 2006 +0000

    .

 src/.cvsignore | 2 --
 1 file changed, 2 deletions(-)

commit 5f1f943b9e6d753722ceadba7eb7ce1f14526ea5
Author: Behdad Esfahbod <behdad@src.gnome.org>
Date:   Fri Mar 31 13:18:23 2006 +0000

    .

 src/.cvsignore | 1 +
 1 file changed, 1 insertion(+)

commit bce3e0b0d4ee521767d80c5c21704337bf5ac716
Author: Behdad Esfahbod <behdad@src.gnome.org>
Date:   Fri Mar 31 12:45:40 2006 +0000

    Define NULL.

 src/harfbuzz-impl.h | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit 9f8da38cd108590514b71756b752d98952a9221f
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Fri Mar 31 12:28:09 2006 +0000

    Convert pango/opentype to the new project called HarfBuzz.

    2006-03-31  Behdad Esfahbod  <behdad@gnome.org>

            Convert pango/opentype to the new project called HarfBuzz.

            * pango/opentype/*: Restructured.

            * pango/pango-ot-*: Updated to use HarfBuzz symbol names.

 src/COPYING                            |   15 +
 src/{FTL.TXT => COPYING.FTL}           |    0
 src/COPYING.GPL                        |  340 ++
 src/FT-license.txt                     |   28 -
 src/Makefile.am                        |   89 +-
 src/README                             |   44 +-
 src/ftglue.c                           |   88 +-
 src/ftglue.h                           |   68 +-
 src/ftxgdef.c                          | 1225 -------
 src/ftxgdef.h                          |  224 --
 src/ftxgpos.c                          | 6199
 -------------------------------
 src/ftxgpos.h                          |  838 -----
 src/ftxgsub.c                          | 4533 -----------------------
 src/ftxgsub.h                          |  594 ---
 src/ftxopen.c                          | 1552 --------
 src/ftxopen.h                          |  317 --
 src/ftxopenf.h                         |  166 -
 src/harfbuzz-buffer.c                  |  227 ++
 src/harfbuzz-buffer.h                  |  106 +
 src/{ottest.c => harfbuzz-dump-main.c} |   84 +-
 src/{disasm.c => harfbuzz-dump.c}      |  186 +-
 src/{disasm.h => harfbuzz-dump.h}      |   18 +-
 src/harfbuzz-gdef-private.h            |  101 +
 src/harfbuzz-gdef.c                    | 1228 +++++++
 src/harfbuzz-gdef.h                    |  127 +
 src/harfbuzz-gpos-private.h            |  683 ++++
 src/harfbuzz-gpos.c                    | 6269
 ++++++++++++++++++++++++++++++++
 src/harfbuzz-gpos.h                    |  168 +
 src/harfbuzz-gsub-private.h            |  448 +++
 src/harfbuzz-gsub.c                    | 4581 +++++++++++++++++++++++
 src/harfbuzz-gsub.h                    |  132 +
 src/harfbuzz-impl.h                    |   64 +
 src/harfbuzz-open-private.h            |   81 +
 src/harfbuzz-open.c                    | 1426 ++++++++
 src/harfbuzz-open.h                    |  285 ++
 src/harfbuzz.c                         |   19 +
 src/harfbuzz.h                         |   23 +
 src/otlbuffer.c                        |  238 --
 src/otlbuffer.h                        |  103 -
 39 files changed, 16582 insertions(+), 16335 deletions(-)

commit dd2a8d4d490df1d310e7553ba6c7c8de661f28a1
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Sat Mar 25 23:52:30 2006 +0000

    Don't err on Table_Missing.

    2006-03-25  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/ottest.c: Don't err on Table_Missing.

 src/ottest.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 434833b1b7b01d85a143f9ad4b04e7044dd72567
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Mon Mar 13 05:06:05 2006 +0000

    === Released 1.12.0 ===

    2006-03-13  Behdad Esfahbod  <behdad@gnome.org>

            * === Released 1.12.0 ===

            * configure.in: Version 1.12.0

            * NEWS, README: Updated.

 src/README | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 8228828e1e4c8dd6f9435fb718ad4394bba95655
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Mon Jan 30 22:37:48 2006 +0000

    Handle GSUB Lookup type 8, and ReverseChainContextualSubst table. (bug

    2006-01-30  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/ftxgsub.c: Handle GSUB Lookup type 8,
            and ReverseChainContextualSubst table.  (bug #149696,
            patch from Aamir Wali)

 src/ftxgsub.c  | 545
 ++++++++++++++++++++++++++++++++++++++++++++++-----------
 src/ftxgsub.h  |  47 +++--
 src/ftxopen.c  |   7 +
 src/ftxopenf.h |   5 +-
 4 files changed, 487 insertions(+), 117 deletions(-)

commit e040f681963d51eaadcd53a456100fde1a7addb6
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Sat Jan 28 20:29:18 2006 +0000

    Removed.

    2006-01-28  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/pango-ot-*: Removed.

            * pango/pango-ot-*: Added.

            * pango/Makefile.am, pango/opentype/Makefile.am: Adjusted.

 src/Makefile.am        |  30 +--
 src/pango-ot-buffer.c  | 339 ------------------------
 src/pango-ot-info.c    | 681
 -------------------------------------------------
 src/pango-ot-private.h | 105 --------
 src/pango-ot-ruleset.c | 225 ----------------
 5 files changed, 13 insertions(+), 1367 deletions(-)

commit f45689bc655eb723f11a2eb65a41303221b80397
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Wed Jan 25 19:33:58 2006 +0000

    If major.minor of required and available glib versions are the
    same, add

    2006-01-25  Behdad Esfahbod  <behdad@gnome.org>

            * configure.in: If major.minor of required and available
            glib versions
            are the same, add -DG_DISABLE_DEPRECATED to GLIB_CFLAGS. (bug
            #328617)

            * */Makefile.am: Remove hardcoded -DG_DISABLE_DEPRECATED.

 src/Makefile.am | 1 -
 1 file changed, 1 deletion(-)

commit 6cc6c9a57c674787f278ea5b60705384fd72b4ad
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Sat Jan 14 07:00:13 2006 +0000

    Make sure #include <config.h> is the first include in the file. (bug

    2006-01-14  Behdad Esfahbod  <behdad@gnome.org>

            * */*.c, */*/*.c: Make sure #include <config.h> is the
            first include
            in the file. (bug #158870, based on patch by Luis Menina)

 src/disasm.c           | 2 ++
 src/ftglue.c           | 1 +
 src/ftxgdef.c          | 1 +
 src/ftxgpos.c          | 2 ++
 src/ftxgsub.c          | 2 ++
 src/ftxopen.c          | 2 ++
 src/otlbuffer.c        | 3 +++
 src/ottest.c           | 1 +
 src/pango-ot-buffer.c  | 2 ++
 src/pango-ot-info.c    | 2 ++
 src/pango-ot-ruleset.c | 2 ++
 11 files changed, 20 insertions(+)

commit ca07fcf6ef61c09825e67ca7e2574a90e4f5a9a0
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Thu Jan 5 16:14:49 2006 +0000

    pango/Makefile.am, pango/fonts.c, pango/glyphstring.c,

    2006-01-05  Behdad Esfahbod  <behdad@gnome.org>

            * pango/Makefile.am,
            * pango/fonts.c,
            * pango/glyphstring.c,
            * pango/pango-attributes.c,
            * pango/pango-color.c,
            * pango/pango-impl-utils.h,
            * pango/pango-item.c,
            * pango/pango-layout.c,
            * pango/pango-tabs.c,
            * pango/pango-utils.c,
            * pango/pango-utils.h,
            * pango/pangoatsui-fontmap.c,
            * pango/pangocairo-font.c,
            * pango/pangocairo-fontmap.c,
            * pango/pangofc-fontmap.c,
            * pango/pangowin32-fontmap.c,
            * pango/pangox-fontmap.c,
            * pango/pangox.c,
            * pango/opentype/pango-ot-info.c,
            * pango/opentype/pango-ot-ruleset.c: Intern strings to avoid
            unnecessary strdups in the type system. (bug #325832,
            Matthias Clasen)

 src/pango-ot-info.c    | 3 ++-
 src/pango-ot-ruleset.c | 3 ++-
 2 files changed, 4 insertions(+), 2 deletions(-)

commit 71524f1bc891bb4450507f769e5cc8f6f6cffa0c
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Tue Dec 27 09:55:48 2005 +0000

    Use g_slice for PangoOTBuffer allocation. (bug #325026, Matthias
    Clasen)

    2005-12-27  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/pango-ot-buffer.c: Use g_slice for
            PangoOTBuffer
            allocation. (bug #325026, Matthias Clasen)

 src/pango-ot-buffer.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit b5baa43d3a972ebd3ef82ede14b54c185b723a71
Author: Behdad Esfahbod <behdad@src.gnome.org>
Date:   Fri Nov 25 09:22:02 2005 +0000

    Tiny doc improvement.

 src/pango-ot-info.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6f64314f7a031a5a5d6b7663c08b70c452961c89
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Wed Nov 23 19:48:10 2005 +0000

    Fix typo in docs.

    2005-11-23  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentyp/pango-ot-buffer.c: Fix typo in docs.

 src/pango-ot-buffer.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit f2bcf72296b57c8cd7d5a08228c3aef6c8f97d2d
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Wed Nov 23 17:54:55 2005 +0000

    Added "Since:" tags to all interfaces added after Pango 1.0. (#319116,

    2005-11-23  Behdad Esfahbod  <behdad@gnome.org>

            * pango/fonts.c pango/pango-attributes.c pango/pango-context.c
            pango/pango-glyph-item.c pango/pango-layout.c
            pango/pango-script.c pango/pango-utils.c pango/pangofc-font.c
            pango/pangoft2-fontmap.c pango/opentype/pango-ot-buffer.c
            pango/opentype/pango-ot-ruleset.c: Added "Since:" tags to all
            interfaces added after Pango 1.0. (#319116, Brian Cameron)

 src/pango-ot-buffer.c  | 49
 +++++++++++++++++++++++++++++++++++++++++++++++++
 src/pango-ot-ruleset.c | 14 ++++++++++++++
 2 files changed, 63 insertions(+)

commit 682db81c23d2116072d8550657c914afb7c26d2b
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Wed Nov 23 15:19:48 2005 +0000

    Protect against possible division by zeros (#316468, Steve Grubb)

    2005-11-23  Behdad Esfahbod  <behdad@gnome.org>

            Protect against possible division by zeros (#316468,
            Steve Grubb)

            * pango/pango-context.c (update_metrics_from_items),
            pango/pango-fontset.c (pango_fontset_real_get_metrics):
            If count is
            zero, do not alter approximate_{char,digit}_width.

            * pango/opentype/disasm.c: Err on invalid DeltaFormat.

 src/disasm.c | 28 ++++++++++++++++++----------
 1 file changed, 18 insertions(+), 10 deletions(-)

commit e6e15352d154e1350340f8045759e5f7b0d86dc7
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Wed Nov 23 11:53:03 2005 +0000

    Reworked basic shaper with OpenType support. (#101079, based on
    patch from

    2005-11-23  Behdad Esfahbod  <behdad@gnome.org>

            * modules/basic/basic-fc.c: Reworked basic shaper with
            OpenType
            support. (#101079, based on patch from Denis Jacquerye and
            Noah Levitt)

            * modules/basic/basic-fc.c (basic_scripts): Added Unicode
            4.1 addition
            script PANGO_SCRIPT_GLAGOLITIC that is a "simple" script.

            * modules/arabic/arabic-fc.c, modules/syriac/syriac-fc.c:
            Replace
            g_utf8_to_ucs4_fast() with g_utf8_strlen()!

            * pango/opentype/pango-ot-ruleset.c
            (pango_ot_ruleset_add_feature):
            Remove reference in docs to pango_ot_ruleset_shape() that was
            removed long ago.

 src/pango-ot-ruleset.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 612b6cf60928b356f4bbb59bc9d64886574322c3
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Thu Nov 17 06:28:11 2005 +0000

    Part of #101079:

    2005-11-17  Behdad Esfahbod  <behdad@gnome.org>

            Part of #101079:

            * pango/opentype/ftxopen.c (Load_Lookup): In extension
            subtables,
            offset is relative to the extension subtable, not the original
            table. (Greg Aumann)

            * pango/opentype/ftxgpos.c (Load_BaseArray): When reading
            BaseAnchor,
            skip offsets that are zero.  Works around bug in Doulos
            SIL Regular.

 src/ftxgpos.c | 6 ++++++
 src/ftxopen.c | 6 ++++--
 2 files changed, 10 insertions(+), 2 deletions(-)

commit 1b2c314b804da97b1d5e7adab64bdd4177702579
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Wed Nov 9 23:30:00 2005 +0000

    Remove debug line that got in accidentally.

    2005-11-09  Behdad Esfahbod  <behdad@gnome.org>

            * pango/opentype/ftxgpos.c, pango/opentype/ftxopen.c:
            Remove debug
            line that got in accidentally.

 src/ftxgpos.c | 1 -
 src/ftxopen.c | 1 -
 2 files changed, 2 deletions(-)

commit 9717127a5be037e26afe52332a8b07f13474557a
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Fri Nov 4 23:55:38 2005 +0000

    Turn various gcc warnings off. Adding const, adding static, fully

    2005-11-04  Behdad Esfahbod  <behdad@gnome.org>

            * configure.in, examples/argcontext.c examples/cairoview.c,
            examples/renderdemo.c, examples/renderdemo.h
            examples/xftview.c,
            modules/basic/basic-x.c, modules/hangul/hangul-fc.c,
            modules/hebrew/hebrew-shaper.c,
            modules/hebrew/hebrew-shaper.h,
            modules/indic/indic-fc.c, modules/indic/mprefixups.c,
            modules/syriac/syriac-fc.c, pango/break.c pango/fonts.c,
            pango/modules.c, pango/pango-coverage.c pango/pango-engine.c,
            pango/pango-engine.h, pango/pango-fontmap.c,
            pango/pango-fontset.c, pango/pango-impl-utils.h,
            pango/pango-layout.c, pango/pango-layout.h,
            pango/pango-renderer.c, pango/pango-script.c,
            pango/pango-utils.c, pango/pangocairo-fc.h,
            pango/pangocairo-font.c, pango/pangocairo-fontmap.c,
            pango/pangocairo-private.h, pango/pangofc-decoder.c,
            pango/pangofc-font.c, pango/pangofc-fontmap.c
            pango/pangoft2.c,
            pango/pangox-fontcache.c, pango/pangox-fontmap.c
            pango/pangox.c,
            pango/pangoxft-font.c, pango/querymodules.c,
            pango/opentype/ftglue.c, pango/opentype/ftxgpos.c,
            pango/opentype/ftxopen.c, pango/opentype/pango-ot-buffer.c,
            pango/opentype/pango-ot-info.c,
            pango/opentype/pango-ot-ruleset.c, tests/dump-boundaries.c,
            tests/testboundaries.c, tests/testcolor.c tests/testiter.c,
            tests/testscript.c: Turn various gcc warnings off. Adding
            const,
            adding static, fully initializing structs, match signedness in
            comparisons. (#317804)

            * tests/testscript.c, tools/gen-script-for-lang.c:
            (scripts_for_file): Pass error->message instead of error
            to fail(),
            which was wrong.
            (compare_lang): Fix typo comparing a and a instead of a and b.

 src/ftglue.c           | 2 +-
 src/ftxgpos.c          | 4 ++++
 src/ftxopen.c          | 1 +
 src/pango-ot-buffer.c  | 4 ++--
 src/pango-ot-info.c    | 5 +++--
 src/pango-ot-ruleset.c | 5 +++--
 6 files changed, 14 insertions(+), 7 deletions(-)

commit c0505f3bb28feeba95b201e6464fb2fdac90194a
Author: Behdad Esfahbod <behdad@gnome.org>
Date:   Thu Nov 3 20:13:40 2005 +0000

    Patches from #170414. Reviewed by Matthias Clasen.

    2005-11-03  Behdad Esfahbod  <behdad@gnome.org>

            Patches from #170414.  Reviewed by Matthias Clasen.

            * pango/opentype/ftxgpos.c, pango/opentype/ftxgsub.c: Use
            call table
            to dispatch different lookup types.

            * pango/opentype/pango-ot-buffer.c,
            pango/opentype/pango-ot-ruleset.c:
            Small cleanup.

 src/ftxgpos.c          | 143
 ++++++++++++++++++++++++-------------------------
 src/ftxgsub.c          | 115 +++++++++++++++++++++------------------
 src/pango-ot-buffer.c  |   3 +-
 src/pango-ot-ruleset.c |  75 +++++++++-----------------
 4 files changed, 159 insertions(+), 177 deletions(-)

commit c6b22b9119ef54ea8d0d2f08b74fdeb024289d73
Author: Behdad Esfahbod <pango@behdad.org>
Date:   Mon Aug 29 10:06:40 2005 +0000

    Generate valid XML output. Dump LookupFlag too.

    2005-08-29  Behdad Esfahbod  <pango@behdad.org>

            * pango/opentype/ottest.c, pango/opentype/disasm.c:
            Generate valid
            XML output.  Dump LookupFlag too.

 src/disasm.c | 58
 ++++++++++++++++++++++++++++++----------------------------
 src/ottest.c | 23 ++++++++++++++---------
 2 files changed, 44 insertions(+), 37 deletions(-)

commit 1e3747ca5d1a6f607f8e56fb94e3daaf6ad623cb
Author: Behdad Esfahbod <pango@behdad.org>
Date:   Mon Aug 15 04:16:04 2005 +0000

    Replace perror with perror_. Remove FT_BEGIN_STMNT and FT_END_STMNT.

    2005-08-15  Behdad Esfahbod  <pango@behdad.org>

            * pango/opentype/ftglue.h: Replace perror with perror_.
            Remove FT_BEGIN_STMNT and FT_END_STMNT. (#313477)

 src/ftglue.h | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 3c60250875fa9d04ca96dea35eba23fc70690ff5
Author: Owen Taylor <otaylor@redhat.com>
Date:   Tue Jul 26 18:33:27 2005 +0000

    Skip lookups with lookup index out of range. (Patch from Behdad
    Esfahbod,

    2005-07-26    Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/ftxgsub.c, pango/opentype/ftxgpos.c:
            Skip lookups
            with lookup index out of range. (Patch from Behdad Esfahbod,
            #171170)

 src/ftxgpos.c | 30 ++++++++++++++++++++++++------
 src/ftxgsub.c | 30 ++++++++++++++++++++++++------
 2 files changed, 48 insertions(+), 12 deletions(-)

commit 91a3fa2e4bcdde8ae022d1264c783f133cd7e00d
Author: Owen Taylor <otaylor@redhat.com>
Date:   Fri Jul 22 18:03:58 2005 +0000

    Remove an unecessary set of block2.

    2005-07-22  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/ftglue.c (ftglue_realloc): Remove
            an unecessary set of block2.

 src/ftglue.c | 1 -
 1 file changed, 1 deletion(-)

commit ff7034787d79dcd1bec58a4e02602039313da00e
Author: Owen Taylor <otaylor@redhat.com>
Date:   Fri Jul 22 17:56:37 2005 +0000

    Patch from David Turner. Review and testing by Behdad Esfahbod

    2005-07-22  Owen Taylor  <otaylor@redhat.com>

            Patch from David Turner. Review and testing by Behdad Esfahbod

            * pango/opentype/ftglue.[ch] Makefile.am: Glue layer that
            provides
            implementation of the internal functions that the opentype
            code
            expects in terms of publically exported FreeType API.

            * pango/opentype/ftxgdef.c pango/opentype/ftxgpos.c
            pango/opentype/ftxgsub.c pango/opentype/ftxopen.c
            pango/opentype/otlbuffer.c pango/opentype/pango-ot-info.c
            pango/opentype/pango-ot-ruleset.c: Remove includes of
            internal headers. Small changes to work with ftglue.[ch]

            * pango/opentype/fterrcompat.h: Remove: no longer needed.

            * pango/opentype/ftxgpos.c: Use FT_IS_SFNT(face) rather
            than poking at FT_MODULE_CLASS (face->driver)->module_name.

            * pango/opentype/ftxopen.c (Free_FeatureList): Free
            fl->ApplyOrder. (Found by Behdad)

 src/Makefile.am        |   3 +-
 src/fterrcompat.h      |  95 --------------
 src/ftglue.c           | 350
 +++++++++++++++++++++++++++++++++++++++++++++++++
 src/ftglue.h           | 156 ++++++++++++++++++++++
 src/ftxgdef.c          |   9 +-
 src/ftxgpos.c          |   9 +-
 src/ftxgsub.c          |  10 +-
 src/ftxopen.c          |   8 +-
 src/otlbuffer.c        |   4 +-
 src/pango-ot-info.c    |   6 +-
 src/pango-ot-ruleset.c |   2 -
 11 files changed, 520 insertions(+), 132 deletions(-)

commit 43dbec6f3a345ba0e4a43766610ed59622bbe4a0
Author: Owen Taylor <otaylor@redhat.com>
Date:   Thu Jul 21 18:15:45 2005 +0000

    Fix up places where there is missing or incomplete Copyright and
    License

    2005-07-21  Owen Taylor  <otaylor@redhat.com>

            Fix up places where there is missing or incomplete
            Copyright and License information (Reported by William N. Ray)

            * pango/opentype/fterrcompat.h: Mark as FreeType/GPL licensed.

            * pango/opentype/FT-license.txt: Make this the dual-licensing
            description that covers the FreeType code (FreeType's
            LICENSE.TXT) rather than the FTL.

            * pango/opentype/FTL.TXT: Move the FTL (referenced from
            FT-license.txt) to here.

            * modules/basic/basic-common.h modules/hebrew/hebrew-shaper.h
            modules/thai/thai-charprop.c modules/thai/thai-shaper.h
            tools/gen-script-for-lang.c tests/testcolor.c:
            Add LGPL header and copyright information.

            * modules/indic/indic-ot.[ch]
            modules/indic/indic-ot-class-tables.c
            modules/thai/thai-ot.[ch]: Add LGPL header.

            * modules/thai/thai-shaper.c modules/thai/thai-charprop.h:
            Minor fixes to copyright information.

            * modules/arabic/arabic-ot.c: Add Freetype license
            boilerplate.

 src/FT-license.txt | 179
 +++++++----------------------------------------------
 src/FTL.TXT        | 174
 +++++++++++++++++++++++++++++++++++++++++++++++++++
 src/fterrcompat.h  |  10 ++-
 3 files changed, 204 insertions(+), 159 deletions(-)

commit c55850d36d208c7aae8f6ed5c9e1e7927b988d6c
Author: Owen Taylor <otaylor@redhat.com>
Date:   Tue Jun 14 19:54:19 2005 +0000

    Chain up from finalize. (#307547, Paolo Borelli)

    2005-06-14  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/pango-ot-info.c (pango_ot_info_finalize)
            pango/opentype/pango-ot-ruleset.c (pango_ot_ruleset_finalize):
            Chain up from finalize. (#307547, Paolo Borelli)

            * pango/opentype/pango-ot-info.c (pango_ot_info_finalizer):
            make accidentally public function static.

 src/pango-ot-info.c    | 4 +++-
 src/pango-ot-ruleset.c | 2 ++
 2 files changed, 5 insertions(+), 1 deletion(-)

commit 44ff46a364fb7981804eb45329c4999b415711f9
Author: Tor Lillqvist <tml@novell.com>
Date:   Tue Apr 12 01:27:21 2005 +0000

    Rename LDADDS to libpango_ot_la_LIBADD to actually make libpango-ot.la

    2005-04-12  Tor Lillqvist  <tml@novell.com>

            * pango/opentype/Makefile.am: Rename LDADDS to
            libpango_ot_la_LIBADD to actually make libpango-ot.la
            link with
            it.

            * pango/pangowin32.def: Rename get_scale_factor to
            get_metrics_factor here, too. (#300222, Ivan Wong)

 src/Makefile.am | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit 0c349a032e5a52a9d0dcc8204f761b7cb28bfa6b
Author: Owen Taylor <otaylor@redhat.com>
Date:   Thu Mar 3 19:38:02 2005 +0000

    For all binary searches, handle the case where the number of items
    is 0.

    2005-03-03  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/ftxopen.c (Coverage_Index1, Coverage_Index2,
            Get_Class2): For all binary searches, handle the case where
            the number of items is 0. (#162977, Nick Lamb)

            * pango/opentype/ftxgdef.c (TT_GDEF_Build_ClassDefinition):
            Handle the case where glyph_count == 0 properly. Fix a problem
            with cleanups on memory allocation failure.
            (Get_New_Count, Add_Glyph_Property): Avoid reading off the
            end of the ClassRangeRecord array.

 src/ftxgdef.c | 60
 +++++++++++++++++++++++++++++++++++------------------------
 src/ftxopen.c | 15 +++++++++++++++
 2 files changed, 51 insertions(+), 24 deletions(-)

commit 03838daaa9d485bffcb7bc46453a9a4c32a1f32f
Author: Owen Taylor <otaylor@redhat.com>
Date:   Mon Nov 22 23:37:19 2004 +0000

    Set G_LOG_DOMAIN.

    Mon Nov 22 18:30:14 2004  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/Makefile.am pango/Makefile.am
            modules/*/Makefile.am: Set G_LOG_DOMAIN.

 src/Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit 346d3b3cac253d2db41205151c185bf2fd9dda16
Author: Owen Taylor <otaylor@redhat.com>
Date:   Wed Sep 22 18:14:55 2004 +0000

    Cleanups from 'sparse', #149922, Kjartan Maraas

    Wed Sep 22 14:07:47 2004  Owen Taylor  <otaylor@redhat.com>

            Cleanups from 'sparse', #149922, Kjartan Maraas

            * pango/pango-utils.c (read_config): () => (void) in
            definition.

            * pango/pangofc-fontmap.c (pango_fc_font_map_list_families):
            Initialize *n_families, not n_families.

            * pango/pangofc-fontmap.c pango/pangoft2.c opentype/ftxgdef.c
            opentype/ftxgpos.c opentype/ftxgsub.c: : Fix various 0/NULL
            confusion.

 src/ftxgdef.c | 2 +-
 src/ftxgpos.c | 6 +++---
 src/ftxgsub.c | 2 +-
 3 files changed, 5 insertions(+), 5 deletions(-)

commit 8b654dfb5ad6137ee9c5a48f5abe04bf7d28d8cd
Author: Owen Taylor <otaylor@redhat.com>
Date:   Tue Sep 14 13:45:41 2004 +0000

    === Released 1.6.0 ===

    Mon Sep 13 17:38:58 2004  Owen Taylor  <otaylor@redhat.com>

            * === Released 1.6.0 ===

            * configure.in: Update versions for 1.6.0

            * NEWS: Update.

            * README: Minor tweak.

            * pango/fonts.c pango/pango-context.c pango/pango-types.h
            pango/pango-utils.c pango/pangoft2.c pango/pango-layout.c
            pango/opentype/pango-ot-buffer.c: Add a bunch of missing
            Since: 1.6.

 src/pango-ot-buffer.c | 2 ++
 1 file changed, 2 insertions(+)

commit d41089a5b691967fdd622f47c8397a80af104396
Author: Owen Taylor <otaylor@redhat.com>
Date:   Fri Jul 30 21:23:04 2004 +0000

    Finish extending properties flags from FT_UShort =>
    FT_UInt. (OTLBuffer

    Fri Jul 30 17:17:05 2004  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/ftxgpos.[ch] pango/opentype/ftxgsub.[ch]
            pango/opentype/ftxopen.[ch]: Finish extending properties
            flags from FT_UShort => FT_UInt. (OTLBuffer was already
            using an FT_UInt)

 src/ftxgpos.c | 8 ++++----
 src/ftxgpos.h | 2 +-
 src/ftxgsub.c | 8 ++++----
 src/ftxgsub.h | 2 +-
 src/ftxopen.c | 2 +-
 src/ftxopen.h | 2 +-
 6 files changed, 12 insertions(+), 12 deletions(-)

commit f42d5eca291dcdfb27d7fbf88391d6d381b8e9c4
Author: Owen Taylor <otaylor@redhat.com>
Date:   Tue Jul 27 17:20:01 2004 +0000

    Save the order in which features were added and use that when applying

    Tue Jul 27 12:38:05 2004  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/ftxopen.[ch] pango/opentype/ftxgsub.c
            pango/opentype/ftxpos.c: Save the order in which
            features were added and use that when applying features.
            (Patch from Soheil Hassas Yeganeh, #122330)

 src/ftxgpos.c | 41 ++++++++++++++++++++++++-----------------
 src/ftxgsub.c | 34 +++++++++++++++++++++-------------
 src/ftxopen.c | 14 +++++++++++---
 src/ftxopen.h |  2 ++
 4 files changed, 58 insertions(+), 33 deletions(-)

commit ae2daa972d74c5ecfe1d2f0057ce12682ad30b00
Author: Behdad Esfahbod <behdad@src.gnome.org>
Date:   Tue Jul 27 13:12:19 2004 +0000

    Remove the unused parameter from the IN_CURITEM() and IN_CURGLYPH
    macros.


            * pango/opentype/ftxgpos.c: Remove the unused parameter
            from the IN_CURITEM() and IN_CURGLYPH macros.

 src/ftxgpos.c | 68
 +++++++++++++++++++++++++++++------------------------------
 src/ftxgsub.c |  2 +-
 2 files changed, 35 insertions(+), 35 deletions(-)

commit 7d5435ea8cb345c79029b8a12d1bddbed28b1997
Author: Behdad Esfahbod <behdad@src.gnome.org>
Date:   Tue Jul 27 10:43:58 2004 +0000

    Fix bug to copy glyph from in_string, not out_string.


            * pango/opentype/otlbuffer.c (otl_buffer_copy_output_glyph):
            Fix bug to copy glyph from in_string, not out_string.

 src/otlbuffer.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 2ea2a55bdf7ef1caebcd0c5922b0f542ed8bb5bf
Author: Owen Taylor <otaylor@redhat.com>
Date:   Mon Jul 26 23:14:53 2004 +0000

    Fix allocation and indexing in NewGlyphClasses array. (#130661,
    Masatake

    Mon Jul 26 19:11:46 2004  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/ftxgdef.c: Fix allocation and indexing
            in NewGlyphClasses array. (#130661, Masatake YAMATO)

 src/ftxgdef.c | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

commit 5d42695e5ed89f73fbc665792ebec82c29ae04ae
Author: Owen Taylor <otaylor@redhat.com>
Date:   Mon Jul 26 19:25:45 2004 +0000

    Remove the unused parameter from the IN_CURITEM() and IN_CURGLYPH
    macros.

    Mon Jul 26 15:24:11 2004  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/ftxgsub.c (ADD_Glyph): Remove the
            unused parameter from the IN_CURITEM() and IN_CURGLYPH
            macros.

 src/ftxgsub.c | 56
 ++++++++++++++++++++++++++++----------------------------
 1 file changed, 28 insertions(+), 28 deletions(-)

commit a00c4ea5626526980139b122977e367b8434d24a
Author: Owen Taylor <otaylor@redhat.com>
Date:   Mon Jul 26 19:23:06 2004 +0000

    Add missing macro to make the last change actually compile.

    Mon Jul 26 15:21:23 2004  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/ftxgsub.c: Add missing macro to make the
            last change actually compile.

 src/ftxgsub.c | 2 ++
 1 file changed, 2 insertions(+)

commit ed3e1f278d3ebfd224f0b57388502d4bb9fb1441
Author: Owen Taylor <otaylor@redhat.com>
Date:   Mon Jul 26 19:20:27 2004 +0000

    Match backtrack context against the output glyphs not the input glyphs

    Mon Jul 26 15:16:07 2004  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/ftxgsub.c (Lookup_ChainContextSubst[123]):
            Match backtrack context against the output glyphs not
            the input glyphs (#145174, Aamir Wali)

 src/ftxgsub.c | 24 ++++++++++++------------
 1 file changed, 12 insertions(+), 12 deletions(-)

commit 78282cda004a88b2aadb2786dd3897884e22ed0b
Author: Owen Taylor <otaylor@redhat.com>
Date:   Mon Jul 26 18:59:02 2004 +0000

    Make Check_Property() take a OTL_GlyphItem, add a gproperties field to

    Mon Jul 26 14:49:22 2004  Owen Taylor  <otaylor@redhat.com>

            * ftxgdef.[ch] otlbuffer.[ch]: Make Check_Property() take a
            OTL_GlyphItem, add a gproperties field to OTLGlyphItem,
            and use that to cache the properties for a glyph.

            * ftxgsub.c ftxgdef.c: Adapt to Check_Property() changes.

            * otlbuffer.[ch] ftxgsub.c: Add otl_buffer_copy_output_glyph()
            to use when we are copying an unmodified glyph from input
            to output that preserves the cached properties.

 src/ftxgdef.c   | 16 ++++++++++------
 src/ftxgpos.c   | 52 +++++++++++++++++++++++++++-------------------------
 src/ftxgsub.c   | 54
 ++++++++++++++++++++++++++++--------------------------
 src/ftxopenf.h  |  2 +-
 src/otlbuffer.c | 21 +++++++++++++++++++--
 src/otlbuffer.h |  6 ++++++
 6 files changed, 91 insertions(+), 60 deletions(-)

commit 81b62af42313fb60db523374cd8c6901829f5c4e
Author: Owen Taylor <otaylor@redhat.com>
Date:   Mon Jul 19 21:13:23 2004 +0000

    Add support for ChainContextSubstFormat3.

    Mon Jul 19 17:09:11 2004  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/disasm.c: Add support for
            ChainContextSubstFormat3.

 src/disasm.c | 16 +++++++++++++++-
 1 file changed, 15 insertions(+), 1 deletion(-)

commit d4f773ef92fdbaa7e61e6577db5e9b2846a100a4
Author: Owen Taylor <otaylor@redhat.com>
Date:   Mon Jul 19 20:37:22 2004 +0000

    Fix pervasive buffer overruns when skipping glyphs when matching
    contexts.

    Mon Jul 19 16:29:45 2004  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/ftxgsub.c pango/opentype/ftxgpos.c:
            Fix pervasive buffer overruns when skipping glyphs
            when matching contexts. (#118592, Kailash C. Chowksey)

 src/ftxgpos.c | 259 ++++++++++++++++++----------------------
 src/ftxgsub.c | 376
 ++++++++++++++++++++++++++--------------------------------
 2 files changed, 284 insertions(+), 351 deletions(-)

commit 99848cfafee8e598ef533f254cdb99fbae4c9364
Author: Owen Taylor <otaylor@redhat.com>
Date:   Wed Jun 23 20:33:35 2004 +0000

    #143693, Sayamindu Dasgupta

    Wed Jun 23 16:13:53 2004  Owen Taylor  <otaylor@redhat.com>

            #143693, Sayamindu Dasgupta

            * pango/opentype/pango-ot-buffer.c
            (pango_ot_buffer_set_zero_width_marks)
            pango/opentype/pango-ot-private.h:
            Allow setting for whether marks should be given zero width,
            defaulting to FALSE.

            * modules/arabic/arabic-fc.c (arabic_engine_shape): Turn
            on zero-width-marks setting.

 src/pango-ot-buffer.c  | 22 +++++++++++++++++++++-
 src/pango-ot-private.h |  5 +++--
 2 files changed, 24 insertions(+), 3 deletions(-)

commit 68d4cedb8726fa239f56d62060d8fee7e09cb8be
Author: Owen Taylor <otaylor@redhat.com>
Date:   Mon Jun 21 18:04:02 2004 +0000

    Use the gcc-3.3 strict-aliasing compatible macros from fterrcompat.h

    Mon Jun 21 13:55:17 2004  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/otlbuffer.c: Use the gcc-3.3
            strict-aliasing compatible macros from fterrcompat.h
            (#140495, reported by Stanislav Brabec)

 src/otlbuffer.c | 22 ++++++++++++++--------
 1 file changed, 14 insertions(+), 8 deletions(-)

commit b327765176dff81047f942ac56a1d206344e6039
Author: Theppitak Karoonboonyanan <tkaroonb@src.gnome.org>
Date:   Fri May 28 16:41:36 2004 +0000

    Negate y offset according to different conventions between

            * pango/opentype/pango-ot-buffer.c (apply_gpos_ltr): Negate
            y offset
            according to different conventions between PangoGlyphString
            and OTL
            (#142544)

 src/pango-ot-buffer.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 068763b547d791e28b892bcaee810f3d60a83018
Author: Owen Taylor <otaylor@redhat.com>
Date:   Thu May 27 21:55:50 2004 +0000

    Revert error return changes from last commit.

    Thu May 27 17:54:24 2004  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/otlbuffer.c: Revert error return changes
            from last commit.

 src/otlbuffer.c | 16 ++++++----------
 1 file changed, 6 insertions(+), 10 deletions(-)

commit ef07481025c5bbb9769b9f908d9dc78f44161bbb
Author: Owen Taylor <otaylor@redhat.com>
Date:   Thu May 27 21:03:42 2004 +0000

    Free buffer->positions, clean up error returns that were returning

    Thu May 27 16:57:30 2004  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/otlbuffer.c: Free buffer->positions,
            clean up error returns that were returning uninitialized
            values. (#139239, Behdad Esfahbod)

 src/otlbuffer.c | 21 +++++++++++++--------
 1 file changed, 13 insertions(+), 8 deletions(-)

commit de568e7e6200c7a49bae1f78ac63858b8df01173
Author: Owen Taylor <otaylor@redhat.com>
Date:   Tue Mar 16 19:23:43 2004 +0000

    === Released 1.4.0 ===

    Tue Mar 16 11:24:46 2004  Owen Taylor  <otaylor@redhat.com>

            * === Released 1.4.0 ===

            * configure.in: Version 1.4.0, interface ago 0. Require
            glib-2.4.0.

            * NEWS: Updates.

            * README: Some updates; include details about the FreeType
            license of the OpenType code.

 src/FT-license.txt | 77
 +++++++++++++++++++++++++++++-------------------------
 1 file changed, 42 insertions(+), 35 deletions(-)

commit 8b3554b3afe7c125b1a53171b01ac87de9c486fe
Author: Hans Breuer <hans@breuer.org>
Date:   Wed Mar 3 22:35:19 2004 +0000

    if PANGO_MODULE_PREFIX is defined include the basic backend shaper
    (should

    2004-03-03  Hans Breuer  <hans@breuer.org>

            * pango/module-defs-win32.c.win32 : if PANGO_MODULE_PREFIX is
            defined include the basic backend shaper (should have been
            commited at 2003-12-12, too)

            * pango/makefile.msc : generate correct type for PangoFontMask
            (bug #135892, John Ehresman)
            * pango/opentype/makefile.msc : updated

            * pango/pango.def pango/pangoft2.def : more updatd externals

 src/makefile.msc | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit a7e096c5de3ec5319bf9333c9ace0732d97c52c3
Author: Owen Taylor <otaylor@redhat.com>
Date:   Sun Feb 29 15:44:50 2004 +0000

    Rework opentype interfaces and other changes to make GPOS work
    for Arabic.

    Sun Feb 29 09:25:13 2004  Owen Taylor  <otaylor@redhat.com>

            Rework opentype interfaces and other changes to make GPOS
            work for Arabic. (Most of #117282, #121060)

            * pango/opentype/otlbuffer.[ch]: OTL_Buffer that
            acts as a replacement for the separate GSUB and
            GPOS string structures and hides many of the internal
            details.

            * pango/opentype/ftxgsub.[ch] pango/opentype/ftxgpos.[ch]:
            Adapt to OTL_Buffer.

            * pango/opentype/ftxgpos.c: Redo handling of cursive
            chains so that it actually works.

            * pango/pango-ot.h pango/opentype/pango-ot-buffer.c:
            Pango wrapper around OTL_Buffer.

            * pango/pango-ot.h pango/pango-ot-ruleset.c
            pango/pango-ot-buffer.c:
            Split pango_ot_ruleset_shape() into
            pango_ot_ruleset_substitute(),
            pango_ot_ruleset_position(), make them act on
            PangoOTBuffer, add a separate pango_ot_buffer_output()
            which does the default positioning and writes to a
            PangoGlyphString.

            * modules/arabic/arabic-fc.c modules/indic/indic-fc.c
            modules/indic/mprefixups.[ch]: Adapt to new OpenType
            interfaces; add GPOS features for Arabic.

            * pango/opentype/pango-ot-info.c: Don't derive class
            information
            from Unicode properties for Arabic presentation forms,
            let the shaping process derive the properties.

 src/Makefile.am        |   3 +
 src/ftxgdef.c          |   4 +-
 src/ftxgpos.c          | 573 ++++++++++++++++-----------------------
 src/ftxgpos.h          |  23 +-
 src/ftxgsub.c          | 719
 +++++++++++--------------------------------------
 src/ftxgsub.h          |  40 +--
 src/ftxopen.h          |   1 +
 src/otlbuffer.c        | 213 +++++++++++++++
 src/otlbuffer.h        |  97 +++++++
 src/ottest.c           |   2 +
 src/pango-ot-buffer.c  | 265 ++++++++++++++++++
 src/pango-ot-info.c    |  27 +-
 src/pango-ot-private.h |   8 +
 src/pango-ot-ruleset.c | 148 +++-------
 14 files changed, 1039 insertions(+), 1084 deletions(-)

commit d670ddf99192dd4999775a9215a818ae63fa3416
Author: Owen Taylor <otaylor@redhat.com>
Date:   Sat Feb 21 14:53:12 2004 +0000

    Sign convention for y offsets is opposite between PangoGlyphString
    and FT

    Sat Feb 21 09:49:23 2004  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/pango-ot-ruleset.c (pango_ot_ruleset_shape):
            Sign convention for y offsets is opposite between
            PangoGlyphString and FT code. (#132591)

 src/pango-ot-ruleset.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b9b3c131c2b57c12a77124a52512fb19a1255f8e
Author: Owen Taylor <otaylor@redhat.com>
Date:   Fri Feb 13 16:11:40 2004 +0000

    Memory leak fixes from Masatake YAMATO, #130652

    Fri Feb 13 10:54:18 2004  Owen Taylor  <otaylor@redhat.com>

            Memory leak fixes from Masatake YAMATO, #130652

            * pango/opentype/ftxgdef.c (TT_Done_GDEF_Table):
            Free the gdef table as well as the contained data.

            * pango/opentype/ftxgdef.c (TT_GDEF_Build_ClassDefinition):
            Set gcd->loaded, so that the contents get freed later.

 src/ftxgdef.c | 4 ++++
 1 file changed, 4 insertions(+)

commit 926b8f322989298e43c8bac85f23e3525470a669
Author: Owen Taylor <otaylor@redhat.com>
Date:   Mon Jan 26 19:23:35 2004 +0000

    Suport CFF fonts as well. (#131202, Manjunath Sripadarao)

    Mon Jan 26 14:20:34 2004  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/pango-ot-info.c (is_truetype): Suport
            CFF fonts as well. (#131202, Manjunath Sripadarao)

 src/pango-ot-info.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 945e479a3a35769e5e7c792fdcf306892523a5f9
Author: Hans Breuer <hans@breuer.org>
Date:   Sat Dec 13 14:31:50 2003 +0000

    moved pango_fc_* to the latter where they live on *nix too.

    2003-12-13  Hans Breuer  <hans@breuer.org>

            * pango/pango.def pangoft2.def : moved pango_fc_*
            to the latter where they live on *nix too.

            * pango/makefile.msc : make it build again (including
            the Ft2 backend)

            * pango/module-defs-fc.c.win32 : if PANGO_MODULE_PREFIX
            is defined
            include the basic backend shaper

            * pango/pangowin32.c (pango_win32_render_layout) :
            initialize iter before first usage to avoid immediate crashing

            * pango/opentype/makefile.msc
                pango/modules/makefile.msc : finally build with mscv, too.
            [completely untested cause I'm not able to type, write or read
            any of these languages]

            * modules/modules.def : follow module function
            renaming/changes

            * modules/basic/basic-win32.c : register the right engine,
            i.e.
            make it compile

 src/makefile.msc | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

commit ba0ccd5cfcb514cdc45373158343138b7b190f9d
Author: Owen Taylor <otaylor@redhat.com>
Date:   Sat Nov 1 15:02:17 2003 +0000

    Switch over to recommended Freetype system of include ft2build.h then

    Sat Nov  1 09:32:15 2003  Owen Taylor  <otaylor@redhat.com>

            * pango/pango-ot.h pango/pangofc-font.h
            modules/indic/indic-ot.h
            pango/pangoft2.c pango/opentype/pango-ot-info.c
            pango/opentype/pango-ot-ruleset.c pango/opentype/ottest.c
            pango/opentype/ftxopen.[ch] pango/opentype/ftxgdef.c
            pango/opentype/ftxgsub.c pango/opentype/ftxgpos.c:
            Switch over to recommended Freetype system of
            include ft2build.h then #include FT_FREETYPE_H.
            Fixes ftmodule.h problem with current Freetype CVS.
            (#125548)

 src/ftxgdef.c          | 14 +++++++-------
 src/ftxgpos.c          | 17 ++++++++---------
 src/ftxgsub.c          | 13 ++++++-------
 src/ftxopen.c          | 10 +++++-----
 src/ftxopen.h          |  3 ++-
 src/ottest.c           |  1 -
 src/pango-ot-info.c    |  4 ++--
 src/pango-ot-private.h |  2 --
 src/pango-ot-ruleset.c |  4 ++--
 9 files changed, 32 insertions(+), 36 deletions(-)

commit 558171a7a3666999c679719ad0bfbdf7c6a52289
Author: Owen Taylor <otaylor@redhat.com>
Date:   Mon Sep 15 22:04:55 2003 +0000

    Fix gcc-3.3 versions of macros to have the right return value.

    Mon Sep 15 17:16:59 2003  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/fterrcompat.h: Fix gcc-3.3 versions of
            macros to have the right return value.

 src/fterrcompat.h | 44 ++++++++++++++++++++++++++------------------
 1 file changed, 26 insertions(+), 18 deletions(-)

commit c99259bf7e08ccdc4130d4983e8d186021ea8e1a
Author: Owen Taylor <otaylor@redhat.com>
Date:   Mon Aug 25 14:30:12 2003 +0000

    pango/opentype/ftxgsub.c (Lookup_ChainContextSubst3) Fix problems
    where

    Mon Aug 25 10:17:21 2003  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/ftxgsub.c (Lookup_ChainContextSubst3)
            * pango/opentype/ftxgpos.c (Lookup_ChainContextPos3):
            Fix problems where the coverage wasn't being checked
            for the first input glyph. (#118639, Kailash C. Chowksey)

 src/ftxgpos.c | 7 +++----
 src/ftxgsub.c | 7 +++----
 2 files changed, 6 insertions(+), 8 deletions(-)

commit bcf81bcc80c6235dfbc7eeaa34ed21ea329c7a3d
Author: Owen Taylor <otaylor@redhat.com>
Date:   Fri Aug 22 22:52:08 2003 +0000

    Add some macro definitions for gcc-3.3 that suppress the bogus

    Fri Aug 22 18:09:52 2003  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/fterrcompat.h: Add some macro definitions
            for gcc-3.3 that suppress the bogus strict-aliasing
            warnings.

            * pango/pango-utils.c (read_config_file): Use
            g_hash_table_new_full() to simplify code and fix
            gcc-3.3 warnings.

            * pango/pangox-fontmap.c (pango_x_real_get_coverage_win)
            * pango/querymodules.c (query_module): Suppress gcc-3.3
            warnings.

            * pango/modules.c (pango_find_map): Fix warning from
            missing declaration of pango_module_get_type().

            * pango/pango-context.c/pango-engine.c: Fix name confusion
            for pango_get_fallback_shaper().

 src/fterrcompat.h | 36 ++++++++++++++++++++++++++++++++++--
 1 file changed, 34 insertions(+), 2 deletions(-)

commit 46d379596d7292a3b2e51f35fc8044b366d413a3
Author: Owen Taylor <otaylor@redhat.com>
Date:   Tue Jul 29 14:21:54 2003 +0000

    Rewrite handling of IGNORE_SPECIAL_MARKS to be properly "ignore
    marks of

    Tue Jul 29 09:58:13 2003  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/ftxgdef.c (Check_Property): Rewrite
            handling of IGNORE_SPECIAL_MARKS to be properly
            "ignore marks of attachment type different than
            specified. (#118456, Kailash C. Chowksey)

 src/ftxgdef.c | 37 ++++++++++++++++++++++++++++---------
 1 file changed, 28 insertions(+), 9 deletions(-)

commit 8247acad79c1a4154e9337aed453eb3e4d23063d
Author: Owen Taylor <otaylor@redhat.com>
Date:   Mon Jul 28 22:28:37 2003 +0000

    Revert back out the FreeType patch preventing ligatures of
    not-originally

    Sat Jul 26 09:41:22 2003  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/ftxgsub.c (Lookup_LigatureSubst):
            Revert back out the FreeType patch preventing
            ligatures of not-originally adjacent glyphs;
            it doesn't work for all scripts. (#118472,
            Kailash C. Chowksey)

 src/ftxgsub.c | 31 +++----------------------------
 1 file changed, 3 insertions(+), 28 deletions(-)

commit 825e6d7e86cac310161648601b09291fa05d5ba5
Author: Owen Taylor <otaylor@redhat.com>
Date:   Sun Jul 27 02:40:31 2003 +0000

    Check for lookahead glyphs in the right place. (Patch from #116860)

    Sat Jul 26 22:30:59 2003  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/ftxgsub.c (Lookup_ChainContextSubst{1,2,3}):
            Check for lookahead glyphs in the right place. (Patch
            from #116860)

            * pango/opentype/ftxgpos.c (Lookup_ChainContextPos{1,2,3}):
            Same fix here.

 src/ftxgpos.c | 6 +++---
 src/ftxgsub.c | 6 +++---
 2 files changed, 6 insertions(+), 6 deletions(-)

commit 03a0fe09c711b81c7eb4065fd4700b8cfd2c977a
Author: Owen Taylor <otaylor@redhat.com>
Date:   Sun Jul 27 02:19:52 2003 +0000

    Fix return value to only contain TTO_Err_Not_Covered if *no* lookups

    Sat Jul 26 22:12:46 2003  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/ftxgsub.c (Do_String_Lookup,
            TT_GSUB_Apply_String): Fix return value to only
            contain TTO_Err_Not_Covered if *no* lookups
            matched. Fix memory leaks on error in Apply_String().

 src/ftxgsub.c | 120
 ++++++++++++++++++++++++++++++++++++----------------------
 1 file changed, 75 insertions(+), 45 deletions(-)

commit e10ea2afd9a5868d4ec1ff3a2b99bcd64ce45816
Author: Owen Taylor <otaylor@redhat.com>
Date:   Sun Jul 27 01:10:15 2003 +0000

    Fix confusion between boolean and FT_Error return. (GSUB equivalent
    of fix

    Sat Jul 26 21:06:26 2003  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/ftxgsub.c (Load_EmptyOrClassDefinition):
            Fix confusion between boolean and FT_Error return.
            (GSUB equivalent of fix for #108358)

 src/ftxgsub.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit a7305ab2624cbc08160dc11587ba3dc4e17781c2
Author: Owen Taylor <otaylor@redhat.com>
Date:   Sat Jul 26 15:02:13 2003 +0000

    Move allocation afer initial checks, fixing memory leak.

    Sat Jul 26 10:52:20 2003  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/ftxgpos.c (Lookup_ContextPos2):
            * pango/opentype/ftxgsub.c (Lookup_ContextSubst2): Move
            allocation afer initial checks, fixing memory leak.

            * pango/opentype/ftxgsub.c (Lookup_ChainContextSubst2):
            Fix some more error return memory leaks that weren't
            fixed in the Qt changes.

 src/ftxgpos.c |  8 ++++----
 src/ftxgsub.c | 12 ++++++------
 2 files changed, 10 insertions(+), 10 deletions(-)

commit f40b7c15e0bc4b71e706602c4e062f72d8f0fcdd
Author: Owen Taylor <otaylor@redhat.com>
Date:   Sat Jul 26 14:50:23 2003 +0000

    Fix various memory leaks from error returns that should have been
    jumps to

    Sat Jul 26 10:43:20 2003  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/ftxgsub.c pango/opentype/ftxgpos.c:
            Fix various memory leaks from error returns that should
            have been jumps to cleanup blocks. (From Qt, Lars Knoll)

 src/ftxgpos.c | 8 ++++----
 src/ftxgsub.c | 4 ++--
 2 files changed, 6 insertions(+), 6 deletions(-)

commit 256d21970733483833b9cf31d5e0fa7ae853e944
Author: Owen Taylor <otaylor@redhat.com>
Date:   Sat Jul 26 14:35:29 2003 +0000

    Fix additional places where TTO_Err_Not_Covered wasn't considered a

    Sat Jul 26 10:30:24 2003  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/ftxgpos.c: Fix additional places where
            TTO_Err_Not_Covered wasn't considered a successful return
            from Get_Class. (From Qt, Lars Knoll)

 src/ftxgpos.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 374960681e2e36d0e4032623d8cb92a7910baf71
Author: Owen Taylor <otaylor@redhat.com>
Date:   Sat Jul 26 13:50:23 2003 +0000

    If applying a ligature lookup makes adjacent two glyphs that were not

    Sat Jul 26 09:41:22 2003  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/ftxgsub.c (Lookup_LigatureSubst):
            If applying a ligature lookup makes adjacent two glyphs
            that were not originally adjacent, avoid making
            subsequent ligatures between those glyphs.
            (From FreeType, Werner Lemberg, 2001-08-22, 2001-08-23)

 src/ftxgsub.c | 31 ++++++++++++++++++++++++++++---
 1 file changed, 28 insertions(+), 3 deletions(-)

commit b682482df77608d67eca8a050db5b36f44953c13
Author: Owen Taylor <otaylor@redhat.com>
Date:   Sat Jul 26 13:20:52 2003 +0000

    Fix some FreeType1 variable declarations that snuck in from the last

    Sat Jul 26 09:16:57 2003  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/ftxgpos.c pango/opentype/ftxopen.c:
            Fix some FreeType1 variable declarations that snuck
            in from the last commits (Christophe Fergeau,
            118363)

 src/ftxgpos.c | 6 +++---
 src/ftxopen.c | 2 +-
 2 files changed, 4 insertions(+), 4 deletions(-)

commit 06c12109de061c357f46dcec82c4bee7160afede
Author: Owen Taylor <otaylor@redhat.com>
Date:   Sat Jul 26 03:45:44 2003 +0000

    OpenType-1.4 update: backtrack information is stored with the
    item closest

    Fri Jul 25 23:38:07 2003  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/ftxgpos.c pango/opentype/ftxgsub.c:
            OpenType-1.4 update: backtrack information is stored with the
            item closest to the input first (From FreeType,
            Werner Lemberg, 2002-09-26)

 src/ftxgpos.c | 26 ++++++++++++++++++--------
 src/ftxgsub.c | 24 +++++++++++++++++-------
 2 files changed, 35 insertions(+), 15 deletions(-)

commit 15a69e4a12739e7392f2a38d6f7bfdd96c0dc3ba
Author: Owen Taylor <otaylor@redhat.com>
Date:   Sat Jul 26 03:14:23 2003 +0000

    Update of GPOS and GSUB support to OpenType 1.3 (From FreeType, Werner

    Fri Jul 25 23:07:06 2003  Owen Taylor  <otaylor@redhat.com>

            Update of GPOS and GSUB support to OpenType 1.3
            (From FreeType, Werner Lemberg, 2001-08-08)

            * pango/opentype/ftxopen.h: Add RIGHT_TO_LEFT LookupFlag

            * pango/opentype/ftxgpos.c (GPOS_Instance): Add 'first'
            member to mark the beginning of a chain of cursive
            connections.

            * pango/opentype/ftxgpos.c (Do_String_Lookup): If the
            RIGHT_TO_FLAG flag is set, shift cursive chain up so
            last glyph is on the baseline.

 src/ftxgpos.c | 25 ++++++++++++++++++++++++-
 src/ftxopen.h |  8 ++++++--
 2 files changed, 30 insertions(+), 3 deletions(-)

commit 6f74f18b77402f3adf5bfbae26e8f44de6543b4e
Author: Owen Taylor <otaylor@redhat.com>
Date:   Sat Jul 26 03:03:40 2003 +0000

    Add GPOS_LOOKUP_EXTENSION, GSUB_LOOKUP_EXTENSION, which allow lookup

    Fri Jul 25 22:59:13 2003  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/ftx{gpos,gsub}.h pango/opentype/ftxgdef.c:
            Add GPOS_LOOKUP_EXTENSION, GSUB_LOOKUP_EXTENSION, which
            allow lookup information to be stored at 32-bit offets
            via a double indirection. (From FreeType, Werner Lemberg,
            2001-08-08)

 src/ftxgpos.h | 17 +++++++++--------
 src/ftxgsub.h |  1 +
 src/ftxopen.c | 19 +++++++++++++++++++
 3 files changed, 29 insertions(+), 8 deletions(-)

commit 375781c4546b5cfc453b99551ddf715bb162ffb9
Author: Owen Taylor <otaylor@redhat.com>
Date:   Sat Jul 26 02:44:19 2003 +0000

    Fix a couple of places where TTO_Err_Not_Covered wasn't considered a

    Fri Jul 25 22:25:48 2003  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/ftxgsub.c (Lookup_ContextSubst2,
            Lookup_ChainContextSubst2): Fix a couple of
            places where TTO_Err_Not_Covered wasn't considered
            a successful return from Get_Class -- it means
            use class index 0. (From FreeType, Werner Lemberg,
            2001-08-06)

 src/ftxgsub.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 378e1889cd294cb77313ba7fdab3e52959bf2c40
Author: Owen Taylor <otaylor@redhat.com>
Date:   Sat Jul 26 02:10:42 2003 +0000

    Improvements to OpenType-dumping code, based on changes in Qt by Lars

    Fri Jul 25 20:12:00 2003  Owen Taylor  <otaylor@redhat.com>

            Improvements to OpenType-dumping code, based on
            changes in Qt by Lars Knoll.

            * pango/opentype/ottest.c: Tweak the debugging output,
            suppress some warnings.

            * pango/opentype/disasm.c: Add support for
            GSUB Context/Chain GPOS MarkBase lookups, improve
            output in various ways.

 src/disasm.c | 242
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++--
 src/ottest.c |  12 +--
 2 files changed, 241 insertions(+), 13 deletions(-)

commit 07bad0e77c42b5f2535e3b018bf9074d2f4ecc7c
Author: Owen Taylor <otaylor@redhat.com>
Date:   Thu Jul 24 21:05:29 2003 +0000

    Fix uses of g_assert() around statements with side effects. (#115498,

    Thu Jul 24 17:04:21 2003  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/pango-ot-ruleset.c (pango_ot_ruleset_shape):
            Fix uses of g_assert() around statements with side effects.
            (#115498, patch from David Cuthbert)

 src/pango-ot-ruleset.c | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

commit f91deef2c9473da5c3cb5e120f2d4fbf0d638166
Author: Owen Taylor <otaylor@redhat.com>
Date:   Wed Apr 16 21:48:29 2003 +0000

    More careful handling of face->charmap; if is NULL, try to set
    a unicode

    Wed Apr 16 03:46:42 2003  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/pango-ot-info.c (synthesize_class_def):
            More careful handling of face->charmap; if is NULL,
            try to set a unicode charmap, if that doesn't succeed,
            return. (Hopefully fixes #106550)

 src/pango-ot-info.c | 26 ++++++++++++++++++++++++--
 1 file changed, 24 insertions(+), 2 deletions(-)

commit 587b3940f3ce71e8e1c9950086923d4eb78d62db
Author: Owen Taylor <otaylor@redhat.com>
Date:   Wed Apr 16 03:58:17 2003 +0000

    When loading in Load_Chain{Sub,Pos}ClassRule, the limit we have only

    Tue Apr 15 11:49:39 2003  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/ftxg{sub/pos}.c: When loading
            in Load_Chain{Sub,Pos}ClassRule, the limit we
            have only applies to the input ClassDef table.
            Fixes problem with Arial Unicode. Much help from
            Noah Levitt in tracing this down.

 src/ftxgpos.c | 7 ++++---
 src/ftxgsub.c | 7 ++++---
 2 files changed, 8 insertions(+), 6 deletions(-)

commit 0d7567f8eaa1f8d0ec9cb89218ce3a1475d258ac
Author: Owen Taylor <otaylor@redhat.com>
Date:   Tue Apr 15 23:01:19 2003 +0000

    Fix mispelled constant from last commit.

    Tue Apr 15 06:57:02 2003  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/ftxgpos.c: Fix mispelled constant
            from last commit.

 src/ftxgpos.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 73cd600798a9a7225b2ac8241ea371d48cf7baf3
Author: Owen Taylor <otaylor@redhat.com>
Date:   Tue Apr 15 22:15:41 2003 +0000

    Fix confusion between boolean and FT_Error return. (#108358,
    Noah Levitt)

    Tue Apr 15 06:03:39 2003  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/ftxgpos.c: Fix confusion between
            boolean and FT_Error return. (#108358, Noah Levitt)

            * pango/opentype/ftxopen.c (Get_Class1): index is
            allowed to be NULL. (#108358, Noah Levitt)

 src/ftxgpos.c | 5 +++--
 src/ftxopen.c | 3 ++-
 2 files changed, 5 insertions(+), 3 deletions(-)

commit 462bd0be608c3d14e5b4c01099b02b3948a52369
Author: Owen Taylor <otaylor@redhat.com>
Date:   Tue Apr 15 21:05:53 2003 +0000

    Fix infinite loop in the case where the charmap contains a character >

    Tue Apr 15 05:00:39 2003  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/pango-ot-info.c (synthesize_class_def):
            Fix infinite loop in the case where the charmap contains
            a character > 65535. (#106550, Morten Welinder.)

 src/pango-ot-info.c | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

commit 312e1c1cf9f2c1e2137b9aaa5181a541447923cb
Author: James Henstridge <james@daa.com.au>
Date:   Tue Mar 11 12:31:16 2003 +0000

    make similar changes to the ones on glib head (call gtk-docize, etc).

    2003-03-11  James Henstridge  <james@daa.com.au>

        * autogen.sh: make similar changes to the ones on glib head (call
        gtk-docize, etc).

        * configure.in: move some calculations into M4 macros, rather than
        calculating them when configure runs.
        Use AC_HELP_STRING where appropriate.
        Replace gtk-doc checks with a call to GTK_DOC_CHECK.
        Replace AC_OUTPUT_COMMANDS() call with a number of calls to
        AC_CONFIG_COMMANDS (once per created file).
        Get rid of the "chmod +x pango-config" bit, because there is no
        pango-config anymore.

        * Makefile.am: get rid of custom distcheck rule, and set
        DISTCHECK_CONFIGURE_FLAGS, which is equivalent.
        Use += to select which .pc files to install.

        * pango/Makefile.am: Add rules to rebuild module-defs* files, and
        remove them on clean.
        Reorder so that rules related to each individual library are next
        to each other.
        Use BUILT_SOURCES for built sources.

        * pango/opentype/Makefile.am: don't use STRIP_BEGIN/STRIP_END.

        * modules/*/Makefile.am: simplify module makefiles through use of
        +=, and regularise them a bit (fixed a few bugs in the process).

        * docs/Makefile.am: remove common rules, and instead include
        gtk-doc.make.

        * examples/Makefile.am: add pango.modules to CLEANFILES.

        * tests/Makefile.am: remove temporary files on clean.

 src/Makefile.am | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

commit 1aad15fd0c007c9075f2f7f4c4cacf576d726eea
Author: Owen Taylor <otaylor@redhat.com>
Date:   Mon Feb 17 22:04:29 2003 +0000

    Add an --enable-debug configure argument defaulting to 'yes'
    for unstable

    Mon Feb 17 13:06:39 2003  Owen Taylor  <otaylor@redhat.com>

            * configure.in **/Makefile.am: Add an --enable-debug
            configure argument defaulting to 'yes' for unstable
            releases and 'minimum' for stable releases.
            For minimum, -DG_DISABLE_CAST_CHECKS.

            * pango/pangofc-fontmap.cI pango/pangoft2-fontmap.c
            pango/pangoxft-fontmap.c: Add caching of fontsets
            (#104495, initial patch and review by Soeren Sandmann)

            * pango/pangofc-fontmap.cI pango/pangoft2-fontmap.c
            pango/pangoxft-fontmap.c pango/pangoft2-private.h
            pango/pangoxft-private.h: Remove cache of recently freed
            fonts; not necessary now that we cache fontsets.

            * pango/pangofc-fontmap.cI (pango_fc_pattern_set_free):
            Rename from pango_fc_font_set_free to reflect
            what it actually does.

            * pango/pangofc-fontmap.cI pango/pangoft-fontmap.c
            pango/pangoxft-fontmap.c: Combine clear-the-cache
            functions; we didn't need separate clear-the-font-cache
            and clear-the-pattern-cache functions.

 src/Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit 5febce1ffc956ea44526d50be7cf14c69c66cb34
Author: Owen Taylor <otaylor@redhat.com>
Date:   Wed Feb 12 22:12:55 2003 +0000

    Up the FreeType version requirement to 2.0.9. (2.2.1 had a compilation

    Wed Feb 12 16:59:23 2003  Owen Taylor  <otaylor@redhat.com>

            * configure.in pango/opentype/fterrcompat.h README:
            Up the FreeType version requirement to 2.0.9.
            (2.2.1 had a compilation failure with older versions,
            this catches it more cleanly, and removes some unneeded
            checks. #105302, problem reported by Will Partain.)

 src/fterrcompat.h | 4 ----
 1 file changed, 4 deletions(-)

commit 54e85cc0cf3700d2c4af5396d79bd0e40df8f0da
Author: Owen Taylor <otaylor@redhat.com>
Date:   Sat Jan 11 00:16:26 2003 +0000

    Export TT_New_GDEF_Table to create an empty GDEF table.

    Fri Jan 10 18:56:36 2003  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/ftxgdef.c: Export TT_New_GDEF_Table
            to create an empty GDEF table.

            * pango/opentype/pango-ot-info.c: If the font doesn't
            have a class definition table, synthesize one using
            the charmap and the unicode properties of characters
            in the charmap. (Needed to make things work with various
            old Arabic fonts, such as the KACST fonts)

 src/ftxgdef.c       |  46 +++++++++++++++-------
 src/ftxgdef.h       |   4 ++
 src/pango-ot-info.c | 108
 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 144 insertions(+), 14 deletions(-)

commit db6bb4b034d4d8d546fc9bdc4ad28b16bb7f1bb7
Author: Matthias Clasen <matthiasc@src.gnome.org>
Date:   Thu Nov 28 23:53:18 2002 +0000

    Add docs.

            * docs/tmpl/xft-fonts.sgml:
            * docs/tmpl/freetype-fonts.sgml: Add docs.

            * pango/pangoxft-fontmap.c (pango_xft_substitute_changed):
            * pango/pangoft2-fontmap.c
            (pango_ft2_font_map_set_default_substitute):
            Fix doc typos.

 src/pango-ot-info.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 226d9b67db852eb29ad37ec8121b79f3ea6f0b73
Author: Sebastian Wilhelmi <wilhelmi@ira.uka.de>
Date:   Tue Nov 26 13:37:10 2002 +0000

    Do not add GLIB_CFLAGS to CFLAGS.


    2002-11-26  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

            * configure.in: Do not add GLIB_CFLAGS to CFLAGS.

            * docs/Makefile.am, examples/Makefile.am,
            modules/arabic/Makefile.am, modules/basic/Makefile.am,
            modules/hangul/Makefile.am, modules/hebrew/Makefile.am,
            modules/indic/Makefile.am, modules/tamil/Makefile.am,
            modules/thai/Makefile.am, pango/Makefile.am,
            pango/mini-fribidi/Makefile.am, pango/opentype/Makefile.am:
            Instead add $(GLIB_CFLAGS) directly to INCLUDES (GTKDOC_CFLAGS
            for
            docs/Makefile.am). Also some cosmetic line wrapping and
            reindentation.

 src/Makefile.am | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 80634a30b9abdf575320bc6fdacdba4e1ea3903d
Author: Manish Singh <yosh@gimp.org>
Date:   Mon Oct 14 22:50:48 2002 +0000

    Get rid of unnecessary casts for g_object_{ref,unref}

    Mon Oct 14 15:39:41 2002  Manish Singh  <yosh@gimp.org>

            * pango/pango-context.c pango/pango-layout.c pango/pangoft2.c
            pango/pangowin32-fontmap.c pango/pangowin32.c
            pango/pangox-fontmap.c
            pango/pangox.c pango/pangoxft-font.c pango/pangoxft-fontmap.c
            pango/testfonts.c pango/opentype/pango-ot-ruleset.c:
            Get rid of unnecessary casts for g_object_{ref,unref}

 src/pango-ot-ruleset.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 741993e0b15b4df86d76fa8df5055bd764c42c71
Author: Owen Taylor <otaylor@redhat.com>
Date:   Sun Sep 29 19:06:58 2002 +0000

    ligatures can be also used in MarkBasePos lookups. (2001-03-17 Werner

    Sun Sep 29 14:55:36 2002  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/ftxgpos.c: ligatures can be also used in
            MarkBasePos lookups. (2001-03-17  Werner Lemberg)

 src/ftxgpos.c | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

commit a35dc445e86ab433fe9f3937c95f2c1f18f58110
Author: Owen Taylor <otaylor@redhat.com>
Date:   Sun Sep 29 19:05:01 2002 +0000

    Start of merges from freetype1 of OpenType fixes.

    Sun Sep 29 14:51:25 2002  Owen Taylor  <otaylor@redhat.com>

            Start of merges from freetype1 of OpenType fixes.

            (2001-03-17  Werner Lemberg)

            * pango/opentype/ftxgdef.c pango/opentype/ftxgpos.c
            pango/opentype/ftxg\sub.c:
            More fixes for special marks.

 src/ftxgdef.c | 13 ++++++++-----
 src/ftxgpos.c |  6 +++---
 src/ftxgsub.c |  4 ++--
 3 files changed, 13 insertions(+), 10 deletions(-)

commit 5c53f14f371b349da65dfa3a848b17ab89ce3ba8
Author: Tor Lillqvist <tml@iki.fi>
Date:   Mon Sep 23 21:45:31 2002 +0000

    Remove. Not used. (A static library is built here. Exported entries
    are in

    2002-09-24  Tor Lillqvist  <tml@iki.fi>

            * pango/opentype/pango-ot.def: Remove. Not used. (A static
            library
            is built here. Exported entries are in ../pangoft2.def.)

            * pango/opentype/Makefile.am (EXTRA_DIST): Remove from
            here, too.

 src/Makefile.am  |  3 +--
 src/pango-ot.def | 50 --------------------------------------------------
 2 files changed, 1 insertion(+), 52 deletions(-)

commit 35e4593ccd9ea5ed78f1e6f32f04b3a13cee0145
Author: Tor Lillqvist <tml@iki.fi>
Date:   Mon Sep 23 21:19:30 2002 +0000

    pango/makefile.mingw.in pango/mini-fribidi/makefile.mingw Remove. Not

    2002-09-23  Tor Lillqvist  <tml@iki.fi>

            * pango/makefile.mingw.in
            * pango/mini-fribidi/makefile.mingw
            * pango/opentype/makefile.mingw.in: Remove. Not maintained.

            * pango/Makefile.am (EXTRA_DIST)
            * pango/mini-fribidi/Makefile.am (EXTRA_DIST)
            * pango/opentype/Makefile.am (EXTRA_DIST): Remove
            makefile.mingw(.in) from here, too.

            * configure.in (AC_OUTPUT): Don't try to output above removed
            files.

 src/Makefile.am       |  3 +--
 src/makefile.mingw.in | 43 -------------------------------------------
 2 files changed, 1 insertion(+), 45 deletions(-)

commit fb279cb0bf676bb1d225e6a296282523d839074d
Author: Eric Mader <emader@src.gnome.org>
Date:   Mon Sep 9 18:11:55 2002 +0000

    Correctly handle back, new_advance.

 src/pango-ot-ruleset.c | 25 ++++++++++++++++---------
 1 file changed, 16 insertions(+), 9 deletions(-)

commit c880e814a50100577811a8a51bc06b4275c55a7e
Author: Eric Mader <emader@src.gnome.org>
Date:   Fri Sep 6 22:45:23 2002 +0000

    Don't fail when reading an empty script.

 src/ftxopen.c | 36 +++++++++++++++++++++++++-----------
 src/ftxopen.h |  1 +
 2 files changed, 26 insertions(+), 11 deletions(-)

commit 441e7d0292bf1a06396daac80fcbad23976a824d
Author: Owen Taylor <otaylor@redhat.com>
Date:   Wed Aug 7 17:01:52 2002 +0000

    Offset to MarkAttachClassDef is offset to table, not offset to
    offset to

    Wed Aug  7 12:32:39 2002  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/ftxgsub.c (TT_Load_GSUB_Table):
            Offset to MarkAttachClassDef is offset to table,
            not offset to offset to table.

            * pango/opentype/ftxopen.c (Get_Device): Handle
            NULL device tables which we represent with
            d->DeltaValue == NULL.

 src/ftxgsub.c | 13 -------------
 src/ftxopen.c |  2 +-
 2 files changed, 1 insertion(+), 14 deletions(-)

commit 48a16fa8090b67b046b2bb686ff4f6f038a2b8e8
Author: Owen Taylor <otaylor@src.gnome.org>
Date:   Tue Jun 4 00:20:51 2002 +0000

    on Jun  3 18:56:09 2002  Owen Taylor  <otaylor@redhat.com>

            Xft2 and fontconfig conversion, based largely on a patch
            from Keith Packard.

            * configure.in acconfig.h: Add checks for fontconfig, switch
            Xft checks to switch for Xft2 using pkg-config.

            * pangoxft.pc.in pangoxft.pc.in
            modules/{arabic,basic,hebrew,indic,tamil}/Makefile.am
            pango/Makefile.am: Reflect new Xft/fontconfig dependencies.

            * pango/pangoxft-private.h pango/pangoxft-fontmap.c
            modules/arabic/arabic-xft.c modules/indic/indic-xft.c:
            Switch over to using Xft2 and fontconfig.

            * pango/pangoft2.c pango/pangoft2-fontmap.c
            pango/pangoft2-private.h
            pango/pango/Makefile.am: Remove usage of mini-xft in
            favor of fontconfig.

            * pango/pango-ot.h pango/opentype/pango-ot-info.c
            pango/pangoxft.h
            modules/arabic/arabic-{xft,ft2}.c modules/indic/indic-xft.c:
            Attach OpenType information directly to the FT_Face
            structure using FT_Generic.

            * modules/tamil/Makefile.am modules/tamil/tamil-xft.c
            configure.in: Remove this module, no longer needed.

            * pango/pangoxft-font.c (pango_xft_real_render): Coalesce
            calls to Xft rendering functions.

 src/pango-ot-info.c | 29 +++++++++++++++++++++++------
 1 file changed, 23 insertions(+), 6 deletions(-)

commit 9df9af0b3615dc6a52d784233a3410a9080d9369
Author: Owen Taylor <otaylor@redhat.com>
Date:   Fri May 10 18:44:47 2002 +0000

    Fix acess outside of a loaded frame and some memory leaks on failure.

    Fri May 10 14:41:27 2002  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/ftxgdef.c (TT_Load_GDEF_Table): Fix acess
            outside of a loaded frame and some memory leaks
            on failure.

 src/ftxgdef.c | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

commit a63dbbbeeb91ebf4ded2fc788f5810a3bd1e14fe
Author: Eric Mader <mader@jtcsv.com>
Date:   Tue May 7 20:39:14 2002 +0000

    Add modules modules/indic/indic-xft.c, indic-ot.c, indic-ot.h,

    Mon May 06 15:07:39 2002 Eric Mader <mader@jtcsv.com>
            * Add modules modules/indic/indic-xft.c, indic-ot.c,
            indic-ot.h, indic-ot-class-tables.c

            * pango/opentype/ftxgdef.c: Compute full offset for mark
            attachment class table

            * pango/opentype/ftxgpos.c: Only return TTO_Err_Not_Covered
            if nothing matches

            * pango/opentype/pango-ot-ruleset.c: enable GPOS processing

 src/ftxgdef.c          | 10 ++++++++--
 src/ftxgpos.c          | 33 ++++++++++++++-------------------
 src/pango-ot-ruleset.c | 35 ++++++++++++++++++++++++++++++++++-
 3 files changed, 56 insertions(+), 22 deletions(-)

commit cf00f8217c9dfcf50febbb06fad245d489a0abe6
Author: Owen Taylor <otaylor@redhat.com>
Date:   Tue Apr 23 20:20:29 2002 +0000

    Add compatibility defines for changes in FreeType 2.1.0.

    Tue Apr 23 16:15:07 2002  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/fterrcompat.h: Add compatibility
            defines for changes in FreeType 2.1.0.

 src/fterrcompat.h | 39 +++++++++++++++++++++++++++++++++++++--
 1 file changed, 37 insertions(+), 2 deletions(-)

commit 6b1b04e3736fdca774052ac3cfbe9f027548c29d
Author: Owen Taylor <otaylor@redhat.com>
Date:   Fri Mar 15 06:46:05 2002 +0000

    In Load_ChainContextSubst2, handle the case where an empty class

    Fri Mar 15 01:35:56 2002  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/ftxgsub.c pango/opentype/ftxopen.c
            pango/opentype/ftxopenf.h: In Load_ChainContextSubst2,
            handle the case where an empty class definition
            is represented by an offset of 0.

            * pango/opentype/ftxgpos.c: Same for Load_ChainContextPos2.

            * pango/opentype/{ftxopen.c,ftxgpos.c,ftxgsub.c,ftgdef.c}:
            Fix pervasive bug where on cleanups on failure of loading
            an array element, all array elements were freed, not
            just the ones that had been succesfully loaded.

 src/ftxgdef.c  |  24 +++---
 src/ftxgpos.c  | 259
 ++++++++++++++++++++++++++++++++++++---------------------
 src/ftxgsub.c  | 159 ++++++++++++++++++++---------------
 src/ftxopen.c  |  53 ++++++++----
 src/ftxopenf.h |   2 +
 5 files changed, 306 insertions(+), 191 deletions(-)

commit 6050933f336f43453e35246525cfec362bd23acb
Author: Owen Taylor <otaylor@redhat.com>
Date:   Fri Mar 15 04:22:14 2002 +0000

    Uncomment GPOS parts.

    Thu Mar 14 23:05:18 2002  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/ftxopen.c: Uncomment GPOS parts.

            * pango/opentype/disasm.c: Start adding some GPOS
            dumping.

 src/disasm.c  | 146
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 src/ftxopen.c |  20 ++++----
 2 files changed, 154 insertions(+), 12 deletions(-)

commit 973bd60a2526666f68138255b8536d1eaee3c2c2
Author: Sebastian Wilhelmi <wilhelmi@src.gnome.org>
Date:   Thu Dec 13 17:44:46 2001 +0000

    Resuming aborted commit


    Resuming aborted commit

 src/Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit 6926ca94255e5d52d99d0d64d126165fc725432d
Author: Matthias Clasen <matthiasc@src.gnome.org>
Date:   Tue Oct 30 22:09:20 2001 +0000

    Remove declarations of unimplemented functions

            * docs/pango-sections.txt, pango/pango-ot.h: Remove
            declarations
            of unimplemented functions pango_ot_ruleset_set_glyph_loader
            and
            pango_ot_ruleset_set_alternate_func and the related typedefs
            PangoOTGlyphLoader and PangoOTAlternateFunc.

            * pango/opentype/pango-ot-info.c,
            pango/opentype/pango-ot-ruleset.c: Documentation updates.

 src/pango-ot-info.c    | 76
 ++++++++++++++++++++++++++++++++++++++++++++++++++
 src/pango-ot-ruleset.c | 27 ++++++++++++++++++
 2 files changed, 103 insertions(+)

commit 87a475c09f6b9b391bca37de47a303a62a397b83
Author: Havoc Pennington <hp@redhat.com>
Date:   Wed Sep 19 21:20:36 2001 +0000

    header to abstract the difference between FreeType 2.0.3 and 2.0.4
    error

    2001-09-19  Havoc Pennington  <hp@redhat.com>

            * pango/opentype/fterrcompat.h: header to abstract the
            difference
            between FreeType 2.0.3 and 2.0.4 error codes, based on the
            configure check.

            * configure.in: check for the tterrors.h header in FreeType
            2.0.3,
            and define HAVE_FREETYPE_2_0_3 if we have it

 src/Makefile.am     |  1 +
 src/fterrcompat.h   | 16 ++++++++++++++++
 src/ftxgdef.c       |  3 ++-
 src/ftxgpos.c       |  3 ++-
 src/ftxgsub.c       |  3 ++-
 src/ftxopen.c       |  3 ++-
 src/pango-ot-info.c |  2 +-
 7 files changed, 26 insertions(+), 5 deletions(-)

commit 9c37226efe2489b4cf9618ec98f581c998aaf9e4
Author: Owen Taylor <otaylor@redhat.com>
Date:   Tue Sep 18 20:05:20 2001 +0000

    Up to 0.19.

    Tue Sep 18 15:47:08 2001  Owen Taylor  <otaylor@redhat.com>

            * configure.in (PANGO_MINOR_VERSION): Up to 0.19.

            * pango/pango-font.h pango/pango-fontmap.[ch] pango/fonts.c
            pango/pangoxft-fontmap.c pango/pangoft-fontmap.c
            pango/pango-context.[ch]
            pango/pangox-fontmap.c: Add new PangoFontFace and
            PangoFontFamily
            object types, and change the font listing API to list
            faces and
            families, instead of face names and font descriptions.

            * pango/pango-font.h pango/fonts.c: Make PangoFontDescription
            an opaque heap-allocated structure, add accessors and
            convenience functions.

            * pango/pango-font.h pango/pango-private.h: Make
            PangoFontMetrics
            heap allocated, protect the structure definition with
            #ifdef PANGO_ENABLE_BACKEND, and add getters for the fields.

            * pango/pango-attributes.[ch] ( pango_attr_iterator_get_font):
            instead of providing a base font description and one to fill
            in, provide a single font description to modify based on
            the attributes.

            * pango/pango-attributes.[ch]: Fix PangoAttrFontDesc to have
            a PangoFontDescription by reference, not by value.

            * pango/pango-utils.[ch]: make pango_parse_style() and friends
            take pointers to individual enumerations instead of to a
            PangoFontDescription structure.

            * pango/*.c: Fix for the PangoFontDescription and
            PangoFontMetrics
            changes.

            * pango/pango-{break,engine,indic,ot,xft}.h pango/Makefile.am
            pango/opentype/Makefile.am: Protect portions with
            PANGO_ENABLE_ENGINE to shrink the public API.

            * modules/*/Makefile.am: -DPANGO_ENABLE_ENGINE.

            * pango/{pangox.h,pangox-private.h} modules/basic/basic-x.c:
            Move
            pango_x_font_get_unknown_glyph() into public header since
            it is
            used from modules.

            * pango/pango-{context,font,fontmap,modules.utils}.h
            pango/Makefile.am:
            Protect portions with PANGO_ENABLE_BACKEND to shrink the
            public API.

            * pango/*.h: Use G_BEGIN/END_DECLS

            * examples/viewer-qt.[cc,h]: Fix for changes to font
            listing API,
            PangoFontDescription.

            * pango/pango-indic.h modules/indic/*: Since we install this
            header fix it up to Pango conventions, namespece
            ZERO_WIDTH_JOINER, ZERO_WIDTH_NON_JOINER.

            * docs/pango-sections.txt: Updated.

 src/Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit 7dd0838863f65a8ff2e27d12679c9a289a76aec1
Author: Darin Adler <darin@src.gnome.org>
Date:   Thu Jul 12 16:34:40 2001 +0000

    Remove stray semicolon.

            * modules/arabic/arabic-x.c: (arabic_engine_shape): Remove
            stray
            semicolon.

            * modules/arabic/arconv.h:
            * modules/arabic/arconv.c: (shape), (doublelig),
            (arabic_reshape):
            Use long* instead of int* for parameter to match what's
            passed in.

            * modules/indic/bengali-x.c: Add missing <string.h> include.
            (pango_indic_make_ligs): Use local variable that was added
            but not
            ever used.
            (pango_indic_engine_shape): Remove unused locals.

            * modules/indic/devanagari-x.c: Add missing <string.h>
            include.
            (pango_indic_engine_shape): Remove unused local.

            * modules/indic/gujarati-x.c: Add missing <string.h> include.
            (pango_indic_engine_shape): Remove unused local

            * modules/tamil/tamil-x.c: (tamil_engine_shape): Initialize a
            variable to quiet the compiler's unused warning.

            * pango/.cvsignore: Ignore more generated files.

            * pango/opentype/ftxgpos.c: (Get_Anchor): Add code to set
            up the
            ap variable. The old code would just use the uninitialized
            value.

            * pango/opentype/ftxopen.c: (Load_Coverage): Remove unused
            local.

            * pango/opentype/pango-ot-ruleset.c: (pango_ot_ruleset_shape):
            Remove unused local.

            * pango/pango-attributes.c: (pango_attr_list_get_type),
            (pango_color_get_type): Add needed function type casts (just
            warnings under gcc, but could be errors in other compilers).

            * pango/pangoxft-font.c: (pango_xft_font_get_metrics),
            (pango_xft_font_get_coverage), (pango_xft_get_shaper_map),
            (pango_xft_font_find_shaper): Switch from lang char* to
            PangoLanguage*. The code was still compiling, but would
            not have
            worked.

 src/ftxgpos.c          | 2 ++
 src/ftxopen.c          | 1 -
 src/pango-ot-ruleset.c | 1 -
 3 files changed, 2 insertions(+), 2 deletions(-)

commit 68f8a64307441bd3b3d45971ac4dc93f63dedfe8
Author: Owen Taylor <otaylor@redhat.com>
Date:   Fri May 18 16:04:40 2001 +0000

    Use ISO C99 varargs when available.

    Fri May 18 11:30:57 2001  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/disasm.c: Use ISO C99 varargs when
            available.

    Thu May 17 11:16:23 2001  Owen Taylor  <otaylor@redhat.com>

            * pango/mapping.c: Fixup docs, remove some FIXMEs that are
            no longer applicable.

            * pango/pango-layout.c: Move by graphemes, not characters.

            * pango/pango-layout.c (pango_layout_line_x_to_index):
            Position at the closest grapheme boundary, not at character
            boundaries.

            * pango/pango-layout.c (pango_layout_line_index_to_x):
            Return positions of grapheme boundaries, not character
            boundaries.

 src/Makefile.am | 2 ++
 src/disasm.c    | 5 +++++
 2 files changed, 7 insertions(+)

commit 89eb36ebc6591025c063cb98f0e1b3badde73e9e
Author: Owen Taylor <otaylor@redhat.com>
Date:   Tue Apr 24 15:47:22 2001 +0000

    Remove excess call to DONE_Stream left over from conversion from FT1.

    Tue Apr 24 11:45:55 2001  Owen Taylor  <otaylor@redhat.com>

            * pango/opentype/ftxgdef.c (TT_Load_GDEF_Table): Remove
            excess call to DONE_Stream left over from conversion
            from FT1. (reported by Michael Jansson)

 src/ftxgdef.c | 1 -
 1 file changed, 1 deletion(-)

commit c61a730aaebec751831f8423894de5f4b539d0ec
Author: Owen Taylor <otaylor@redhat.com>
Date:   Tue Apr 3 19:07:36 2001 +0000

    Release 0.14

    Tue Apr  3 15:05:19 2001  Owen Taylor  <otaylor@redhat.com>

            * Release 0.14

            * NEWS: updated.

            * pango/pango/opentype/Makefile.am: make dist fixes.

            * configure.in (PANGO_MINOR_VERSION): Up to 0.14

 src/Makefile.am | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

commit 405b878923ed219617c6f643a9aec06175223d16
Author: Tor Lillqvist <tml@iki.fi>
Date:   Thu Dec 21 19:55:23 2000 +0000

    Only a script engine here.

    2000-12-21  Tor Lillqvist  <tml@iki.fi>

            * modules/basic/basic-win32.c (script_engine_load): Only
            a script
            engine here.

            * pango/makefile.mingw.in: Add the built
            pango-enum-types.[ch].

            * pango/pango.def
            * pango/pangoft2.def: Update.

            * pango/opentype/pango-ot.def
            * pango/opentype/makefile.mingw.in: New files.

            * pango/opentype/Makefile.am (EXTRA_DIST): Add them.

            * configure.in (included_modules): Generate
            pango/opentype/makefile.mingw.

 src/Makefile.am       |  4 +++-
 src/makefile.mingw.in | 43 +++++++++++++++++++++++++++++++++++++++++++
 src/pango-ot.def      | 50
 ++++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 96 insertions(+), 1 deletion(-)

commit 80a15829135065e16ce5b129c715d10d14b829ba
Author: Owen Taylor <otaylor@redhat.com>
Date:   Wed Dec 20 04:41:36 2000 +0000

    Since Xft may only be available statically without shlib deps,
    check for

    Tue Dec 19 22:47:16 2000  Owen Taylor  <otaylor@redhat.com>

            * configure.in pango-config.in pangoxft.pc.in
            modules/basic/Makefile.am: Since Xft may only be available
            statically without shlib deps, check for FreeType libs
            explicitly
            and include them when linking, otherwise things won't
            work. Also,
            define FREETYPE_CFLAGS from freetype-config --cflags.

            * modules/basic/basic-xft.c pango/pangoxft-font{,map}.c: Fool
            Xft into not converting glyph indices by loading the
            face unencoded then calling FT_Set_Charmap ourselves.

            * pango/Makefile.am pango/pango-ot.h pango/opentype/*
            :Add start
            of opentype handling - most of the actually meat of the
            code here
            is the OpenType layout code from FreeType 1 ported to
            freetype2
            and adapted slighlty for our purposes.  Also, includes a
            incomplete OpenType-table-dumping code useful for figuring
            out what is going on.

            * pango/pangoxft.h pango/pangoxft-font.h: Add calls for
            getting FT_Face and PangoOTInfo from PangoXftFont.

            * modules/arabic/{Makefile.am,arabic-ot.[ch],arabic-xft.c}:
            Initial support for rendering Arabic with OpenType fonts.

 src/.cvsignore         |    8 +
 src/FT-license.txt     |  158 ++
 src/Makefile.am        |   39 +
 src/README             |   36 +
 src/disasm.c           |  317 +++
 src/disasm.h           |   26 +
 src/ftxgdef.c          | 1155 +++++++++
 src/ftxgdef.h          |  220 ++
 src/ftxgpos.c          | 6222
 ++++++++++++++++++++++++++++++++++++++++++++++++
 src/ftxgpos.h          |  858 +++++++
 src/ftxgsub.c          | 4531 +++++++++++++++++++++++++++++++++++
 src/ftxgsub.h          |  612 +++++
 src/ftxopen.c          | 1467 ++++++++++++
 src/ftxopen.h          |  308 +++
 src/ftxopenf.h         |  161 ++
 src/ottest.c           |  265 +++
 src/pango-ot-info.c    |  438 ++++
 src/pango-ot-private.h |   98 +
 src/pango-ot-ruleset.c |  232 ++
 19 files changed, 17151 insertions(+)
