win32u: Prevent user locale change in NtUserActivateKeyboardLayout.

This commit is contained in:
Rémi Bernon 2023-02-27 11:19:22 +01:00 committed by Alexandre Julliard
parent 27c5abe378
commit c0366cbb2e

View file

@ -1193,6 +1193,7 @@ HKL WINAPI NtUserActivateKeyboardLayout( HKL layout, UINT flags )
{
struct user_thread_info *info = get_user_thread_info();
HKL old_layout;
LCID locale;
HWND focus;
TRACE_(keyboard)( "layout %p, flags %x\n", layout, flags );
@ -1206,6 +1207,13 @@ HKL WINAPI NtUserActivateKeyboardLayout( HKL layout, UINT flags )
return 0;
}
if (NtQueryDefaultLocale( TRUE, &locale ) || LOWORD(layout) != locale)
{
RtlSetLastWin32Error( ERROR_CALL_NOT_IMPLEMENTED );
FIXME_(keyboard)( "Changing user locale is not supported\n" );
return 0;
}
if (!user_driver->pActivateKeyboardLayout( layout, flags ))
return 0;