Huw Davies : gdi32: Fix an error in the blue channel of the 32 -> 16 bpp conversion and update the tests to catch this.
Alexandre Julliard
julliard at winehq.org
Wed Jun 1 12:11:08 CDT 2011
Module: wine
Branch: master
Commit: ea361367ed87a18704e8d36646e73692f3a1c69b
URL: http://source.winehq.org/git/wine.git/?a=commit;h=ea361367ed87a18704e8d36646e73692f3a1c69b
Author: Huw Davies <huw at codeweavers.com>
Date: Wed Jun 1 09:41:43 2011 +0100
gdi32: Fix an error in the blue channel of the 32 -> 16 bpp conversion and update the tests to catch this.
---
dlls/gdi32/dibdrv/primitives.c | 2 +-
dlls/gdi32/tests/dib.c | 29 +++++++++++++++--------------
2 files changed, 16 insertions(+), 15 deletions(-)
diff --git a/dlls/gdi32/dibdrv/primitives.c b/dlls/gdi32/dibdrv/primitives.c
index 4711a65..411cddd 100644
--- a/dlls/gdi32/dibdrv/primitives.c
+++ b/dlls/gdi32/dibdrv/primitives.c
@@ -1038,7 +1038,7 @@ static BOOL convert_to_555(dib_info *dst, const dib_info *src, const RECT *src_r
src_val = *src_pixel++;
*dst_pixel++ = ((src_val >> 9) & 0x7c00) |
((src_val >> 6) & 0x03e0) |
- ((src_val >> 3) & 0x001e);
+ ((src_val >> 3) & 0x001f);
}
dst_start += dst->stride / 2;
src_start += src->stride / 4;
diff --git a/dlls/gdi32/tests/dib.c b/dlls/gdi32/tests/dib.c
index c750a46..60791ca 100644
--- a/dlls/gdi32/tests/dib.c
+++ b/dlls/gdi32/tests/dib.c
@@ -91,8 +91,8 @@ static const char *sha1_graphics_a8r8g8b8[] =
"6c530622a025d872a642e8f950867884d7b136cb",
"7c07d91b8f68fb31821701b3dcb96de018bf0c66",
"b2261353decda2712b83538ab434a49ce21f3172",
- "ef654fedcb494dae79559f4db8b691ae2d522a3f",
- "a694872f38e66a7ff471440c3e6a9310ef78328a",
+ "35f731c0f6356b8f30651bb3cbe0d922c49deba5",
+ "9b9874c1c1d92afa554137e191d34ea33acc322f",
"c311dd74325e8cebfc8529a6d24a6fa4ecb7137e",
"d7398de15b2837a58a62a701ca1b3384625afec4",
"a78b28472bb7ff480ddedd06b9cf2daa775fa7ae",
@@ -120,8 +120,8 @@ static const char *sha1_graphics_a8b8g8r8[] =
"bf57a6a37fb107d29ed3d45695919887abcb7902",
"3db0f8bcca3d94920aa57be6321202b8c3c08822",
"1f1fc165a4dae7ba118ddccb58a279bfe3876b0a",
- "66da15b6780a4ca3b3d2eb1d1dba4e30f7b74964",
- "42fefefe4435570fa8038ec759140c66c76570e9",
+ "8e09abb108e137c99527ab4c9bd07d95b9254bbb",
+ "b0178632775d29bec2b16de7b9b8287115c40d0f",
"ca7e859647b9498b53fdd92543ad8aea98ff46f3",
"3369889a67d6c79a24ee15f7d14374f9995215e4",
"473a1fd07df800c87a5d3286b642ace10c61c6af",
@@ -149,8 +149,8 @@ static const char *sha1_graphics_24[] =
"0fa8cf332a56bb6d7e14e85861fdd60f51d70501",
"593d694cdcc8349b3bfc8257041dbcb27e61da45",
"1036b91d93e31cd1d4740d0c8642e115e5a38188",
- "3469776cc7d8f6fd3bce17a39eec0b4092294e49",
- "1cb7f3fcf42c9ca47a0689195ced239a09d3c308",
+ "1898073cdb35ca4d2b21bba933ac16a0b4297317",
+ "5068bff794553cf5a3145ae407c9a2984357844c",
"413a7989969c229dee4ab1798362f32f96cf0a10",
"0bb222e540b82720d4971e4a2fc626899af03e03",
"adc20832d8c43f1cf372d8392535492013cd2306",
@@ -178,8 +178,8 @@ static const char *sha1_graphics_r5g5b5[] =
"420e39ff3bdd04c4b6cc2c98e99cb7993c7a0de5",
"1fabf0fdd046857b1974e31c1c1764fa9d1a762f",
"449092689226a1172b6086ba1181d6b6d6499f26",
- "5c636ffadec10fbe440b552fe6436f3dbc607dcf",
- "4aac89fc18c128eddb69eea658272af53138a1cb",
+ "1a92a60f190d33ef06d9decb56fd3fdd33f3af03",
+ "e61f5978c2e28c0c6d8f5eefe0f840c975586efc",
"897d16f4d6a6ddad685d23ed7828d4f676539b75",
"9d21bcfdeaf1ca5d47eb823bdefc24d7a95f4f56",
"6daaf945a955928c5c124c880522ca4634fb2343",
@@ -207,8 +207,8 @@ static const char *sha1_graphics_r4g4b4[] =
"115a6bd382410a4a1d3c1fa71d8bf02536863e38",
"65c6d1228e3b6d63d42647f14217bc1658b70d9a",
"25fcb75aa687aac35b8f72640889fe92413e00c5",
- "dbc8d66b419880108793db91c05766c0c6efd86d",
- "6092ccbab6b6e073c6ac8244d122f2cfc453aa38",
+ "3bddf9d53e89560b083302b146cd33791b13d941",
+ "a81504498c7a7bb46340ce74476a42f70f2730b1",
"e61a4f2657a444d8c49f84fb944f9f847667bf2b",
"32b6e0aa79b7e96cd0ab2da167f6463c011023a8",
"1d283aa4d2b2114f7809fe59357d590c7c779aa7",
@@ -236,8 +236,8 @@ static const char *sha1_graphics_8[] =
"5ba8f99ca034666effa556748c49a0f5a015125f",
"b67ba2f55659c75ac72c1112494461bb3086e1a4",
"73e2859ce849f756f954718ce3c90f02e31712b6",
- "196d832d283bf642d2e481e5452ca175f7902761",
- "9552f48b88982633a44001227abb847dae4d06b0",
+ "b1dff0f5dd233b44ee568878c5d3f8ae1d80c6d9",
+ "1f27dc1a1316fb7a4a78fe40fcd4bdae3aaad218",
"6e375e1485a1e45ac6ab10af49645d5fb2e76dff",
"cfc67c325c7cdf96d90af9b3cceb8d0504cbb3b0",
"7262364067e03c7fa498af1d59d228d6c63b460e",
@@ -265,8 +265,8 @@ static const char *sha1_graphics_4[] =
"665bbbc749a5ffeedc0d62aef0661a5ce845b017",
"1f26a01730f67d40ea711a50d9d801bac15a642e",
"3b53d24178cfacba53103a44dfd5d072b15a6781",
- "fa0d5f2d9419d8310fe4af7a290d13c5026c77de",
- "5070ecae5085209508f7450d5f21c69737a178e9",
+ "c52cfd57f26037723d37192722fc3a217f280c9e",
+ "e34da6500cf2e424d980714d92737cf6c31a7bda",
"d17f4358ae529f920960ed89e535902ee13b0033",
"0f44e12ecd1ea7e39433890443626d4fc35204a4",
"eb38683e812fd13dca971ba8f4cfd2b6820d3524",
@@ -636,6 +636,7 @@ static void draw_graphics(HDC hdc, BITMAPINFO *bmi, BYTE *bits, const char ***sh
brush_bits[14] = 0xff;
brush_bits[65] = 0xff;
brush_bits[69] = 0xff;
+ brush_bits[72] = 0xff;
dib_brush = CreateDIBPatternBrushPt(brush_bi, DIB_RGB_COLORS);
More information about the wine-cvs
mailing list