gfx/cairo/win32-canvas-glyph-position.patch

branch
TOR_BUG_9701
changeset 8
97036ab72558
equal deleted inserted replaced
-1:000000000000 0:0d4376494c49
1 diff --git a/gfx/cairo/cairo/src/cairo-win32-font.c b/gfx/cairo/cairo/src/cairo-win32-font.c
2 --- a/gfx/cairo/cairo/src/cairo-win32-font.c
3 +++ b/gfx/cairo/cairo/src/cairo-win32-font.c
4 @@ -1182,22 +1182,22 @@ _add_glyph (cairo_glyph_state_t *state,
5 if (state->glyphs.num_elements > 0) {
6 int dx;
7
8 if (logical_y != state->last_y) {
9 status = _flush_glyphs (state);
10 if (status)
11 return status;
12 state->start_x = logical_x;
13 + } else {
14 + dx = logical_x - state->last_x;
15 + status = _cairo_array_append (&state->dx, &dx);
16 + if (status)
17 + return status;
18 }
19 -
20 - dx = logical_x - state->last_x;
21 - status = _cairo_array_append (&state->dx, &dx);
22 - if (status)
23 - return status;
24 } else {
25 state->start_x = logical_x;
26 }
27
28 state->last_x = logical_x;
29 state->last_y = logical_y;
30
31 status = _cairo_array_append (&state->glyphs, &glyph_index);

mercurial