Justin Chevrier : gdiplus: Basic implementation of GdipImageGetFrameCount with updated tests.
Module: wine Branch: master Commit: 818420a378ab26aa5411bd1fbf28875fde0746f6 URL: http://source.winehq.org/git/wine.git/?a=commit;h=818420a378ab26aa5411bd1fbf... Author: Justin Chevrier <jchevrier(a)gmail.com> Date: Mon Mar 15 19:14:28 2010 -0400 gdiplus: Basic implementation of GdipImageGetFrameCount with updated tests. --- dlls/gdiplus/image.c | 9 ++++++--- dlls/gdiplus/tests/image.c | 12 ++++++------ 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/dlls/gdiplus/image.c b/dlls/gdiplus/image.c index 0d95579..58f3c65 100644 --- a/dlls/gdiplus/image.c +++ b/dlls/gdiplus/image.c @@ -2196,6 +2196,7 @@ struct image_format_dimension image_format_dimensions[] = {NULL} }; +/* FIXME: Need to handle multi-framed images */ GpStatus WINGDIPAPI GdipImageGetFrameCount(GpImage *image, GDIPCONST GUID* dimensionID, UINT* count) { @@ -2203,13 +2204,15 @@ GpStatus WINGDIPAPI GdipImageGetFrameCount(GpImage *image, TRACE("(%p,%s,%p)\n", image, debugstr_guid(dimensionID), count); - if(!image || !dimensionID || !count) + if(!image || !count) return InvalidParameter; if(!(calls++)) - FIXME("not implemented\n"); + FIXME("returning frame count of 1\n"); - return NotImplemented; + *count = 1; + + return Ok; } GpStatus WINGDIPAPI GdipImageGetFrameDimensionsCount(GpImage *image, diff --git a/dlls/gdiplus/tests/image.c b/dlls/gdiplus/tests/image.c index 682c49f..5f20468 100644 --- a/dlls/gdiplus/tests/image.c +++ b/dlls/gdiplus/tests/image.c @@ -237,12 +237,12 @@ static void test_GdipImageGetFrameDimensionsCount(void) } stat = GdipImageGetFrameCount((GpImage*)bm, NULL, &count); - todo_wine expect(Ok, stat); + expect(Ok, stat); count = 12345; stat = GdipImageGetFrameCount((GpImage*)bm, &dimension, &count); - todo_wine expect(Ok, stat); - todo_wine expect(1, count); + expect(Ok, stat); + expect(1, count); GdipBitmapSetPixel(bm, 0, 0, 0xffffffff); @@ -1601,7 +1601,7 @@ static void test_multiframegif(void) count = 12345; stat = GdipImageGetFrameCount((GpImage*)bmp, &dimension, &count); - todo_wine expect(Ok, stat); + expect(Ok, stat); todo_wine expect(2, count); /* SelectActiveFrame overwrites our current data */ @@ -1675,8 +1675,8 @@ static void test_multiframegif(void) count = 12345; stat = GdipImageGetFrameCount((GpImage*)bmp, &dimension, &count); - todo_wine expect(Ok, stat); - todo_wine expect(1, count); + expect(Ok, stat); + expect(1, count); GdipDisposeImage((GpImage*)bmp); IStream_Release(stream);
participants (1)
-
Alexandre Julliard