diff --git a/dlls/gdiplus/customlinecap.c b/dlls/gdiplus/customlinecap.c index 2e7b000355e..c05aecae29a 100644 --- a/dlls/gdiplus/customlinecap.c +++ b/dlls/gdiplus/customlinecap.c @@ -220,14 +220,14 @@ GpStatus WINGDIPAPI GdipGetCustomLineCapBaseInset(GpCustomLineCap* custom, GpStatus WINGDIPAPI GdipSetCustomLineCapBaseInset(GpCustomLineCap* custom, REAL inset) { - static int calls; - TRACE("(%p,%0.2f)\n", custom, inset); - if(!(calls++)) - FIXME("not implemented\n"); + if(!custom) + return InvalidParameter; - return NotImplemented; + custom->inset = inset; + + return Ok; } /*FIXME: LineJoin completely ignored now */ diff --git a/dlls/gdiplus/tests/customlinecap.c b/dlls/gdiplus/tests/customlinecap.c index c475216ff21..89323040ad1 100644 --- a/dlls/gdiplus/tests/customlinecap.c +++ b/dlls/gdiplus/tests/customlinecap.c @@ -165,6 +165,14 @@ static void test_inset(void) expect(Ok, stat); expectf(0.0, inset); + stat = GdipSetCustomLineCapBaseInset(custom, 2.0); + expect(Ok, stat); + + inset = (REAL)0xdeadbeef; + stat = GdipGetCustomLineCapBaseInset(custom, &inset); + expect(Ok, stat); + ok(inset == 2.0, "Unexpected inset value %f\n", inset); + GdipDeleteCustomLineCap(custom); GdipDeletePath(path); }