From 3e4bae27558fd3bcec4bc54928b0a5d3145cd7c3 Mon Sep 17 00:00:00 2001 From: scuri Date: Fri, 28 May 2010 21:09:43 +0000 Subject: *** empty log message *** --- src/win32/cdwin.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'src/win32') diff --git a/src/win32/cdwin.c b/src/win32/cdwin.c index 65c183a..37c4c0d 100644 --- a/src/win32/cdwin.c +++ b/src/win32/cdwin.c @@ -854,6 +854,7 @@ static void cdpoly(cdCtxCanvas* ctxcanvas, int mode, cdPoint* poly, int n) switch(ctxcanvas->canvas->path[p]) { case CD_PATH_NEW: + EndPath(ctxcanvas->hDC); BeginPath(ctxcanvas->hDC); break; case CD_PATH_MOVETO: @@ -899,20 +900,24 @@ static void cdpoly(cdCtxCanvas* ctxcanvas, int mode, cdPoint* poly, int n) case CD_PATH_FILL: sUpdateFill(ctxcanvas, 1); SetPolyFillMode(ctxcanvas->hDC, ctxcanvas->canvas->fill_mode==CD_EVENODD?ALTERNATE:WINDING); + EndPath(ctxcanvas->hDC); FillPath(ctxcanvas->hDC); break; case CD_PATH_STROKE: sUpdateFill(ctxcanvas, 0); + EndPath(ctxcanvas->hDC); StrokePath(ctxcanvas->hDC); break; case CD_PATH_FILLSTROKE: sUpdateFill(ctxcanvas, 1); sUpdateFill(ctxcanvas, 0); SetPolyFillMode(ctxcanvas->hDC, ctxcanvas->canvas->fill_mode==CD_EVENODD?ALTERNATE:WINDING); + EndPath(ctxcanvas->hDC); StrokeAndFillPath(ctxcanvas->hDC); break; case CD_PATH_CLIP: SetPolyFillMode(ctxcanvas->hDC, ctxcanvas->canvas->fill_mode==CD_EVENODD?ALTERNATE:WINDING); + EndPath(ctxcanvas->hDC); SelectClipPath(ctxcanvas->hDC, RGN_AND); break; } -- cgit v1.2.3