Huw Davies : gdi32/tests: Add tests for 24 bpp dibs.
Alexandre Julliard
julliard at winehq.org
Wed Jun 1 12:11:07 CDT 2011
Module: wine
Branch: master
Commit: ce2c593d64edd9f304501d5b41771a05e3f1c815
URL: http://source.winehq.org/git/wine.git/?a=commit;h=ce2c593d64edd9f304501d5b41771a05e3f1c815
Author: Huw Davies <huw at codeweavers.com>
Date: Wed Jun 1 09:41:40 2011 +0100
gdi32/tests: Add tests for 24 bpp dibs.
---
dlls/gdi32/tests/dib.c | 49 +++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 48 insertions(+), 1 deletions(-)
diff --git a/dlls/gdi32/tests/dib.c b/dlls/gdi32/tests/dib.c
index 4322ed8..e1ef345 100644
--- a/dlls/gdi32/tests/dib.c
+++ b/dlls/gdi32/tests/dib.c
@@ -130,6 +130,34 @@ static const char *sha1_graphics_a8b8g8r8[] =
NULL
};
+static const char *sha1_graphics_24[] =
+{
+ "e993b15c9bd14fb45a15310450b7083c44e42665",
+ "edbd7bab3d957fbc85e89612197cf918f5f5af20",
+ "6a7efb3b6e0b49336df1bd2937ca09a11d976531",
+ "236eb5ca9da70ec7cc719cd2fd291bab14000257",
+ "f98023c7cd8c068f2d7a77ce3600004b90ea12d6",
+ "5c4cb9cea2226fc671bb4a11f8253343ee94bb4b",
+ "fd4be592483623dbc800fe28210a1f0daa71999b",
+ "788b8de98c47974fa9f232a6042ae4ca546ddb7d",
+ "a8772e6c44ba633fb384a7c4b50b435f1406107e",
+ "883bc8f305c602edca785e21cd00f488583fb13f",
+ "3bac4e80993f49dc3926e30524115fca9d7a8026",
+ "91369e35be29059a0665782541db4c8b324c6bb2",
+ "0fa8cf332a56bb6d7e14e85861fdd60f51d70501",
+ "593d694cdcc8349b3bfc8257041dbcb27e61da45",
+ "1036b91d93e31cd1d4740d0c8642e115e5a38188",
+ "3469776cc7d8f6fd3bce17a39eec0b4092294e49",
+ "1cb7f3fcf42c9ca47a0689195ced239a09d3c308",
+ "0bb222e540b82720d4971e4a2fc626899af03e03",
+ "adc20832d8c43f1cf372d8392535492013cd2306",
+ "45649794dcbcabda487f66f7a80fc1bec79047a1",
+ "b4df692ac70a5f9f303270df4641ab014c6cbf46",
+ "8bc3128ba47891366fd7b02fde7ca19100e64b9f",
+ "e649e00efe7fea1eb8b17f7867fe089e5270c44b",
+ NULL
+};
+
static const char *sha1_graphics_r5g5b5[] =
{
"2a2ab8b3c019e70b788ade028b0e9e53ffc529ae",
@@ -630,7 +658,11 @@ static void draw_graphics(HDC hdc, BITMAPINFO *bmi, BYTE *bits, const char ***sh
dib_brush = CreateDIBPatternBrushPt(brush_bi, DIB_RGB_COLORS);
SelectObject(hdc, dib_brush);
- SetBrushOrgEx(hdc, 100, 100, NULL);
+
+ /* This used to set the x origin to 100 as well, but
+ there's a Windows bug for 24 bpp where the brush's x offset
+ is incorrectly calculated for rops that involve both D and P */
+ SetBrushOrgEx(hdc, 4, 100, NULL);
for(i = 0, y = 10; i < 256; i++)
{
@@ -884,6 +916,21 @@ static void test_simple_graphics(void)
SelectObject(mem_dc, orig_bm);
DeleteObject(dib);
+ /* 24 */
+ trace("24\n");
+ bmi->bmiHeader.biBitCount = 24;
+ bmi->bmiHeader.biCompression = BI_RGB;
+
+ dib = CreateDIBSection(0, bmi, DIB_RGB_COLORS, (void**)&bits, NULL, 0);
+ ok(dib != NULL, "ret NULL\n");
+ orig_bm = SelectObject(mem_dc, dib);
+
+ sha1 = sha1_graphics_24;
+ draw_graphics(mem_dc, bmi, bits, &sha1);
+
+ SelectObject(mem_dc, orig_bm);
+ DeleteObject(dib);
+
/* r5g5b5 */
trace("555\n");
bmi->bmiHeader.biBitCount = 16;
More information about the wine-cvs
mailing list