Dmitry Timoshkov : gdiplus/tests: Reset the buffer contents before each GdipGetRegionData test and check the tail of the returned data .

Alexandre Julliard julliard at winehq.org
Thu Nov 14 13:57:10 CST 2013


Module: wine
Branch: master
Commit: 4b256191a010d6b74b0d1c7ae90ecbfd0215b899
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=4b256191a010d6b74b0d1c7ae90ecbfd0215b899

Author: Dmitry Timoshkov <dmitry at baikal.ru>
Date:   Thu Nov 14 13:08:49 2013 +0900

gdiplus/tests: Reset the buffer contents before each GdipGetRegionData test and check the tail of the returned data.

---

 dlls/gdiplus/tests/region.c |   40 ++++++++++++++++++++++++++++++++++++----
 1 files changed, 36 insertions(+), 4 deletions(-)

diff --git a/dlls/gdiplus/tests/region.c b/dlls/gdiplus/tests/region.c
index 2b8cf76..e690b6a 100644
--- a/dlls/gdiplus/tests/region.c
+++ b/dlls/gdiplus/tests/region.c
@@ -142,12 +142,15 @@ static void test_getregiondata(void)
     expect_magic(buf + 2);
     expect_dword(buf + 3, 0);
     expect_dword(buf + 4, RGNDATA_INFINITE_RECT);
+    expect_dword(buf + 6, 0xeeeeeeee);
 
     status = GdipSetEmpty(region);
     ok(status == Ok, "status %08x\n", status);
     status = GdipGetRegionDataSize(region, &needed);
     ok(status == Ok, "status %08x\n", status);
     expect(20, needed);
+    memset(buf, 0xee, sizeof(buf));
+    needed = 0;
     status = GdipGetRegionData(region, (BYTE*)buf, sizeof(buf), &needed);
     ok(status == Ok, "status %08x\n", status);
     expect(20, needed);
@@ -156,12 +159,15 @@ static void test_getregiondata(void)
     expect_magic(buf + 2);
     expect_dword(buf + 3, 0);
     expect_dword(buf + 4, RGNDATA_EMPTY_RECT);
+    expect_dword(buf + 6, 0xeeeeeeee);
 
     status = GdipSetInfinite(region);
     ok(status == Ok, "status %08x\n", status);
     status = GdipGetRegionDataSize(region, &needed);
     ok(status == Ok, "status %08x\n", status);
     expect(20, needed);
+    memset(buf, 0xee, sizeof(buf));
+    needed = 0;
     status = GdipGetRegionData(region, (BYTE*)buf, sizeof(buf), &needed);
     ok(status == Ok, "status %08x\n", status);
     expect(20, needed);
@@ -170,6 +176,7 @@ static void test_getregiondata(void)
     expect_magic(buf + 2);
     expect_dword(buf + 3, 0);
     expect_dword(buf + 4, RGNDATA_INFINITE_RECT);
+    expect_dword(buf + 6, 0xeeeeeeee);
 
     status = GdipDeleteRegion(region);
     ok(status == Ok, "status %08x\n", status);
@@ -183,6 +190,8 @@ static void test_getregiondata(void)
     status = GdipGetRegionDataSize(region, &needed);
     ok(status == Ok, "status %08x\n", status);
     expect(36, needed);
+    memset(buf, 0xee, sizeof(buf));
+    needed = 0;
     status = GdipGetRegionData(region, (BYTE*)buf, sizeof(buf), &needed);
     ok(status == Ok, "status %08x\n", status);
     expect(36, needed);
@@ -195,6 +204,7 @@ static void test_getregiondata(void)
     expect_float(buf + 6, 20.0);
     expect_float(buf + 7, 100.0);
     expect_float(buf + 8, 200.0);
+    expect_dword(buf + 10, 0xeeeeeeee);
 
     rect.X = 50;
     rect.Y = 30;
@@ -235,6 +245,8 @@ static void test_getregiondata(void)
     status = GdipGetRegionDataSize(region, &needed);
     ok(status == Ok, "status %08x\n", status);
     expect(156, needed);
+    memset(buf, 0xee, sizeof(buf));
+    needed = 0;
     status = GdipGetRegionData(region, (BYTE*)buf, sizeof(buf), &needed);
     ok(status == Ok, "status %08x\n", status);
     expect(156, needed);
@@ -277,6 +289,7 @@ static void test_getregiondata(void)
     expect_float(buf + 36, 500.0);
     expect_float(buf + 37, 22.0);
     expect_float(buf + 38, 55.0);
+    expect_dword(buf + 39, 0xeeeeeeee);
 
     status = GdipDeleteRegion(region2);
     ok(status == Ok, "status %08x\n", status);
@@ -294,6 +307,8 @@ static void test_getregiondata(void)
     status = GdipGetRegionDataSize(region, &needed);
     ok(status == Ok, "status %08x\n", status);
     expect(72, needed);
+    memset(buf, 0xee, sizeof(buf));
+    needed = 0;
     status = GdipGetRegionData(region, (BYTE*)buf, sizeof(buf), &needed);
     ok(status == Ok, "status %08x\n", status);
     expect(72, needed);
@@ -315,6 +330,7 @@ static void test_getregiondata(void)
     expect_float(buf + 15, 12.5);
     expect_float(buf + 16, 28.0);
     expect_dword(buf + 17, 0x81010100);
+    expect_dword(buf + 18, 0xeeeeeeee);
 
     rect.X = 50;
     rect.Y = 30;
@@ -325,6 +341,8 @@ static void test_getregiondata(void)
     status = GdipGetRegionDataSize(region, &needed);
     ok(status == Ok, "status %08x\n", status);
     expect(96, needed);
+    memset(buf, 0xee, sizeof(buf));
+    needed = 0;
     status = GdipGetRegionData(region, (BYTE*)buf, sizeof(buf), &needed);
     ok(status == Ok, "status %08x\n", status);
     expect(96, needed);
@@ -352,6 +370,7 @@ static void test_getregiondata(void)
     expect_float(buf + 21, 30.0);
     expect_float(buf + 22, 10.0);
     expect_float(buf + 23, 20.0);
+    expect_dword(buf + 24, 0xeeeeeeee);
 
     status = GdipDeleteRegion(region);
     ok(status == Ok, "status %08x\n", status);
@@ -366,6 +385,8 @@ static void test_getregiondata(void)
     status = GdipGetRegionDataSize(region, &needed);
     expect(Ok, status);
     expect(36, needed);
+    memset(buf, 0xee, sizeof(buf));
+    needed = 0;
     status = GdipGetRegionData(region, (BYTE*)buf, sizeof(buf), &needed);
     expect(Ok, status);
     expect(36, needed);
@@ -381,6 +402,7 @@ static void test_getregiondata(void)
     /* flags 0 means that a path is an array of FLOATs */
     ok(*(buf + 8) == 0x4000 /* before win7 */ || *(buf + 8) == 0,
        "expected 0x4000 or 0, got %08x\n", *(buf + 8));
+    expect_dword(buf + 10, 0xeeeeeeee);
 
     /* Transform an empty region */
     status = GdipCreateMatrix(&matrix);
@@ -404,6 +426,8 @@ static void test_getregiondata(void)
     status = GdipGetRegionDataSize(region, &needed);
     expect(Ok, status);
     expect(56, needed);
+    memset(buf, 0xee, sizeof(buf));
+    needed = 0;
     status = GdipGetRegionData(region, (BYTE*)buf, sizeof(buf), &needed);
     expect(Ok, status);
     expect(56, needed);
@@ -428,10 +452,11 @@ static void test_getregiondata(void)
     expect(5, point[3].X); /* buf + 12 */
     expect(6, point[3].Y);
     expect_dword(buf + 13, 0x81010100); /* 0x01010100 if we don't close the path */
+    expect_dword(buf + 14, 0xeeeeeeee);
 
     status = GdipTranslateRegion(region, 0.6, 0.8);
     expect(Ok, status);
-    memset(buf, 0, sizeof(buf));
+    memset(buf, 0xee, sizeof(buf));
     needed = 0;
     status = GdipGetRegionData(region, (BYTE*)buf, sizeof(buf), &needed);
     expect(Ok, status);
@@ -454,6 +479,7 @@ static void test_getregiondata(void)
     expect_float(buf + 15, 5.6);
     expect_float(buf + 16, 6.8);
     expect_dword(buf + 17, 0x81010100); /* 0x01010100 if we don't close the path */
+    expect_dword(buf + 18, 0xeeeeeeee);
 
     status = GdipDeletePath(path);
     expect(Ok, status);
@@ -472,6 +498,8 @@ static void test_getregiondata(void)
     status = GdipGetRegionDataSize(region, &needed);
     expect(Ok, status);
     expect(72, needed);
+    memset(buf, 0xee, sizeof(buf));
+    needed = 0;
     status = GdipGetRegionData(region, (BYTE*)buf, sizeof(buf), &needed);
     expect(Ok, status);
     expect(72, needed);
@@ -480,7 +508,6 @@ static void test_getregiondata(void)
     expect_magic(buf + 2);
     expect_dword(buf + 3, 0);
     expect_dword(buf + 4, RGNDATA_PATH);
-
     expect_dword(buf + 5, 48);
     expect_magic(buf + 6);
     expect_dword(buf + 7, 4);
@@ -493,6 +520,8 @@ static void test_getregiondata(void)
     expect_float(buf + 14, 1.6);
     expect_float(buf + 15, 5.6);
     expect_float(buf + 16, 6.2);
+    expect_dword(buf + 17, 0x01010100);
+    expect_dword(buf + 18, 0xeeeeeeee);
 
     status = GdipDeletePath(path);
     expect(Ok, status);
@@ -519,6 +548,8 @@ static void test_getregiondata(void)
     status = GdipGetRegionDataSize(region, &needed);
     expect(Ok, status);
     expect(116, needed);
+    memset(buf, 0xee, sizeof(buf));
+    needed = 0;
     status = GdipGetRegionData(region, (BYTE*)buf, sizeof(buf), &needed);
     expect(Ok, status);
     expect(116, needed);
@@ -533,12 +564,10 @@ static void test_getregiondata(void)
     expect_float(buf + 8, 60.0);
     expect_float(buf + 9, 120.0);
     expect_dword(buf + 10, RGNDATA_PATH);
-
     expect_dword(buf + 11, 68);
     expect_magic(buf + 12);
     expect_dword(buf + 13, 6);
     expect_float(buf + 14, 0.0);
-
     expect_float(buf + 15, 50.0);
     expect_float(buf + 16, 70.2);
     expect_float(buf + 17, 60.0);
@@ -554,6 +583,7 @@ static void test_getregiondata(void)
     expect_dword(buf + 27, 0x01010100);
     ok(*(buf + 28) == 0x00000101 || *(buf + 28) == 0x43050101 /* Win 7 */,
        "expected 00000101 or 43050101 got %08x\n", *(buf + 28));
+    expect_dword(buf + 29, 0xeeeeeeee);
 
     status = GdipDeletePath(path);
     expect(Ok, status);
@@ -596,6 +626,7 @@ static void test_getregiondata(void)
     expect(-1969, point[3].X); /* buf + 12 */
     expect(23, point[3].Y);
     expect_dword(buf + 13, 0x81010100); /* 0x01010100 if we don't close the path */
+    expect_dword(buf + 14, 0xeeeeeeee);
 
     status = GdipDeletePath(path);
     expect(Ok, status);
@@ -637,6 +668,7 @@ static void test_getregiondata(void)
     expect_float(buf + 15, -196900.0);
     expect_float(buf + 16, 2300.0);
     expect_dword(buf + 17, 0x81010100); /* 0x01010100 if we don't close the path */
+    expect_dword(buf + 18, 0xeeeeeeee);
 
     status = GdipDeletePath(path);
     expect(Ok, status);




More information about the wine-cvs mailing list