[PATCH 0/1] MR3333: wow64win: Copy the name and class that come after the CREATESTRUCT.
This fixes the msvfw32:mciwnd tests. On a side note: I'd expect there to be a `NtCallbackReturn()` for this case as well, but it's not there. That issue can probably wait until after the fix for [bug 55152](https://bugs.winehq.org/show_bug.cgi?id=55152) though. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/3333
From: Sven Baars <sbaars(a)codeweavers.com> --- dlls/wow64win/user.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/dlls/wow64win/user.c b/dlls/wow64win/user.c index 602ccfa79b9..0c2a02e694b 100644 --- a/dlls/wow64win/user.c +++ b/dlls/wow64win/user.c @@ -580,11 +580,14 @@ static UINT hook_lparam_64to32( struct win_hook_params *params, const void *lp, { const CREATESTRUCTW *cs = lp; CREATESTRUCT32 *cs32 = lp32; + UINT size = params->lparam_size - sizeof(*cs); + createstruct_64to32( cs, cs32 ); cs32->lpszName = PtrToUlong( cs->lpszName ); cs32->lpszClass = PtrToUlong( cs->lpszClass ); + if (size) memcpy( cs32 + 1, cs + 1, size ); } - return sizeof(CREATESTRUCT32); + return params->lparam_size - sizeof(CREATESTRUCTW) + sizeof(CREATESTRUCT32); case HCBT_ACTIVATE: if (lp) -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/3333
That issue can probably wait until after the fix for [bug 55152](https://bugs.winehq.org/show_bug.cgi?id=55152) though.
As part of that fix, I rewrote the part that you're changing. I created !3346, I think it can replace this MR. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/3333#note_39124
This merge request was closed by Sven Baars. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/3333
That merge request seems to have fixed it indeed, thanks. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/3333#note_39257
participants (3)
-
Jacek Caban (@jacek) -
Sven Baars -
Sven Baars (@sbaars)