diff --git a/dlls/gdiplus/gdiplus.spec b/dlls/gdiplus/gdiplus.spec index 112e0b848c2..57e0de65687 100644 --- a/dlls/gdiplus/gdiplus.spec +++ b/dlls/gdiplus/gdiplus.spec @@ -45,7 +45,7 @@ @ stub GdipBitmapSetPixel @ stub GdipBitmapSetResolution @ stdcall GdipBitmapUnlockBits(ptr ptr) -@ stub GdipClearPathMarkers +@ stdcall GdipClearPathMarkers(ptr) @ stub GdipCloneBitmapArea @ stub GdipCloneBitmapAreaI @ stdcall GdipCloneBrush(ptr ptr) diff --git a/dlls/gdiplus/graphicspath.c b/dlls/gdiplus/graphicspath.c index 11374adc4b0..c474e99adbb 100644 --- a/dlls/gdiplus/graphicspath.c +++ b/dlls/gdiplus/graphicspath.c @@ -849,3 +849,20 @@ GpStatus WINGDIPAPI GdipSetPathMarker(GpPath* path) return Ok; } + +GpStatus WINGDIPAPI GdipClearPathMarkers(GpPath* path) +{ + INT count; + INT i; + + if(!path) + return InvalidParameter; + + count = path->pathdata.Count; + + for(i = 0; i < count - 1; i++){ + path->pathdata.Types[i] &= ~PathPointTypePathMarker; + } + + return Ok; +} diff --git a/include/gdiplusflat.h b/include/gdiplusflat.h index 96ee322e1ae..c20efdc51f8 100644 --- a/include/gdiplusflat.h +++ b/include/gdiplusflat.h @@ -147,6 +147,7 @@ GpStatus WINGDIPAPI GdipSetInterpolationMode(GpGraphics*,InterpolationMode); GpStatus WINGDIPAPI GdipSetPageScale(GpGraphics*,REAL); GpStatus WINGDIPAPI GdipSetPageUnit(GpGraphics*,GpUnit); GpStatus WINGDIPAPI GdipSetPathMarker(GpPath*); +GpStatus WINGDIPAPI GdipClearPathMarkers(GpPath*); GpStatus WINGDIPAPI GdipSetPixelOffsetMode(GpGraphics*,PixelOffsetMode); GpStatus WINGDIPAPI GdipSetSmoothingMode(GpGraphics*,SmoothingMode); GpStatus WINGDIPAPI GdipSetTextRenderingHint(GpGraphics*,TextRenderingHint);