Alexandre Julliard : gdi32: Always dither brush when painting to a 1-bpp device.

Alexandre Julliard julliard at winehq.org
Fri Aug 25 12:30:11 CDT 2017


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

Author: Alexandre Julliard <julliard at winehq.org>
Date:   Fri Aug 25 08:29:14 2017 +0200

gdi32: Always dither brush when painting to a 1-bpp device.

Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/gdi32/dibdrv/objects.c | 2 +-
 dlls/gdi32/tests/dib.c      | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/dlls/gdi32/dibdrv/objects.c b/dlls/gdi32/dibdrv/objects.c
index 8e55d1a..a36e03f 100644
--- a/dlls/gdi32/dibdrv/objects.c
+++ b/dlls/gdi32/dibdrv/objects.c
@@ -1933,7 +1933,7 @@ static BOOL select_pattern_brush( dibdrv_physdev *pdev, dib_brush *brush, BOOL *
     BITMAPINFO *info = (BITMAPINFO *)buffer;
     RGBQUAD color_table[2];
     dib_info pattern;
-    BOOL dither = (brush->dib.bit_count == 1);
+    BOOL dither = (brush->dib.bit_count == 1) || (pdev->dib.bit_count == 1);
 
     if (brush->pattern.info->bmiHeader.biClrUsed && brush->pattern.usage == DIB_PAL_COLORS)
     {
diff --git a/dlls/gdi32/tests/dib.c b/dlls/gdi32/tests/dib.c
index 23d376d..4017845 100644
--- a/dlls/gdi32/tests/dib.c
+++ b/dlls/gdi32/tests/dib.c
@@ -1753,7 +1753,7 @@ static void draw_graphics(HDC hdc, const BITMAPINFO *bmi, BYTE *bits)
             y += 25;
         }
     }
-    compare_hash_broken_todo(hdc, bmi, bits, "top-down 8888 dib brush patblt", 0, dib_is_1bpp);
+    compare_hash(hdc, bmi, bits, "top-down 8888 dib brush patblt");
 
     SelectObject(hdc, orig_brush);
     DeleteObject(dib_brush);




More information about the wine-cvs mailing list