| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright © 2011,2012,2013 Google, Inc. | 2 * Copyright © 2011,2012,2013 Google, Inc. |
| 3 * | 3 * |
| 4 * This is part of HarfBuzz, a text shaping library. | 4 * This is part of HarfBuzz, a text shaping library. |
| 5 * | 5 * |
| 6 * Permission is hereby granted, without written agreement and without | 6 * Permission is hereby granted, without written agreement and without |
| 7 * license or royalty fees, to use, copy, modify, and distribute this | 7 * license or royalty fees, to use, copy, modify, and distribute this |
| 8 * software and its documentation for any purpose, provided that the | 8 * software and its documentation for any purpose, provided that the |
| 9 * above copyright notice and the following two paragraphs appear in | 9 * above copyright notice and the following two paragraphs appear in |
| 10 * all copies of this software. | 10 * all copies of this software. |
| (...skipping 373 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 384 if (pos == POS_BELOW_C && info[i].myanmar_category() != OT_A) | 384 if (pos == POS_BELOW_C && info[i].myanmar_category() != OT_A) |
| 385 { | 385 { |
| 386 pos = POS_AFTER_SUB; | 386 pos = POS_AFTER_SUB; |
| 387 info[i].myanmar_position() = pos; | 387 info[i].myanmar_position() = pos; |
| 388 continue; | 388 continue; |
| 389 } | 389 } |
| 390 info[i].myanmar_position() = pos; | 390 info[i].myanmar_position() = pos; |
| 391 } | 391 } |
| 392 } | 392 } |
| 393 | 393 |
| 394 buffer->merge_clusters (start, end); | |
| 395 /* Sit tight, rock 'n roll! */ | 394 /* Sit tight, rock 'n roll! */ |
| 396 hb_bubble_sort (info + start, end - start, compare_myanmar_order); | 395 buffer->sort (start, end, compare_myanmar_order); |
| 397 } | 396 } |
| 398 | 397 |
| 399 static void | 398 static void |
| 400 initial_reordering_syllable (const hb_ot_shape_plan_t *plan, | 399 initial_reordering_syllable (const hb_ot_shape_plan_t *plan, |
| 401 hb_face_t *face, | 400 hb_face_t *face, |
| 402 hb_buffer_t *buffer, | 401 hb_buffer_t *buffer, |
| 403 unsigned int start, unsigned int end) | 402 unsigned int start, unsigned int end) |
| 404 { | 403 { |
| 405 syllable_type_t syllable_type = (syllable_type_t) (buffer->info[start].syllabl
e() & 0x0F); | 404 syllable_type_t syllable_type = (syllable_type_t) (buffer->info[start].syllabl
e() & 0x0F); |
| 406 switch (syllable_type) { | 405 switch (syllable_type) { |
| (...skipping 117 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 524 NULL, /* data_create */ | 523 NULL, /* data_create */ |
| 525 NULL, /* data_destroy */ | 524 NULL, /* data_destroy */ |
| 526 NULL, /* preprocess_text */ | 525 NULL, /* preprocess_text */ |
| 527 HB_OT_SHAPE_NORMALIZATION_MODE_COMPOSED_DIACRITICS_NO_SHORT_CIRCUIT, | 526 HB_OT_SHAPE_NORMALIZATION_MODE_COMPOSED_DIACRITICS_NO_SHORT_CIRCUIT, |
| 528 NULL, /* decompose */ | 527 NULL, /* decompose */ |
| 529 NULL, /* compose */ | 528 NULL, /* compose */ |
| 530 setup_masks_myanmar, | 529 setup_masks_myanmar, |
| 531 HB_OT_SHAPE_ZERO_WIDTH_MARKS_BY_GDEF_EARLY, | 530 HB_OT_SHAPE_ZERO_WIDTH_MARKS_BY_GDEF_EARLY, |
| 532 false, /* fallback_position */ | 531 false, /* fallback_position */ |
| 533 }; | 532 }; |
| OLD | NEW |