Vincent Povirk : gdiplus: Properly set the first point to start when widening open figures.
Module: wine Branch: master Commit: 8871af7ea563725fb92b75ec88a1fa946dccb574 URL: http://source.winehq.org/git/wine.git/?a=commit;h=8871af7ea563725fb92b75ec88... Author: Vincent Povirk <vincent(a)codeweavers.com> Date: Thu Sep 20 16:44:47 2012 -0500 gdiplus: Properly set the first point to start when widening open figures. --- dlls/gdiplus/graphicspath.c | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-) diff --git a/dlls/gdiplus/graphicspath.c b/dlls/gdiplus/graphicspath.c index 0515175..8b3a132 100644 --- a/dlls/gdiplus/graphicspath.c +++ b/dlls/gdiplus/graphicspath.c @@ -1806,15 +1806,16 @@ static void widen_open_figure(GpPath *path, GpPen *pen, int start, int end, path_list_node_t **last_point) { int i; + path_list_node_t *prev_point; if (end <= start) return; + prev_point = *last_point; + widen_cap(&path->pathdata.Points[start], &path->pathdata.Points[start+1], pen, pen->startcap, pen->customstart, FALSE, TRUE, last_point); - (*last_point)->type = PathPointTypeStart; - for (i=start+1; i<end; i++) widen_joint(&path->pathdata.Points[i-1], &path->pathdata.Points[i], &path->pathdata.Points[i+1], pen, last_point); @@ -1829,6 +1830,7 @@ static void widen_open_figure(GpPath *path, GpPen *pen, int start, int end, widen_cap(&path->pathdata.Points[start], &path->pathdata.Points[start+1], pen, pen->startcap, pen->customstart, TRUE, FALSE, last_point); + prev_point->next->type = PathPointTypeStart; (*last_point)->type |= PathPointTypeCloseSubpath; }
participants (1)
-
Alexandre Julliard