diff options
author | scuri <scuri> | 2010-05-28 21:09:43 +0000 |
---|---|---|
committer | scuri <scuri> | 2010-05-28 21:09:43 +0000 |
commit | 3e4bae27558fd3bcec4bc54928b0a5d3145cd7c3 (patch) | |
tree | ef74219dd4e6b4e1e41036bdf495c1992de22fc8 /src/win32 | |
parent | 82d2c9cac84e284e9e232b8f46db5e66e38a0d09 (diff) |
*** empty log message ***
Diffstat (limited to 'src/win32')
-rw-r--r-- | src/win32/cdwin.c | 5 |
1 files changed, 5 insertions, 0 deletions
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; } |