summaryrefslogtreecommitdiff
path: root/src/cairo-path-fixed.c
diff options
context:
space:
mode:
authorAndrea Canciani <ranma42@gmail.com>2010-10-28 18:36:42 +0200
committerAndrea Canciani <ranma42@gmail.com>2010-10-29 17:31:23 +0200
commit634fcf2c0a66b342ae81faa0e0a75ae72491a313 (patch)
tree8de4557ef7cd3aaad0bd1ff4963d8a8ef5eabd52 /src/cairo-path-fixed.c
parent9c0e4db570d9de506eb48de0e9a27497b8cf2f61 (diff)
path: Transform current_point and last_move_to in _cairo_path_fixed_scale_and_offset
They were previously left in their old position (which could lead to incorrect flag computation if other operations were added to the path).
Diffstat (limited to 'src/cairo-path-fixed.c')
-rw-r--r--src/cairo-path-fixed.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/cairo-path-fixed.c b/src/cairo-path-fixed.c
index 4ab4e2606..4fdcfe0a5 100644
--- a/src/cairo-path-fixed.c
+++ b/src/cairo-path-fixed.c
@@ -975,6 +975,10 @@ _cairo_path_fixed_offset_and_scale (cairo_path_fixed_t *path,
return;
}
+ path->last_move_point.x = _cairo_fixed_mul (scalex, path->last_move_point.x) + offx;
+ path->last_move_point.y = _cairo_fixed_mul (scaley, path->last_move_point.y) + offy;
+ path->current_point.x = _cairo_fixed_mul (scalex, path->current_point.x) + offx;
+ path->current_point.y = _cairo_fixed_mul (scaley, path->current_point.y) + offy;
/* Recompute an approximation of the flags.
* It might be more strict than what is actually needed.
*/