summaryrefslogtreecommitdiff
path: root/Build
diff options
context:
space:
mode:
authorPeter Breitenlohner <peb@mppmu.mpg.de>2013-09-17 12:25:51 +0000
committerPeter Breitenlohner <peb@mppmu.mpg.de>2013-09-17 12:25:51 +0000
commit77096e7537fbee3a2969cc6a7e400030f7138320 (patch)
treedc3f3309a024be0bb1399acf6cfe5840b1854bb9 /Build
parentf45847453d43449bfd1a646be4d88066f92a25a4 (diff)
harfbuzz 0.9.21
git-svn-id: svn://tug.org/texlive/trunk@31678 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build')
-rw-r--r--Build/source/libs/README2
-rw-r--r--Build/source/libs/harfbuzz/ChangeLog5
-rw-r--r--Build/source/libs/harfbuzz/Makefile.am1
-rw-r--r--Build/source/libs/harfbuzz/Makefile.in5
-rw-r--r--Build/source/libs/harfbuzz/config.h.in6
-rwxr-xr-xBuild/source/libs/harfbuzz/configure38
-rw-r--r--Build/source/libs/harfbuzz/configure.ac2
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21-PATCHES/ChangeLog (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20-PATCHES/ChangeLog)5
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21-PATCHES/TL-Changes (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20-PATCHES/TL-Changes)6
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/AUTHORS (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/AUTHORS)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/Android.mk (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/Android.mk)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/ChangeLog (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/ChangeLog)403
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/Makefile.am (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/Makefile.am)2
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/NEWS (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/NEWS)12
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/README (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/README)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/THANKS (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/THANKS)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/TODO (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/TODO)8
-rwxr-xr-xBuild/source/libs/harfbuzz/harfbuzz-0.9.21/autogen.sh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/autogen.sh)2
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/config.h.in (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/config.h.in)6
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/configure.ac (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/configure.ac)26
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/gtk-doc.make (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/gtk-doc.make)36
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/harfbuzz.doap (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/harfbuzz.doap)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/Makefile.am (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/Makefile.am)59
-rwxr-xr-xBuild/source/libs/harfbuzz/harfbuzz-0.9.21/src/check-c-linkage-decls.sh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/check-c-linkage-decls.sh)0
-rwxr-xr-xBuild/source/libs/harfbuzz/harfbuzz-0.9.21/src/check-defs.sh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/check-symbols.sh)10
-rwxr-xr-xBuild/source/libs/harfbuzz/harfbuzz-0.9.21/src/check-header-guards.sh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/check-header-guards.sh)0
-rwxr-xr-xBuild/source/libs/harfbuzz/harfbuzz-0.9.21/src/check-includes.sh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/check-includes.sh)0
-rwxr-xr-xBuild/source/libs/harfbuzz/harfbuzz-0.9.21/src/check-libstdc++.sh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/check-libstdc++.sh)0
-rwxr-xr-xBuild/source/libs/harfbuzz/harfbuzz-0.9.21/src/check-static-inits.sh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/check-static-inits.sh)0
-rwxr-xr-xBuild/source/libs/harfbuzz/harfbuzz-0.9.21/src/check-symbols.sh37
-rwxr-xr-xBuild/source/libs/harfbuzz/harfbuzz-0.9.21/src/gen-arabic-table.py (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/gen-arabic-table.py)0
-rwxr-xr-xBuild/source/libs/harfbuzz/harfbuzz-0.9.21/src/gen-indic-table.py (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/gen-indic-table.py)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/harfbuzz-gobject.pc.in (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/harfbuzz-gobject.pc.in)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/harfbuzz-icu.pc.in (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/harfbuzz-icu.pc.in)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/harfbuzz.pc.in (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/harfbuzz.pc.in)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-atomic-private.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-atomic-private.hh)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-blob.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-blob.cc)151
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-blob.h (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-blob.h)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-buffer-deserialize-json.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-buffer-deserialize-json.hh)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-buffer-deserialize-json.rl (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-buffer-deserialize-json.rl)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-buffer-deserialize-text.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-buffer-deserialize-text.hh)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-buffer-deserialize-text.rl (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-buffer-deserialize-text.rl)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-buffer-private.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-buffer-private.hh)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-buffer-serialize.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-buffer-serialize.cc)63
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-buffer.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-buffer.cc)385
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-buffer.h (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-buffer.h)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-cache-private.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-cache-private.hh)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-common.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-common.cc)153
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-common.h (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-common.h)2
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-coretext.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-coretext.cc)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-coretext.h (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-coretext.h)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-deprecated.h (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-deprecated.h)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-face-private.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-face-private.hh)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-face.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-face.cc)171
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-face.h (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-face.h)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-fallback-shape.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-fallback-shape.cc)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-font-private.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-font-private.hh)10
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-font.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-font.cc)516
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-font.h (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-font.h)132
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ft.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ft.cc)30
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ft.h (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ft.h)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-glib.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-glib.cc)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-glib.h (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-glib.h)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-gobject-enums.cc.tmpl (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-gobject-enums.cc.tmpl)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-gobject-enums.h.tmpl (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-gobject-enums.h.tmpl)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-gobject-structs.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-gobject-structs.cc)15
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-gobject-structs.h (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-gobject-structs.h)8
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-gobject.h (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-gobject.h)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-graphite2.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-graphite2.cc)5
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-graphite2.h (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-graphite2.h)2
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-icu-le.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-icu-le.cc)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-icu.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-icu.cc)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-icu.h (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-icu.h)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-mutex-private.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-mutex-private.hh)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-object-private.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-object-private.hh)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-old.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-old.cc)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-open-file-private.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-open-file-private.hh)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-open-type-private.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-open-type-private.hh)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-head-table.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-head-table.hh)2
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-hhea-table.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-hhea-table.hh)2
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-hmtx-table.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-hmtx-table.hh)2
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-layout-common-private.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-layout-common-private.hh)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-layout-gdef-table.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-layout-gdef-table.hh)2
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-layout-gpos-table.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-layout-gpos-table.hh)2
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-layout-gsub-table.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-layout-gsub-table.hh)2
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-layout-gsubgpos-private.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-layout-gsubgpos-private.hh)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-layout-jstf-table.hh229
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-layout-private.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-layout-private.hh)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-layout.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-layout.cc)1
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-layout.h (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-layout.h)1
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-map-private.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-map-private.hh)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-map.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-map.cc)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-maxp-table.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-maxp-table.hh)2
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-name-table.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-name-table.hh)2
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-arabic-fallback.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-arabic-fallback.hh)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-arabic-table.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-arabic-table.hh)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-arabic.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-arabic.cc)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-default.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-default.cc)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-indic-machine.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-indic-machine.hh)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-indic-machine.rl (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-indic-machine.rl)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-indic-private.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-indic-private.hh)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-indic-table.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-indic-table.cc)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-indic.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-indic.cc)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-myanmar-machine.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-myanmar-machine.hh)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-myanmar-machine.rl (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-myanmar-machine.rl)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-myanmar.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-myanmar.cc)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-private.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-private.hh)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-sea-machine.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-sea-machine.hh)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-sea-machine.rl (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-sea-machine.rl)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-sea.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-sea.cc)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-thai.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-thai.cc)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-fallback-private.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-fallback-private.hh)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-fallback.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-fallback.cc)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-normalize-private.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-normalize-private.hh)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-normalize.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-normalize.cc)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-private.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-private.hh)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape.cc)22
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-tag.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-tag.cc)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-tag.h (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-tag.h)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot.h (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot.h)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-private.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-private.hh)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-set-private.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-set-private.hh)20
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-set.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-set.cc)244
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-set.h (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-set.h)2
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-shape-plan-private.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-shape-plan-private.hh)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-shape-plan.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-shape-plan.cc)104
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-shape-plan.h (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-shape-plan.h)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-shape.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-shape.cc)56
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-shape.h (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-shape.h)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-shaper-impl-private.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-shaper-impl-private.hh)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-shaper-list.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-shaper-list.hh)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-shaper-private.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-shaper-private.hh)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-shaper.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-shaper.cc)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-tt-font.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-tt-font.cc)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ucdn.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ucdn.cc)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-unicode-private.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-unicode-private.hh)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-unicode.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-unicode.cc)128
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-unicode.h (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-unicode.h)106
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-uniscribe.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-uniscribe.cc)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-uniscribe.h (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-uniscribe.h)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-utf-private.hh (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-utf-private.hh)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-version.h.in (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-version.h.in)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-warning.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-warning.cc)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb.h (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb.h)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/main.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/main.cc)2
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/test-buffer-serialize.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/test-buffer-serialize.cc)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/test-size-params.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/test-size-params.cc)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/test-would-substitute.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/test-would-substitute.cc)0
-rw-r--r--Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/test.cc (renamed from Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/test.cc)0
-rw-r--r--Build/source/libs/harfbuzz/version.ac2
150 files changed, 3017 insertions, 230 deletions
diff --git a/Build/source/libs/README b/Build/source/libs/README
index 8515f1c1d7b..2c136a739d8 100644
--- a/Build/source/libs/README
+++ b/Build/source/libs/README
@@ -21,7 +21,7 @@ gd 2.1.0 - checked 26jun13
graphite2 1.2.3 - checked 12jun13
http://sourceforge.net/projects/silgraphite/files/graphite2/
-harfbuzz 0.9.20 - checked 10sep13
+harfbuzz 0.9.21 - checked 17sep13
http://www.freedesktop.org/software/harfbuzz/release/
icu 51.1 (51_1) - checked 21mar13
diff --git a/Build/source/libs/harfbuzz/ChangeLog b/Build/source/libs/harfbuzz/ChangeLog
index cccf9a0fe1f..68280cfaeeb 100644
--- a/Build/source/libs/harfbuzz/ChangeLog
+++ b/Build/source/libs/harfbuzz/ChangeLog
@@ -1,3 +1,8 @@
+2013-09-17 Peter Breitenlohner <peb@mppmu.mpg.de>
+
+ Import harfbuzz-0.9.21.
+ * version.ac, configure.ac, Makefile.am: Adjust.
+
2013-09-10 Peter Breitenlohner <peb@mppmu.mpg.de>
Import harfbuzz-0.9.20.
diff --git a/Build/source/libs/harfbuzz/Makefile.am b/Build/source/libs/harfbuzz/Makefile.am
index cf753bdb8f4..05e85b62f00 100644
--- a/Build/source/libs/harfbuzz/Makefile.am
+++ b/Build/source/libs/harfbuzz/Makefile.am
@@ -79,6 +79,7 @@ libharfbuzz_a_SOURCES += \
@HARFBUZZ_TREE@/src/hb-ot-layout-gpos-table.hh \
@HARFBUZZ_TREE@/src/hb-ot-layout-gsubgpos-private.hh \
@HARFBUZZ_TREE@/src/hb-ot-layout-gsub-table.hh \
+ @HARFBUZZ_TREE@/src/hb-ot-layout-jstf-table.hh \
@HARFBUZZ_TREE@/src/hb-ot-layout-private.hh \
@HARFBUZZ_TREE@/src/hb-ot-map.cc \
@HARFBUZZ_TREE@/src/hb-ot-map-private.hh \
diff --git a/Build/source/libs/harfbuzz/Makefile.in b/Build/source/libs/harfbuzz/Makefile.in
index 86e6cb3193e..3bb996011a9 100644
--- a/Build/source/libs/harfbuzz/Makefile.in
+++ b/Build/source/libs/harfbuzz/Makefile.in
@@ -83,7 +83,7 @@ DIST_COMMON = $(srcdir)/../../am/reconfig.am \
$(srcdir)/../../am/rebuild.am $(srcdir)/Makefile.in \
$(srcdir)/Makefile.am $(top_srcdir)/configure \
$(am__configure_deps) $(srcdir)/config.h.in \
- $(top_srcdir)/harfbuzz-0.9.20/src/hb-version.h.in \
+ $(top_srcdir)/harfbuzz-0.9.21/src/hb-version.h.in \
$(am__dist_check_SCRIPTS_DIST) \
$(top_srcdir)/../../build-aux/depcomp \
$(top_srcdir)/../../build-aux/test-driver ChangeLog \
@@ -673,6 +673,7 @@ libharfbuzz_a_SOURCES = @HARFBUZZ_TREE@/src/hb-atomic-private.hh \
@HARFBUZZ_TREE@/src/hb-ot-layout-gpos-table.hh \
@HARFBUZZ_TREE@/src/hb-ot-layout-gsubgpos-private.hh \
@HARFBUZZ_TREE@/src/hb-ot-layout-gsub-table.hh \
+ @HARFBUZZ_TREE@/src/hb-ot-layout-jstf-table.hh \
@HARFBUZZ_TREE@/src/hb-ot-layout-private.hh \
@HARFBUZZ_TREE@/src/hb-ot-map.cc \
@HARFBUZZ_TREE@/src/hb-ot-map-private.hh \
@@ -770,7 +771,7 @@ $(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
distclean-hdr:
-rm -f config.h stamp-h1
-hb-version.h: $(top_builddir)/config.status $(top_srcdir)/harfbuzz-0.9.20/src/hb-version.h.in
+hb-version.h: $(top_builddir)/config.status $(top_srcdir)/harfbuzz-0.9.21/src/hb-version.h.in
cd $(top_builddir) && $(SHELL) ./config.status $@
clean-noinstLIBRARIES:
diff --git a/Build/source/libs/harfbuzz/config.h.in b/Build/source/libs/harfbuzz/config.h.in
index 79552ee51ae..3c0840e14d9 100644
--- a/Build/source/libs/harfbuzz/config.h.in
+++ b/Build/source/libs/harfbuzz/config.h.in
@@ -27,15 +27,9 @@
/* Use gthread2 library */
#undef HAVE_GTHREAD
-/* Use Old HarfBuzz backend */
-#undef HAVE_HB_OLD
-
/* Use ICU library */
#undef HAVE_ICU
-/* Use ICU Layout Engine library */
-#undef HAVE_ICU_LE
-
/* Use Intel __sync_* atomic primitives */
#undef HAVE_INTEL_ATOMIC_PRIMITIVES
diff --git a/Build/source/libs/harfbuzz/configure b/Build/source/libs/harfbuzz/configure
index 86937abfc60..ec1c7326408 100755
--- a/Build/source/libs/harfbuzz/configure
+++ b/Build/source/libs/harfbuzz/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for harfbuzz (TeX Live) 0.9.20.
+# Generated by GNU Autoconf 2.69 for harfbuzz (TeX Live) 0.9.21.
#
# Report bugs to <tex-k@tug.org>.
#
@@ -580,12 +580,12 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='harfbuzz (TeX Live)'
PACKAGE_TARNAME='harfbuzz--tex-live-'
-PACKAGE_VERSION='0.9.20'
-PACKAGE_STRING='harfbuzz (TeX Live) 0.9.20'
+PACKAGE_VERSION='0.9.21'
+PACKAGE_STRING='harfbuzz (TeX Live) 0.9.21'
PACKAGE_BUGREPORT='tex-k@tug.org'
PACKAGE_URL=''
-ac_unique_file="harfbuzz-0.9.20/src/harfbuzz.pc.in"
+ac_unique_file="harfbuzz-0.9.21/src/harfbuzz.pc.in"
# Factoring default headers for most tests.
ac_includes_default="\
#include <stdio.h>
@@ -1324,7 +1324,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures harfbuzz (TeX Live) 0.9.20 to adapt to many kinds of systems.
+\`configure' configures harfbuzz (TeX Live) 0.9.21 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1395,7 +1395,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of harfbuzz (TeX Live) 0.9.20:";;
+ short | recursive ) echo "Configuration of harfbuzz (TeX Live) 0.9.21:";;
esac
cat <<\_ACEOF
@@ -1508,7 +1508,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-harfbuzz (TeX Live) configure 0.9.20
+harfbuzz (TeX Live) configure 0.9.21
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1915,7 +1915,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by harfbuzz (TeX Live) $as_me 0.9.20, which was
+It was created by harfbuzz (TeX Live) $as_me 0.9.21, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@@ -3838,7 +3838,7 @@ fi
# Define the identity of the package.
PACKAGE='harfbuzz--tex-live-'
- VERSION='0.9.20'
+ VERSION='0.9.21'
cat >>confdefs.h <<_ACEOF
@@ -4040,8 +4040,8 @@ WARNING_CFLAGS=$kpse_cv_warning_cflags
HB_VERSION_MAJOR=0
HB_VERSION_MINOR=9
-HB_VERSION_MICRO=20
-HB_VERSION=0.9.20
+HB_VERSION_MICRO=21
+HB_VERSION=0.9.21
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
@@ -6380,9 +6380,6 @@ else
$as_echo "#define HAVE_PTHREAD 1" >>confdefs.h
-$as_echo "#define HAVE_HB_OLD 1" >>confdefs.h
-
-
$as_echo "#define HAVE_UCDN 1" >>confdefs.h
@@ -6401,9 +6398,6 @@ $as_echo "#define HAVE_CAIRO 1" >>confdefs.h
$as_echo "#define HAVE_CAIRO_FT 1" >>confdefs.h
-$as_echo "#define HAVE_ICU_LE 1" >>confdefs.h
-
-
$as_echo "#define HAVE_UNISCRIBE 1" >>confdefs.h
@@ -6414,14 +6408,14 @@ $as_echo "#define HAVE_INTEL_ATOMIC_PRIMITIVES 1" >>confdefs.h
fi
-HARFBUZZ_TREE=harfbuzz-0.9.20
+HARFBUZZ_TREE=harfbuzz-0.9.21
if test -f $srcdir/$HARFBUZZ_TREE/src/hb-version.h; then
as_fn_error $? "Sorry, you must remove the file $HARFBUZZ_TREE/src/hb-version.h" "$LINENO" 5
fi
-ac_config_files="$ac_config_files Makefile include/Makefile hb-version.h:harfbuzz-0.9.20/src/hb-version.h.in"
+ac_config_files="$ac_config_files Makefile include/Makefile hb-version.h:harfbuzz-0.9.21/src/hb-version.h.in"
cat >confcache <<\_ACEOF
@@ -6970,7 +6964,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by harfbuzz (TeX Live) $as_me 0.9.20, which was
+This file was extended by harfbuzz (TeX Live) $as_me 0.9.21, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -7036,7 +7030,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-harfbuzz (TeX Live) config.status 0.9.20
+harfbuzz (TeX Live) config.status 0.9.21
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
@@ -7169,7 +7163,7 @@ do
"config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;;
"Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
"include/Makefile") CONFIG_FILES="$CONFIG_FILES include/Makefile" ;;
- "hb-version.h") CONFIG_FILES="$CONFIG_FILES hb-version.h:harfbuzz-0.9.20/src/hb-version.h.in" ;;
+ "hb-version.h") CONFIG_FILES="$CONFIG_FILES hb-version.h:harfbuzz-0.9.21/src/hb-version.h.in" ;;
*) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
esac
diff --git a/Build/source/libs/harfbuzz/configure.ac b/Build/source/libs/harfbuzz/configure.ac
index c78f6f901a7..97e703248fd 100644
--- a/Build/source/libs/harfbuzz/configure.ac
+++ b/Build/source/libs/harfbuzz/configure.ac
@@ -49,14 +49,12 @@ if :; then
else
dnl add all these to config.h.in but do not define them in config.h
AC_DEFINE([HAVE_PTHREAD], 1, [Use POSIX threads])
- AC_DEFINE([HAVE_HB_OLD], 1, [Use Old HarfBuzz backend])
AC_DEFINE([HAVE_UCDN], 1, [Use UCDN Unicode functions])
AC_DEFINE([HAVE_GLIB], 1, [Use glib2 library])
AC_DEFINE([HAVE_GTHREAD], 1, [Use gthread2 library])
AC_DEFINE([HAVE_GOBJECT], 1, [Use gobject2 library])
AC_DEFINE([HAVE_CAIRO], 1, [Use cairo graphics library])
AC_DEFINE([HAVE_CAIRO_FT], 1, [Use cairo-ft support in cairo graphics library])
- AC_DEFINE([HAVE_ICU_LE], 1, [Use ICU Layout Engine library])
AC_DEFINE([HAVE_UNISCRIBE], 1, [Use Uniscribe backend])
AC_DEFINE([HAVE_CORETEXT], 1, [Use Core Text backend])
AC_DEFINE([HAVE_INTEL_ATOMIC_PRIMITIVES], 1, [Use Intel __sync_* atomic primitives])
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20-PATCHES/ChangeLog b/Build/source/libs/harfbuzz/harfbuzz-0.9.21-PATCHES/ChangeLog
index fc2ae9bfcab..d86feffede0 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20-PATCHES/ChangeLog
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21-PATCHES/ChangeLog
@@ -1,3 +1,8 @@
+2013-09-17 Peter Breitenlohner <peb@mppmu.mpg.de>
+
+ Imported harfbuzz-0.9.21 source tree from:
+ http://www.freedesktop.org/software/harfbuzz/release/
+
2013-09-10 Peter Breitenlohner <peb@mppmu.mpg.de>
Imported harfbuzz-0.9.20 source tree from:
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20-PATCHES/TL-Changes b/Build/source/libs/harfbuzz/harfbuzz-0.9.21-PATCHES/TL-Changes
index 42689d1ca27..f8d99b0e03b 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20-PATCHES/TL-Changes
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21-PATCHES/TL-Changes
@@ -1,5 +1,5 @@
-Changes applied to the harfbuzz-0.9.20/ tree as obtained from:
- http://www.freedesktop.org/software/harfbuzz/release/harfbuzz-0.9.20.tar.bz2
+Changes applied to the harfbuzz-0.9.21/ tree as obtained from:
+ http://www.freedesktop.org/software/harfbuzz/release/harfbuzz-0.9.21.tar.bz2
Removed:
COPYING
@@ -23,7 +23,5 @@ Removed unused dirs:
m4
test
util
- src/hb-icu-le
- src/hb-old
src/hb-ucdn
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/AUTHORS b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/AUTHORS
index c611d7d4769..c611d7d4769 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/AUTHORS
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/AUTHORS
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/Android.mk b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/Android.mk
index 62cc21f2572..62cc21f2572 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/Android.mk
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/Android.mk
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/ChangeLog b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/ChangeLog
index 3a9cc0e49e2..22a4a5b8ab9 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/ChangeLog
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/ChangeLog
@@ -1,3 +1,406 @@
+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
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/Makefile.am b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/Makefile.am
index c98b7802569..15ccbf87134 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/Makefile.am
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/Makefile.am
@@ -55,7 +55,9 @@ DISTCHECK_CONFIGURE_FLAGS = \
# TODO: Copy infrastructure from cairo
+# TAR_OPTIONS is not set as env var for 'make dist'. How to fix that?
TAR_OPTIONS = --owner=0 --group=0
+
dist-hook: dist-clear-sticky-bits
# Clean up any sticky bits we may inherit from parent dir
dist-clear-sticky-bits:
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/NEWS b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/NEWS
index dc89614e071..57ec3804b43 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/NEWS
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/NEWS
@@ -1,3 +1,15 @@
+Overview of changes leading to 0.9.21
+Monday, September 16, 2013
+=====================================
+
+- Rename gobject-introspection library name from harfbuzz to HarfBuzz.
+- Remove (long disabled) hb-old and hb-icu-le test shapers.
+- Misc gtk-doc and gobject-introspection annotations.
+- Misc fixes.
+- API changes:
+
+ * Add HB_SET_VALUE_INVALID
+
Overview of changes leading to 0.9.20
Thursday, August 29, 2013
=====================================
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/README b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/README
index 74e739da52a..74e739da52a 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/README
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/README
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/THANKS b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/THANKS
index 940cfde5c39..940cfde5c39 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/THANKS
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/THANKS
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/TODO b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/TODO
index 4808391b4e2..e1aa39c4c01 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/TODO
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/TODO
@@ -12,6 +12,8 @@ General fixes:
- Warn at compile time (and runtime with HB_DEBUG?) if no Unicode / font
funcs found / set.
+- Do proper rounding when scaling from font space? May be a non-issue.
+
- Misc features:
* init/medi/fina/isol for non-cursive scripts
@@ -43,11 +45,9 @@ API additions
- Add sanitize API (and a cached version, that saves result on blob user-data)
-- Add glib GBoxedType stuff and introspection
-
- BCP 47 language handling / API (language_matches?)
-- Add hb_font_create_linear()?
+- Add hb_font_create_unscaled()?
- Add query / enumeration API for aalt-like features?
@@ -61,7 +61,7 @@ API additions
hb-view / hb-shape enhancements:
===============================
-- Add --width, --height, --auto-size, --align, etc?
+- Add --width, --height, --auto-size, --ink-box, --align, etc?
Tests to write:
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/autogen.sh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/autogen.sh
index 42e69d0634b..6f4e903d745 100755
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/autogen.sh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/autogen.sh
@@ -24,7 +24,7 @@ which gtkdocize || {
echo "*** No gtkdocize found, please install it ***"
exit 1
}
-gtkdocize || exit 1
+gtkdocize --copy || exit 1
echo -n "checking for autoreconf... "
which autoreconf || {
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/config.h.in b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/config.h.in
index a2a37dcabc5..3e906b18416 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/config.h.in
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/config.h.in
@@ -33,15 +33,9 @@
/* Have Graphite2 library */
#undef HAVE_GRAPHITE2
-/* Have Old HarfBuzz backend */
-#undef HAVE_HB_OLD
-
/* Have ICU library */
#undef HAVE_ICU
-/* Have ICU Layout Engine library */
-#undef HAVE_ICU_LE
-
/* Have Intel __sync_* atomic primitives */
#undef HAVE_INTEL_ATOMIC_PRIMITIVES
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/configure.ac b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/configure.ac
index 29df3d17993..0a6795c3c90 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/configure.ac
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/configure.ac
@@ -1,6 +1,6 @@
AC_PREREQ([2.64])
AC_INIT([HarfBuzz],
- [0.9.20],
+ [0.9.21],
[http://bugs.freedesktop.org/enter_bug.cgi?product=harfbuzz],
[harfbuzz],
[http://harfbuzz.org/])
@@ -128,14 +128,6 @@ AM_CONDITIONAL(HAVE_OT, $have_ot)
dnl ===========================================================================
-have_hb_old=false
-if $have_hb_old; then
- AC_DEFINE(HAVE_HB_OLD, 1, [Have Old HarfBuzz backend])
-fi
-AM_CONDITIONAL(HAVE_HB_OLD, $have_hb_old)
-
-dnl ===========================================================================
-
AC_ARG_WITH(glib,
[AS_HELP_STRING([--with-glib=@<:@yes/no/auto@:>@],
[Use glib @<:@default=auto@:>@])],,
@@ -269,15 +261,6 @@ AM_CONDITIONAL(HAVE_ICU, $have_icu)
dnl ==========================================================================
-have_icu_le=false
-dnl PKG_CHECK_MODULES(ICU_LE, icu-le icu-uc, have_icu_le=true, :)
-if $have_icu_le; then
- AC_DEFINE(HAVE_ICU_LE, 1, [Have ICU Layout Engine library])
-fi
-AM_CONDITIONAL(HAVE_ICU_LE, $have_icu_le)
-
-dnl ==========================================================================
-
AC_ARG_WITH(graphite2,
[AS_HELP_STRING([--with-graphite2=@<:@yes/no/auto@:>@],
[Use the graphite2 library @<:@default=no@:>@])],,
@@ -408,8 +391,6 @@ AC_CONFIG_FILES([
Makefile
src/Makefile
src/hb-version.h
-src/hb-icu-le/Makefile
-src/hb-old/Makefile
src/hb-ucdn/Makefile
util/Makefile
test/Makefile
@@ -417,6 +398,7 @@ test/api/Makefile
test/shaping/Makefile
docs/Makefile
docs/reference/Makefile
+docs/reference/version.xml
])
AC_OUTPUT
@@ -439,10 +421,8 @@ Tools used for command-line utilities:
Additional shapers (the more the better):
Graphite2: ${have_graphite2}
-Test / platform shapers (not normally needed):
+Platform shapers (not normally needed):
CoreText: ${have_coretext}
- ICU Layout Engine: ${have_icu_le}
- Old HarfBuzz: ${have_hb_old}
Uniscribe: ${have_uniscribe}
Other features:
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/gtk-doc.make b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/gtk-doc.make
index ac30c4c4085..104c3993f3e 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/gtk-doc.make
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/gtk-doc.make
@@ -33,9 +33,9 @@ EXTRA_DIST = \
$(HTML_IMAGES) \
$(SETUP_FILES)
-DOC_STAMPS=setup-build.stamp scan-build.stamp tmpl-build.stamp sgml-build.stamp \
+DOC_STAMPS=setup-build.stamp scan-build.stamp sgml-build.stamp \
html-build.stamp pdf-build.stamp \
- tmpl.stamp sgml.stamp html.stamp pdf.stamp
+ sgml.stamp html.stamp pdf.stamp
SCANOBJ_FILES = \
$(DOC_MODULE).args \
@@ -87,12 +87,10 @@ setup-build.stamp:
cp -pu $(abs_srcdir)/$$file $(abs_builddir)/$$file || true; \
done; \
fi; \
- test -d $(abs_srcdir)/tmpl && \
- { cp -rp $(abs_srcdir)/tmpl $(abs_builddir)/; \
- chmod -R u+w $(abs_builddir)/tmpl; } \
fi
$(AM_V_at)touch setup-build.stamp
+
#### scan ####
GTK_DOC_V_SCAN=$(GTK_DOC_V_SCAN_$(V))
@@ -129,35 +127,14 @@ scan-build.stamp: $(HFILE_GLOB) $(CFILE_GLOB)
$(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt: scan-build.stamp
@true
-#### templates ####
-
-GTK_DOC_V_TMPL=$(GTK_DOC_V_TMPL_$(V))
-GTK_DOC_V_TMPL_=$(GTK_DOC_V_TMPL_$(AM_DEFAULT_VERBOSITY))
-GTK_DOC_V_TMPL_0=@echo " DOC Rebuilding template files";
-
-tmpl-build.stamp: setup-build.stamp $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt
- $(GTK_DOC_V_TMPL)gtkdoc-mktmpl --module=$(DOC_MODULE) $(MKTMPL_OPTIONS)
- $(AM_V_at)if test "$(abs_srcdir)" != "$(abs_builddir)" ; then \
- if test -w $(abs_srcdir) ; then \
- cp -rp $(abs_builddir)/tmpl $(abs_srcdir)/; \
- fi \
- fi
- $(AM_V_at)touch tmpl-build.stamp
-
-tmpl.stamp: tmpl-build.stamp
- @true
-
-$(srcdir)/tmpl/*.sgml:
- @true
-
#### xml ####
GTK_DOC_V_XML=$(GTK_DOC_V_XML_$(V))
GTK_DOC_V_XML_=$(GTK_DOC_V_XML_$(AM_DEFAULT_VERBOSITY))
GTK_DOC_V_XML_0=@echo " DOC Building XML";
-sgml-build.stamp: tmpl.stamp $(DOC_MODULE)-sections.txt $(srcdir)/tmpl/*.sgml $(expand_content_files)
- -$(GTK_DOC_V_XML)chmod -R u+w $(srcdir) && _source_dir='' ; \
+sgml-build.stamp: setup-build.stamp $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt $(expand_content_files)
+ $(GTK_DOC_V_XML)_source_dir='' ; \
for i in $(DOC_SOURCE_DIR) ; do \
_source_dir="$${_source_dir} --source-dir=$$i" ; \
done ; \
@@ -241,7 +218,6 @@ distclean-local:
$(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt
@if test "$(abs_srcdir)" != "$(abs_builddir)" ; then \
rm -f $(SETUP_FILES) $(expand_content_files) $(DOC_MODULE).types; \
- rm -rf tmpl; \
fi
maintainer-clean-local:
@@ -289,9 +265,7 @@ dist-check-gtkdoc:
endif
dist-hook: dist-check-gtkdoc dist-hook-local
- @mkdir $(distdir)/tmpl
@mkdir $(distdir)/html
- @-cp ./tmpl/*.sgml $(distdir)/tmpl
@cp ./html/* $(distdir)/html
@-cp ./$(DOC_MODULE).pdf $(distdir)/
@-cp ./$(DOC_MODULE).types $(distdir)/
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/harfbuzz.doap b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/harfbuzz.doap
index d2896ebefa8..d2896ebefa8 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/harfbuzz.doap
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/harfbuzz.doap
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/Makefile.am b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/Makefile.am
index 684e415f8bd..81802252fd7 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/Makefile.am
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/Makefile.am
@@ -83,6 +83,7 @@ HBSOURCES += \
hb-ot-layout-gpos-table.hh \
hb-ot-layout-gsubgpos-private.hh \
hb-ot-layout-gsub-table.hh \
+ hb-ot-layout-jstf-table.hh \
hb-ot-layout-private.hh \
hb-ot-map.cc \
hb-ot-map-private.hh \
@@ -154,22 +155,6 @@ HBSOURCES += hb-coretext.cc
HBHEADERS += hb-coretext.h
endif
-if HAVE_HB_OLD
-SUBDIRS += hb-old
-HBCFLAGS += -I$(srcdir)/hb-old
-HBLIBS += hb-old/libhb-old.la
-HBSOURCES += hb-old.cc
-endif
-DIST_SUBDIRS += hb-old
-
-if HAVE_ICU_LE
-SUBDIRS += hb-icu-le
-HBCFLAGS += -I$(srcdir)/hb-icu-le
-HBLIBS += hb-icu-le/libhb-icu-le.la
-HBSOURCES += hb-icu-le.cc
-endif
-DIST_SUBDIRS += hb-icu-le
-
if HAVE_UCDN
SUBDIRS += hb-ucdn
HBCFLAGS += -I$(srcdir)/hb-ucdn
@@ -186,9 +171,6 @@ export_symbols = -export-symbols harfbuzz.def
harfbuzz_def_dependency = harfbuzz.def
libharfbuzz_la_LINK = $(CXXLINK) $(libharfbuzz_la_LDFLAGS)
else
-if HAVE_ICU_LE
-libharfbuzz_la_LINK = $(CXXLINK) $(libharfbuzz_la_LDFLAGS)
-else
# Use a C linker for GCC, not C++; Don't link to libstdc++
if HAVE_GCC
libharfbuzz_la_LINK = $(LINK) $(libharfbuzz_la_LDFLAGS)
@@ -196,10 +178,8 @@ else
libharfbuzz_la_LINK = $(CXXLINK) $(libharfbuzz_la_LDFLAGS)
endif
endif
-endif
libharfbuzz_la_SOURCES = $(HBSOURCES) $(HBHEADERS) $(HBNODISTHEADERS)
-nodist_libharfbuzz_la_SOURCES = $(nodist_HBSOURCES)
libharfbuzz_la_CPPFLAGS = $(HBCFLAGS)
libharfbuzz_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(HB_LIBTOOL_VERSION_INFO) $(export_symbols) -no-undefined
libharfbuzz_la_LIBADD = $(HBLIBS)
@@ -218,8 +198,8 @@ libharfbuzz_icu_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(HB_LIBTOOL_VERSION_IN
libharfbuzz_icu_la_LIBADD = $(ICU_LIBS) libharfbuzz.la
pkginclude_HEADERS += hb-icu.h
pkgconfig_DATA += harfbuzz-icu.pc
-EXTRA_DIST += harfbuzz-icu.pc.in
endif
+EXTRA_DIST += harfbuzz-icu.pc.in
if HAVE_GOBJECT
lib_LTLIBRARIES += libharfbuzz-gobject.la
@@ -231,16 +211,11 @@ libharfbuzz_gobject_la_LIBADD = $(GOBJECT_LIBS) libharfbuzz.la
pkginclude_HEADERS += hb-gobject.h hb-gobject-structs.h
nodist_pkginclude_HEADERS += hb-gobject-enums.h
pkgconfig_DATA += harfbuzz-gobject.pc
-EXTRA_DIST += harfbuzz-gobject.pc.in
BUILT_SOURCES += \
hb-gobject-enums.cc \
hb-gobject-enums.h \
$(NULL)
-EXTRA_DIST += \
- hb-gobject-enums.cc.tmpl \
- hb-gobject-enums.h.tmpl \
- $(NULL)
DISTCLEANFILES += \
hb-gobject-enums.cc \
hb-gobject-enums.h \
@@ -252,6 +227,11 @@ hb-gobject-enums.%: hb-gobject-enums.%.tmpl $(HBHEADERS)
sed 's/_t_get_type/_get_type/g; s/_T (/ (/g' > "$@.tmp" && \
mv "$@.tmp" "$@" || ( $(RM) "@.tmp" && false )
endif
+EXTRA_DIST += \
+ harfbuzz-gobject.pc.in \
+ hb-gobject-enums.cc.tmpl \
+ hb-gobject-enums.h.tmpl \
+ $(NULL)
%.pc: %.pc.in $(top_builddir)/config.status
@@ -283,7 +263,6 @@ GENERATORS = \
gen-arabic-table.py \
gen-indic-table.py \
$(NULL)
-
EXTRA_DIST += $(GENERATORS)
unicode-tables: arabic-table indic-table
@@ -350,18 +329,13 @@ test_buffer_serialize_LDADD = libharfbuzz.la $(HBLIBS)
dist_check_SCRIPTS = \
check-c-linkage-decls.sh \
+ check-defs.sh \
check-header-guards.sh \
check-includes.sh \
- check-symbols.sh \
- $(NULL)
-
-if HAVE_ICU_LE
-else
-dist_check_SCRIPTS += \
check-libstdc++.sh \
check-static-inits.sh \
+ check-symbols.sh \
$(NULL)
-endif
TESTS = $(dist_check_SCRIPTS)
TESTS_ENVIRONMENT = \
@@ -374,13 +348,13 @@ TESTS_ENVIRONMENT = \
if HAVE_INTROSPECTION
-include $(INTROSPECTION_MAKEFILE)
-INTROSPECTION_GIRS = harfbuzz-$(HB_VERSION_MAJOR).0.gir # What does the 0 mean anyway?!
+INTROSPECTION_GIRS = HarfBuzz-$(HB_VERSION_MAJOR).0.gir # What does the 0 mean anyway?!
INTROSPECTION_SCANNER_ARGS = -I$(srcdir) -n hb --identifier-prefix=hb_ --warn-all
INTROSPECTION_COMPILER_ARGS = --includedir=$(srcdir)
-harfbuzz-0.0.gir: libharfbuzz.la libharfbuzz-gobject.la
-harfbuzz_0_0_gir_INCLUDES = GObject-2.0
-harfbuzz_0_0_gir_CFLAGS = \
+HarfBuzz-0.0.gir: libharfbuzz.la libharfbuzz-gobject.la
+HarfBuzz_0_0_gir_INCLUDES = GObject-2.0
+HarfBuzz_0_0_gir_CFLAGS = \
$(INCLUDES) \
$(HBCFLAGS) \
-DHB_H \
@@ -390,14 +364,17 @@ harfbuzz_0_0_gir_CFLAGS = \
-DHB_GOBJECT_H \
-DHB_GOBJECT_H_IN \
$(NULL)
-harfbuzz_0_0_gir_LIBS = \
+HarfBuzz_0_0_gir_LIBS = \
libharfbuzz.la \
libharfbuzz-gobject.la \
$(NULL)
-harfbuzz_0_0_gir_FILES = \
+HarfBuzz_0_0_gir_FILES = \
$(HBHEADERS) \
$(HBNODISTHEADERS) \
+ $(HBSOURCES) \
+ hb-gobject-enums.cc \
hb-gobject-enums.h \
+ hb-gobject-structs.cc \
hb-gobject-structs.h \
$(NULL)
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/check-c-linkage-decls.sh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/check-c-linkage-decls.sh
index b10310f5384..b10310f5384 100755
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/check-c-linkage-decls.sh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/check-c-linkage-decls.sh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/check-symbols.sh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/check-defs.sh
index 73bfc9e9bfc..d7a8ec281bf 100755
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/check-symbols.sh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/check-defs.sh
@@ -10,7 +10,7 @@ stat=0
if which nm 2>/dev/null >/dev/null; then
:
else
- echo "check-symbols.sh: 'nm' not found; skipping test"
+ echo "check-defs.sh: 'nm' not found; skipping test"
exit 77
fi
@@ -33,17 +33,11 @@ for def in $defs; do
tail -n1 "$def"
} | diff "$def" - >&2 || stat=1
- echo "Checking that we are not exposing internal symbols"
- if echo "$EXPORTED_SYMBOLS" | grep -v 'hb_'; then
- echo "Ouch, internal symbols exposed"
- stat=1
- fi
-
tested=true
fi
done
if ! $tested; then
- echo "check-exported-symbols.sh: libharfbuzz shared library not found; skipping test"
+ echo "check-defs.sh: libharfbuzz shared library not found; skipping test"
exit 77
fi
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/check-header-guards.sh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/check-header-guards.sh
index 9a3302c7f87..9a3302c7f87 100755
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/check-header-guards.sh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/check-header-guards.sh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/check-includes.sh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/check-includes.sh
index 5643c6973bc..5643c6973bc 100755
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/check-includes.sh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/check-includes.sh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/check-libstdc++.sh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/check-libstdc++.sh
index e7e0e295e1a..e7e0e295e1a 100755
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/check-libstdc++.sh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/check-libstdc++.sh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/check-static-inits.sh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/check-static-inits.sh
index bb0a7ff630d..bb0a7ff630d 100755
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/check-static-inits.sh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/check-static-inits.sh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/check-symbols.sh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/check-symbols.sh
new file mode 100755
index 00000000000..67bdf71e1b1
--- /dev/null
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/check-symbols.sh
@@ -0,0 +1,37 @@
+#!/bin/sh
+
+LC_ALL=C
+export LC_ALL
+
+test -z "$srcdir" && srcdir=.
+stat=0
+
+
+if which nm 2>/dev/null >/dev/null; then
+ :
+else
+ echo "check-symbols.sh: 'nm' not found; skipping test"
+ exit 77
+fi
+
+echo "Checking that we are not exposing internal symbols"
+tested=false
+for so in `ls .libs/lib*.so .libs/lib*.dylib 2>/dev/null` ; do
+
+ EXPORTED_SYMBOLS="`nm "$so" | grep ' [BCDGINRSTVW] ' | grep -v ' _fini\>\| _init\>\| _fdata\>\| _ftext\>\| __bss_start\>\| __bss_start__\>\| __bss_end__\>\| _edata\>\| _end\>\| _bss_end__\>\| __end__\>' | cut -d' ' -f3`"
+ prefix=`basename "$so" | sed 's/libharfbuzz/hb/; s/-/_/g; s/[.].*//'`
+
+ echo "Processing $so"
+ if echo "$EXPORTED_SYMBOLS" | grep -v "^${prefix}_"; then
+ echo "Ouch, internal symbols exposed"
+ stat=1
+ fi
+
+ tested=true
+done
+if ! $tested; then
+ echo "check-symbols.sh: no shared library found; skipping test"
+ exit 77
+fi
+
+exit $stat
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/gen-arabic-table.py b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/gen-arabic-table.py
index da5a4fcbf5c..da5a4fcbf5c 100755
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/gen-arabic-table.py
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/gen-arabic-table.py
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/gen-indic-table.py b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/gen-indic-table.py
index 9ed3fd6d34d..9ed3fd6d34d 100755
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/gen-indic-table.py
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/gen-indic-table.py
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/harfbuzz-gobject.pc.in b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/harfbuzz-gobject.pc.in
index 70083601901..70083601901 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/harfbuzz-gobject.pc.in
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/harfbuzz-gobject.pc.in
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/harfbuzz-icu.pc.in b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/harfbuzz-icu.pc.in
index 949869a3563..949869a3563 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/harfbuzz-icu.pc.in
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/harfbuzz-icu.pc.in
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/harfbuzz.pc.in b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/harfbuzz.pc.in
index 7f27bbbdef0..7f27bbbdef0 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/harfbuzz.pc.in
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/harfbuzz.pc.in
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-atomic-private.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-atomic-private.hh
index 9cc3bc5587c..9cc3bc5587c 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-atomic-private.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-atomic-private.hh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-blob.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-blob.cc
index dfd134b7762..7a659b26b97 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-blob.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-blob.cc
@@ -76,6 +76,22 @@ _hb_blob_destroy_user_data (hb_blob_t *blob)
}
}
+/**
+ * hb_blob_create: (Xconstructor)
+ * @data: (array length=length) (closure user_data) (destroy destroy) (scope notified) (transfer none): Pointer to blob data.
+ * @length: Length of @data in bytes.
+ * @mode: Memory mode for @data.
+ * @user_data: Data parameter to pass to @destroy.
+ * @destroy: Callback to call when @data is not needed anymore.
+ *
+ * Creates a new "blob" object wrapping @data. The @mode parameter is used
+ * to negotiate ownership and lifecycle of @data.
+ *
+ * Return value: New blob, or the empty blob if something failed or if @length is
+ * zero. Destroy with hb_blob_destroy().
+ *
+ * Since: 1.0
+ **/
hb_blob_t *
hb_blob_create (const char *data,
unsigned int length,
@@ -109,6 +125,26 @@ hb_blob_create (const char *data,
return blob;
}
+/**
+ * hb_blob_create_sub_blob:
+ * @parent: Parent blob.
+ * @offset: Start offset of sub-blob within @parent, in bytes.
+ * @length: Length of sub-blob.
+ *
+ * Returns a blob that represents a range of bytes in @parent. The new
+ * blob is always created with %HB_MEMORY_MODE_READONLY, meaning that it
+ * will never modify data in the parent blob. The parent data is not
+ * expected to be modified, and will result in undefined behavior if it
+ * is.
+ *
+ * Makes @parent immutable.
+ *
+ * Return value: New blob, or the empty blob if something failed or if
+ * @length is zero or @offset is beyond the end of @parent's data. Destroy
+ * with hb_blob_destroy().
+ *
+ * Since: 1.0
+ **/
hb_blob_t *
hb_blob_create_sub_blob (hb_blob_t *parent,
unsigned int offset,
@@ -130,6 +166,17 @@ hb_blob_create_sub_blob (hb_blob_t *parent,
return blob;
}
+/**
+ * hb_blob_get_empty:
+ *
+ * Returns the singleton empty blob.
+ *
+ * See TODO:link object types for more information.
+ *
+ * Return value: (transfer full): the empty blob.
+ *
+ * Since: 1.0
+ **/
hb_blob_t *
hb_blob_get_empty (void)
{
@@ -149,12 +196,36 @@ hb_blob_get_empty (void)
return const_cast<hb_blob_t *> (&_hb_blob_nil);
}
+/**
+ * hb_blob_reference: (skip)
+ * @blob: a blob.
+ *
+ * Increases the reference count on @blob.
+ *
+ * See TODO:link object types for more information.
+ *
+ * Return value: @blob.
+ *
+ * Since: 1.0
+ **/
hb_blob_t *
hb_blob_reference (hb_blob_t *blob)
{
return hb_object_reference (blob);
}
+/**
+ * hb_blob_destroy: (skip)
+ * @blob: a blob.
+ *
+ * Descreases the reference count on @blob, and if it reaches zero, destroys
+ * @blob, freeing all memory, possibly calling the destroy-callback the blob
+ * was created for if it has not been called already.
+ *
+ * See TODO:link object types for more information.
+ *
+ * Since: 1.0
+ **/
void
hb_blob_destroy (hb_blob_t *blob)
{
@@ -165,6 +236,18 @@ hb_blob_destroy (hb_blob_t *blob)
free (blob);
}
+/**
+ * hb_blob_set_user_data: (skip)
+ * @blob: a blob.
+ * @key: key for data to set.
+ * @data: data to set.
+ * @destroy: callback to call when @data is not needed anymore.
+ * @replace: whether to replace an existing data with the same key.
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_blob_set_user_data (hb_blob_t *blob,
hb_user_data_key_t *key,
@@ -175,6 +258,17 @@ hb_blob_set_user_data (hb_blob_t *blob,
return hb_object_set_user_data (blob, key, data, destroy, replace);
}
+/**
+ * hb_blob_get_user_data: (skip)
+ * @blob: a blob.
+ * @key: key for data to get.
+ *
+ *
+ *
+ * Return value: (transfer none):
+ *
+ * Since: 1.0
+ **/
void *
hb_blob_get_user_data (hb_blob_t *blob,
hb_user_data_key_t *key)
@@ -183,6 +277,14 @@ hb_blob_get_user_data (hb_blob_t *blob,
}
+/**
+ * hb_blob_make_immutable:
+ * @blob: a blob.
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_blob_make_immutable (hb_blob_t *blob)
{
@@ -192,6 +294,16 @@ hb_blob_make_immutable (hb_blob_t *blob)
blob->immutable = true;
}
+/**
+ * hb_blob_is_immutable:
+ * @blob: a blob.
+ *
+ *
+ *
+ * Return value: TODO
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_blob_is_immutable (hb_blob_t *blob)
{
@@ -199,12 +311,33 @@ hb_blob_is_immutable (hb_blob_t *blob)
}
+/**
+ * hb_blob_get_length:
+ * @blob: a blob.
+ *
+ *
+ *
+ * Return value: the length of blob data in bytes.
+ *
+ * Since: 1.0
+ **/
unsigned int
hb_blob_get_length (hb_blob_t *blob)
{
return blob->length;
}
+/**
+ * hb_blob_get_data:
+ * @blob: a blob.
+ * @length: (out):
+ *
+ *
+ *
+ * Returns: (transfer none) (array length=length):
+ *
+ * Since: 1.0
+ **/
const char *
hb_blob_get_data (hb_blob_t *blob, unsigned int *length)
{
@@ -214,6 +347,22 @@ hb_blob_get_data (hb_blob_t *blob, unsigned int *length)
return blob->data;
}
+/**
+ * hb_blob_get_data_writable:
+ * @blob: a blob.
+ * @length: (out): output length of the writable data.
+ *
+ * Tries to make blob data writable (possibly copying it) and
+ * return pointer to data.
+ *
+ * Fails if blob has been made immutable, or if memory allocation
+ * fails.
+ *
+ * Returns: (transfer none) (array length=length): Writable blob data,
+ * or %NULL if failed.
+ *
+ * Since: 1.0
+ **/
char *
hb_blob_get_data_writable (hb_blob_t *blob, unsigned int *length)
{
@@ -324,5 +473,3 @@ _try_writable (hb_blob_t *blob)
return true;
}
-
-
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-blob.h b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-blob.h
index d3d0f41b11c..d3d0f41b11c 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-blob.h
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-blob.h
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-buffer-deserialize-json.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-buffer-deserialize-json.hh
index dead700db82..dead700db82 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-buffer-deserialize-json.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-buffer-deserialize-json.hh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-buffer-deserialize-json.rl b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-buffer-deserialize-json.rl
index 7351b2ab47c..7351b2ab47c 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-buffer-deserialize-json.rl
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-buffer-deserialize-json.rl
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-buffer-deserialize-text.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-buffer-deserialize-text.hh
index a38efe3a415..a38efe3a415 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-buffer-deserialize-text.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-buffer-deserialize-text.hh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-buffer-deserialize-text.rl b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-buffer-deserialize-text.rl
index 8856580fbe3..8856580fbe3 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-buffer-deserialize-text.rl
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-buffer-deserialize-text.rl
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-buffer-private.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-buffer-private.hh
index a8cf7702446..a8cf7702446 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-buffer-private.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-buffer-private.hh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-buffer-serialize.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-buffer-serialize.cc
index eac69000dd0..b32092cf0b3 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-buffer-serialize.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-buffer-serialize.cc
@@ -33,12 +33,32 @@ static const char *serialize_formats[] = {
NULL
};
+/**
+ * hb_buffer_serialize_list_formats:
+ *
+ *
+ *
+ * Return value: (transfer none):
+ *
+ * Since: 1.0
+ **/
const char **
hb_buffer_serialize_list_formats (void)
{
return serialize_formats;
}
+/**
+ * hb_buffer_serialize_format_from_string:
+ * @str:
+ * @len:
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_buffer_serialize_format_t
hb_buffer_serialize_format_from_string (const char *str, int len)
{
@@ -46,6 +66,16 @@ hb_buffer_serialize_format_from_string (const char *str, int len)
return (hb_buffer_serialize_format_t) (hb_tag_from_string (str, len) & ~0x20202020);
}
+/**
+ * hb_buffer_serialize_format_to_string:
+ * @format:
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
const char *
hb_buffer_serialize_format_to_string (hb_buffer_serialize_format_t format)
{
@@ -194,6 +224,24 @@ _hb_buffer_serialize_glyphs_text (hb_buffer_t *buffer,
}
/* Returns number of items, starting at start, that were serialized. */
+/**
+ * hb_buffer_serialize_glyphs:
+ * @buffer: a buffer.
+ * @start:
+ * @end:
+ * @buf: (array length=buf_size):
+ * @buf_size:
+ * @buf_consumed: (out):
+ * @font:
+ * @format:
+ * @flags:
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
unsigned int
hb_buffer_serialize_glyphs (hb_buffer_t *buffer,
unsigned int start,
@@ -286,6 +334,21 @@ parse_int (const char *pp, const char *end, int32_t *pv)
#include "hb-buffer-deserialize-json.hh"
#include "hb-buffer-deserialize-text.hh"
+/**
+ * hb_buffer_deserialize_glyphs:
+ * @buffer: a buffer.
+ * @buf: (array length=buf_len):
+ * @buf_len:
+ * @end_ptr: (out):
+ * @font:
+ * @format:
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_buffer_deserialize_glyphs (hb_buffer_t *buffer,
const char *buf,
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-buffer.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-buffer.cc
index 340bd5351b3..54626db2830 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-buffer.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-buffer.cc
@@ -603,6 +603,15 @@ void hb_buffer_t::deallocate_var_all (void)
/* Public API */
+/**
+ * hb_buffer_create: (Xconstructor)
+ *
+ *
+ *
+ * Return value: (transfer full)
+ *
+ * Since: 1.0
+ **/
hb_buffer_t *
hb_buffer_create (void)
{
@@ -616,6 +625,15 @@ hb_buffer_create (void)
return buffer;
}
+/**
+ * hb_buffer_get_empty:
+ *
+ *
+ *
+ * Return value: (transfer full):
+ *
+ * Since: 1.0
+ **/
hb_buffer_t *
hb_buffer_get_empty (void)
{
@@ -637,12 +655,30 @@ hb_buffer_get_empty (void)
return const_cast<hb_buffer_t *> (&_hb_buffer_nil);
}
+/**
+ * hb_buffer_reference: (skip)
+ * @buffer: a buffer.
+ *
+ *
+ *
+ * Return value: (transfer full):
+ *
+ * Since: 1.0
+ **/
hb_buffer_t *
hb_buffer_reference (hb_buffer_t *buffer)
{
return hb_object_reference (buffer);
}
+/**
+ * hb_buffer_destroy: (skip)
+ * @buffer: a buffer.
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_buffer_destroy (hb_buffer_t *buffer)
{
@@ -656,6 +692,20 @@ hb_buffer_destroy (hb_buffer_t *buffer)
free (buffer);
}
+/**
+ * hb_buffer_set_user_data: (skip)
+ * @buffer: a buffer.
+ * @key:
+ * @data:
+ * @destroy:
+ * @replace:
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_buffer_set_user_data (hb_buffer_t *buffer,
hb_user_data_key_t *key,
@@ -666,6 +716,17 @@ hb_buffer_set_user_data (hb_buffer_t *buffer,
return hb_object_set_user_data (buffer, key, data, destroy, replace);
}
+/**
+ * hb_buffer_get_user_data: (skip)
+ * @buffer: a buffer.
+ * @key:
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
void *
hb_buffer_get_user_data (hb_buffer_t *buffer,
hb_user_data_key_t *key)
@@ -674,6 +735,15 @@ hb_buffer_get_user_data (hb_buffer_t *buffer,
}
+/**
+ * hb_buffer_set_content_type:
+ * @buffer: a buffer.
+ * @content_type:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_buffer_set_content_type (hb_buffer_t *buffer,
hb_buffer_content_type_t content_type)
@@ -681,6 +751,16 @@ hb_buffer_set_content_type (hb_buffer_t *buffer,
buffer->content_type = content_type;
}
+/**
+ * hb_buffer_get_content_type:
+ * @buffer: a buffer.
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_buffer_content_type_t
hb_buffer_get_content_type (hb_buffer_t *buffer)
{
@@ -688,28 +768,56 @@ hb_buffer_get_content_type (hb_buffer_t *buffer)
}
+/**
+ * hb_buffer_set_unicode_funcs:
+ * @buffer: a buffer.
+ * @unicode_funcs:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_buffer_set_unicode_funcs (hb_buffer_t *buffer,
- hb_unicode_funcs_t *unicode)
+ hb_unicode_funcs_t *unicode_funcs)
{
if (unlikely (hb_object_is_inert (buffer)))
return;
- if (!unicode)
- unicode = hb_unicode_funcs_get_default ();
+ if (!unicode_funcs)
+ unicode_funcs = hb_unicode_funcs_get_default ();
- hb_unicode_funcs_reference (unicode);
+ hb_unicode_funcs_reference (unicode_funcs);
hb_unicode_funcs_destroy (buffer->unicode);
- buffer->unicode = unicode;
+ buffer->unicode = unicode_funcs;
}
+/**
+ * hb_buffer_get_unicode_funcs:
+ * @buffer: a buffer.
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_unicode_funcs_t *
hb_buffer_get_unicode_funcs (hb_buffer_t *buffer)
{
return buffer->unicode;
}
+/**
+ * hb_buffer_set_direction:
+ * @buffer: a buffer.
+ * @direction:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_buffer_set_direction (hb_buffer_t *buffer,
hb_direction_t direction)
@@ -721,12 +829,31 @@ hb_buffer_set_direction (hb_buffer_t *buffer,
buffer->props.direction = direction;
}
+/**
+ * hb_buffer_get_direction:
+ * @buffer: a buffer.
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_direction_t
hb_buffer_get_direction (hb_buffer_t *buffer)
{
return buffer->props.direction;
}
+/**
+ * hb_buffer_set_script:
+ * @buffer: a buffer.
+ * @script:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_buffer_set_script (hb_buffer_t *buffer,
hb_script_t script)
@@ -737,12 +864,31 @@ hb_buffer_set_script (hb_buffer_t *buffer,
buffer->props.script = script;
}
+/**
+ * hb_buffer_get_script:
+ * @buffer: a buffer.
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_script_t
hb_buffer_get_script (hb_buffer_t *buffer)
{
return buffer->props.script;
}
+/**
+ * hb_buffer_set_language:
+ * @buffer: a buffer.
+ * @language:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_buffer_set_language (hb_buffer_t *buffer,
hb_language_t language)
@@ -753,12 +899,31 @@ hb_buffer_set_language (hb_buffer_t *buffer,
buffer->props.language = language;
}
+/**
+ * hb_buffer_get_language:
+ * @buffer: a buffer.
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_language_t
hb_buffer_get_language (hb_buffer_t *buffer)
{
return buffer->props.language;
}
+/**
+ * hb_buffer_set_segment_properties:
+ * @buffer: a buffer.
+ * @props:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_buffer_set_segment_properties (hb_buffer_t *buffer,
const hb_segment_properties_t *props)
@@ -769,6 +934,15 @@ hb_buffer_set_segment_properties (hb_buffer_t *buffer,
buffer->props = *props;
}
+/**
+ * hb_buffer_get_segment_properties:
+ * @buffer: a buffer.
+ * @props:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_buffer_get_segment_properties (hb_buffer_t *buffer,
hb_segment_properties_t *props)
@@ -777,6 +951,15 @@ hb_buffer_get_segment_properties (hb_buffer_t *buffer,
}
+/**
+ * hb_buffer_set_flags:
+ * @buffer: a buffer.
+ * @flags:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_buffer_set_flags (hb_buffer_t *buffer,
hb_buffer_flags_t flags)
@@ -787,6 +970,16 @@ hb_buffer_set_flags (hb_buffer_t *buffer,
buffer->flags = flags;
}
+/**
+ * hb_buffer_get_flags:
+ * @buffer: a buffer.
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_buffer_flags_t
hb_buffer_get_flags (hb_buffer_t *buffer)
{
@@ -794,30 +987,77 @@ hb_buffer_get_flags (hb_buffer_t *buffer)
}
+/**
+ * hb_buffer_reset:
+ * @buffer: a buffer.
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_buffer_reset (hb_buffer_t *buffer)
{
buffer->reset ();
}
+/**
+ * hb_buffer_clear_contents:
+ * @buffer: a buffer.
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_buffer_clear_contents (hb_buffer_t *buffer)
{
buffer->clear ();
}
+/**
+ * hb_buffer_pre_allocate:
+ * @buffer: a buffer.
+ * @size:
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_buffer_pre_allocate (hb_buffer_t *buffer, unsigned int size)
{
return buffer->ensure (size);
}
+/**
+ * hb_buffer_allocation_successful:
+ * @buffer: a buffer.
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_buffer_allocation_successful (hb_buffer_t *buffer)
{
return !buffer->in_error;
}
+/**
+ * hb_buffer_add:
+ * @buffer: a buffer.
+ * @codepoint:
+ * @cluster:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_buffer_add (hb_buffer_t *buffer,
hb_codepoint_t codepoint,
@@ -827,6 +1067,17 @@ hb_buffer_add (hb_buffer_t *buffer,
buffer->clear_context (1);
}
+/**
+ * hb_buffer_set_length:
+ * @buffer: a buffer.
+ * @length:
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_buffer_set_length (hb_buffer_t *buffer,
unsigned int length)
@@ -853,13 +1104,34 @@ hb_buffer_set_length (hb_buffer_t *buffer,
return true;
}
+/**
+ * hb_buffer_get_length:
+ * @buffer: a buffer.
+ *
+ * Returns the number of items in the buffer.
+ *
+ * Return value: buffer length.
+ *
+ * Since: 1.0
+ **/
unsigned int
hb_buffer_get_length (hb_buffer_t *buffer)
{
return buffer->len;
}
-/* Return value valid as long as buffer not modified */
+/**
+ * hb_buffer_get_glyph_infos:
+ * @buffer: a buffer.
+ * @length: (out): output array length.
+ *
+ * Returns buffer glyph information array. Returned pointer
+ * is valid as long as buffer contents are not modified.
+ *
+ * Return value: (transfer none) (array length=length): buffer glyph information array.
+ *
+ * Since: 1.0
+ **/
hb_glyph_info_t *
hb_buffer_get_glyph_infos (hb_buffer_t *buffer,
unsigned int *length)
@@ -870,7 +1142,18 @@ hb_buffer_get_glyph_infos (hb_buffer_t *buffer,
return (hb_glyph_info_t *) buffer->info;
}
-/* Return value valid as long as buffer not modified */
+/**
+ * hb_buffer_get_glyph_positions:
+ * @buffer: a buffer.
+ * @length: (out): output length.
+ *
+ * Returns buffer glyph position array. Returned pointer
+ * is valid as long as buffer contents are not modified.
+ *
+ * Return value: (transfer none) (array length=length): buffer glyph position array.
+ *
+ * Since: 1.0
+ **/
hb_glyph_position_t *
hb_buffer_get_glyph_positions (hb_buffer_t *buffer,
unsigned int *length)
@@ -884,18 +1167,60 @@ hb_buffer_get_glyph_positions (hb_buffer_t *buffer,
return (hb_glyph_position_t *) buffer->pos;
}
+/**
+ * hb_buffer_reverse:
+ * @buffer: a buffer.
+ *
+ * Reverses buffer contents.
+ *
+ * Since: 1.0
+ **/
void
hb_buffer_reverse (hb_buffer_t *buffer)
{
buffer->reverse ();
}
+/**
+ * hb_buffer_reverse_clusters:
+ * @buffer: a buffer.
+ *
+ * Reverses buffer clusters. That is, the buffer contents are
+ * reversed, then each cluster (consecutive items having the
+ * same cluster number) are reversed again.
+ *
+ * Since: 1.0
+ **/
void
hb_buffer_reverse_clusters (hb_buffer_t *buffer)
{
buffer->reverse_clusters ();
}
+/**
+ * hb_buffer_guess_segment_properties:
+ * @buffer: a buffer.
+ *
+ * Sets unset buffer segment properties based on buffer Unicode
+ * contents. If buffer is not empty, it must have content type
+ * %HB_BUFFER_CONTENT_TYPE_UNICODE.
+ *
+ * If buffer script is not set (ie. is %HB_SCRIPT_INVALID), it
+ * will be set to the Unicode script of the first character in
+ * the buffer that has a script other than %HB_SCRIPT_COMMON,
+ * %HB_SCRIPT_INHERITED, and %HB_SCRIPT_UNKNOWN.
+ *
+ * Next, if buffer direction is not set (ie. is %HB_DIRECTION_INVALID),
+ * it will be set to the natural horizontal direction of the
+ * buffer script as returned by hb_script_get_horizontal_direction().
+ *
+ * Finally, if buffer language is not set (ie. is %HB_LANGUAGE_INVALID),
+ * it will be set to the process's default language as returned by
+ * hb_language_get_default(). This may change in the future by
+ * taking buffer script into consideration when choosing a language.
+ *
+ * Since: 1.0
+ **/
void
hb_buffer_guess_segment_properties (hb_buffer_t *buffer)
{
@@ -968,6 +1293,18 @@ hb_buffer_add_utf (hb_buffer_t *buffer,
buffer->content_type = HB_BUFFER_CONTENT_TYPE_UNICODE;
}
+/**
+ * hb_buffer_add_utf8:
+ * @buffer: a buffer.
+ * @text: (array length=text_length):
+ * @text_length:
+ * @item_offset:
+ * @item_length:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_buffer_add_utf8 (hb_buffer_t *buffer,
const char *text,
@@ -978,16 +1315,40 @@ hb_buffer_add_utf8 (hb_buffer_t *buffer,
hb_buffer_add_utf (buffer, (const uint8_t *) text, text_length, item_offset, item_length);
}
+/**
+ * hb_buffer_add_utf16:
+ * @buffer: a buffer.
+ * @text: (array length=text_length):
+ * @text_length:
+ * @item_offset:
+ * @item_length:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_buffer_add_utf16 (hb_buffer_t *buffer,
const uint16_t *text,
int text_length,
unsigned int item_offset,
- int item_length)
+ int item_length)
{
hb_buffer_add_utf (buffer, text, text_length, item_offset, item_length);
}
+/**
+ * hb_buffer_add_utf32:
+ * @buffer: a buffer.
+ * @text: (array length=text_length):
+ * @text_length:
+ * @item_offset:
+ * @item_length:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_buffer_add_utf32 (hb_buffer_t *buffer,
const uint32_t *text,
@@ -1054,6 +1415,14 @@ normalize_glyphs_cluster (hb_buffer_t *buffer,
}
}
+/**
+ * hb_buffer_normalize_glyphs:
+ * @buffer: a buffer.
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_buffer_normalize_glyphs (hb_buffer_t *buffer)
{
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-buffer.h b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-buffer.h
index 87c4ce58e83..87c4ce58e83 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-buffer.h
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-buffer.h
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-cache-private.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-cache-private.hh
index 19b70b7e395..19b70b7e395 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-cache-private.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-cache-private.hh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-common.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-common.cc
index 7c6d26290dc..88f7ed13bda 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-common.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-common.cc
@@ -57,25 +57,45 @@ _hb_options_init (void)
/* hb_tag_t */
+/**
+ * hb_tag_from_string:
+ * @str: (array length=len):
+ * @len:
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_tag_t
-hb_tag_from_string (const char *s, int len)
+hb_tag_from_string (const char *str, int len)
{
char tag[4];
unsigned int i;
- if (!s || !len || !*s)
+ if (!str || !len || !*str)
return HB_TAG_NONE;
if (len < 0 || len > 4)
len = 4;
- for (i = 0; i < (unsigned) len && s[i]; i++)
- tag[i] = s[i];
+ for (i = 0; i < (unsigned) len && str[i]; i++)
+ tag[i] = str[i];
for (; i < 4; i++)
tag[i] = ' ';
return HB_TAG_CHAR4 (tag);
}
+/**
+ * hb_tag_to_string:
+ * @tag:
+ * @buf: (array fixed-size=4):
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_tag_to_string (hb_tag_t tag, char *buf)
{
@@ -95,6 +115,17 @@ const char direction_strings[][4] = {
"btt"
};
+/**
+ * hb_direction_from_string:
+ * @str: (array length=len):
+ * @len:
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_direction_t
hb_direction_from_string (const char *str, int len)
{
@@ -112,6 +143,16 @@ hb_direction_from_string (const char *str, int len)
return HB_DIRECTION_INVALID;
}
+/**
+ * hb_direction_to_string:
+ * @direction:
+ *
+ *
+ *
+ * Return value: (transfer none):
+ *
+ * Since: 1.0
+ **/
const char *
hb_direction_to_string (hb_direction_t direction)
{
@@ -187,7 +228,7 @@ struct hb_language_item_t {
return *this;
}
- void finish (void) { free (lang); }
+ void finish (void) { free ((void *) lang); }
};
@@ -237,6 +278,17 @@ retry:
}
+/**
+ * hb_language_from_string:
+ * @str: (array length=len):
+ * @len:
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_language_t
hb_language_from_string (const char *str, int len)
{
@@ -255,6 +307,16 @@ hb_language_from_string (const char *str, int len)
return likely (item) ? item->lang : HB_LANGUAGE_INVALID;
}
+/**
+ * hb_language_to_string:
+ * @language:
+ *
+ *
+ *
+ * Return value: (transfer none):
+ *
+ * Since: 1.0
+ **/
const char *
hb_language_to_string (hb_language_t language)
{
@@ -262,6 +324,15 @@ hb_language_to_string (hb_language_t language)
return language->s;
}
+/**
+ * hb_language_get_default:
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_language_t
hb_language_get_default (void)
{
@@ -279,6 +350,16 @@ hb_language_get_default (void)
/* hb_script_t */
+/**
+ * hb_script_from_iso15924_tag:
+ * @tag:
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_script_t
hb_script_from_iso15924_tag (hb_tag_t tag)
{
@@ -313,18 +394,49 @@ hb_script_from_iso15924_tag (hb_tag_t tag)
return HB_SCRIPT_UNKNOWN;
}
+/**
+ * hb_script_from_string:
+ * @s: (array length=len):
+ * @len:
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_script_t
hb_script_from_string (const char *s, int len)
{
return hb_script_from_iso15924_tag (hb_tag_from_string (s, len));
}
+/**
+ * hb_script_to_iso15924_tag:
+ * @script:
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_tag_t
hb_script_to_iso15924_tag (hb_script_t script)
{
return (hb_tag_t) script;
}
+/**
+ * hb_script_get_horizontal_direction:
+ * @script:
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_direction_t
hb_script_get_horizontal_direction (hb_script_t script)
{
@@ -409,6 +521,16 @@ hb_user_data_array_t::get (hb_user_data_key_t *key)
/* hb_version */
+/**
+ * hb_version:
+ * @major: (out): Library major version component.
+ * @minor: (out): Library minor version component.
+ * @micro: (out): Library micro version component.
+ *
+ * Returns library version as three integer components.
+ *
+ * Since: 1.0
+ **/
void
hb_version (unsigned int *major,
unsigned int *minor,
@@ -419,12 +541,33 @@ hb_version (unsigned int *major,
*micro = HB_VERSION_MICRO;
}
+/**
+ * hb_version_string:
+ *
+ * Returns library version as a string with three components.
+ *
+ * Return value: library version string.
+ *
+ * Since: 1.0
+ **/
const char *
hb_version_string (void)
{
return HB_VERSION_STRING;
}
+/**
+ * hb_version_check:
+ * @major:
+ * @minor:
+ * @micro:
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_version_check (unsigned int major,
unsigned int minor,
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-common.h b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-common.h
index 9079b2c046f..40c18872964 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-common.h
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-common.h
@@ -131,7 +131,7 @@ hb_direction_to_string (hb_direction_t direction);
/* hb_language_t */
-typedef struct hb_language_impl_t *hb_language_t;
+typedef const struct hb_language_impl_t *hb_language_t;
/* len=-1 means str is NUL-terminated */
hb_language_t
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-coretext.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-coretext.cc
index f780973565b..f780973565b 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-coretext.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-coretext.cc
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-coretext.h b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-coretext.h
index c4954fa1b2c..c4954fa1b2c 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-coretext.h
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-coretext.h
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-deprecated.h b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-deprecated.h
index 30ae4b1caf7..30ae4b1caf7 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-deprecated.h
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-deprecated.h
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-face-private.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-face-private.hh
index b33be0e5fce..b33be0e5fce 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-face-private.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-face-private.hh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-face.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-face.cc
index d8b9ed8c3f0..ebe8ec5e5d5 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-face.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-face.cc
@@ -68,6 +68,18 @@ const hb_face_t _hb_face_nil = {
};
+/**
+ * hb_face_create_for_tables:
+ * @reference_table_func: (closure user_data) (destroy destroy) (scope notified):
+ * @user_data:
+ * @destroy:
+ *
+ *
+ *
+ * Return value: (transfer full)
+ *
+ * Since: 1.0
+ **/
hb_face_t *
hb_face_create_for_tables (hb_reference_table_func_t reference_table_func,
void *user_data,
@@ -137,6 +149,17 @@ _hb_face_for_data_reference_table (hb_face_t *face HB_UNUSED, hb_tag_t tag, void
return blob;
}
+/**
+ * hb_face_create: (Xconstructor)
+ * @blob:
+ * @index:
+ *
+ *
+ *
+ * Return value: (transfer full):
+ *
+ * Since: 1.0
+ **/
hb_face_t *
hb_face_create (hb_blob_t *blob,
unsigned int index)
@@ -160,6 +183,15 @@ hb_face_create (hb_blob_t *blob,
return face;
}
+/**
+ * hb_face_get_empty:
+ *
+ *
+ *
+ * Return value: (transfer full)
+ *
+ * Since: 1.0
+ **/
hb_face_t *
hb_face_get_empty (void)
{
@@ -167,12 +199,30 @@ hb_face_get_empty (void)
}
+/**
+ * hb_face_reference: (skip)
+ * @face: a face.
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_face_t *
hb_face_reference (hb_face_t *face)
{
return hb_object_reference (face);
}
+/**
+ * hb_face_destroy: (skip)
+ * @face: a face.
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_face_destroy (hb_face_t *face)
{
@@ -196,6 +246,20 @@ hb_face_destroy (hb_face_t *face)
free (face);
}
+/**
+ * hb_face_set_user_data: (skip)
+ * @face: a face.
+ * @key:
+ * @data:
+ * @destroy:
+ * @replace:
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_face_set_user_data (hb_face_t *face,
hb_user_data_key_t *key,
@@ -206,6 +270,17 @@ hb_face_set_user_data (hb_face_t *face,
return hb_object_set_user_data (face, key, data, destroy, replace);
}
+/**
+ * hb_face_get_user_data: (skip)
+ * @face: a face.
+ * @key:
+ *
+ *
+ *
+ * Return value: (transfer none):
+ *
+ * Since: 1.0
+ **/
void *
hb_face_get_user_data (hb_face_t *face,
hb_user_data_key_t *key)
@@ -213,6 +288,14 @@ hb_face_get_user_data (hb_face_t *face,
return hb_object_get_user_data (face, key);
}
+/**
+ * hb_face_make_immutable:
+ * @face: a face.
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_face_make_immutable (hb_face_t *face)
{
@@ -222,6 +305,16 @@ hb_face_make_immutable (hb_face_t *face)
face->immutable = true;
}
+/**
+ * hb_face_is_immutable:
+ * @face: a face.
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_face_is_immutable (hb_face_t *face)
{
@@ -229,6 +322,17 @@ hb_face_is_immutable (hb_face_t *face)
}
+/**
+ * hb_face_reference_table:
+ * @face: a face.
+ * @tag:
+ *
+ *
+ *
+ * Return value: (transfer full):
+ *
+ * Since: 1.0
+ **/
hb_blob_t *
hb_face_reference_table (hb_face_t *face,
hb_tag_t tag)
@@ -236,12 +340,31 @@ hb_face_reference_table (hb_face_t *face,
return face->reference_table (tag);
}
+/**
+ * hb_face_reference_blob:
+ * @face: a face.
+ *
+ *
+ *
+ * Return value: (transfer full):
+ *
+ * Since: 1.0
+ **/
hb_blob_t *
hb_face_reference_blob (hb_face_t *face)
{
return face->reference_table (HB_TAG_NONE);
}
+/**
+ * hb_face_set_index:
+ * @face: a face.
+ * @index:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_face_set_index (hb_face_t *face,
unsigned int index)
@@ -252,12 +375,31 @@ hb_face_set_index (hb_face_t *face,
face->index = index;
}
+/**
+ * hb_face_get_index:
+ * @face: a face.
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
unsigned int
hb_face_get_index (hb_face_t *face)
{
return face->index;
}
+/**
+ * hb_face_set_upem:
+ * @face: a face.
+ * @upem:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_face_set_upem (hb_face_t *face,
unsigned int upem)
@@ -268,6 +410,16 @@ hb_face_set_upem (hb_face_t *face,
face->upem = upem;
}
+/**
+ * hb_face_get_upem:
+ * @face: a face.
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
unsigned int
hb_face_get_upem (hb_face_t *face)
{
@@ -283,6 +435,15 @@ hb_face_t::load_upem (void) const
hb_blob_destroy (head_blob);
}
+/**
+ * hb_face_set_glyph_count:
+ * @face: a face.
+ * @glyph_count:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_face_set_glyph_count (hb_face_t *face,
unsigned int glyph_count)
@@ -293,6 +454,16 @@ hb_face_set_glyph_count (hb_face_t *face,
face->num_glyphs = glyph_count;
}
+/**
+ * hb_face_get_glyph_count:
+ * @face: a face.
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
unsigned int
hb_face_get_glyph_count (hb_face_t *face)
{
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-face.h b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-face.h
index f682c468de5..f682c468de5 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-face.h
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-face.h
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-fallback-shape.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-fallback-shape.cc
index 1a1fcfbda1e..1a1fcfbda1e 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-fallback-shape.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-fallback-shape.cc
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-font-private.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-font-private.hh
index 620d05e8f92..00c0cc3f25f 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-font-private.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-font-private.hh
@@ -193,10 +193,10 @@ struct hb_font_t {
klass->user_data.glyph_h_kerning);
}
- inline hb_position_t get_glyph_v_kerning (hb_codepoint_t left_glyph, hb_codepoint_t right_glyph)
+ inline hb_position_t get_glyph_v_kerning (hb_codepoint_t top_glyph, hb_codepoint_t bottom_glyph)
{
return klass->get.glyph_v_kerning (this, user_data,
- left_glyph, right_glyph,
+ top_glyph, bottom_glyph,
klass->user_data.glyph_v_kerning);
}
@@ -397,11 +397,7 @@ struct hb_font_t {
}
private:
- inline hb_position_t em_scale (int16_t v, int scale)
- {
- unsigned int upem = face->get_upem ();
- return (v * (int64_t) scale + upem / 2) / upem;
- }
+ inline hb_position_t em_scale (int16_t v, int scale) { return v * (int64_t) scale / face->get_upem (); }
};
#define HB_SHAPER_DATA_CREATE_FUNC_EXTRA_ARGS
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-font.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-font.cc
index c2f6f6ddd55..855864377e7 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-font.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-font.cc
@@ -230,6 +230,15 @@ static const hb_font_funcs_t _hb_font_funcs_nil = {
};
+/**
+ * hb_font_funcs_create: (Xconstructor)
+ *
+ *
+ *
+ * Return value: (transfer full):
+ *
+ * Since: 1.0
+ **/
hb_font_funcs_t *
hb_font_funcs_create (void)
{
@@ -243,18 +252,45 @@ hb_font_funcs_create (void)
return ffuncs;
}
+/**
+ * hb_font_funcs_get_empty:
+ *
+ *
+ *
+ * Return value: (transfer full):
+ *
+ * Since: 1.0
+ **/
hb_font_funcs_t *
hb_font_funcs_get_empty (void)
{
return const_cast<hb_font_funcs_t *> (&_hb_font_funcs_nil);
}
+/**
+ * hb_font_funcs_reference: (skip)
+ * @ffuncs: font functions.
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_font_funcs_t *
hb_font_funcs_reference (hb_font_funcs_t *ffuncs)
{
return hb_object_reference (ffuncs);
}
+/**
+ * hb_font_funcs_destroy: (skip)
+ * @ffuncs: font functions.
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_font_funcs_destroy (hb_font_funcs_t *ffuncs)
{
@@ -268,6 +304,20 @@ hb_font_funcs_destroy (hb_font_funcs_t *ffuncs)
free (ffuncs);
}
+/**
+ * hb_font_funcs_set_user_data: (skip)
+ * @ffuncs: font functions.
+ * @key:
+ * @data:
+ * @destroy:
+ * @replace:
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_font_funcs_set_user_data (hb_font_funcs_t *ffuncs,
hb_user_data_key_t *key,
@@ -278,6 +328,17 @@ hb_font_funcs_set_user_data (hb_font_funcs_t *ffuncs,
return hb_object_set_user_data (ffuncs, key, data, destroy, replace);
}
+/**
+ * hb_font_funcs_get_user_data: (skip)
+ * @ffuncs: font functions.
+ * @key:
+ *
+ *
+ *
+ * Return value: (transfer none):
+ *
+ * Since: 1.0
+ **/
void *
hb_font_funcs_get_user_data (hb_font_funcs_t *ffuncs,
hb_user_data_key_t *key)
@@ -286,6 +347,14 @@ hb_font_funcs_get_user_data (hb_font_funcs_t *ffuncs,
}
+/**
+ * hb_font_funcs_make_immutable:
+ * @ffuncs: font functions.
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_font_funcs_make_immutable (hb_font_funcs_t *ffuncs)
{
@@ -295,6 +364,16 @@ hb_font_funcs_make_immutable (hb_font_funcs_t *ffuncs)
ffuncs->immutable = true;
}
+/**
+ * hb_font_funcs_is_immutable:
+ * @ffuncs: font functions.
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_font_funcs_is_immutable (hb_font_funcs_t *ffuncs)
{
@@ -336,6 +415,19 @@ HB_FONT_FUNCS_IMPLEMENT_CALLBACKS
/* Public getters */
+/**
+ * hb_font_get_glyph:
+ * @font: a font.
+ * @unicode:
+ * @variation_selector:
+ * @glyph: (out):
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_font_get_glyph (hb_font_t *font,
hb_codepoint_t unicode, hb_codepoint_t variation_selector,
@@ -344,6 +436,17 @@ hb_font_get_glyph (hb_font_t *font,
return font->get_glyph (unicode, variation_selector, glyph);
}
+/**
+ * hb_font_get_glyph_h_advance:
+ * @font: a font.
+ * @glyph:
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_position_t
hb_font_get_glyph_h_advance (hb_font_t *font,
hb_codepoint_t glyph)
@@ -351,6 +454,17 @@ hb_font_get_glyph_h_advance (hb_font_t *font,
return font->get_glyph_h_advance (glyph);
}
+/**
+ * hb_font_get_glyph_v_advance:
+ * @font: a font.
+ * @glyph:
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_position_t
hb_font_get_glyph_v_advance (hb_font_t *font,
hb_codepoint_t glyph)
@@ -358,6 +472,19 @@ hb_font_get_glyph_v_advance (hb_font_t *font,
return font->get_glyph_v_advance (glyph);
}
+/**
+ * hb_font_get_glyph_h_origin:
+ * @font: a font.
+ * @glyph:
+ * @x: (out):
+ * @y: (out):
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_font_get_glyph_h_origin (hb_font_t *font,
hb_codepoint_t glyph,
@@ -366,6 +493,19 @@ hb_font_get_glyph_h_origin (hb_font_t *font,
return font->get_glyph_h_origin (glyph, x, y);
}
+/**
+ * hb_font_get_glyph_v_origin:
+ * @font: a font.
+ * @glyph:
+ * @x: (out):
+ * @y: (out):
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_font_get_glyph_v_origin (hb_font_t *font,
hb_codepoint_t glyph,
@@ -374,6 +514,18 @@ hb_font_get_glyph_v_origin (hb_font_t *font,
return font->get_glyph_v_origin (glyph, x, y);
}
+/**
+ * hb_font_get_glyph_h_kerning:
+ * @font: a font.
+ * @left_glyph:
+ * @right_glyph:
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_position_t
hb_font_get_glyph_h_kerning (hb_font_t *font,
hb_codepoint_t left_glyph, hb_codepoint_t right_glyph)
@@ -381,13 +533,37 @@ hb_font_get_glyph_h_kerning (hb_font_t *font,
return font->get_glyph_h_kerning (left_glyph, right_glyph);
}
+/**
+ * hb_font_get_glyph_v_kerning:
+ * @font: a font.
+ * @top_glyph:
+ * @bottom_glyph:
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_position_t
hb_font_get_glyph_v_kerning (hb_font_t *font,
- hb_codepoint_t left_glyph, hb_codepoint_t right_glyph)
+ hb_codepoint_t top_glyph, hb_codepoint_t bottom_glyph)
{
- return font->get_glyph_v_kerning (left_glyph, right_glyph);
+ return font->get_glyph_v_kerning (top_glyph, bottom_glyph);
}
+/**
+ * hb_font_get_glyph_extents:
+ * @font: a font.
+ * @glyph:
+ * @extents: (out):
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_font_get_glyph_extents (hb_font_t *font,
hb_codepoint_t glyph,
@@ -396,6 +572,20 @@ hb_font_get_glyph_extents (hb_font_t *font,
return font->get_glyph_extents (glyph, extents);
}
+/**
+ * hb_font_get_glyph_contour_point:
+ * @font: a font.
+ * @glyph:
+ * @point_index:
+ * @x: (out):
+ * @y: (out):
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_font_get_glyph_contour_point (hb_font_t *font,
hb_codepoint_t glyph, unsigned int point_index,
@@ -404,6 +594,19 @@ hb_font_get_glyph_contour_point (hb_font_t *font,
return font->get_glyph_contour_point (glyph, point_index, x, y);
}
+/**
+ * hb_font_get_glyph_name:
+ * @font: a font.
+ * @glyph:
+ * @name: (array length=size):
+ * @size:
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_font_get_glyph_name (hb_font_t *font,
hb_codepoint_t glyph,
@@ -412,6 +615,19 @@ hb_font_get_glyph_name (hb_font_t *font,
return font->get_glyph_name (glyph, name, size);
}
+/**
+ * hb_font_get_glyph_from_name:
+ * @font: a font.
+ * @name: (array length=len):
+ * @len:
+ * @glyph: (out):
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_font_get_glyph_from_name (hb_font_t *font,
const char *name, int len, /* -1 means nul-terminated */
@@ -423,6 +639,18 @@ hb_font_get_glyph_from_name (hb_font_t *font,
/* A bit higher-level, and with fallback */
+/**
+ * hb_font_get_glyph_advance_for_direction:
+ * @font: a font.
+ * @glyph:
+ * @direction:
+ * @x: (out):
+ * @y: (out):
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_font_get_glyph_advance_for_direction (hb_font_t *font,
hb_codepoint_t glyph,
@@ -432,6 +660,18 @@ hb_font_get_glyph_advance_for_direction (hb_font_t *font,
return font->get_glyph_advance_for_direction (glyph, direction, x, y);
}
+/**
+ * hb_font_get_glyph_origin_for_direction:
+ * @font: a font.
+ * @glyph:
+ * @direction:
+ * @x: (out):
+ * @y: (out):
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_font_get_glyph_origin_for_direction (hb_font_t *font,
hb_codepoint_t glyph,
@@ -441,6 +681,18 @@ hb_font_get_glyph_origin_for_direction (hb_font_t *font,
return font->get_glyph_origin_for_direction (glyph, direction, x, y);
}
+/**
+ * hb_font_add_glyph_origin_for_direction:
+ * @font: a font.
+ * @glyph:
+ * @direction:
+ * @x: (out):
+ * @y: (out):
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_font_add_glyph_origin_for_direction (hb_font_t *font,
hb_codepoint_t glyph,
@@ -450,6 +702,18 @@ hb_font_add_glyph_origin_for_direction (hb_font_t *font,
return font->add_glyph_origin_for_direction (glyph, direction, x, y);
}
+/**
+ * hb_font_subtract_glyph_origin_for_direction:
+ * @font: a font.
+ * @glyph:
+ * @direction:
+ * @x: (out):
+ * @y: (out):
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_font_subtract_glyph_origin_for_direction (hb_font_t *font,
hb_codepoint_t glyph,
@@ -459,6 +723,19 @@ hb_font_subtract_glyph_origin_for_direction (hb_font_t *font,
return font->subtract_glyph_origin_for_direction (glyph, direction, x, y);
}
+/**
+ * hb_font_get_glyph_kerning_for_direction:
+ * @font: a font.
+ * @first_glyph:
+ * @second_glyph:
+ * @direction:
+ * @x: (out):
+ * @y: (out):
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_font_get_glyph_kerning_for_direction (hb_font_t *font,
hb_codepoint_t first_glyph, hb_codepoint_t second_glyph,
@@ -468,6 +745,19 @@ hb_font_get_glyph_kerning_for_direction (hb_font_t *font,
return font->get_glyph_kerning_for_direction (first_glyph, second_glyph, direction, x, y);
}
+/**
+ * hb_font_get_glyph_extents_for_origin:
+ * @font: a font.
+ * @glyph:
+ * @direction:
+ * @extents: (out):
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_font_get_glyph_extents_for_origin (hb_font_t *font,
hb_codepoint_t glyph,
@@ -477,6 +767,21 @@ hb_font_get_glyph_extents_for_origin (hb_font_t *font,
return font->get_glyph_extents_for_origin (glyph, direction, extents);
}
+/**
+ * hb_font_get_glyph_contour_point_for_origin:
+ * @font: a font.
+ * @glyph:
+ * @point_index:
+ * @direction:
+ * @x: (out):
+ * @y: (out):
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_font_get_glyph_contour_point_for_origin (hb_font_t *font,
hb_codepoint_t glyph, unsigned int point_index,
@@ -487,6 +792,17 @@ hb_font_get_glyph_contour_point_for_origin (hb_font_t *font,
}
/* Generates gidDDD if glyph has no name. */
+/**
+ * hb_font_glyph_to_string:
+ * @font: a font.
+ * @glyph:
+ * @s: (array length=size):
+ * @size:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_font_glyph_to_string (hb_font_t *font,
hb_codepoint_t glyph,
@@ -496,6 +812,19 @@ hb_font_glyph_to_string (hb_font_t *font,
}
/* Parses gidDDD and uniUUUU strings automatically. */
+/**
+ * hb_font_glyph_from_string:
+ * @font: a font.
+ * @s: (array length=len):
+ * @len:
+ * @glyph: (out):
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_font_glyph_from_string (hb_font_t *font,
const char *s, int len, /* -1 means nul-terminated */
@@ -509,6 +838,16 @@ hb_font_glyph_from_string (hb_font_t *font,
* hb_font_t
*/
+/**
+ * hb_font_create: (Xconstructor)
+ * @face: a face.
+ *
+ *
+ *
+ * Return value: (transfer full):
+ *
+ * Since: 1.0
+ **/
hb_font_t *
hb_font_create (hb_face_t *face)
{
@@ -528,6 +867,16 @@ hb_font_create (hb_face_t *face)
return font;
}
+/**
+ * hb_font_create_sub_font:
+ * @parent: parent font.
+ *
+ *
+ *
+ * Return value: (transfer full):
+ *
+ * Since: 1.0
+ **/
hb_font_t *
hb_font_create_sub_font (hb_font_t *parent)
{
@@ -550,6 +899,15 @@ hb_font_create_sub_font (hb_font_t *parent)
return font;
}
+/**
+ * hb_font_get_empty:
+ *
+ *
+ *
+ * Return value: (transfer full)
+ *
+ * Since: 1.0
+ **/
hb_font_t *
hb_font_get_empty (void)
{
@@ -581,12 +939,30 @@ hb_font_get_empty (void)
return const_cast<hb_font_t *> (&_hb_font_nil);
}
+/**
+ * hb_font_reference: (skip)
+ * @font: a font.
+ *
+ *
+ *
+ * Return value: (transfer full):
+ *
+ * Since: 1.0
+ **/
hb_font_t *
hb_font_reference (hb_font_t *font)
{
return hb_object_reference (font);
}
+/**
+ * hb_font_destroy: (skip)
+ * @font: a font.
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_font_destroy (hb_font_t *font)
{
@@ -606,6 +982,20 @@ hb_font_destroy (hb_font_t *font)
free (font);
}
+/**
+ * hb_font_set_user_data: (skip)
+ * @font: a font.
+ * @key:
+ * @data:
+ * @destroy:
+ * @replace:
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_font_set_user_data (hb_font_t *font,
hb_user_data_key_t *key,
@@ -616,6 +1006,17 @@ hb_font_set_user_data (hb_font_t *font,
return hb_object_set_user_data (font, key, data, destroy, replace);
}
+/**
+ * hb_font_get_user_data: (skip)
+ * @font: a font.
+ * @key:
+ *
+ *
+ *
+ * Return value: (transfer none):
+ *
+ * Since: 1.0
+ **/
void *
hb_font_get_user_data (hb_font_t *font,
hb_user_data_key_t *key)
@@ -623,6 +1024,14 @@ hb_font_get_user_data (hb_font_t *font,
return hb_object_get_user_data (font, key);
}
+/**
+ * hb_font_make_immutable:
+ * @font: a font.
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_font_make_immutable (hb_font_t *font)
{
@@ -632,18 +1041,48 @@ hb_font_make_immutable (hb_font_t *font)
font->immutable = true;
}
+/**
+ * hb_font_is_immutable:
+ * @font: a font.
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_font_is_immutable (hb_font_t *font)
{
return font->immutable;
}
+/**
+ * hb_font_get_parent:
+ * @font: a font.
+ *
+ *
+ *
+ * Return value: (transfer none):
+ *
+ * Since: 1.0
+ **/
hb_font_t *
hb_font_get_parent (hb_font_t *font)
{
return font->parent;
}
+/**
+ * hb_font_get_face:
+ * @font: a font.
+ *
+ *
+ *
+ * Return value: (transfer none):
+ *
+ * Since: 1.0
+ **/
hb_face_t *
hb_font_get_face (hb_font_t *font)
{
@@ -651,15 +1090,26 @@ hb_font_get_face (hb_font_t *font)
}
+/**
+ * hb_font_set_funcs:
+ * @font: a font.
+ * @klass: (closure font_data) (destroy destroy) (scope notified):
+ * @font_data:
+ * @destroy:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_font_set_funcs (hb_font_t *font,
hb_font_funcs_t *klass,
- void *user_data,
+ void *font_data,
hb_destroy_func_t destroy)
{
if (font->immutable) {
if (destroy)
- destroy (user_data);
+ destroy (font_data);
return;
}
@@ -672,30 +1122,50 @@ hb_font_set_funcs (hb_font_t *font,
hb_font_funcs_reference (klass);
hb_font_funcs_destroy (font->klass);
font->klass = klass;
- font->user_data = user_data;
+ font->user_data = font_data;
font->destroy = destroy;
}
+/**
+ * hb_font_set_funcs_data:
+ * @font: a font.
+ * @font_data: (destroy destroy) (scope notified):
+ * @destroy:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_font_set_funcs_data (hb_font_t *font,
- void *user_data,
+ void *font_data,
hb_destroy_func_t destroy)
{
/* Destroy user_data? */
if (font->immutable) {
if (destroy)
- destroy (user_data);
+ destroy (font_data);
return;
}
if (font->destroy)
font->destroy (font->user_data);
- font->user_data = user_data;
+ font->user_data = font_data;
font->destroy = destroy;
}
+/**
+ * hb_font_set_scale:
+ * @font: a font.
+ * @x_scale:
+ * @y_scale:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_font_set_scale (hb_font_t *font,
int x_scale,
@@ -708,6 +1178,16 @@ hb_font_set_scale (hb_font_t *font,
font->y_scale = y_scale;
}
+/**
+ * hb_font_get_scale:
+ * @font: a font.
+ * @x_scale: (out):
+ * @y_scale: (out):
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_font_get_scale (hb_font_t *font,
int *x_scale,
@@ -717,6 +1197,16 @@ hb_font_get_scale (hb_font_t *font,
if (y_scale) *y_scale = font->y_scale;
}
+/**
+ * hb_font_set_ppem:
+ * @font: a font.
+ * @x_ppem:
+ * @y_ppem:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_font_set_ppem (hb_font_t *font,
unsigned int x_ppem,
@@ -729,6 +1219,16 @@ hb_font_set_ppem (hb_font_t *font,
font->y_ppem = y_ppem;
}
+/**
+ * hb_font_get_ppem:
+ * @font: a font.
+ * @x_ppem: (out):
+ * @y_ppem: (out):
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_font_get_ppem (hb_font_t *font,
unsigned int *x_ppem,
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-font.h b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-font.h
index 3a0c001b98e..7273db43eda 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-font.h
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-font.h
@@ -139,54 +139,180 @@ typedef hb_bool_t (*hb_font_get_glyph_from_name_func_t) (hb_font_t *font, void *
/* func setters */
+/**
+ * hb_font_funcs_set_glyph_func:
+ * @ffuncs: font functions.
+ * @func: (closure user_data) (destroy destroy) (scope notified):
+ * @user_data:
+ * @destroy:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_font_funcs_set_glyph_func (hb_font_funcs_t *ffuncs,
- hb_font_get_glyph_func_t glyph_func,
+ hb_font_get_glyph_func_t func,
void *user_data, hb_destroy_func_t destroy);
+/**
+ * hb_font_funcs_set_glyph_h_advance_func:
+ * @ffuncs: font functions.
+ * @func: (closure user_data) (destroy destroy) (scope notified):
+ * @user_data:
+ * @destroy:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_font_funcs_set_glyph_h_advance_func (hb_font_funcs_t *ffuncs,
hb_font_get_glyph_h_advance_func_t func,
void *user_data, hb_destroy_func_t destroy);
+
+/**
+ * hb_font_funcs_set_glyph_v_advance_func:
+ * @ffuncs: font functions.
+ * @func: (closure user_data) (destroy destroy) (scope notified):
+ * @user_data:
+ * @destroy:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_font_funcs_set_glyph_v_advance_func (hb_font_funcs_t *ffuncs,
hb_font_get_glyph_v_advance_func_t func,
void *user_data, hb_destroy_func_t destroy);
+/**
+ * hb_font_funcs_set_glyph_h_origin_func:
+ * @ffuncs: font functions.
+ * @func: (closure user_data) (destroy destroy) (scope notified):
+ * @user_data:
+ * @destroy:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_font_funcs_set_glyph_h_origin_func (hb_font_funcs_t *ffuncs,
hb_font_get_glyph_h_origin_func_t func,
void *user_data, hb_destroy_func_t destroy);
+
+/**
+ * hb_font_funcs_set_glyph_v_origin_func:
+ * @ffuncs: font functions.
+ * @func: (closure user_data) (destroy destroy) (scope notified):
+ * @user_data:
+ * @destroy:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_font_funcs_set_glyph_v_origin_func (hb_font_funcs_t *ffuncs,
hb_font_get_glyph_v_origin_func_t func,
void *user_data, hb_destroy_func_t destroy);
+/**
+ * hb_font_funcs_set_glyph_h_kerning_func:
+ * @ffuncs: font functions.
+ * @func: (closure user_data) (destroy destroy) (scope notified):
+ * @user_data:
+ * @destroy:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_font_funcs_set_glyph_h_kerning_func (hb_font_funcs_t *ffuncs,
hb_font_get_glyph_h_kerning_func_t func,
void *user_data, hb_destroy_func_t destroy);
+
+/**
+ * hb_font_funcs_set_glyph_v_kerning_func:
+ * @ffuncs: font functions.
+ * @func: (closure user_data) (destroy destroy) (scope notified):
+ * @user_data:
+ * @destroy:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_font_funcs_set_glyph_v_kerning_func (hb_font_funcs_t *ffuncs,
hb_font_get_glyph_v_kerning_func_t func,
void *user_data, hb_destroy_func_t destroy);
+/**
+ * hb_font_funcs_set_glyph_extents_func:
+ * @ffuncs: font functions.
+ * @func: (closure user_data) (destroy destroy) (scope notified):
+ * @user_data:
+ * @destroy:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_font_funcs_set_glyph_extents_func (hb_font_funcs_t *ffuncs,
hb_font_get_glyph_extents_func_t func,
void *user_data, hb_destroy_func_t destroy);
+
+/**
+ * hb_font_funcs_set_glyph_contour_point_func:
+ * @ffuncs: font functions.
+ * @func: (closure user_data) (destroy destroy) (scope notified):
+ * @user_data:
+ * @destroy:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_font_funcs_set_glyph_contour_point_func (hb_font_funcs_t *ffuncs,
hb_font_get_glyph_contour_point_func_t func,
void *user_data, hb_destroy_func_t destroy);
+/**
+ * hb_font_funcs_set_glyph_name_func:
+ * @ffuncs: font functions.
+ * @func: (closure user_data) (destroy destroy) (scope notified):
+ * @user_data:
+ * @destroy:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_font_funcs_set_glyph_name_func (hb_font_funcs_t *ffuncs,
- hb_font_get_glyph_name_func_t glyph_func,
+ hb_font_get_glyph_name_func_t func,
void *user_data, hb_destroy_func_t destroy);
+
+/**
+ * hb_font_funcs_set_glyph_from_name_func:
+ * @ffuncs: font functions.
+ * @func: (closure user_data) (destroy destroy) (scope notified):
+ * @user_data:
+ * @destroy:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_font_funcs_set_glyph_from_name_func (hb_font_funcs_t *ffuncs,
- hb_font_get_glyph_from_name_func_t glyph_func,
+ hb_font_get_glyph_from_name_func_t func,
void *user_data, hb_destroy_func_t destroy);
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ft.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ft.cc
index a4f4bbdc01c..ff1e187b343 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ft.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ft.cc
@@ -319,7 +319,16 @@ reference_table (hb_face_t *face HB_UNUSED, hb_tag_t tag, void *user_data)
buffer, free);
}
-
+/**
+ * hb_ft_face_create:
+ * @ft_face: (destroy destroy) (scope notified):
+ * @destroy:
+ *
+ *
+ *
+ * Return value: (transfer full):
+ * Since: 1.0
+ **/
hb_face_t *
hb_ft_face_create (FT_Face ft_face,
hb_destroy_func_t destroy)
@@ -355,6 +364,15 @@ hb_ft_face_finalize (FT_Face ft_face)
hb_face_destroy ((hb_face_t *) ft_face->generic.data);
}
+/**
+ * hb_ft_face_create_cached:
+ * @ft_face:
+ *
+ *
+ *
+ * Return value: (transfer full):
+ * Since: 1.0
+ **/
hb_face_t *
hb_ft_face_create_cached (FT_Face ft_face)
{
@@ -376,6 +394,16 @@ _do_nothing (void)
}
+/**
+ * hb_ft_font_create:
+ * @ft_face: (destroy destroy) (scope notified):
+ * @destroy:
+ *
+ *
+ *
+ * Return value: (transfer full):
+ * Since: 1.0
+ **/
hb_font_t *
hb_ft_font_create (FT_Face ft_face,
hb_destroy_func_t destroy)
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ft.h b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ft.h
index 696251e143f..696251e143f 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ft.h
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ft.h
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-glib.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-glib.cc
index c35d9966c26..c35d9966c26 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-glib.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-glib.cc
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-glib.h b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-glib.h
index 63a9d3366c5..63a9d3366c5 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-glib.h
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-glib.h
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-gobject-enums.cc.tmpl b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-gobject-enums.cc.tmpl
index ca458a3846c..ca458a3846c 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-gobject-enums.cc.tmpl
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-gobject-enums.cc.tmpl
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-gobject-enums.h.tmpl b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-gobject-enums.h.tmpl
index 6ecda06c2a6..6ecda06c2a6 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-gobject-enums.h.tmpl
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-gobject-enums.h.tmpl
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-gobject-structs.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-gobject-structs.cc
index 652554214c2..2451b66291b 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-gobject-structs.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-gobject-structs.cc
@@ -94,10 +94,6 @@ static hb_glyph_position_t *glyph_position_reference (hb_glyph_position_t *g)
static void glyph_position_destroy (hb_glyph_position_t *g) { free (g); }
HB_DEFINE_BOXED_TYPE (glyph_position, glyph_position_reference, glyph_position_destroy)
-static hb_language_t language_reference (hb_language_t l) { return l; }
-static void language_destroy (hb_language_t l) { }
-HB_DEFINE_BOXED_TYPE (language, language_reference, language_destroy)
-
static hb_segment_properties_t *segment_properties_reference (hb_segment_properties_t *g)
{
hb_segment_properties_t *c = (hb_segment_properties_t *) calloc (1, sizeof (hb_segment_properties_t));
@@ -111,3 +107,14 @@ HB_DEFINE_BOXED_TYPE (segment_properties, segment_properties_reference, segment_
static hb_user_data_key_t user_data_key_reference (hb_user_data_key_t l) { return l; }
static void user_data_key_destroy (hb_user_data_key_t l) { }
HB_DEFINE_BOXED_TYPE (user_data_key, user_data_key_reference, user_data_key_destroy)
+
+
+static hb_language_t *language_reference (hb_language_t *l)
+{
+ hb_language_t *c = (hb_language_t *) calloc (1, sizeof (hb_language_t));
+ if (unlikely (!c)) return NULL;
+ *c = *l;
+ return c;
+}
+static void language_destroy (hb_language_t *l) { free (l); }
+HB_DEFINE_BOXED_TYPE (language, language_reference, language_destroy)
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-gobject-structs.h b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-gobject-structs.h
index 48af088ed85..4a88d569e8d 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-gobject-structs.h
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-gobject-structs.h
@@ -81,6 +81,14 @@ GType hb_gobject_segment_properties_get_type (void);
GType hb_gobject_user_data_key_get_type (void);
#define HB_GOBJECT_TYPE_USER_DATA_KEY (hb_gobject_user_data_key_get_type ())
+/* Currently gobject-introspection doesn't understand that hb_language_t
+ * can be passed by-value. As such we box it up. May remove in the
+ * future.
+ *
+ * https://bugzilla.gnome.org/show_bug.cgi?id=707656
+ */
+GType hb_gobject_language_get_type (void);
+#define HB_GOBJECT_TYPE_LANGUAGE (hb_gobject_language_get_type ())
HB_END_DECLS
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-gobject.h b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-gobject.h
index ea1bd25df82..ea1bd25df82 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-gobject.h
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-gobject.h
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-graphite2.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-graphite2.cc
index cce860694cc..6fe16ca93cd 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-graphite2.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-graphite2.cc
@@ -30,11 +30,10 @@
#define hb_graphite2_shaper_font_data_t gr_font
#include "hb-shaper-impl-private.hh"
-#include <graphite2/Font.h>
-#include <graphite2/Segment.h>
-
#include "hb-graphite2.h"
+#include <graphite2/Segment.h>
+
#include "hb-ot-tag.h"
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-graphite2.h b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-graphite2.h
index bea68f939b4..3eae54acbd8 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-graphite2.h
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-graphite2.h
@@ -28,6 +28,8 @@
#include "hb.h"
+#include <graphite2/Font.h>
+
HB_BEGIN_DECLS
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-icu-le.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-icu-le.cc
index 634354e2358..634354e2358 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-icu-le.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-icu-le.cc
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-icu.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-icu.cc
index c177be2c4b2..c177be2c4b2 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-icu.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-icu.cc
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-icu.h b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-icu.h
index f2f35f0f2ce..f2f35f0f2ce 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-icu.h
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-icu.h
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-mutex-private.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-mutex-private.hh
index 0fb21c2e86e..0fb21c2e86e 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-mutex-private.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-mutex-private.hh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-object-private.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-object-private.hh
index 8a9ae34dbee..8a9ae34dbee 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-object-private.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-object-private.hh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-old.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-old.cc
index a7ea8ed9bbe..a7ea8ed9bbe 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-old.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-old.cc
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-open-file-private.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-open-file-private.hh
index 250504ae20b..250504ae20b 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-open-file-private.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-open-file-private.hh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-open-type-private.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-open-type-private.hh
index ee3a21dc3b1..ee3a21dc3b1 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-open-type-private.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-open-type-private.hh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-head-table.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-head-table.hh
index 3a9451295de..0285f0cf310 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-head-table.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-head-table.hh
@@ -43,7 +43,7 @@ namespace OT {
struct head
{
- static const hb_tag_t Tag = HB_OT_TAG_head;
+ static const hb_tag_t tableTag = HB_OT_TAG_head;
inline unsigned int get_upem (void) const {
unsigned int upem = unitsPerEm;
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-hhea-table.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-hhea-table.hh
index 2b89c4e0208..611de8a6665 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-hhea-table.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-hhea-table.hh
@@ -42,7 +42,7 @@ namespace OT {
struct hhea
{
- static const hb_tag_t Tag = HB_OT_TAG_hhea;
+ static const hb_tag_t tableTag = HB_OT_TAG_hhea;
inline bool sanitize (hb_sanitize_context_t *c) {
TRACE_SANITIZE (this);
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-hmtx-table.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-hmtx-table.hh
index b94337d0be7..d107cf990a2 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-hmtx-table.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-hmtx-table.hh
@@ -50,7 +50,7 @@ struct LongHorMetric
struct hmtx
{
- static const hb_tag_t Tag = HB_OT_TAG_hmtx;
+ static const hb_tag_t tableTag = HB_OT_TAG_hmtx;
inline bool sanitize (hb_sanitize_context_t *c) {
TRACE_SANITIZE (this);
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-layout-common-private.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-layout-common-private.hh
index 2f6e80468eb..2f6e80468eb 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-layout-common-private.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-layout-common-private.hh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-layout-gdef-table.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-layout-gdef-table.hh
index ff2d09c51f0..d2fd8757fcb 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-layout-gdef-table.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-layout-gdef-table.hh
@@ -324,7 +324,7 @@ struct MarkGlyphSets
struct GDEF
{
- static const hb_tag_t Tag = HB_OT_TAG_GDEF;
+ static const hb_tag_t tableTag = HB_OT_TAG_GDEF;
enum GlyphClasses {
UnclassifiedGlyph = 0,
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-layout-gpos-table.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-layout-gpos-table.hh
index 2cf90b7b5f7..05a6f5edc7e 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-layout-gpos-table.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-layout-gpos-table.hh
@@ -1505,7 +1505,7 @@ typedef OffsetListOf<PosLookup> PosLookupList;
struct GPOS : GSUBGPOS
{
- static const hb_tag_t Tag = HB_OT_TAG_GPOS;
+ static const hb_tag_t tableTag = HB_OT_TAG_GPOS;
inline const PosLookup& get_lookup (unsigned int i) const
{ return CastR<PosLookup> (GSUBGPOS::get_lookup (i)); }
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-layout-gsub-table.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-layout-gsub-table.hh
index 6ab1a2b9211..fefc71e8b49 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-layout-gsub-table.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-layout-gsub-table.hh
@@ -1351,7 +1351,7 @@ typedef OffsetListOf<SubstLookup> SubstLookupList;
struct GSUB : GSUBGPOS
{
- static const hb_tag_t Tag = HB_OT_TAG_GSUB;
+ static const hb_tag_t tableTag = HB_OT_TAG_GSUB;
inline const SubstLookup& get_lookup (unsigned int i) const
{ return CastR<SubstLookup> (GSUBGPOS::get_lookup (i)); }
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-layout-gsubgpos-private.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-layout-gsubgpos-private.hh
index 316f506f0d3..316f506f0d3 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-layout-gsubgpos-private.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-layout-gsubgpos-private.hh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-layout-jstf-table.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-layout-jstf-table.hh
new file mode 100644
index 00000000000..79eb859566a
--- /dev/null
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-layout-jstf-table.hh
@@ -0,0 +1,229 @@
+/*
+ * Copyright © 2013 Google, Inc.
+ *
+ * This is part of HarfBuzz, a text shaping library.
+ *
+ * Permission is hereby granted, without written agreement and without
+ * license or royalty fees, to use, copy, modify, and distribute this
+ * software and its documentation for any purpose, provided that the
+ * above copyright notice and the following two paragraphs appear in
+ * all copies of this software.
+ *
+ * IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR
+ * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
+ * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN
+ * IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+ * DAMAGE.
+ *
+ * THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,
+ * BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
+ * FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
+ * ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO
+ * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
+ *
+ * Google Author(s): Behdad Esfahbod
+ */
+
+#ifndef HB_OT_LAYOUT_JSTF_TABLE_HH
+#define HB_OT_LAYOUT_JSTF_TABLE_HH
+
+#include "hb-open-type-private.hh"
+#include "hb-ot-layout-gpos-table.hh"
+
+
+namespace OT {
+
+
+/*
+ * JstfModList -- Justification Modification List Tables
+ */
+
+typedef IndexArray JstfModList;
+
+
+/*
+ * JstfMax -- Justification Maximum Table
+ */
+
+typedef OffsetListOf<PosLookup> JstfMax;
+
+
+/*
+ * JstfPriority -- Justification Priority Table
+ */
+
+struct JstfPriority
+{
+ inline bool sanitize (hb_sanitize_context_t *c) {
+ TRACE_SANITIZE (this);
+ return TRACE_RETURN (c->check_struct (this) &&
+ shrinkageEnableGSUB.sanitize (c, this) &&
+ shrinkageDisableGSUB.sanitize (c, this) &&
+ shrinkageEnableGPOS.sanitize (c, this) &&
+ shrinkageDisableGPOS.sanitize (c, this) &&
+ shrinkageJstfMax.sanitize (c, this) &&
+ extensionEnableGSUB.sanitize (c, this) &&
+ extensionDisableGSUB.sanitize (c, this) &&
+ extensionEnableGPOS.sanitize (c, this) &&
+ extensionDisableGPOS.sanitize (c, this) &&
+ extensionJstfMax.sanitize (c, this));
+ }
+
+ protected:
+ OffsetTo<JstfModList>
+ shrinkageEnableGSUB; /* Offset to Shrinkage Enable GSUB
+ * JstfModList table--from beginning of
+ * JstfPriority table--may be NULL */
+ OffsetTo<JstfModList>
+ shrinkageDisableGSUB; /* Offset to Shrinkage Disable GSUB
+ * JstfModList table--from beginning of
+ * JstfPriority table--may be NULL */
+ OffsetTo<JstfModList>
+ shrinkageEnableGPOS; /* Offset to Shrinkage Enable GPOS
+ * JstfModList table--from beginning of
+ * JstfPriority table--may be NULL */
+ OffsetTo<JstfModList>
+ shrinkageDisableGPOS; /* Offset to Shrinkage Disable GPOS
+ * JstfModList table--from beginning of
+ * JstfPriority table--may be NULL */
+ OffsetTo<JstfMax>
+ shrinkageJstfMax; /* Offset to Shrinkage JstfMax table--
+ * from beginning of JstfPriority table
+ * --may be NULL */
+ OffsetTo<JstfModList>
+ extensionEnableGSUB; /* Offset to Extension Enable GSUB
+ * JstfModList table--from beginning of
+ * JstfPriority table--may be NULL */
+ OffsetTo<JstfModList>
+ extensionDisableGSUB; /* Offset to Extension Disable GSUB
+ * JstfModList table--from beginning of
+ * JstfPriority table--may be NULL */
+ OffsetTo<JstfModList>
+ extensionEnableGPOS; /* Offset to Extension Enable GPOS
+ * JstfModList table--from beginning of
+ * JstfPriority table--may be NULL */
+ OffsetTo<JstfModList>
+ extensionDisableGPOS; /* Offset to Extension Disable GPOS
+ * JstfModList table--from beginning of
+ * JstfPriority table--may be NULL */
+ OffsetTo<JstfMax>
+ extensionJstfMax; /* Offset to Extension JstfMax table--
+ * from beginning of JstfPriority table
+ * --may be NULL */
+
+ public:
+ DEFINE_SIZE_STATIC (20);
+};
+
+
+/*
+ * JstfLangSys -- Justification Language System Table
+ */
+
+struct JstfLangSys : OffsetListOf<JstfPriority>
+{
+ inline bool sanitize (hb_sanitize_context_t *c,
+ const Record<JstfLangSys>::sanitize_closure_t * = NULL) {
+ TRACE_SANITIZE (this);
+ return TRACE_RETURN (OffsetListOf<JstfPriority>::sanitize (c));
+ }
+};
+
+
+/*
+ * ExtenderGlyphs -- Extender Glyph Table
+ */
+
+typedef SortedArrayOf<GlyphID> ExtenderGlyphs;
+
+
+/*
+ * JstfScript -- The Justification Table
+ */
+
+struct JstfScript
+{
+ inline unsigned int get_lang_sys_count (void) const
+ { return langSys.len; }
+ inline const Tag& get_lang_sys_tag (unsigned int i) const
+ { return langSys.get_tag (i); }
+ inline unsigned int get_lang_sys_tags (unsigned int start_offset,
+ unsigned int *lang_sys_count /* IN/OUT */,
+ hb_tag_t *lang_sys_tags /* OUT */) const
+ { return langSys.get_tags (start_offset, lang_sys_count, lang_sys_tags); }
+ inline const JstfLangSys& get_lang_sys (unsigned int i) const
+ {
+ if (i == Index::NOT_FOUND_INDEX) return get_default_lang_sys ();
+ return this+langSys[i].offset;
+ }
+ inline bool find_lang_sys_index (hb_tag_t tag, unsigned int *index) const
+ { return langSys.find_index (tag, index); }
+
+ inline bool has_default_lang_sys (void) const { return defaultLangSys != 0; }
+ inline const JstfLangSys& get_default_lang_sys (void) const { return this+defaultLangSys; }
+
+ inline bool sanitize (hb_sanitize_context_t *c,
+ const Record<JstfScript>::sanitize_closure_t * = NULL) {
+ TRACE_SANITIZE (this);
+ return TRACE_RETURN (extenderGlyphs.sanitize (c, this) &&
+ defaultLangSys.sanitize (c, this) &&
+ langSys.sanitize (c, this));
+ }
+
+ protected:
+ OffsetTo<ExtenderGlyphs>
+ extenderGlyphs; /* Offset to ExtenderGlyph table--from beginning
+ * of JstfScript table-may be NULL */
+ OffsetTo<JstfLangSys>
+ defaultLangSys; /* Offset to DefaultJstfLangSys table--from
+ * beginning of JstfScript table--may be Null */
+ RecordArrayOf<JstfLangSys>
+ langSys; /* Array of JstfLangSysRecords--listed
+ * alphabetically by LangSysTag */
+ public:
+ DEFINE_SIZE_ARRAY (6, langSys);
+};
+
+
+/*
+ * JSTF -- The Justification Table
+ */
+
+struct JSTF
+{
+ static const hb_tag_t tableTag = HB_OT_TAG_JSTF;
+
+ inline unsigned int get_script_count (void) const
+ { return scriptList.len; }
+ inline const Tag& get_script_tag (unsigned int i) const
+ { return scriptList.get_tag (i); }
+ inline unsigned int get_script_tags (unsigned int start_offset,
+ unsigned int *script_count /* IN/OUT */,
+ hb_tag_t *script_tags /* OUT */) const
+ { return scriptList.get_tags (start_offset, script_count, script_tags); }
+ inline const JstfScript& get_script (unsigned int i) const
+ { return this+scriptList[i].offset; }
+ inline bool find_script_index (hb_tag_t tag, unsigned int *index) const
+ { return scriptList.find_index (tag, index); }
+
+ inline bool sanitize (hb_sanitize_context_t *c) {
+ TRACE_SANITIZE (this);
+ return TRACE_RETURN (version.sanitize (c) && likely (version.major == 1) &&
+ scriptList.sanitize (c, this));
+ }
+
+ protected:
+ FixedVersion version; /* Version of the JSTF table--initially set
+ * to 0x00010000 */
+ RecordArrayOf<JstfScript>
+ scriptList; /* Array of JstfScripts--listed
+ * alphabetically by ScriptTag */
+ public:
+ DEFINE_SIZE_ARRAY (6, scriptList);
+};
+
+
+} /* namespace OT */
+
+
+#endif /* HB_OT_LAYOUT_JSTF_TABLE_HH */
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-layout-private.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-layout-private.hh
index c5ba8b4b4d7..c5ba8b4b4d7 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-layout-private.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-layout-private.hh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-layout.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-layout.cc
index 520deff7105..80d92b43083 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-layout.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-layout.cc
@@ -33,6 +33,7 @@
#include "hb-ot-layout-gdef-table.hh"
#include "hb-ot-layout-gsub-table.hh"
#include "hb-ot-layout-gpos-table.hh"
+#include "hb-ot-layout-jstf-table.hh"
#include "hb-ot-map-private.hh"
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-layout.h b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-layout.h
index 134f1a6c164..d2a314cad6c 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-layout.h
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-layout.h
@@ -41,6 +41,7 @@ HB_BEGIN_DECLS
#define HB_OT_TAG_GDEF HB_TAG('G','D','E','F')
#define HB_OT_TAG_GSUB HB_TAG('G','S','U','B')
#define HB_OT_TAG_GPOS HB_TAG('G','P','O','S')
+#define HB_OT_TAG_JSTF HB_TAG('J','S','T','F')
/*
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-map-private.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-map-private.hh
index 0e718a6f1f5..0e718a6f1f5 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-map-private.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-map-private.hh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-map.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-map.cc
index 43856fa37ee..43856fa37ee 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-map.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-map.cc
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-maxp-table.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-maxp-table.hh
index 0ce3ebcc2a6..e6d255579c6 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-maxp-table.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-maxp-table.hh
@@ -41,7 +41,7 @@ namespace OT {
struct maxp
{
- static const hb_tag_t Tag = HB_OT_TAG_maxp;
+ static const hb_tag_t tableTag = HB_OT_TAG_maxp;
inline unsigned int get_num_glyphs (void) const {
return numGlyphs;
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-name-table.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-name-table.hh
index e36b0f7c971..07dc0565ca6 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-name-table.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-name-table.hh
@@ -74,7 +74,7 @@ struct NameRecord
struct name
{
- static const hb_tag_t Tag = HB_OT_TAG_name;
+ static const hb_tag_t tableTag = HB_OT_TAG_name;
inline unsigned int get_name (unsigned int platform_id,
unsigned int encoding_id,
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-arabic-fallback.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-arabic-fallback.hh
index 6b2b87e3f28..6b2b87e3f28 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-arabic-fallback.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-arabic-fallback.hh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-arabic-table.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-arabic-table.hh
index 730a275bf0a..730a275bf0a 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-arabic-table.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-arabic-table.hh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-arabic.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-arabic.cc
index a57e81a5ecf..a57e81a5ecf 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-arabic.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-arabic.cc
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-default.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-default.cc
index d6afa0e1c11..d6afa0e1c11 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-default.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-default.cc
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-indic-machine.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-indic-machine.hh
index c251160880c..c251160880c 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-indic-machine.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-indic-machine.hh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-indic-machine.rl b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-indic-machine.rl
index f9f07d801d9..f9f07d801d9 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-indic-machine.rl
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-indic-machine.rl
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-indic-private.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-indic-private.hh
index 39268b14533..39268b14533 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-indic-private.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-indic-private.hh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-indic-table.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-indic-table.cc
index 18a022bc507..18a022bc507 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-indic-table.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-indic-table.cc
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-indic.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-indic.cc
index d3c475b6abb..d3c475b6abb 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-indic.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-indic.cc
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-myanmar-machine.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-myanmar-machine.hh
index 797bfc5bea0..797bfc5bea0 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-myanmar-machine.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-myanmar-machine.hh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-myanmar-machine.rl b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-myanmar-machine.rl
index 51d42dd64ab..51d42dd64ab 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-myanmar-machine.rl
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-myanmar-machine.rl
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-myanmar.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-myanmar.cc
index 29f29bb556b..29f29bb556b 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-myanmar.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-myanmar.cc
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-private.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-private.hh
index a099e05d748..a099e05d748 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-private.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-private.hh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-sea-machine.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-sea-machine.hh
index 86b7ae7d5ca..86b7ae7d5ca 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-sea-machine.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-sea-machine.hh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-sea-machine.rl b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-sea-machine.rl
index 46140fc4d5f..46140fc4d5f 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-sea-machine.rl
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-sea-machine.rl
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-sea.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-sea.cc
index 9c0c303e3df..9c0c303e3df 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-sea.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-sea.cc
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-thai.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-thai.cc
index 45945339d6b..45945339d6b 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-complex-thai.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-complex-thai.cc
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-fallback-private.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-fallback-private.hh
index ec653513f1b..ec653513f1b 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-fallback-private.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-fallback-private.hh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-fallback.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-fallback.cc
index 284d030d5f4..284d030d5f4 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-fallback.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-fallback.cc
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-normalize-private.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-normalize-private.hh
index 085d48511d0..085d48511d0 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-normalize-private.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-normalize-private.hh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-normalize.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-normalize.cc
index 3fee809cf93..3fee809cf93 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-normalize.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-normalize.cc
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-private.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-private.hh
index 817147199fd..817147199fd 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape-private.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape-private.hh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape.cc
index c23240c80c7..15f4461b5af 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-shape.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-shape.cc
@@ -418,8 +418,6 @@ zero_mark_widths_by_gdef (hb_buffer_t *buffer)
static inline void
hb_ot_position_default (hb_ot_shape_context_t *c)
{
- hb_ot_layout_position_start (c->font, c->buffer);
-
unsigned int count = c->buffer->len;
for (unsigned int i = 0; i < count; i++)
{
@@ -433,6 +431,13 @@ hb_ot_position_default (hb_ot_shape_context_t *c)
&c->buffer->pos[i].y_offset);
}
+}
+
+static inline bool
+hb_ot_position_complex (hb_ot_shape_context_t *c)
+{
+ bool ret = false;
+ unsigned int count = c->buffer->len;
switch (c->plan->shaper->zero_width_marks)
{
@@ -452,13 +457,6 @@ hb_ot_position_default (hb_ot_shape_context_t *c)
case HB_OT_SHAPE_ZERO_WIDTH_MARKS_BY_GDEF_LATE:
break;
}
-}
-
-static inline bool
-hb_ot_position_complex (hb_ot_shape_context_t *c)
-{
- bool ret = false;
- unsigned int count = c->buffer->len;
if (hb_ot_layout_has_positioning (c->face))
{
@@ -500,18 +498,20 @@ hb_ot_position_complex (hb_ot_shape_context_t *c)
break;
}
- hb_ot_layout_position_finish (c->font, c->buffer);
-
return ret;
}
static inline void
hb_ot_position (hb_ot_shape_context_t *c)
{
+ hb_ot_layout_position_start (c->font, c->buffer);
+
hb_ot_position_default (c);
hb_bool_t fallback = !hb_ot_position_complex (c);
+ hb_ot_layout_position_finish (c->font, c->buffer);
+
if (fallback && c->plan->shaper->fallback_position)
_hb_ot_shape_fallback_position (c->plan, c->font, c->buffer);
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-tag.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-tag.cc
index 91ebec76ee3..91ebec76ee3 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-tag.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-tag.cc
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-tag.h b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-tag.h
index 1bf12ab3c09..1bf12ab3c09 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot-tag.h
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot-tag.h
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot.h b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot.h
index 80739063991..80739063991 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ot.h
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ot.h
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-private.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-private.hh
index 4152e275523..4152e275523 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-private.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-private.hh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-set-private.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-set-private.hh
index adfa88f18ec..ca2a07b7619 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-set-private.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-set-private.hh
@@ -171,7 +171,7 @@ struct hb_set_t
inline void add (hb_codepoint_t g)
{
if (unlikely (in_error)) return;
- if (unlikely (g == SENTINEL)) return;
+ if (unlikely (g == INVALID)) return;
if (unlikely (g > MAX_G)) return;
elt (g) |= mask (g);
}
@@ -256,19 +256,22 @@ struct hb_set_t
}
inline bool next (hb_codepoint_t *codepoint) const
{
- if (unlikely (*codepoint == SENTINEL)) {
+ if (unlikely (*codepoint == INVALID)) {
hb_codepoint_t i = get_min ();
- if (i != SENTINEL) {
+ if (i != INVALID) {
*codepoint = i;
return true;
- } else
+ } else {
+ *codepoint = INVALID;
return false;
+ }
}
for (hb_codepoint_t i = *codepoint + 1; i < MAX_G + 1; i++)
if (has (i)) {
*codepoint = i;
return true;
}
+ *codepoint = INVALID;
return false;
}
inline bool next_range (hb_codepoint_t *first, hb_codepoint_t *last) const
@@ -277,7 +280,10 @@ struct hb_set_t
i = *last;
if (!next (&i))
+ {
+ *last = *first = INVALID;
return false;
+ }
*last = *first = i;
while (next (&i) && i == *last + 1)
@@ -300,7 +306,7 @@ struct hb_set_t
for (unsigned int j = 0; j < BITS; j++)
if (elts[i] & (1 << j))
return i * BITS + j;
- return SENTINEL;
+ return INVALID;
}
inline hb_codepoint_t get_max (void) const
{
@@ -309,7 +315,7 @@ struct hb_set_t
for (unsigned int j = BITS; j; j--)
if (elts[i - 1] & (1 << (j - 1)))
return (i - 1) * BITS + (j - 1);
- return SENTINEL;
+ return INVALID;
}
typedef uint32_t elt_t;
@@ -318,7 +324,7 @@ struct hb_set_t
static const unsigned int BITS = (1 << SHIFT);
static const unsigned int MASK = BITS - 1;
static const unsigned int ELTS = (MAX_G + 1 + (BITS - 1)) / BITS;
- static const hb_codepoint_t SENTINEL = (hb_codepoint_t) -1;
+ static const hb_codepoint_t INVALID = HB_SET_VALUE_INVALID;
elt_t &elt (hb_codepoint_t g) { return elts[g >> SHIFT]; }
elt_t elt (hb_codepoint_t g) const { return elts[g >> SHIFT]; }
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-set.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-set.cc
index 3c9573fbceb..59a0af46ed4 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-set.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-set.cc
@@ -30,6 +30,13 @@
/* Public API */
+/**
+ * hb_set_create: (Xconstructor)
+ *
+ * Return value: (transfer full):
+ *
+ * Since: 1.0
+ **/
hb_set_t *
hb_set_create (void)
{
@@ -43,6 +50,13 @@ hb_set_create (void)
return set;
}
+/**
+ * hb_set_get_empty:
+ *
+ * Return value: (transfer full):
+ *
+ * Since: 1.0
+ **/
hb_set_t *
hb_set_get_empty (void)
{
@@ -56,12 +70,26 @@ hb_set_get_empty (void)
return const_cast<hb_set_t *> (&_hb_set_nil);
}
+/**
+ * hb_set_reference: (skip)
+ * @set: a set.
+ *
+ * Return value: (transfer full):
+ *
+ * Since: 1.0
+ **/
hb_set_t *
hb_set_reference (hb_set_t *set)
{
return hb_object_reference (set);
}
+/**
+ * hb_set_destroy: (skip)
+ * @set: a set.
+ *
+ * Since: 1.0
+ **/
void
hb_set_destroy (hb_set_t *set)
{
@@ -72,6 +100,18 @@ hb_set_destroy (hb_set_t *set)
free (set);
}
+/**
+ * hb_set_set_user_data: (skip)
+ * @set: a set.
+ * @key:
+ * @data:
+ * @destroy (closure data):
+ * @replace:
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_set_set_user_data (hb_set_t *set,
hb_user_data_key_t *key,
@@ -82,6 +122,15 @@ hb_set_set_user_data (hb_set_t *set,
return hb_object_set_user_data (set, key, data, destroy, replace);
}
+/**
+ * hb_set_get_user_data: (skip)
+ * @set: a set.
+ * @key:
+ *
+ * Return value: (transfer none):
+ *
+ * Since: 1.0
+ **/
void *
hb_set_get_user_data (hb_set_t *set,
hb_user_data_key_t *key)
@@ -90,24 +139,63 @@ hb_set_get_user_data (hb_set_t *set,
}
+/**
+ * hb_set_allocation_successful:
+ * @set: a set.
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_set_allocation_successful (const hb_set_t *set HB_UNUSED)
{
return !set->in_error;
}
+/**
+ * hb_set_clear:
+ * @set: a set.
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_set_clear (hb_set_t *set)
{
set->clear ();
}
+/**
+ * hb_set_is_empty:
+ * @set: a set.
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_set_is_empty (const hb_set_t *set)
{
return set->is_empty ();
}
+/**
+ * hb_set_has:
+ * @set: a set.
+ * @codepoint:
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_set_has (const hb_set_t *set,
hb_codepoint_t codepoint)
@@ -115,6 +203,15 @@ hb_set_has (const hb_set_t *set,
return set->has (codepoint);
}
+/**
+ * hb_set_add:
+ * @set: a set.
+ * @codepoint:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_set_add (hb_set_t *set,
hb_codepoint_t codepoint)
@@ -122,6 +219,16 @@ hb_set_add (hb_set_t *set,
set->add (codepoint);
}
+/**
+ * hb_set_add_range:
+ * @set: a set.
+ * @first:
+ * @last:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_set_add_range (hb_set_t *set,
hb_codepoint_t first,
@@ -130,6 +237,15 @@ hb_set_add_range (hb_set_t *set,
set->add_range (first, last);
}
+/**
+ * hb_set_del:
+ * @set: a set.
+ * @codepoint:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_set_del (hb_set_t *set,
hb_codepoint_t codepoint)
@@ -137,6 +253,16 @@ hb_set_del (hb_set_t *set,
set->del (codepoint);
}
+/**
+ * hb_set_del_range:
+ * @set: a set.
+ * @first:
+ * @last:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_set_del_range (hb_set_t *set,
hb_codepoint_t first,
@@ -145,6 +271,17 @@ hb_set_del_range (hb_set_t *set,
set->del_range (first, last);
}
+/**
+ * hb_set_is_equal:
+ * @set: a set.
+ * @other:
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_set_is_equal (const hb_set_t *set,
const hb_set_t *other)
@@ -152,6 +289,15 @@ hb_set_is_equal (const hb_set_t *set,
return set->is_equal (other);
}
+/**
+ * hb_set_set:
+ * @set: a set.
+ * @other:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_set_set (hb_set_t *set,
const hb_set_t *other)
@@ -159,6 +305,15 @@ hb_set_set (hb_set_t *set,
set->set (other);
}
+/**
+ * hb_set_union:
+ * @set: a set.
+ * @other:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_set_union (hb_set_t *set,
const hb_set_t *other)
@@ -166,6 +321,15 @@ hb_set_union (hb_set_t *set,
set->union_ (other);
}
+/**
+ * hb_set_intersect:
+ * @set: a set.
+ * @other:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_set_intersect (hb_set_t *set,
const hb_set_t *other)
@@ -173,6 +337,15 @@ hb_set_intersect (hb_set_t *set,
set->intersect (other);
}
+/**
+ * hb_set_subtract:
+ * @set: a set.
+ * @other:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_set_subtract (hb_set_t *set,
const hb_set_t *other)
@@ -180,6 +353,15 @@ hb_set_subtract (hb_set_t *set,
set->subtract (other);
}
+/**
+ * hb_set_symmetric_difference:
+ * @set: a set.
+ * @other:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_set_symmetric_difference (hb_set_t *set,
const hb_set_t *other)
@@ -187,30 +369,79 @@ hb_set_symmetric_difference (hb_set_t *set,
set->symmetric_difference (other);
}
+/**
+ * hb_set_invert:
+ * @set: a set.
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_set_invert (hb_set_t *set)
{
set->invert ();
}
+/**
+ * hb_set_get_population:
+ * @set: a set.
+ *
+ * Returns the number of numbers in the set.
+ *
+ * Return value: set population.
+ *
+ * Since: 1.0
+ **/
unsigned int
hb_set_get_population (const hb_set_t *set)
{
return set->get_population ();
}
+/**
+ * hb_set_get_min:
+ * @set: a set.
+ *
+ * Finds the minimum number in the set.
+ *
+ * Return value: minimum of the set, or %HB_SET_VALUE_INVALID if set is empty.
+ *
+ * Since: 1.0
+ **/
hb_codepoint_t
hb_set_get_min (const hb_set_t *set)
{
return set->get_min ();
}
+/**
+ * hb_set_get_max:
+ * @set: a set.
+ *
+ * Finds the maximum number in the set.
+ *
+ * Return value: minimum of the set, or %HB_SET_VALUE_INVALID if set is empty.
+ *
+ * Since: 1.0
+ **/
hb_codepoint_t
hb_set_get_max (const hb_set_t *set)
{
return set->get_max ();
}
+/**
+ * hb_set_next:
+ * @set: a set.
+ * @codepoint: (inout):
+ *
+ *
+ *
+ * Return value: whether there was a next value.
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_set_next (const hb_set_t *set,
hb_codepoint_t *codepoint)
@@ -218,6 +449,19 @@ hb_set_next (const hb_set_t *set,
return set->next (codepoint);
}
+/**
+ * hb_set_next_range:
+ * @set: a set.
+ * @first: (out): output first codepoint in the range.
+ * @last: (inout): input current last and output last codepoint in the range.
+ *
+ * Gets the next consecutive range of numbers in @set that
+ * are greater than current value of @last.
+ *
+ * Return value: whether there was a next range.
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_set_next_range (const hb_set_t *set,
hb_codepoint_t *first,
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-set.h b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-set.h
index 291e24974e6..bafdae96333 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-set.h
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-set.h
@@ -36,6 +36,8 @@
HB_BEGIN_DECLS
+#define HB_SET_VALUE_INVALID ((hb_codepoint_t) -1)
+
typedef struct hb_set_t hb_set_t;
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-shape-plan-private.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-shape-plan-private.hh
index dd014e38d01..dd014e38d01 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-shape-plan-private.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-shape-plan-private.hh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-shape-plan.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-shape-plan.cc
index a6d2d262100..b44a9e2ab77 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-shape-plan.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-shape-plan.cc
@@ -83,6 +83,20 @@ hb_shape_plan_plan (hb_shape_plan_t *shape_plan,
* hb_shape_plan_t
*/
+/**
+ * hb_shape_plan_create: (Xconstructor)
+ * @face:
+ * @props:
+ * @user_features: (array length=num_user_features):
+ * @num_user_features:
+ * @shaper_list: (array zero-terminated=1):
+ *
+ *
+ *
+ * Return value: (transfer full):
+ *
+ * Since: 1.0
+ **/
hb_shape_plan_t *
hb_shape_plan_create (hb_face_t *face,
const hb_segment_properties_t *props,
@@ -111,6 +125,15 @@ hb_shape_plan_create (hb_face_t *face,
return shape_plan;
}
+/**
+ * hb_shape_plan_get_empty:
+ *
+ *
+ *
+ * Return value: (transfer full):
+ *
+ * Since: 1.0
+ **/
hb_shape_plan_t *
hb_shape_plan_get_empty (void)
{
@@ -134,12 +157,30 @@ hb_shape_plan_get_empty (void)
return const_cast<hb_shape_plan_t *> (&_hb_shape_plan_nil);
}
+/**
+ * hb_shape_plan_reference: (skip)
+ * @shape_plan: a shape plan.
+ *
+ *
+ *
+ * Return value: (transfer full):
+ *
+ * Since: 1.0
+ **/
hb_shape_plan_t *
hb_shape_plan_reference (hb_shape_plan_t *shape_plan)
{
return hb_object_reference (shape_plan);
}
+/**
+ * hb_shape_plan_destroy: (skip)
+ * @shape_plan: a shape plan.
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_shape_plan_destroy (hb_shape_plan_t *shape_plan)
{
@@ -154,6 +195,20 @@ hb_shape_plan_destroy (hb_shape_plan_t *shape_plan)
free (shape_plan);
}
+/**
+ * hb_shape_plan_set_user_data: (skip)
+ * @shape_plan: a shape plan.
+ * @key:
+ * @data:
+ * @destroy:
+ * @replace:
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_shape_plan_set_user_data (hb_shape_plan_t *shape_plan,
hb_user_data_key_t *key,
@@ -164,6 +219,17 @@ hb_shape_plan_set_user_data (hb_shape_plan_t *shape_plan,
return hb_object_set_user_data (shape_plan, key, data, destroy, replace);
}
+/**
+ * hb_shape_plan_get_user_data: (skip)
+ * @shape_plan: a shape plan.
+ * @key:
+ *
+ *
+ *
+ * Return value: (transfer none):
+ *
+ * Since: 1.0
+ **/
void *
hb_shape_plan_get_user_data (hb_shape_plan_t *shape_plan,
hb_user_data_key_t *key)
@@ -172,6 +238,20 @@ hb_shape_plan_get_user_data (hb_shape_plan_t *shape_plan,
}
+/**
+ * hb_shape_plan_execute:
+ * @shape_plan: a shape plan.
+ * @font: a font.
+ * @buffer: a buffer.
+ * @features: (array length=num_features):
+ * @num_features:
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_shape_plan_execute (hb_shape_plan_t *shape_plan,
hb_font_t *font,
@@ -238,6 +318,20 @@ hb_shape_plan_matches (const hb_shape_plan_t *shape_plan,
(shape_plan->shaper_func == proposal->shaper_func));
}
+/**
+ * hb_shape_plan_create_cached:
+ * @face:
+ * @props:
+ * @user_features: (array length=num_user_features):
+ * @num_user_features:
+ * @shaper_list: (array zero-terminated=1):
+ *
+ *
+ *
+ * Return value: (transfer full):
+ *
+ * Since: 1.0
+ **/
hb_shape_plan_t *
hb_shape_plan_create_cached (hb_face_t *face,
const hb_segment_properties_t *props,
@@ -307,6 +401,16 @@ retry:
return hb_shape_plan_reference (shape_plan);
}
+/**
+ * hb_shape_plan_get_shaper:
+ * @shape_plan: a shape plan.
+ *
+ *
+ *
+ * Return value: (transfer none):
+ *
+ * Since: 1.0
+ **/
const char *
hb_shape_plan_get_shaper (hb_shape_plan_t *shape_plan)
{
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-shape-plan.h b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-shape-plan.h
index 8f54552f90b..8f54552f90b 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-shape-plan.h
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-shape-plan.h
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-shape.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-shape.cc
index 80d8c1306bb..c1b752405e1 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-shape.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-shape.cc
@@ -153,6 +153,18 @@ parse_one_feature (const char **pp, const char *end, hb_feature_t *feature)
*pp == end;
}
+/**
+ * hb_feature_from_string:
+ * @str: (array length=len):
+ * @len:
+ * @feature: (out):
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_feature_from_string (const char *str, int len,
hb_feature_t *feature)
@@ -163,6 +175,16 @@ hb_feature_from_string (const char *str, int len,
return parse_one_feature (&str, str + len, feature);
}
+/**
+ * hb_feature_to_string:
+ * @feature:
+ * @buf: (array length=size):
+ * @size:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_feature_to_string (hb_feature_t *feature,
char *buf, unsigned int size)
@@ -209,6 +231,15 @@ void free_static_shaper_list (void)
free (static_shaper_list);
}
+/**
+ * hb_shape_list_shapers:
+ *
+ *
+ *
+ * Return value: (transfer none):
+ *
+ * Since: 1.0
+ **/
const char **
hb_shape_list_shapers (void)
{
@@ -244,6 +275,20 @@ retry:
}
+/**
+ * hb_shape_full:
+ * @font: a font.
+ * @buffer: a buffer.
+ * @features: (array length=num_features):
+ * @num_features:
+ * @shaper_list: (array zero-terminated=1):
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_shape_full (hb_font_t *font,
hb_buffer_t *buffer,
@@ -265,6 +310,17 @@ hb_shape_full (hb_font_t *font,
return res;
}
+/**
+ * hb_shape:
+ * @font: a font.
+ * @buffer: a buffer.
+ * @features: (array length=num_features):
+ * @num_features:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_shape (hb_font_t *font,
hb_buffer_t *buffer,
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-shape.h b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-shape.h
index 10a35cb517e..10a35cb517e 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-shape.h
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-shape.h
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-shaper-impl-private.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-shaper-impl-private.hh
index 7844081e95b..7844081e95b 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-shaper-impl-private.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-shaper-impl-private.hh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-shaper-list.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-shaper-list.hh
index b9c029e58f1..b9c029e58f1 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-shaper-list.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-shaper-list.hh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-shaper-private.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-shaper-private.hh
index 29c4493943d..29c4493943d 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-shaper-private.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-shaper-private.hh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-shaper.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-shaper.cc
index 44f718aa702..44f718aa702 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-shaper.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-shaper.cc
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-tt-font.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-tt-font.cc
index c503a404380..c503a404380 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-tt-font.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-tt-font.cc
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ucdn.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ucdn.cc
index 7d24559de67..7d24559de67 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-ucdn.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-ucdn.cc
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-unicode-private.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-unicode-private.hh
index dd4d00138e1..dd4d00138e1 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-unicode-private.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-unicode-private.hh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-unicode.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-unicode.cc
index b7e098737c7..5b44913bd35 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-unicode.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-unicode.cc
@@ -150,6 +150,16 @@ hb_unicode_funcs_get_default (void)
#pragma message("To suppress this warnings, define HB_NO_UNICODE_FUNCS.")
#endif
+/**
+ * hb_unicode_funcs_create: (Xconstructor)
+ * @parent: (allow-none):
+ *
+ *
+ *
+ * Return value: (transfer full):
+ *
+ * Since: 1.0
+ **/
hb_unicode_funcs_t *
hb_unicode_funcs_create (hb_unicode_funcs_t *parent)
{
@@ -187,18 +197,45 @@ const hb_unicode_funcs_t _hb_unicode_funcs_nil = {
}
};
+/**
+ * hb_unicode_funcs_get_empty:
+ *
+ *
+ *
+ * Return value: (transfer full):
+ *
+ * Since: 1.0
+ **/
hb_unicode_funcs_t *
hb_unicode_funcs_get_empty (void)
{
return const_cast<hb_unicode_funcs_t *> (&_hb_unicode_funcs_nil);
}
+/**
+ * hb_unicode_funcs_reference: (skip)
+ * @ufuncs: Unicode functions.
+ *
+ *
+ *
+ * Return value: (transfer full):
+ *
+ * Since: 1.0
+ **/
hb_unicode_funcs_t *
hb_unicode_funcs_reference (hb_unicode_funcs_t *ufuncs)
{
return hb_object_reference (ufuncs);
}
+/**
+ * hb_unicode_funcs_destroy: (skip)
+ * @ufuncs: Unicode functions.
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_unicode_funcs_destroy (hb_unicode_funcs_t *ufuncs)
{
@@ -214,6 +251,20 @@ hb_unicode_funcs_destroy (hb_unicode_funcs_t *ufuncs)
free (ufuncs);
}
+/**
+ * hb_unicode_funcs_set_user_data: (skip)
+ * @ufuncs: Unicode functions.
+ * @key:
+ * @data:
+ * @destroy:
+ * @replace:
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_unicode_funcs_set_user_data (hb_unicode_funcs_t *ufuncs,
hb_user_data_key_t *key,
@@ -224,6 +275,17 @@ hb_unicode_funcs_set_user_data (hb_unicode_funcs_t *ufuncs,
return hb_object_set_user_data (ufuncs, key, data, destroy, replace);
}
+/**
+ * hb_unicode_funcs_get_user_data: (skip)
+ * @ufuncs: Unicode functions.
+ * @key:
+ *
+ *
+ *
+ * Return value: (transfer none):
+ *
+ * Since: 1.0
+ **/
void *
hb_unicode_funcs_get_user_data (hb_unicode_funcs_t *ufuncs,
hb_user_data_key_t *key)
@@ -232,6 +294,14 @@ hb_unicode_funcs_get_user_data (hb_unicode_funcs_t *ufuncs,
}
+/**
+ * hb_unicode_funcs_make_immutable:
+ * @ufuncs: Unicode functions.
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_unicode_funcs_make_immutable (hb_unicode_funcs_t *ufuncs)
{
@@ -241,12 +311,32 @@ hb_unicode_funcs_make_immutable (hb_unicode_funcs_t *ufuncs)
ufuncs->immutable = true;
}
+/**
+ * hb_unicode_funcs_is_immutable:
+ * @ufuncs: Unicode functions.
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_unicode_funcs_is_immutable (hb_unicode_funcs_t *ufuncs)
{
return ufuncs->immutable;
}
+/**
+ * hb_unicode_funcs_get_parent:
+ * @ufuncs: Unicode functions.
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_unicode_funcs_t *
hb_unicode_funcs_get_parent (hb_unicode_funcs_t *ufuncs)
{
@@ -294,6 +384,19 @@ hb_unicode_##name (hb_unicode_funcs_t *ufuncs, \
HB_UNICODE_FUNCS_IMPLEMENT_CALLBACKS_SIMPLE
#undef HB_UNICODE_FUNC_IMPLEMENT
+/**
+ * hb_unicode_compose:
+ * @ufuncs: Unicode functions.
+ * @a:
+ * @b:
+ * @ab: (out):
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_unicode_compose (hb_unicode_funcs_t *ufuncs,
hb_codepoint_t a,
@@ -303,6 +406,19 @@ hb_unicode_compose (hb_unicode_funcs_t *ufuncs,
return ufuncs->compose (a, b, ab);
}
+/**
+ * hb_unicode_decompose:
+ * @ufuncs: Unicode functions.
+ * @ab:
+ * @a: (out):
+ * @b: (out):
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
hb_bool_t
hb_unicode_decompose (hb_unicode_funcs_t *ufuncs,
hb_codepoint_t ab,
@@ -312,6 +428,18 @@ hb_unicode_decompose (hb_unicode_funcs_t *ufuncs,
return ufuncs->decompose (ab, a, b);
}
+/**
+ * hb_unicode_decompose_compatibility:
+ * @ufuncs: Unicode functions.
+ * @u:
+ * @decomposed: (out):
+ *
+ *
+ *
+ * Return value:
+ *
+ * Since: 1.0
+ **/
unsigned int
hb_unicode_decompose_compatibility (hb_unicode_funcs_t *ufuncs,
hb_codepoint_t u,
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-unicode.h b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-unicode.h
index 2e10d98a3b3..1c4e097b92d 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-unicode.h
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-unicode.h
@@ -248,7 +248,7 @@ typedef hb_bool_t (*hb_unicode_decompose_func_t) (hb_unicode_funcs_t *ufuncs,
/**
* hb_unicode_decompose_compatibility_func_t:
- * @ufuncs: Unicode function structure
+ * @ufuncs: a Unicode function structure
* @u: codepoint to decompose
* @decomposed: address of codepoint array (of length %HB_UNICODE_MAX_DECOMPOSITION_LEN) to write decomposition into
* @user_data: user data pointer as passed to hb_unicode_funcs_set_decompose_compatibility_func()
@@ -274,44 +274,132 @@ typedef unsigned int (*hb_unicode_decompose_compatibility_func_t) (hb_unicode_
/* setters */
+/**
+ * hb_unicode_funcs_set_combining_class_func:
+ * @ufuncs: a Unicode function structure
+ * @func: (closure user_data) (destroy destroy) (scope notified):
+ * @user_data:
+ * @destroy:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_unicode_funcs_set_combining_class_func (hb_unicode_funcs_t *ufuncs,
- hb_unicode_combining_class_func_t combining_class_func,
+ hb_unicode_combining_class_func_t func,
void *user_data, hb_destroy_func_t destroy);
+/**
+ * hb_unicode_funcs_set_eastasian_width_func:
+ * @ufuncs: a Unicode function structure
+ * @func: (closure user_data) (destroy destroy) (scope notified):
+ * @user_data:
+ * @destroy:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_unicode_funcs_set_eastasian_width_func (hb_unicode_funcs_t *ufuncs,
- hb_unicode_eastasian_width_func_t eastasian_width_func,
+ hb_unicode_eastasian_width_func_t func,
void *user_data, hb_destroy_func_t destroy);
+/**
+ * hb_unicode_funcs_set_general_category_func:
+ * @ufuncs: a Unicode function structure
+ * @func: (closure user_data) (destroy destroy) (scope notified):
+ * @user_data:
+ * @destroy:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_unicode_funcs_set_general_category_func (hb_unicode_funcs_t *ufuncs,
- hb_unicode_general_category_func_t general_category_func,
+ hb_unicode_general_category_func_t func,
void *user_data, hb_destroy_func_t destroy);
+/**
+ * hb_unicode_funcs_set_mirroring_func:
+ * @ufuncs: a Unicode function structure
+ * @func: (closure user_data) (destroy destroy) (scope notified):
+ * @user_data:
+ * @destroy:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_unicode_funcs_set_mirroring_func (hb_unicode_funcs_t *ufuncs,
- hb_unicode_mirroring_func_t mirroring_func,
+ hb_unicode_mirroring_func_t func,
void *user_data, hb_destroy_func_t destroy);
+/**
+ * hb_unicode_funcs_set_script_func:
+ * @ufuncs: a Unicode function structure
+ * @func: (closure user_data) (destroy destroy) (scope notified):
+ * @user_data:
+ * @destroy:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_unicode_funcs_set_script_func (hb_unicode_funcs_t *ufuncs,
- hb_unicode_script_func_t script_func,
+ hb_unicode_script_func_t func,
void *user_data, hb_destroy_func_t destroy);
+/**
+ * hb_unicode_funcs_set_compose_func:
+ * @ufuncs: a Unicode function structure
+ * @func: (closure user_data) (destroy destroy) (scope notified):
+ * @user_data:
+ * @destroy:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_unicode_funcs_set_compose_func (hb_unicode_funcs_t *ufuncs,
- hb_unicode_compose_func_t compose_func,
+ hb_unicode_compose_func_t func,
void *user_data, hb_destroy_func_t destroy);
+/**
+ * hb_unicode_funcs_set_decompose_func:
+ * @ufuncs: a Unicode function structure
+ * @func: (closure user_data) (destroy destroy) (scope notified):
+ * @user_data:
+ * @destroy:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_unicode_funcs_set_decompose_func (hb_unicode_funcs_t *ufuncs,
- hb_unicode_decompose_func_t decompose_func,
+ hb_unicode_decompose_func_t func,
void *user_data, hb_destroy_func_t destroy);
+/**
+ * hb_unicode_funcs_set_decompose_compatibility_func:
+ * @ufuncs: a Unicode function structure
+ * @func: (closure user_data) (destroy destroy) (scope notified):
+ * @user_data:
+ * @destroy:
+ *
+ *
+ *
+ * Since: 1.0
+ **/
void
hb_unicode_funcs_set_decompose_compatibility_func (hb_unicode_funcs_t *ufuncs,
- hb_unicode_decompose_compatibility_func_t decompose_compatibility_func,
+ hb_unicode_decompose_compatibility_func_t func,
void *user_data, hb_destroy_func_t destroy);
/* accessors */
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-uniscribe.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-uniscribe.cc
index 65a63f3be54..65a63f3be54 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-uniscribe.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-uniscribe.cc
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-uniscribe.h b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-uniscribe.h
index 51887c8794b..51887c8794b 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-uniscribe.h
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-uniscribe.h
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-utf-private.hh b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-utf-private.hh
index b9a6519d28e..b9a6519d28e 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-utf-private.hh
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-utf-private.hh
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-version.h.in b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-version.h.in
index 43634f91ce8..43634f91ce8 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-version.h.in
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-version.h.in
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-warning.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-warning.cc
index 4f1f65f5a21..4f1f65f5a21 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb-warning.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb-warning.cc
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb.h b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb.h
index c5a938a3818..c5a938a3818 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/hb.h
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/hb.h
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/main.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/main.cc
index b362744e213..ff75237b23f 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/main.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/main.cc
@@ -170,7 +170,7 @@ main (int argc, char **argv)
}
break;
- case GDEF::Tag:
+ case GDEF::tableTag:
{
const GDEF &gdef = *CastP<GDEF> (font_data + table.offset);
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/test-buffer-serialize.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/test-buffer-serialize.cc
index 827b0513b37..827b0513b37 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/test-buffer-serialize.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/test-buffer-serialize.cc
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/test-size-params.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/test-size-params.cc
index 947b5669a14..947b5669a14 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/test-size-params.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/test-size-params.cc
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/test-would-substitute.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/test-would-substitute.cc
index 4731e265607..4731e265607 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/test-would-substitute.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/test-would-substitute.cc
diff --git a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/test.cc b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/test.cc
index 1acb6ead70b..1acb6ead70b 100644
--- a/Build/source/libs/harfbuzz/harfbuzz-0.9.20/src/test.cc
+++ b/Build/source/libs/harfbuzz/harfbuzz-0.9.21/src/test.cc
diff --git a/Build/source/libs/harfbuzz/version.ac b/Build/source/libs/harfbuzz/version.ac
index e0ecc8dfcda..78448dbe960 100644
--- a/Build/source/libs/harfbuzz/version.ac
+++ b/Build/source/libs/harfbuzz/version.ac
@@ -8,4 +8,4 @@ dnl
dnl --------------------------------------------------------
dnl
dnl m4-include this file to define the current harfbuzz version
-m4_define([harfbuzz_version], [0.9.20])
+m4_define([harfbuzz_version], [0.9.21])