Commit 5a90e383 authored by Kouhei Sutou's avatar Kouhei Sutou Committed by Dom Lachowicz

Fix clipping regression introduced by the 2006-10-13 patch (bug 388545)

2007-01-25  Kouhei Sutou <kou@cozmixng.org>

        * rsvg-cairo-clip.c: Fix clipping regression introduced by the
        2006-10-13 patch (bug 388545)

svn path=/trunk/; revision=1091
parent f98fad03
2007-01-25 Kouhei Sutou <kou@cozmixng.org>
* rsvg-cairo-clip.c: Fix clipping regression introduced by the
2006-10-13 patch (bug 388545)
2007-01-13 Emmanuel Pacaud <emmanuel.pacaud@lapp.in2p3.fr>
Fix Emacs modeline. Tab is 8 characters.
......
......@@ -43,16 +43,34 @@ struct RsvgCairoClipRender {
cairo_t *cr;
};
static void
rsvg_cairo_clip_apply_affine (cairo_t *cr, const double affine[6])
{
cairo_matrix_t matrix;
cairo_matrix_init (&matrix,
affine[0], affine[1],
affine[2], affine[3],
affine[4], affine[5]);
cairo_transform (cr, &matrix);
}
static void
rsvg_cairo_clip_render_path (RsvgDrawingCtx * ctx, const RsvgBpathDef * bpath_def)
{
RsvgCairoClipRender *render = (RsvgCairoClipRender *) ctx->render;
RsvgState *state = rsvg_state_current (ctx);
cairo_t *cr;
RsvgBpath *bpath;
cairo_matrix_t save;
int i;
cr = render->cr;
cairo_get_matrix (cr, &save);
rsvg_cairo_clip_apply_affine (cr, state->affine);
if (rsvg_state_current (ctx)->clip_rule == FILL_RULE_EVENODD)
cairo_set_fill_rule (((RsvgCairoRender *) ctx->render)->cr, CAIRO_FILL_RULE_EVEN_ODD);
else /* state->fill_rule == FILL_RULE_NONZERO */
......@@ -78,6 +96,7 @@ rsvg_cairo_clip_render_path (RsvgDrawingCtx * ctx, const RsvgBpathDef * bpath_de
break;
}
}
cairo_set_matrix (cr, &save);
}
static void
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment