Module: wine Branch: master Commit: f2bf0227a25859f3dfabc80c53f33cd94b732471 URL: http://source.winehq.org/git/wine.git/?a=commit;h=f2bf0227a25859f3dfabc80c53...
Author: Alex Henrie alexhenrie24@gmail.com Date: Wed May 13 00:33:11 2015 -0600
user32: Do not return the class icon when ICON_SMALL2 is requested.
---
dlls/user32/defwnd.c | 2 -- dlls/user32/tests/class.c | 7 +++++++ 2 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/dlls/user32/defwnd.c b/dlls/user32/defwnd.c index bcd6f91..fa6b0fa 100644 --- a/dlls/user32/defwnd.c +++ b/dlls/user32/defwnd.c @@ -640,8 +640,6 @@ static LRESULT DEFWND_DefWinProc( HWND hwnd, UINT msg, WPARAM wParam, LPARAM lPa break; case ICON_SMALL2: ret = wndPtr->hIconSmall; - if (!ret) ret = (HICON)GetClassLongPtrW( hwnd, GCLP_HICONSM ); - /* FIXME: should have a default here if class icon is null */ break; default: ret = 0; diff --git a/dlls/user32/tests/class.c b/dlls/user32/tests/class.c index b5adac4..14f0aa3 100644 --- a/dlls/user32/tests/class.c +++ b/dlls/user32/tests/class.c @@ -1002,6 +1002,13 @@ static void test_icons(void) hsmicon = (HICON)GetClassLongPtrW(hwnd, GCLP_HICONSM); ok(hsmicon != NULL, "GetClassLong should return non-zero handle\n");
+ ok(SendMessageA(hwnd, WM_GETICON, ICON_BIG, 0) == 0, + "WM_GETICON with ICON_BIG should not return the class icon\n"); + ok(SendMessageA(hwnd, WM_GETICON, ICON_SMALL, 0) == 0, + "WM_GETICON with ICON_SMALL should not return the class icon\n"); + ok(SendMessageA(hwnd, WM_GETICON, ICON_SMALL2, 0) == 0, + "WM_GETICON with ICON_SMALL2 should not return the class icon\n"); + hsmallnew = CopyImage(wcex.hIcon, IMAGE_ICON, GetSystemMetrics(SM_CXSMICON), GetSystemMetrics(SM_CYSMICON), 0); ok(!SetClassLongPtrW(hwnd, GCLP_HICONSM, (LONG_PTR)hsmallnew),