Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(514)

Side by Side Diff: third_party/harfbuzz-ng/src/hb-ot-shape-normalize.cc

Issue 935333002: Update from https://crrev.com/316786 (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 179 matching lines...) Expand 10 before | Expand all | Expand 10 after
190 for (i = 0; i < len; i++) 190 for (i = 0; i < len; i++)
191 output_char (c->buffer, decomposed[i], glyphs[i]); 191 output_char (c->buffer, decomposed[i], glyphs[i]);
192 192
193 return len; 193 return len;
194 } 194 }
195 195
196 static inline void 196 static inline void
197 decompose_current_character (const hb_ot_shape_normalize_context_t *c, bool shor test) 197 decompose_current_character (const hb_ot_shape_normalize_context_t *c, bool shor test)
198 { 198 {
199 hb_buffer_t * const buffer = c->buffer; 199 hb_buffer_t * const buffer = c->buffer;
200 hb_codepoint_t u = buffer->cur().codepoint;
200 hb_codepoint_t glyph; 201 hb_codepoint_t glyph;
201 202
202 /* Kind of a cute waterfall here... */ 203 /* Kind of a cute waterfall here... */
203 if (shortest && c->font->get_glyph (buffer->cur().codepoint, 0, &glyph)) 204 if (shortest && c->font->get_glyph (u, 0, &glyph))
204 next_char (buffer, glyph); 205 next_char (buffer, glyph);
205 else if (decompose (c, shortest, buffer->cur().codepoint)) 206 else if (decompose (c, shortest, u))
206 skip_char (buffer); 207 skip_char (buffer);
207 else if (!shortest && c->font->get_glyph (buffer->cur().codepoint, 0, &glyph)) 208 else if (!shortest && c->font->get_glyph (u, 0, &glyph))
208 next_char (buffer, glyph); 209 next_char (buffer, glyph);
209 else if (decompose_compatibility (c, buffer->cur().codepoint)) 210 else if (decompose_compatibility (c, u))
210 skip_char (buffer); 211 skip_char (buffer);
211 else 212 else
212 next_char (buffer, glyph); /* glyph is initialized in earlier branches. */ 213 next_char (buffer, glyph); /* glyph is initialized in earlier branches. */
213 } 214 }
214 215
215 static inline void 216 static inline void
216 handle_variation_selector_cluster (const hb_ot_shape_normalize_context_t *c, uns igned int end, bool short_circuit) 217 handle_variation_selector_cluster (const hb_ot_shape_normalize_context_t *c, uns igned int end, bool short_circuit)
217 { 218 {
218 /* TODO Currently if there's a variation-selector we give-up, it's just too ha rd. */ 219 /* TODO Currently if there's a variation-selector we give-up, it's just too ha rd. */
219 hb_buffer_t * const buffer = c->buffer; 220 hb_buffer_t * const buffer = c->buffer;
(...skipping 186 matching lines...) Expand 10 before | Expand all | Expand 10 after
406 407
407 /* Blocked, or doesn't compose. */ 408 /* Blocked, or doesn't compose. */
408 buffer->next_glyph (); 409 buffer->next_glyph ();
409 410
410 if (_hb_glyph_info_get_modified_combining_class (&buffer->prev()) == 0) 411 if (_hb_glyph_info_get_modified_combining_class (&buffer->prev()) == 0)
411 starter = buffer->out_len - 1; 412 starter = buffer->out_len - 1;
412 } 413 }
413 buffer->swap_buffers (); 414 buffer->swap_buffers ();
414 415
415 } 416 }
OLDNEW
« no previous file with comments | « third_party/harfbuzz-ng/src/hb-ot-shape-complex-private.hh ('k') | third_party/harfbuzz-ng/src/hb-private.hh » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698