summaryrefslogtreecommitdiff
path: root/src/xrender/cdxrender.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/xrender/cdxrender.c')
-rw-r--r--src/xrender/cdxrender.c19
1 files changed, 3 insertions, 16 deletions
diff --git a/src/xrender/cdxrender.c b/src/xrender/cdxrender.c
index 5f7e868..2f99da3 100644
--- a/src/xrender/cdxrender.c
+++ b/src/xrender/cdxrender.c
@@ -293,23 +293,10 @@ static void cdpoly(cdCtxCanvas* ctxcanvas, int mode, cdPoint* poly, int n)
}
break;
case CD_PATH:
+ cdSimPolyPath(ctxcanvas->canvas, poly, n);
+ break;
case CD_BEZIER:
- {
- cdfPoint* fpoly = malloc(sizeof(cdfPoint)*n); /* because we support cdfpoly */
-
- for (i = 0; i<n; i++)
- {
- fpoly[i].x = (double)poly[i].x;
- fpoly[i].y = (double)poly[i].y;
- }
-
- if (mode == CD_BEZIER)
- cdfSimPolyBezier(ctxcanvas->canvas, fpoly, n);
- else
- cdfSimPolyPath(ctxcanvas->canvas, fpoly, n);
-
- free(fpoly);
- }
+ cdSimPolyBezier(ctxcanvas->canvas, poly, n);
break;
case CD_FILL:
{