Index: third_party/harfbuzz-ng/src/hb-ot-shape-complex-thai.cc |
diff --git a/third_party/harfbuzz-ng/src/hb-ot-shape-complex-thai.cc b/third_party/harfbuzz-ng/src/hb-ot-shape-complex-thai.cc |
index d4ede209f4b39a6248cd0ccda7417f9e7d690ff0..6556a325173ccc6df867347d60fb9c223878d3ea 100644 |
--- a/third_party/harfbuzz-ng/src/hb-ot-shape-complex-thai.cc |
+++ b/third_party/harfbuzz-ng/src/hb-ot-shape-complex-thai.cc |
@@ -139,7 +139,7 @@ thai_pua_shape (hb_codepoint_t u, thai_action_t action, hb_font_t *font) |
}; |
switch (action) { |
- default: assert (false); /* Fallthrough */ |
+ default: assert (false); HB_FALLTHROUGH; |
case NOP: return u; |
case SD: pua_mappings = SD_mappings; break; |
case SDL: pua_mappings = SDL_mappings; break; |
@@ -315,7 +315,7 @@ preprocess_text_thai (const hb_ot_shape_plan_t *plan, |
buffer->clear_output (); |
unsigned int count = buffer->len; |
- for (buffer->idx = 0; buffer->idx < count;) |
+ for (buffer->idx = 0; buffer->idx < count && !buffer->in_error;) |
{ |
hb_codepoint_t u = buffer->cur().codepoint; |
if (likely (!IS_SARA_AM (u))) { |
@@ -330,7 +330,7 @@ preprocess_text_thai (const hb_ot_shape_plan_t *plan, |
if (unlikely (buffer->in_error)) |
return; |
- /* Make Nikhahit be recognized as a mark when zeroing widths. */ |
+ /* Make Nikhahit be recognized as a ccc=0 mark when zeroing widths. */ |
unsigned int end = buffer->out_len; |
_hb_glyph_info_set_general_category (&buffer->out_info[end - 2], HB_UNICODE_GENERAL_CATEGORY_NON_SPACING_MARK); |
@@ -372,6 +372,7 @@ const hb_ot_complex_shaper_t _hb_ot_complex_shaper_thai = |
NULL, /* data_create */ |
NULL, /* data_destroy */ |
preprocess_text_thai, |
+ NULL, /* postprocess_glyphs */ |
HB_OT_SHAPE_NORMALIZATION_MODE_DEFAULT, |
NULL, /* decompose */ |
NULL, /* compose */ |