Alexandre Julliard : user32: Support calling a 32-bit procedure even without a corresponding thunk in CallWindowProc16 .

Alexandre Julliard julliard at winehq.org
Mon Dec 21 09:39:46 CST 2009


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

Author: Alexandre Julliard <julliard at winehq.org>
Date:   Mon Dec 21 15:01:02 2009 +0100

user32: Support calling a 32-bit procedure even without a corresponding thunk in CallWindowProc16.

---

 dlls/user32/msg16.c |    7 +++++--
 1 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/dlls/user32/msg16.c b/dlls/user32/msg16.c
index db6de66..5304a9d 100644
--- a/dlls/user32/msg16.c
+++ b/dlls/user32/msg16.c
@@ -1536,8 +1536,11 @@ LRESULT WINAPI CallWindowProc16( WNDPROC16 func, HWND16 hwnd, UINT16 msg,
     if (index == -1 || index >= MAX_WINPROCS32)
         call_window_proc16( hwnd, msg, wParam, lParam, &result, func );
     else
-        WINPROC_CallProc16To32A( call_window_proc_callback, hwnd, msg, wParam, lParam, &result,
-                                 thunk_array[index].proc );
+    {
+        WNDPROC proc = (WNDPROC)func;
+        if (thunk_array && thunk_array[index].proc) proc = thunk_array[index].proc;
+        WINPROC_CallProc16To32A( call_window_proc_callback, hwnd, msg, wParam, lParam, &result, proc );
+    }
     return result;
 }
 




More information about the wine-cvs mailing list