[WIN32K] Conditionally enable IMM32

MFC42 applications only expect an IME window when on a DBCS system,
so they will capture this IME window as their 'main' window on non-DBCS systems.
CORE-18212
This commit is contained in:
Mark Jansen 2022-06-06 20:54:26 +02:00
parent 63f042a5cd
commit 81e0f74a7a
No known key found for this signature in database
GPG key ID: B39240EE84BEAE8B

View file

@ -124,7 +124,16 @@ NtUserCallNoParam(DWORD Routine)
break;
case NOPARAM_ROUTINE_UPDATEPERUSERIMMENABLING:
gpsi->dwSRVIFlags |= SRVINFO_IMM32; // Always set.
// TODO: This should also check the registry!
// see https://www.pctipsbox.com/fix-available-for-ie7-memory-leaks-on-xp-sp3/ for more information
if (NLS_MB_CODE_PAGE_TAG)
{
gpsi->dwSRVIFlags |= SRVINFO_IMM32;
}
else
{
gpsi->dwSRVIFlags &= ~SRVINFO_IMM32;
}
Result = TRUE; // Always return TRUE.
break;