OLD | NEW |
1 /* | 1 /* |
2 * Copyright © 1998-2004 David Turner and Werner Lemberg | 2 * Copyright © 1998-2004 David Turner and Werner Lemberg |
3 * Copyright © 2004,2007,2009,2010 Red Hat, Inc. | 3 * Copyright © 2004,2007,2009,2010 Red Hat, Inc. |
4 * Copyright © 2011,2012 Google, Inc. | 4 * Copyright © 2011,2012 Google, Inc. |
5 * | 5 * |
6 * This is part of HarfBuzz, a text shaping library. | 6 * This is part of HarfBuzz, a text shaping library. |
7 * | 7 * |
8 * Permission is hereby granted, without written agreement and without | 8 * Permission is hereby granted, without written agreement and without |
9 * license or royalty fees, to use, copy, modify, and distribute this | 9 * license or royalty fees, to use, copy, modify, and distribute this |
10 * software and its documentation for any purpose, provided that the | 10 * software and its documentation for any purpose, provided that the |
(...skipping 1132 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1143 /* Wipe the new space */ | 1143 /* Wipe the new space */ |
1144 if (length > buffer->len) { | 1144 if (length > buffer->len) { |
1145 memset (buffer->info + buffer->len, 0, sizeof (buffer->info[0]) * (length -
buffer->len)); | 1145 memset (buffer->info + buffer->len, 0, sizeof (buffer->info[0]) * (length -
buffer->len)); |
1146 if (buffer->have_positions) | 1146 if (buffer->have_positions) |
1147 memset (buffer->pos + buffer->len, 0, sizeof (buffer->pos[0]) * (length -
buffer->len)); | 1147 memset (buffer->pos + buffer->len, 0, sizeof (buffer->pos[0]) * (length -
buffer->len)); |
1148 } | 1148 } |
1149 | 1149 |
1150 buffer->len = length; | 1150 buffer->len = length; |
1151 | 1151 |
1152 if (!length) | 1152 if (!length) |
| 1153 { |
| 1154 buffer->content_type = HB_BUFFER_CONTENT_TYPE_INVALID; |
1153 buffer->clear_context (0); | 1155 buffer->clear_context (0); |
| 1156 } |
1154 buffer->clear_context (1); | 1157 buffer->clear_context (1); |
1155 | 1158 |
1156 return true; | 1159 return true; |
1157 } | 1160 } |
1158 | 1161 |
1159 /** | 1162 /** |
1160 * hb_buffer_get_length: | 1163 * hb_buffer_get_length: |
1161 * @buffer: a buffer. | 1164 * @buffer: a buffer. |
1162 * | 1165 * |
1163 * Returns the number of items in the buffer. | 1166 * Returns the number of items in the buffer. |
(...skipping 325 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1489 | 1492 |
1490 unsigned int start = 0; | 1493 unsigned int start = 0; |
1491 unsigned int end; | 1494 unsigned int end; |
1492 for (end = start + 1; end < count; end++) | 1495 for (end = start + 1; end < count; end++) |
1493 if (info[start].cluster != info[end].cluster) { | 1496 if (info[start].cluster != info[end].cluster) { |
1494 normalize_glyphs_cluster (buffer, start, end, backward); | 1497 normalize_glyphs_cluster (buffer, start, end, backward); |
1495 start = end; | 1498 start = end; |
1496 } | 1499 } |
1497 normalize_glyphs_cluster (buffer, start, end, backward); | 1500 normalize_glyphs_cluster (buffer, start, end, backward); |
1498 } | 1501 } |
OLD | NEW |