Module: wine Branch: master Commit: 03b6c5e85f90b108281bfa4a2af5a2c1968cd4a5 URL: http://source.winehq.org/git/wine.git/?a=commit;h=03b6c5e85f90b108281bfa4a2a...
Author: Nikolay Sivov bunglehead@gmail.com Date: Fri May 9 16:39:43 2008 +0400
gdiplus: GdipGetImageFlags simple stub with test.
---
dlls/gdiplus/gdiplus.spec | 2 +- dlls/gdiplus/gdiplus_private.h | 1 + dlls/gdiplus/image.c | 12 ++++++++++++ dlls/gdiplus/tests/image.c | 19 +++++++++++++++++++ 4 files changed, 33 insertions(+), 1 deletions(-)
diff --git a/dlls/gdiplus/gdiplus.spec b/dlls/gdiplus/gdiplus.spec index ec3897a..905cff5 100644 --- a/dlls/gdiplus/gdiplus.spec +++ b/dlls/gdiplus/gdiplus.spec @@ -286,7 +286,7 @@ @ stdcall GdipGetImageDimension(ptr ptr ptr) @ stdcall GdipGetImageEncoders(long long ptr) @ stdcall GdipGetImageEncodersSize(ptr ptr) -@ stub GdipGetImageFlags +@ stdcall GdipGetImageFlags(ptr ptr) @ stdcall GdipGetImageGraphicsContext(ptr ptr) @ stdcall GdipGetImageHeight(ptr ptr) @ stdcall GdipGetImageHorizontalResolution(ptr ptr) diff --git a/dlls/gdiplus/gdiplus_private.h b/dlls/gdiplus/gdiplus_private.h index 09ef83f..539254b 100644 --- a/dlls/gdiplus/gdiplus_private.h +++ b/dlls/gdiplus/gdiplus_private.h @@ -149,6 +149,7 @@ struct GpCustomLineCap{ struct GpImage{ IPicture* picture; ImageType type; + UINT flags; };
struct GpMetafile{ diff --git a/dlls/gdiplus/image.c b/dlls/gdiplus/image.c index a89b6ea..fc4146f 100644 --- a/dlls/gdiplus/image.c +++ b/dlls/gdiplus/image.c @@ -384,6 +384,7 @@ GpStatus WINGDIPAPI GdipCreateBitmapFromScan0(INT width, INT height, INT stride, }
(*bitmap)->image.type = ImageTypeBitmap; + (*bitmap)->image.flags = ImageFlagsNone; (*bitmap)->width = width; (*bitmap)->height = height; (*bitmap)->format = format; @@ -789,6 +790,7 @@ GpStatus WINGDIPAPI GdipLoadImageFromStream(IStream* stream, GpImage **image) }
(*image)->picture = pic; + (*image)->flags = ImageFlagsNone;
return Ok; } @@ -1108,3 +1110,13 @@ GpStatus WINGDIPAPI GdipSetEffectParameters(CGpEffect *effect,
return NotImplemented; } + +GpStatus WINGDIPAPI GdipGetImageFlags(GpImage *image, UINT *flags) +{ + if(!image || !flags) + return InvalidParameter; + + *flags = image->flags; + + return Ok; +} diff --git a/dlls/gdiplus/tests/image.c b/dlls/gdiplus/tests/image.c index dcb86fc..26aede0 100644 --- a/dlls/gdiplus/tests/image.c +++ b/dlls/gdiplus/tests/image.c @@ -417,6 +417,24 @@ static void test_GdipCreateBitmapFromHBITMAP(void) GlobalFree(hbm); }
+static void test_GdipGetImageFlags(void) +{ + GpImage *img; + GpStatus stat; + UINT flags; + + img = (GpImage*)0xdeadbeef; + + stat = GdipGetImageFlags(NULL, NULL); + expect(InvalidParameter, stat); + + stat = GdipGetImageFlags(NULL, &flags); + expect(InvalidParameter, stat); + + stat = GdipGetImageFlags(img, NULL); + expect(InvalidParameter, stat); +} + START_TEST(image) { struct GdiplusStartupInput gdiplusStartupInput; @@ -436,6 +454,7 @@ START_TEST(image) test_encoders(); test_LockBits(); test_GdipCreateBitmapFromHBITMAP(); + test_GdipGetImageFlags();
GdiplusShutdown(gdiplusToken); }