OLD | NEW |
1 /* | 1 /* |
2 * Copyright © 2011,2012 Google, Inc. | 2 * Copyright © 2011,2012 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 1228 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1239 { | 1239 { |
1240 last_syllable = syllable; | 1240 last_syllable = syllable; |
1241 | 1241 |
1242 hb_glyph_info_t ginfo = dottedcircle; | 1242 hb_glyph_info_t ginfo = dottedcircle; |
1243 ginfo.cluster = buffer->cur().cluster; | 1243 ginfo.cluster = buffer->cur().cluster; |
1244 ginfo.mask = buffer->cur().mask; | 1244 ginfo.mask = buffer->cur().mask; |
1245 ginfo.syllable() = buffer->cur().syllable(); | 1245 ginfo.syllable() = buffer->cur().syllable(); |
1246 /* TODO Set glyph_props? */ | 1246 /* TODO Set glyph_props? */ |
1247 | 1247 |
1248 /* Insert dottedcircle after possible Repha. */ | 1248 /* Insert dottedcircle after possible Repha. */ |
1249 while (buffer->idx < buffer->len && | 1249 while (buffer->idx < buffer->len && !buffer->in_error && |
1250 last_syllable == buffer->cur().syllable() && | 1250 last_syllable == buffer->cur().syllable() && |
1251 buffer->cur().indic_category() == OT_Repha) | 1251 buffer->cur().indic_category() == OT_Repha) |
1252 buffer->next_glyph (); | 1252 buffer->next_glyph (); |
1253 | 1253 |
1254 buffer->output_info (ginfo); | 1254 buffer->output_info (ginfo); |
1255 } | 1255 } |
1256 else | 1256 else |
1257 buffer->next_glyph (); | 1257 buffer->next_glyph (); |
1258 } | 1258 } |
1259 | 1259 |
(...skipping 582 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1842 data_destroy_indic, | 1842 data_destroy_indic, |
1843 NULL, /* preprocess_text */ | 1843 NULL, /* preprocess_text */ |
1844 NULL, /* postprocess_glyphs */ | 1844 NULL, /* postprocess_glyphs */ |
1845 HB_OT_SHAPE_NORMALIZATION_MODE_COMPOSED_DIACRITICS_NO_SHORT_CIRCUIT, | 1845 HB_OT_SHAPE_NORMALIZATION_MODE_COMPOSED_DIACRITICS_NO_SHORT_CIRCUIT, |
1846 decompose_indic, | 1846 decompose_indic, |
1847 compose_indic, | 1847 compose_indic, |
1848 setup_masks_indic, | 1848 setup_masks_indic, |
1849 HB_OT_SHAPE_ZERO_WIDTH_MARKS_NONE, | 1849 HB_OT_SHAPE_ZERO_WIDTH_MARKS_NONE, |
1850 false, /* fallback_position */ | 1850 false, /* fallback_position */ |
1851 }; | 1851 }; |
OLD | NEW |