| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright © 2015 Mozilla Foundation. | 2 * Copyright © 2015 Mozilla Foundation. |
| 3 * Copyright © 2015 Google, Inc. | 3 * Copyright © 2015 Google, Inc. |
| 4 * | 4 * |
| 5 * This is part of HarfBuzz, a text shaping library. | 5 * This is part of HarfBuzz, a text shaping library. |
| 6 * | 6 * |
| 7 * Permission is hereby granted, without written agreement and without | 7 * Permission is hereby granted, without written agreement and without |
| 8 * license or royalty fees, to use, copy, modify, and distribute this | 8 * license or royalty fees, to use, copy, modify, and distribute this |
| 9 * software and its documentation for any purpose, provided that the | 9 * software and its documentation for any purpose, provided that the |
| 10 * above copyright notice and the following two paragraphs appear in | 10 * above copyright notice and the following two paragraphs appear in |
| (...skipping 481 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 492 for (unsigned int i = 0; i < count; i++) | 492 for (unsigned int i = 0; i < count; i++) |
| 493 if ((info[i].syllable() & 0x0F) == broken_cluster) | 493 if ((info[i].syllable() & 0x0F) == broken_cluster) |
| 494 { | 494 { |
| 495 has_broken_syllables = true; | 495 has_broken_syllables = true; |
| 496 break; | 496 break; |
| 497 } | 497 } |
| 498 if (likely (!has_broken_syllables)) | 498 if (likely (!has_broken_syllables)) |
| 499 return; | 499 return; |
| 500 | 500 |
| 501 hb_glyph_info_t dottedcircle = {0}; | 501 hb_glyph_info_t dottedcircle = {0}; |
| 502 if (!font->get_glyph (0x25CCu, 0, &dottedcircle.codepoint)) | 502 if (!font->get_nominal_glyph (0x25CCu, &dottedcircle.codepoint)) |
| 503 return; | 503 return; |
| 504 dottedcircle.use_category() = hb_use_get_categories (0x25CC); | 504 dottedcircle.use_category() = hb_use_get_categories (0x25CC); |
| 505 | 505 |
| 506 buffer->clear_output (); | 506 buffer->clear_output (); |
| 507 | 507 |
| 508 buffer->idx = 0; | 508 buffer->idx = 0; |
| 509 unsigned int last_syllable = 0; | 509 unsigned int last_syllable = 0; |
| 510 while (buffer->idx < buffer->len && !buffer->in_error) | 510 while (buffer->idx < buffer->len && !buffer->in_error) |
| 511 { | 511 { |
| 512 unsigned int syllable = buffer->cur().syllable(); | 512 unsigned int syllable = buffer->cur().syllable(); |
| (...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 579 data_destroy_use, | 579 data_destroy_use, |
| 580 NULL, /* preprocess_text */ | 580 NULL, /* preprocess_text */ |
| 581 NULL, /* postprocess_glyphs */ | 581 NULL, /* postprocess_glyphs */ |
| 582 HB_OT_SHAPE_NORMALIZATION_MODE_COMPOSED_DIACRITICS_NO_SHORT_CIRCUIT, | 582 HB_OT_SHAPE_NORMALIZATION_MODE_COMPOSED_DIACRITICS_NO_SHORT_CIRCUIT, |
| 583 NULL, /* decompose */ | 583 NULL, /* decompose */ |
| 584 compose_use, | 584 compose_use, |
| 585 setup_masks_use, | 585 setup_masks_use, |
| 586 HB_OT_SHAPE_ZERO_WIDTH_MARKS_BY_GDEF_EARLY, | 586 HB_OT_SHAPE_ZERO_WIDTH_MARKS_BY_GDEF_EARLY, |
| 587 false, /* fallback_position */ | 587 false, /* fallback_position */ |
| 588 }; | 588 }; |
| OLD | NEW |