[PATCH] user.exe16: Fix LPARAM conversions in WM_DDE_EXECUTE. (v2)
Zebediah Figura
z.figura12 at gmail.com
Fri Jan 6 16:52:15 CST 2017
Addresses, but does not fix, bug 42023.
Try 2: use HIWORD instead; also fix opposite conversion.
Signed-off-by: Zebediah Figura <z.figura12 at gmail.com>
---
dlls/user.exe16/message.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/dlls/user.exe16/message.c b/dlls/user.exe16/message.c
index 7bcc8e2..b898470 100644
--- a/dlls/user.exe16/message.c
+++ b/dlls/user.exe16/message.c
@@ -900,7 +900,7 @@ LRESULT WINPROC_CallProc16To32A( winproc_callback_t callback, HWND16 hwnd, UINT1
}
break; /* FIXME don't know how to free allocated memory (handle) !! */
case WM_DDE_EXECUTE:
- lParam = convert_handle_16_to_32( lParam, GMEM_DDESHARE );
+ lParam = convert_handle_16_to_32( HIWORD(lParam), GMEM_DDESHARE );
ret = callback( hwnd32, msg, wParam, lParam, result, arg );
break; /* FIXME don't know how to free allocated memory (handle) !! */
case WM_PAINTCLIPBOARD:
@@ -1281,7 +1281,7 @@ LRESULT WINPROC_CallProc32ATo16( winproc_callback16_t callback, HWND hwnd, UINT
break; /* FIXME don't know how to free allocated memory (handle) !! */
case WM_DDE_EXECUTE:
lParam = convert_handle_32_to_16(lParam, GMEM_DDESHARE);
- ret = callback( HWND_16(hwnd), msg, wParam, lParam, result, arg );
+ ret = callback( HWND_16(hwnd), msg, wParam, MAKELPARAM(0, lParam), result, arg );
break; /* FIXME don't know how to free allocated memory (handle) !! */
case SBM_SETRANGE:
ret = callback( HWND_16(hwnd), SBM_SETRANGE16, 0, MAKELPARAM(wParam, lParam), result, arg );
--
2.7.4
More information about the wine-patches
mailing list