Module: wine Branch: master Commit: dad00cce4450dd0e4d793a42e86249b0d25af60e URL: http://source.winehq.org/git/wine.git/?a=commit;h=dad00cce4450dd0e4d793a42e8...
Author: Vincent Povirk vincent@codeweavers.com Date: Tue Aug 18 14:10:55 2009 -0500
gdiplus: Add a test for drawing to application-provided memory.
---
dlls/gdiplus/tests/graphics.c | 25 +++++++++++++++++++++++++ 1 files changed, 25 insertions(+), 0 deletions(-)
diff --git a/dlls/gdiplus/tests/graphics.c b/dlls/gdiplus/tests/graphics.c index 62b4990..26794d8 100644 --- a/dlls/gdiplus/tests/graphics.c +++ b/dlls/gdiplus/tests/graphics.c @@ -1904,6 +1904,30 @@ static void test_GdipGetVisibleClipBounds(void) test_GdipGetVisibleClipBounds_window(); }
+static void test_fromMemoryBitmap(void) +{ + GpStatus status; + GpGraphics *graphics = NULL; + GpBitmap *bitmap = NULL; + BYTE bits[48] = {0}; + + status = GdipCreateBitmapFromScan0(4, 4, 12, PixelFormat24bppRGB, bits, &bitmap); + expect(Ok, status); + + status = GdipGetImageGraphicsContext((GpImage*)bitmap, &graphics); + expect(Ok, status); + + status = GdipGraphicsClear(graphics, 0xff686868); + expect(Ok, status); + + GdipDeleteGraphics(graphics); + + /* drawing writes to the memory provided */ + todo_wine expect(0x68, bits[10]); + + GdipDisposeImage((GpImage*)bitmap); +} + START_TEST(graphics) { struct GdiplusStartupInput gdiplusStartupInput; @@ -1938,6 +1962,7 @@ START_TEST(graphics) test_isempty(); test_clear(); test_textcontrast(); + test_fromMemoryBitmap();
GdiplusShutdown(gdiplusToken); }