[PATCH 2/3] gdi32/tests: Use offsetof instead of sizeof on structs with VLA.
Michael Stefaniuc
mstefani at redhat.de
Mon Aug 19 04:46:37 CDT 2013
---
dlls/gdi32/tests/pen.c | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/dlls/gdi32/tests/pen.c b/dlls/gdi32/tests/pen.c
index bbbb439..a4d544c 100644
--- a/dlls/gdi32/tests/pen.c
+++ b/dlls/gdi32/tests/pen.c
@@ -153,7 +153,8 @@ static void test_logpen(void)
if (pen[i].style == PS_NULL)
{
ok(hpen == GetStockObject(NULL_PEN), "hpen should be a stock NULL_PEN\n");
- ok(size == sizeof(EXTLOGPEN), "GetObject returned %d, error %d\n", size, GetLastError());
+ ok(size == offsetof(EXTLOGPEN, elpStyleEntry[1]), "GetObject returned %d, error %d\n",
+ size, GetLastError());
ok(elp.elpPenStyle == pen[i].ret_style, "expected %u, got %u\n", pen[i].ret_style, elp.elpPenStyle);
ok(elp.elpWidth == 0, "expected 0, got %u\n", elp.elpWidth);
ok(elp.elpColor == pen[i].ret_color, "expected %08x, got %08x\n", pen[i].ret_color, elp.elpColor);
@@ -275,7 +276,7 @@ static void test_logpen(void)
memset(&unset_hatch, 0xb0, sizeof(unset_hatch));
SetLastError(0xdeadbeef);
size = GetObject(hpen, sizeof(elp), &elp);
- ok(size == sizeof(EXTLOGPEN),
+ ok(size == offsetof(EXTLOGPEN, elpStyleEntry[1]),
"GetObject returned %d, error %d\n", size, GetLastError());
ok(ext_pen->elpHatch == unset_hatch, "expected 0xb0b0b0b0, got %p\n", (void *)ext_pen->elpHatch);
ok(ext_pen->elpNumEntries == 0xb0b0b0b0, "expected 0xb0b0b0b0, got %x\n", ext_pen->elpNumEntries);
@@ -385,11 +386,11 @@ test_geometric_pens:
memset(elp_buffer, 0xb0, sizeof(elp_buffer));
SetLastError(0xdeadbeef);
/* buffer is too small for user styles */
- size = GetObject(hpen, sizeof(EXTLOGPEN), elp_buffer);
+ size = GetObject(hpen, offsetof(EXTLOGPEN, elpStyleEntry[1]), elp_buffer);
switch (pen[i].style)
{
case PS_NULL:
- ok(size == sizeof(EXTLOGPEN),
+ ok(size == offsetof(EXTLOGPEN, elpStyleEntry[1]),
"GetObject returned %d, error %d\n", size, GetLastError());
ok(ext_pen->elpHatch == 0, "expected 0, got %p\n", (void *)ext_pen->elpHatch);
ok(ext_pen->elpNumEntries == 0, "expected 0, got %x\n", ext_pen->elpNumEntries);
@@ -568,7 +569,7 @@ static void test_ps_userstyle(void)
static void test_brush_pens(void)
{
- char buffer[sizeof(EXTLOGPEN) + 15 * sizeof(DWORD)];
+ char buffer[offsetof(EXTLOGPEN, elpStyleEntry[16])];
EXTLOGPEN *elp = (EXTLOGPEN *)buffer;
LOGBRUSH lb;
HPEN pen = 0;
--
1.8.3.1
More information about the wine-patches
mailing list