diff options
author | Andrea Griffini <agriff@tin.it> | 2015-03-13 12:36:24 -0600 |
---|---|---|
committer | Federico Mena Quintero <federico@gnome.org> | 2015-03-13 13:03:04 -0600 |
commit | 9628f3da0023bfd3e919e2bfb4c2dc10ad45d9ab (patch) | |
tree | db6d44e38cb5ba5af65452d8e3e2350818f87779 | |
parent | f8d37dfb240f0ecb90a91ce534829ec7ac279071 (diff) | |
download | librsvg-9628f3da0023bfd3e919e2bfb4c2dc10ad45d9ab.tar.gz |
bgo#738367 - Fix handling of V/v/H/h commands in path
These were not setting one of the x/y components for the reflection point
to be used in smooth curves.
https://bugzilla.gnome.org/show_bug.cgi?id=738367
-rw-r--r-- | rsvg-path.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/rsvg-path.c b/rsvg-path.c index 56a5b962..1a5cc5cf 100644 --- a/rsvg-path.c +++ b/rsvg-path.c @@ -429,6 +429,7 @@ rsvg_parse_path_do_cmd (RSVGParsePathCtx * ctx, gboolean final) if (ctx->param == 1) { rsvg_path_builder_line_to (&ctx->builder, ctx->params[0], ctx->cp.point.y); ctx->cp.point.x = ctx->rp.point.x = ctx->params[0]; + ctx->rp.point.y = ctx->cp.point.y; ctx->param = 0; } break; @@ -436,6 +437,7 @@ rsvg_parse_path_do_cmd (RSVGParsePathCtx * ctx, gboolean final) /* vertical lineto */ if (ctx->param == 1) { rsvg_path_builder_line_to (&ctx->builder, ctx->cp.point.x, ctx->params[0]); + ctx->rp.point.x = ctx->cp.point.x; ctx->cp.point.y = ctx->rp.point.y = ctx->params[0]; ctx->param = 0; } |