From b57be0a746fd9b42fed0e9ac5cf88eaf222ce11d Mon Sep 17 00:00:00 2001 From: Victor Martinez Calvo Date: Tue, 3 May 2022 16:00:21 +0200 Subject: [PATCH] [GDI32] Fix GetObjectW() GDI_OBJECT_TYPE_BRUSH handling. (#4394) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This fixes the last GetObjectW apitest case: ok_long(GetObjectA(hBrush, 0, &TestStruct), 0); - When "cbSize" is "0", GetObjectW shouldn't return "sizeof(LOGBRUSH)" but 0. - Rely in BRUSH::cjGetObject behavior which returns 0 when cjSize is 0. Co-authored-by: Víctor Martínez Calvo --- win32ss/gdi/gdi32/objects/gdiobj.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/win32ss/gdi/gdi32/objects/gdiobj.c b/win32ss/gdi/gdi32/objects/gdiobj.c index 96617881fc4..5f8d8e1f6c3 100644 --- a/win32ss/gdi/gdi32/objects/gdiobj.c +++ b/win32ss/gdi/gdi32/objects/gdiobj.c @@ -206,7 +206,7 @@ GetObjectW( break; case GDI_OBJECT_TYPE_BRUSH: - if (!lpBuffer || !cbSize) return sizeof(LOGBRUSH); + if (!lpBuffer) return sizeof(LOGBRUSH); break; case GDI_OBJECT_TYPE_BITMAP: