gdiplus: Store the rect passed to GdipCreateLineBrushFromRect.

This commit is contained in:
Vincent Povirk 2009-05-07 11:40:13 -05:00 committed by Alexandre Julliard
parent 173a1f6f79
commit aaee4d7f9d
2 changed files with 11 additions and 5 deletions

View file

@ -301,6 +301,7 @@ GpStatus WINGDIPAPI GdipCreateLineBrushFromRect(GDIPCONST GpRectF* rect,
GpLineGradient **line)
{
GpPointF start, end;
GpStatus stat;
TRACE("(%p, %x, %x, %d, %d, %p)\n", rect, startcolor, endcolor, mode,
wrap, line);
@ -313,7 +314,12 @@ GpStatus WINGDIPAPI GdipCreateLineBrushFromRect(GDIPCONST GpRectF* rect,
end.X = rect->X + rect->Width;
end.Y = rect->Y + rect->Height;
return GdipCreateLineBrush(&start, &end, startcolor, endcolor, wrap, line);
stat = GdipCreateLineBrush(&start, &end, startcolor, endcolor, wrap, line);
if (stat == Ok)
(*line)->rect = *rect;
return stat;
}
GpStatus WINGDIPAPI GdipCreateLineBrushFromRectI(GDIPCONST GpRect* rect,

View file

@ -379,10 +379,10 @@ static void test_gradientgetrect(void)
memset(&rectf, 0, sizeof(GpRectF));
status = GdipGetLineRect(brush, &rectf);
expect(Ok, status);
todo_wine expectf(10.0, rectf.X);
todo_wine expectf(10.0, rectf.Y);
todo_wine expectf(-100.0, rectf.Width);
todo_wine expectf(-100.0, rectf.Height);
expectf(10.0, rectf.X);
expectf(10.0, rectf.Y);
expectf(-100.0, rectf.Width);
expectf(-100.0, rectf.Height);
status = GdipDeleteBrush((GpBrush*)brush);
}