[PATCH 5/5] win32u: Move message spy implementation from user32.
Signed-off-by: Jacek Caban <jacek(a)codeweavers.com> --- dlls/user32/Makefile.in | 1 - dlls/user32/user_main.c | 21 +++++++ dlls/user32/user_private.h | 7 --- dlls/win32u/Makefile.in | 1 + dlls/win32u/gdiobj.c | 1 + dlls/win32u/message.c | 6 ++ dlls/win32u/ntuser_private.h | 15 +++++ dlls/{user32 => win32u}/spy.c | 109 ++++++++++++++++++---------------- dlls/win32u/sysparams.c | 2 + dlls/win32u/win32u.spec | 2 +- dlls/win32u/win32u_private.h | 3 + dlls/win32u/window.c | 4 +- dlls/win32u/wrappers.c | 7 +++ include/ntuser.h | 5 ++ 14 files changed, 124 insertions(+), 60 deletions(-) rename dlls/{user32 => win32u}/spy.c (96%)
Hi, While running your changed tests, I think I found new failures. Being a bot and all I'm not very good at pattern recognition, so I might be wrong, but could you please double-check? Full results can be found at: https://testbot.winehq.org/JobDetails.pl?Key=110844 Your paranoid android. === debian11 (build log) === error: patch failed: dlls/user32/spy.c:2530 Task: Patch failed to apply === debian11 (build log) === error: patch failed: dlls/user32/spy.c:2530 Task: Patch failed to apply
On Mon, Mar 21, 2022 at 02:14:55PM +0100, Jacek Caban wrote:
@@ -2131,10 +2130,16 @@ static void SPY_GetMsgStuff( SPY_INSTANCE *sp_e )
if (sp_e->msgnum >= 0xc000) { - if (GlobalGetAtomNameA( sp_e->msgnum, sp_e->msg_name+1, sizeof(sp_e->msg_name)-2 )) + char buf[sizeof(ATOM_BASIC_INFORMATION) + MAX_ATOM_LEN * sizeof(WCHAR)]; + ATOM_BASIC_INFORMATION *abi = (ATOM_BASIC_INFORMATION *)buf; + if (!NtQueryInformationAtom( sp_e->msgnum, AtomBasicInformation, abi, sizeof(buf), NULL )) { - sp_e->msg_name[0] = '\"'; - strcat( sp_e->msg_name, "\"" ); + unsigned int j = 0; + sp_e->msg_name[j++] = '\"'; + j += ntdll_wcstoumbs( abi->Name, abi->NameLength, + sp_e->msg_name + j, sizeof(sp_e->msg_name) - 3, FALSE ) / sizeof(WCHAR);
Hi Jacek, The divide by sizeof(WCHAR) bit doesn't look right here.
+ sp_e->msg_name[j++] = '\"'; + sp_e->msg_name[j++] = 0; return;
Huw.
participants (3)
-
Huw Davies -
Jacek Caban -
Marvin