Jacek Caban : gdi32: Fix SetPixel error return value.

Alexandre Julliard julliard at winehq.org
Mon Jun 14 16:00:35 CDT 2021


Module: wine
Branch: master
Commit: ce94c78b2e42a3335e2ed897628dfabac6be88f8
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=ce94c78b2e42a3335e2ed897628dfabac6be88f8

Author: Jacek Caban <jacek at codeweavers.com>
Date:   Fri Jun 11 19:55:29 2021 +0200

gdi32: Fix SetPixel error return value.

Signed-off-by: Jacek Caban <jacek at codeweavers.com>
Signed-off-by: Huw Davies <huw at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/gdi32/painting.c |  2 +-
 dlls/gdi32/tests/dc.c | 10 ++++++++++
 2 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/dlls/gdi32/painting.c b/dlls/gdi32/painting.c
index 96f4a1ede64..877c8400445 100644
--- a/dlls/gdi32/painting.c
+++ b/dlls/gdi32/painting.c
@@ -453,7 +453,7 @@ COLORREF WINAPI SetPixel( HDC hdc, INT x, INT y, COLORREF color )
     COLORREF ret;
     DC * dc = get_dc_ptr( hdc );
 
-    if (!dc) return 0;
+    if (!dc) return ~0;
     update_dc( dc );
     physdev = GET_DC_PHYSDEV( dc, pSetPixel );
     ret = physdev->funcs->pSetPixel( physdev, x, y, color );
diff --git a/dlls/gdi32/tests/dc.c b/dlls/gdi32/tests/dc.c
index 04703288302..8aa3b201b8b 100644
--- a/dlls/gdi32/tests/dc.c
+++ b/dlls/gdi32/tests/dc.c
@@ -1672,6 +1672,15 @@ static void test_clip_box(void)
     DeleteObject(bitmap);
 }
 
+static void test_SetPixel(void)
+{
+    COLORREF c;
+
+    c = SetPixel((HDC)0xdeadbeef, 0, 0, 0);
+    ok(c == ~0, "SetPixel returned: %x\n", c);
+}
+
+
 START_TEST(dc)
 {
     test_dc_values();
@@ -1688,4 +1697,5 @@ START_TEST(dc)
     test_printer_dc();
     test_pscript_printer_dc();
     test_clip_box();
+    test_SetPixel();
 }




More information about the wine-cvs mailing list