diff options
author | Henry (Yu) Song - SISA <hsong@sisa.samsung.com> | 2012-07-24 02:05:15 +0000 |
---|---|---|
committer | Andrea Canciani <ranma42@gmail.com> | 2012-07-24 11:06:29 +0200 |
commit | 459c060b6fcc0a3b7e6f0e544fe83f954a5ca716 (patch) | |
tree | 6d399ccae8fb8fcf077616a4a793d8df09cf4893 /src/cairo-clip.c | |
parent | 5f1dd8b3684db5aed42f355fa41310639e7d395d (diff) | |
download | cairo-459c060b6fcc0a3b7e6f0e544fe83f954a5ca716.tar.gz |
clip: Transform clip path in _cairo_clip_intersect_clip_path_transformed()
_cairo_clip_intersect_clip_path_transformed() completely ignored the
transformation matrix instead of transforming all the clip paths with
it.
This caused bugs when replaying recording surfaces.
Fixes record{2x,1414x,90}-paint-alpha-clip-mask.
Diffstat (limited to 'src/cairo-clip.c')
-rw-r--r-- | src/cairo-clip.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/cairo-clip.c b/src/cairo-clip.c index bd70c06df..0df9b06bf 100644 --- a/src/cairo-clip.c +++ b/src/cairo-clip.c @@ -536,6 +536,8 @@ _cairo_clip_intersect_clip_path_transformed (cairo_clip_t *clip, if (_cairo_path_fixed_init_copy (&path, &clip_path->path)) return _cairo_clip_set_all_clipped (clip); + _cairo_path_fixed_transform (&path, m); + clip = _cairo_clip_intersect_path (clip, &path, clip_path->fill_rule, |