Module: wine Branch: master Commit: 4688389d74ec1a6c5750589ec27419c70b82f968 URL: http://source.winehq.org/git/wine.git/?a=commit;h=4688389d74ec1a6c5750589ec2...
Author: Alexandre Julliard julliard@winehq.org Date: Thu Jul 12 15:45:19 2007 +0200
user32: Allocate a dual A/W winproc for DefWindowProc.
---
dlls/user32/class.c | 3 +++ dlls/user32/tests/class.c | 4 ++-- 2 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/dlls/user32/class.c b/dlls/user32/class.c index c682812..4f6c7b5 100644 --- a/dlls/user32/class.c +++ b/dlls/user32/class.c @@ -416,6 +416,9 @@ void CLASS_RegisterBuiltinClasses(void) register_builtin( &MENU_builtin_class ); register_builtin( &SCROLL_builtin_class ); register_builtin( &STATIC_builtin_class ); + + /* the DefWindowProc winprocs are magic too */ + WINPROC_AllocProc( DefWindowProcA, DefWindowProcW ); }
diff --git a/dlls/user32/tests/class.c b/dlls/user32/tests/class.c index bd1cde6..2af4c2b 100644 --- a/dlls/user32/tests/class.c +++ b/dlls/user32/tests/class.c @@ -602,7 +602,7 @@ static void test_defwndproc() (void *)GetClassLongPtrA(hwnd, GCLP_WNDPROC), pDefWindowProcA); } else - todo_wine { + { ok(GetWindowLongPtrA(hwnd, GWLP_WNDPROC) == (LONG_PTR)pDefWindowProcA, "Wrong ANSI wndproc: %p vs %p\n", (void *)GetWindowLongPtrA(hwnd, GWLP_WNDPROC), pDefWindowProcA); ok(GetClassLongPtrA(hwnd, GCLP_WNDPROC) == (ULONG_PTR)pDefWindowProcA, "Wrong ANSI wndproc: %p vs %p\n", @@ -617,7 +617,7 @@ static void test_defwndproc() (void *)GetClassLongPtrW(hwnd, GCLP_WNDPROC), pDefWindowProcW); } else - todo_wine { + { ok(GetWindowLongPtrW(hwnd, GWLP_WNDPROC) == (LONG_PTR)pDefWindowProcW, "Wrong Unicode wndproc: %p vs %p\n", (void *)GetWindowLongPtrW(hwnd, GWLP_WNDPROC), pDefWindowProcW); ok(GetClassLongPtrW(hwnd, GCLP_WNDPROC) == (ULONG_PTR)pDefWindowProcW, "Wrong Unicode wndproc: %p vs %p\n",