diff options
author | Akira Kakuto <kakuto@fuk.kindai.ac.jp> | 2018-01-31 01:11:59 +0000 |
---|---|---|
committer | Akira Kakuto <kakuto@fuk.kindai.ac.jp> | 2018-01-31 01:11:59 +0000 |
commit | c3f11193fa94d266d32f36ebd008d478fa2671e0 (patch) | |
tree | 3b13b901d86aa7c323cb407835ac8cb9397cd364 /Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-layout-private.hh | |
parent | f223ad48afe014b1314fd294f0e099232f46b63e (diff) |
harfbuzz 1.7.5
git-svn-id: svn://tug.org/texlive/trunk@46498 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-layout-private.hh')
-rw-r--r-- | Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-layout-private.hh | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-layout-private.hh b/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-layout-private.hh index 0f0926f8906..60119629cf5 100644 --- a/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-layout-private.hh +++ b/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-ot-layout-private.hh @@ -90,12 +90,12 @@ hb_ot_layout_substitute_start (hb_font_t *font, struct hb_ot_layout_lookup_accelerator_t; namespace OT { - struct hb_apply_context_t; + struct hb_ot_apply_context_t; struct SubstLookup; } HB_INTERNAL void -hb_ot_layout_substitute_lookup (OT::hb_apply_context_t *c, +hb_ot_layout_substitute_lookup (OT::hb_ot_apply_context_t *c, const OT::SubstLookup &lookup, const hb_ot_layout_lookup_accelerator_t &accel); @@ -130,6 +130,10 @@ namespace OT { struct avar; } +namespace AAT { + struct morx; +} + struct hb_ot_layout_lookup_accelerator_t { template <typename TLookup> @@ -165,6 +169,7 @@ struct hb_ot_layout_t OT::hb_lazy_table_loader_t<struct OT::MATH> math; OT::hb_lazy_table_loader_t<struct OT::fvar> fvar; OT::hb_lazy_table_loader_t<struct OT::avar> avar; + OT::hb_lazy_table_loader_t<struct AAT::morx> morx; unsigned int gsub_lookup_count; unsigned int gpos_lookup_count; @@ -280,7 +285,11 @@ _hb_glyph_info_set_unicode_props (hb_glyph_info_t *info, hb_buffer_t *buffer) else if (unlikely (hb_in_range (u, 0xE0020u, 0xE007Fu))) props |= UPROPS_MASK_HIDDEN; /* COMBINING GRAPHEME JOINER should not be skipped; at least some times. * https://github.com/harfbuzz/harfbuzz/issues/554 */ - else if (unlikely (u == 0x034Fu)) props |= UPROPS_MASK_HIDDEN; + else if (unlikely (u == 0x034Fu)) + { + buffer->scratch_flags |= HB_BUFFER_SCRATCH_FLAG_HAS_CGJ; + props |= UPROPS_MASK_HIDDEN; + } } else if (unlikely (HB_UNICODE_GENERAL_CATEGORY_IS_NON_ENCLOSING_MARK_OR_MODIFIER_SYMBOL (gen_cat))) { @@ -388,6 +397,11 @@ _hb_glyph_info_is_default_ignorable_and_not_hidden (const hb_glyph_info_t *info) == UPROPS_MASK_IGNORABLE) && !_hb_glyph_info_ligated (info); } +static inline void +_hb_glyph_info_unhide (hb_glyph_info_t *info) +{ + info->unicode_props() &= ~ UPROPS_MASK_HIDDEN; +} static inline bool _hb_glyph_info_is_unicode_format (const hb_glyph_info_t *info) |