| Index: third_party/harfbuzz-ng/src/hb-ot-shape-complex-use.cc
|
| diff --git a/third_party/harfbuzz-ng/src/hb-ot-shape-complex-use.cc b/third_party/harfbuzz-ng/src/hb-ot-shape-complex-use.cc
|
| index d2b6e63bd3f92067d076e71fec5bd1c091e3565a..045ead52f680dbe59d6e4a7e98f0fa7768c18700 100644
|
| --- a/third_party/harfbuzz-ng/src/hb-ot-shape-complex-use.cc
|
| +++ b/third_party/harfbuzz-ng/src/hb-ot-shape-complex-use.cc
|
| @@ -184,6 +184,9 @@ has_arabic_joining (hb_script_t script)
|
| case HB_SCRIPT_MANICHAEAN:
|
| case HB_SCRIPT_PSALTER_PAHLAVI:
|
|
|
| + /* Unicode-9.0 additions */
|
| + case HB_SCRIPT_ADLAM:
|
| +
|
| return true;
|
|
|
| default:
|
| @@ -227,12 +230,12 @@ data_destroy_use (void *data)
|
| enum syllable_type_t {
|
| independent_cluster,
|
| virama_terminated_cluster,
|
| - consonant_cluster,
|
| - vowel_cluster,
|
| + standard_cluster,
|
| number_joiner_terminated_cluster,
|
| numeral_cluster,
|
| symbol_cluster,
|
| broken_cluster,
|
| + non_cluster,
|
| };
|
|
|
| #include "hb-ot-shape-complex-use-machine.hh"
|
| @@ -312,13 +315,13 @@ setup_topographical_masks (const hb_ot_shape_plan_t *plan,
|
| {
|
| case independent_cluster:
|
| case symbol_cluster:
|
| + case non_cluster:
|
| /* These don't join. Nothing to do. */
|
| last_form = _NONE;
|
| break;
|
|
|
| case virama_terminated_cluster:
|
| - case consonant_cluster:
|
| - case vowel_cluster:
|
| + case standard_cluster:
|
| case number_joiner_terminated_cluster:
|
| case numeral_cluster:
|
| case broken_cluster:
|
| @@ -421,15 +424,14 @@ reorder_syllable (hb_buffer_t *buffer, unsigned int start, unsigned int end)
|
| /* Only a few syllable types need reordering. */
|
| if (unlikely (!(FLAG_SAFE (syllable_type) &
|
| (FLAG (virama_terminated_cluster) |
|
| - FLAG (consonant_cluster) |
|
| - FLAG (vowel_cluster) |
|
| + FLAG (standard_cluster) |
|
| FLAG (broken_cluster) |
|
| 0))))
|
| return;
|
|
|
| hb_glyph_info_t *info = buffer->info;
|
|
|
| -#define BASE_FLAGS (FLAG (USE_B) | FLAG (USE_GB) | FLAG (USE_IV))
|
| +#define BASE_FLAGS (FLAG (USE_B) | FLAG (USE_GB))
|
|
|
| /* Move things forward. */
|
| if (info[start].use_category() == USE_R && end - start > 1)
|
|
|