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.
This commit is contained in:
Henry (Yu) Song - SISA 2012-07-24 02:05:15 +00:00 committed by Andrea Canciani
parent 5f1dd8b368
commit 459c060b6f

View file

@ -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,